In den vorherigen Artikeln habe ich erklärt, wie man OpenCV3.4.1kinect für den Linux-Treiber in Ubuntu16.04 konfiguriert, und die grundlegenden Wissensinhalte basierend auf einigen OpenCV-Tutorials vervollständigt, aber im Lernprozess wurden die meisten Bilder verwendet Die Experimente stammen aus dem Internet oder basieren auf der Kamera eines Computer-Laptops. Um einige komplexere Aufgaben zu erledigen, müssen andere visuelle Sensoren verwendet werden. Hier ist eine Aufzeichnung von Ubuntu 16.04 mit Kinect2 .0RGB-D-Sensorik Inhalt.
1. Treiberinstallation
Kinect2.0 hat offiziell vorgefertigte Treiber für die Verwendung in Windows-Systemen bereitgestellt, es gibt jedoch ein entsprechendes SDK, das Entwickler bei der Anwendungsentwicklung unterstützen kann, aber in Linux-Systemen müssen Sie den entsprechenden Open-Source-Treiber im Github-Code finden, aber zur Installation und zum Debuggen.
Das Open-Source-Treiberpaket für Kinect2.0 befindet sich unter:
Es gibt zwei Arten von Treibern: einen libfreenect-Treiber für Kinect der ersten Generation und einen libfreenect2-Treiber für Kinect der zweiten Generation, Kinect für Linux-Treiber. In diesem Artikel wird der Treiber der zweiten Generation verwendet. Der folgende Inhalt gilt für das Ubuntu-System. Wenn Sie andere Systeme überprüfen möchten, können Sie zu: Sehen Sie sich die detaillierte Beschreibung des Treiberpakets an. 1.1 Hardwareanforderungen
Virtuelle Maschinen funktionieren wahrscheinlich nicht, da die isochrone Übertragung über USB 3.0 recht heikel ist.
1.2 Betriebssystemanforderungen
Da wir uns nur auf Ubuntu konzentrieren, listen wir nur die Anforderungen für das Ubuntu-System auf:
1.3 Optionale Konfigurationsoptionen 1.4 Kinect2.0-Treiber installieren
<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>
Wenn Sie den USB-Anschluss während des erneuten Verbindungsvorgangs einfach wieder anschließen, wird dies möglicherweise nicht wirksam. Am sichersten ist es, Kinect auszuschalten und dann wieder einzuschalten. Der USB-Anschluss muss beim Ein- und Ausschalten nicht erneut angeschlossen werden Verfahren. .
1,5 Testergebnisse
Wenn bei allen oben genannten Schritten keine Probleme mit dem virtuellen Linux-Host auftreten, können Sie etwas Ähnliches wie das Folgende erhalten:
运行可选的测试命令也会出现类似的图象,但那种是全屏的,按下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>
具体代码的实现参考了以下网址:
Das obige ist der detaillierte Inhalt vonWie verwende ich den Kinect 2.0 RGB-D-Sensor für komplexe Aufgaben in Ubuntu 16.04?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!