Rumah  >  Artikel  >  Tutorial sistem  >  Bagaimana untuk menggunakan sensor Kinect 2.0 RGB-D untuk tugas kompleks dalam Ubuntu 16.04?

Bagaimana untuk menggunakan sensor Kinect 2.0 RGB-D untuk tugas kompleks dalam Ubuntu 16.04?

PHPz
PHPzasal
2024-07-01 06:12:56897semak imbas

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

Dalam artikel sebelum ini, saya menerangkan cara mengkonfigurasi OpenCV3.4.1kinect untuk pemacu linux dalam Ubuntu16.04, dan melengkapkan kandungan pengetahuan asas berdasarkan beberapa tutorial OpenCV, tetapi dalam proses pembelajaran Kebanyakan imej digunakan dalam eksperimen datang dari Internet atau bergantung pada kamera komputer riba komputer Untuk menyelesaikan beberapa tugas yang lebih kompleks, penderia visual lain perlu digunakan, jadi berikut adalah rekod Ubuntu16.04 menggunakan penderiaan Kinect2 .0RGB-D. kandungan.

1. Pemasangan pemandu

Kinect2.0 secara rasminya telah menyediakan pemacu siap sedia untuk digunakan dalam sistem Windows, tetapi terdapat SDK yang sepadan yang boleh membantu pembangun dalam pembangunan aplikasi Walau bagaimanapun, dalam sistem Linux, anda perlu mencari pemacu sumber terbuka yang sepadan pada Github , tetapi untuk pemasangan dan penyahpepijatan.

Pakej pemacu sumber terbuka untuk Kinect2.0 terletak di:

Terdapat dua jenis pemacu di dalamnya, satu ialah libfreenect untuk pemacu Kinect generasi pertama, dan satu lagi ialah libfreenect2 untuk pemacu Kinect generasi keduakinect untuk pemacu linux Dalam artikel ini, pemacu generasi kedua digunakan. Kandungan berikut adalah untuk sistem Ubuntu Jika anda ingin menyemak sistem lain, anda boleh pergi ke: Lihat penerangan terperinci pakej pemacu.

1.1 Keperluan Perkakasan

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

Mesin maya berkemungkinan tidak berfungsi, kerana USB3.0pemindahan isokronis agak halus.

1.2 Keperluan Sistem Pengendalian

Memandangkan kami hanya fokus pada Ubuntu, kami hanya menyenaraikan keperluan untuk sistem Ubuntu:

1.3 Pilihan konfigurasi pilihan 1.4 Pasang pemacu Kinect2.0

驱动总裁_驱动精灵_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>

Semasa proses penyambungan semula, jika anda hanya memasang semula port USB, ia mungkin tidak akan berkuat kuasa proses. .

1.5 keputusan ujian

Jika tiada masalah dengan hos maya linux dalam semua langkah di atas, anda boleh mendapatkan sesuatu yang serupa dengan yang berikut:

测试图片

运行可选的测试命令也会出现类似的图象,但那种是全屏的,按下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>

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

Atas ialah kandungan terperinci Bagaimana untuk menggunakan sensor Kinect 2.0 RGB-D untuk tugas kompleks dalam Ubuntu 16.04?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn