search
HomeSystem TutorialLINUXHow to use Kinect 2.0 RGB-D sensor for complex tasks in Ubuntu 16.04?

Ubuntu 16.04 如何使用 Kinect 2.0 RGB-D 传感器进行复杂任务?

In the previous articles, I explained how to configure OpenCV3.4.1kinect for linux driver in Ubuntu16.04, and completed the basic knowledge content based on some OpenCV tutorials, but in the learning process Most of the images used in the experiments come from the Internet or rely on the camera of a computer laptop. In order to complete some more complex tasks, other visual sensors need to be used, so here is a record of Ubuntu16.04 using Kinect2 .0RGB-D sensing content.

1. Driver installation

Kinect2.0 has officially provided ready-made drivers for use in Windows systems, but there is a corresponding SDK that can assist developers in application development. However, in Linux systems, you need to find the corresponding open source driver on Github. code, but for installation and debugging.

The open source driver package for Kinect2.0 is located at:

There are two types of drivers in it, one is libfreenect driver for the first generation Kinect, and the other is libfreenect2 driver for the second generation Kinectkinect for linux driver. In this article, the second generation driver is used. The following content is for the Ubuntu system. If you want to check other systems, you can go to: View the detailed description of the driver package.

1.1Hardware Requirements

驱动精灵_驱动总裁_kinect for linux驱动

Virtualmachineslikelydonotwork,becauseUSB3.0isochronoustransferisquitedelicate.

1.2 Operating System Requirements

Since we only focus on Ubuntu, we only list the requirements for Ubuntu system:

1.3 Optional configuration options 1.4 Install Kinect2.0 driver

驱动总裁_驱动精灵_kinect for linux驱动

<span class="hljs-built_in">cd</span> ~<span class="hljs-comment">#设置克隆目录,当前在Home目录中,也可以设置在其它目录中</span>
git clone https://github.com/OpenKinect/libfreenect2.git
<span class="hljs-built_in">cd</span> libfreenect2

sudo apt<span class="hljs-attribute">-get</span> install build<span class="hljs-attribute">-essential</span> cmake pkg<span class="hljs-attribute">-config</span>

sudo apt<span class="hljs-attribute">-get</span> install libusb<span class="hljs-subst">-</span><span class="hljs-number">1.0</span><span class="hljs-subst">-</span><span class="hljs-number">0</span><span class="hljs-attribute">-dev</span>

sudo apt<span class="hljs-attribute">-get</span> install libturbojpeg libjpeg<span class="hljs-attribute">-turbo8</span><span class="hljs-attribute">-dev</span>

sudo apt<span class="hljs-attribute">-get</span> install libglfw3<span class="hljs-attribute">-dev</span>

sudo apt<span class="hljs-attribute">-get</span> install libopenni2<span class="hljs-attribute">-dev</span>

mkdir build && <span class="hljs-built_in">cd</span> build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/<span class="hljs-comment">#修改了原来的安装位置</span>
make
<span class="hljs-built_in">sudo</span> make install<span class="hljs-comment">#这里直接用root权限安装,如果是普通权限有的时候会出现安装不成功的情况</span>

sudo <span class="hljs-keyword">cp</span> ../platform/linux/udev/<span class="hljs-number">90</span>-kinect2<span class="hljs-preprocessor">.rules</span> /etc/udev/rules<span class="hljs-preprocessor">.d</span>/

./bin/Protonect<span class="hljs-comment">#重新接入之后运行测试</span>
<span class="hljs-built_in">sudo</span> apt-get install openni2-utils && <span class="hljs-built_in">sudo</span> make install-openni2 && NiViewer2 <span class="hljs-comment">#可选测试</span>

During the reconnection process, if you just replug the USB socket, it may not take effect. The safest way is to power off the Kinect and then power it on again. The USB socket does not need to be replugged during the power on and off process. .

1.5 test results

If there are no problems with the linux virtual host in all the above steps, you can get something similar to the following:

测试图片

运行可选的测试命令也会出现类似的图象,但那种是全屏的,按下ESC就可以退出,就不再放图片了,所以到了这一步linux游戏,驱动包的安装就早已成功了,下边的内容是假如在代码中使用传感获取数据,这一步才是最须要关注的。

2.编程实现

编程实现通过Ubuntu读取Kinect的数据,同样须要利用于驱动包所提供的库函数,下边就详尽解释怎样在程序中实现数据的获取与处理。首先以下为须要包含的头文件:

<span class="hljs-preprocessor">#include </span>
<span class="hljs-preprocessor">#include </span>
<span class="hljs-preprocessor">#include </span>
<span class="hljs-preprocessor">#include </span>
<span class="hljs-preprocessor">#include #用于日志信息,视需求可省略</span>

具体代码的实现参考了以下网址:

The above is the detailed content of How to use Kinect 2.0 RGB-D sensor for complex tasks in Ubuntu 16.04?. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Top 5 Linux Tools for Monitoring Disk I/O PerformanceTop 5 Linux Tools for Monitoring Disk I/O PerformanceApr 27, 2025 pm 04:45 PM

This guide explores essential Linux tools for monitoring and troubleshooting disk I/O performance, a crucial metric impacting server speed and application responsiveness. Disk I/O performance directly affects how quickly data is read from and written

4 Ways to Find Plugged USB Device Name in Linux4 Ways to Find Plugged USB Device Name in LinuxApr 27, 2025 pm 04:44 PM

For new Linux users, identifying connected devices is crucial, especially USB drives. This guide provides several command-line methods to determine a USB device's name, essential for tasks like formatting. While USB drives often auto-mount (e.g., /

How to Fix 'No Space Left on Device” on Root (/) PartitionHow to Fix 'No Space Left on Device” on Root (/) PartitionApr 27, 2025 pm 04:43 PM

One of the most common problems with Linux systems, especially those with limited disk space, is the exhaustion of root partition (/) space. When this problem occurs, you may encounter the following error: No space left on device Don’t panic! This just means that your root directory (/partition) is full, which is a common problem, especially on systems with limited disk space or servers running 24/7. When this happens, you may encounter the following problems: The package cannot be installed or upgraded. System startup failed. The service cannot be started. Unable to write to logs or temporary files. This article walks you through practical steps to identify problems, clean up space safely, and prevent them from happening again. These instructions are suitable for beginners

Top 16 Notepad   Replacements for Linux in 2025Top 16 Notepad Replacements for Linux in 2025Apr 27, 2025 pm 04:42 PM

This article explores top-notch Notepad alternatives for Linux users. Notepad , while excellent on Windows, lacks a Linux version. This guide offers a diverse range of options to suit various needs and preferences. Top Notepad Alternatives for

How to Create and Run New Service Units in SystemdHow to Create and Run New Service Units in SystemdApr 27, 2025 pm 04:41 PM

Several days ago, I encountered a 32-bit CentOS 8 distribution and decided to test it on an older 32-bit system. Post-boot, I discovered a network connectivity issue; the connection would drop, requiring manual restoration after each reboot. This pr

How to Check for Bad Sectors on a Hard Disk in LinuxHow to Check for Bad Sectors on a Hard Disk in LinuxApr 27, 2025 pm 04:40 PM

Let's clarify what constitutes a bad sector or bad block: it's a portion of a hard drive or flash memory that's become unreadable or unwritable, typically due to physical damage to the disk surface or malfunctioning flash memory transistors. Accumul

How to Force cp Command to Overwrite Files Without PromptHow to Force cp Command to Overwrite Files Without PromptApr 27, 2025 pm 04:39 PM

The cp command, short for "copy," is a fundamental tool in Linux and other Unix-like systems for duplicating files and directories. While efficient for local file transfers, for network-based copies, scp (secure copy) is preferred due to i

Fix 'rm: Cannot Remove File – Device or Resource Busy” ErrorFix 'rm: Cannot Remove File – Device or Resource Busy” ErrorApr 27, 2025 pm 04:38 PM

When using the rm command to delete a file or directory in Linux system, if you encounter the following error: rm: cannot remove 'file-or-directory': Device or resource busy Don't worry, this is a common problem, which means that the file or directory you are trying to delete is currently being used by the system or running process. Cause of error The "Device or Resource Busy" message indicates that the file or directory is in use. To avoid damaging the system or causing data loss, Linux prevents deleting files in use. Common reasons include: Your terminal is currently in the directory you want to delete. The program or process is using the file or directory.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software