{"id":229,"date":"2021-11-21T13:54:58","date_gmt":"2021-11-21T13:54:58","guid":{"rendered":"http:\/\/47.103.123.166\/?p=229"},"modified":"2021-11-21T13:54:58","modified_gmt":"2021-11-21T13:54:58","slug":"ubuntu16-04-intel-realsense-d435-qt","status":"publish","type":"post","link":"http:\/\/47.103.123.166\/?p=229","title":{"rendered":"ubuntu16.04 + Intel realsense D435 + Qt"},"content":{"rendered":"<h2>D435_SDK\u5b89\u88c5<\/h2>\n<h3>\u7248\u672c\u652f\u6301<\/h3>\n<p>\u5e73\u53f0\u652f\u6301\u3001\u8bbe\u5907\u652f\u6301\u3001Firmware\u652f\u6301\u3001\u8bed\u8a00\u652f\u6301\u7b49\uff0c\u53c2\u9605<a href=\"https:\/\/github.com\/IntelRealSense\/librealsense\/releases\">\u8fd9\u91cc<\/a>\u3002<\/p>\n<h3>\u4e0b\u8f7d\u3001\u89e3\u538b<\/h3>\n<p><a href=\"https:\/\/github.com\/IntelRealSense\/librealsense\/tags\">\u4e0b\u8f7d<\/a>\u5e76\u89e3\u538bSDK\uff0c\u8fd9\u91cc\u9009\u62e9v2.39.0\uff08\u539f\u56e0\u53c2\u9605\u7b2c\u4e00\u6761\u94fe\u63a5\uff09\u3002<\/p>\n<h3>\u7f16\u8bd1\u524d\u7684\u51c6\u5907\u5de5\u4f5c<\/h3>\n<p>1\uff09\u67e5\u770blinux\u5185\u6838\uff0c\u8981\u6c42\u7248\u672c &gt;=4.4.0-50<\/p>\n<pre><code class=\"language-cpp\">$ uname -r<\/code><\/pre>\n<p>2\uff09\u67e5\u770bcmake\u7248\u672c\uff0c\u8981\u6c42\u7248\u672c &gt;3.6<\/p>\n<pre><code class=\"language-cpp\">$ cmake --version<\/code><\/pre>\n<p>3\uff09\u5b89\u88c5\u5fc5\u8981\u4f9d\u8d56<\/p>\n<pre><code class=\"language-cpp\">$ sudo apt-get install libusb-1.0-0-dev pkg-config libgtk-3-dev libssl-dev<\/code><\/pre>\n<h3>\u7f16\u8bd1\u3001\u5b89\u88c5<\/h3>\n<pre><code class=\"language-cpp\">$ sudo librealsense-2.39.0\n$ mkdir build\n$ cd build\n$ cmake ..\n$ make\n$ sudo make install<\/code><\/pre>\n<h3>\u5b89\u88c5\u540e\u7eed\u5de5\u4f5c<\/h3>\n<p>1\uff09\u65ad\u5f00D435\u7684\u8fde\u63a5\uff0c\u5b89\u88c5ideo4Linux\u89c6\u9891\u5185\u6838\u9a71\u52a8<\/p>\n<pre><code class=\"language-cpp\">$ sudo cp config\/99-realsense-libusb.rules \/etc\/udev\/rules.d\/\n$ sudo udevadm control --reload-rules &amp;&amp; udevadm trigger<\/code><\/pre>\n<p>2\uff09\u7f16\u8bd1\u914d\u7f6e\u6587\u4ef6<\/p>\n<pre><code class=\"language-cpp\">$ librealsense-2.39.0\/scripts\/patch-realsense-ubuntu-lts.sh<\/code><\/pre>\n<p>3\uff09\u63a5\u4e0aD435\uff0c\u6253\u5f00realsense-viewer\uff0c\u8fde\u63a5\u6210\u529f\u4f1a\u6709\u56fe\u50cf\uff0c\u6ca1\u6709\u56fe\u50cf\u68c0\u67e5USB\u662f\u5426\u4e3a3.0\u7b49\u95ee\u9898<\/p>\n<pre><code class=\"language-cpp\">$ realsense-viewer<\/code><\/pre>\n<h2>D435_Qt<\/h2>\n<p>1\u3001\u6dfb\u52a0\u5e93\uff0c\u4f7f\u7528Qt\u6dfb\u52a0\u5b89\u88c5\u7684\u5e93_\/usr\/local\/lib\/librealsense2.so\uff0c\u4f7f\u7528\u9ed8\u8ba4\u5934\u6587\u4ef6\u8def\u5f84<\/p>\n<p>2\u3001\u4f7f\u7528D435\uff0c\u53c2\u8003github\u63d0\u4f9b\u7684<a href=\"https:\/\/github.com\/IntelRealSense\/librealsense\/tree\/master\/examples\">\u4f8b\u7a0b<\/a>\uff0c\u4ee5hello-realsense\u4e3a\u4f8b<\/p>\n<p>1\uff09\u5305\u542b\u5934\u6587\u4ef6\uff0c\u6ce8\u610f\u662frs.hpp\uff0c\u4e0d\u662frs.h\uff0chpp\u6587\u4ef6\u5e26\u6709\u51fd\u6570\u5b9e\u73b0<\/p>\n<pre><code class=\"language-cpp\">#include &lt;librealsense2\/rs.hpp&gt;<\/code><\/pre>\n<p>2\uff09\u6dfb\u52a0\u4e2a\u6309\u94ae<\/p>\n<pre><code class=\"language-cpp\">void MainWindow::on_pushButton_clicked()\n{\n    \/\/ Create a Pipeline - this serves as a top-level API for streaming and processing frames\n    rs2::pipeline p;\n\n    \/\/ Configure and start the pipeline\n    p.start();\n\n    int cnt=10;\n    while (cnt&gt;0)\n    {\n        \/\/ Block program until frames arrive\n        rs2::frameset frames = p.wait_for_frames();\n\n        \/\/ Try to get a frame of a depth image\n        rs2::depth_frame depth = frames.get_depth_frame();\n\n        \/\/ Get the depth frame's dimensions\n        float width = depth.get_width();\n        float height = depth.get_height();\n\n        \/\/ Query the distance from the camera to the object in the center of the image\n        float dist_to_center = depth.get_distance(width \/ 2, height \/ 2);\n\n        \/\/ Print the distance\n        qDebug()&lt;&lt;\"The camera is facing an object \"+QString::number(dist_to_center)+\" meters away \\r\";\n\n        cnt--;\n    }\n}<\/code><\/pre>\n<p>\u8f93\u51fa\u5982\u4e0b\uff1a<\/p>\n<pre><code class=\"language-cpp\">\"The camera is facing an object 2.527 meters away \\r\"\n\"The camera is facing an object 2.527 meters away \\r\"\n\"The camera is facing an object 2.556 meters away \\r\"\n\"The camera is facing an object 2.546 meters away \\r\"\n\"The camera is facing an object 2.527 meters away \\r\"\n\"The camera is facing an object 2.556 meters away \\r\"\n\"The camera is facing an object 2.546 meters away \\r\"\n\"The camera is facing an object 2.556 meters away \\r\"\n\"The camera is facing an object 2.556 meters away \\r\"\n\"The camera is facing an object 2.585 meters away \\r\"<\/code><\/pre>\n<h2>\u53c2\u8003<\/h2>\n<p>1\uff09<a href=\"https:\/\/blog.csdn.net\/weixin_44024460\/article\/details\/89320469\">Ubuntu 16.04 \u5b89\u88c5RealSense D435\u6559\u7a0b<\/a><br \/>\n2\uff09<a href=\"https:\/\/github.com\/IntelRealSense\/librealsense\"><a href=\"https:\/\/github.com\/IntelRealSense\/librealsense\">https:\/\/github.com\/IntelRealSense\/librealsense<\/a><\/a><br \/>\n3\uff09<a href=\"https:\/\/www.intelrealsense.com\/\"><a href=\"https:\/\/www.intelrealsense.com\/\">https:\/\/www.intelrealsense.com\/<\/a><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>D435_SDK\u5b89\u88c5 \u7248\u672c\u652f\u6301 \u5e73\u53f0\u652f\u6301\u3001\u8bbe\u5907\u652f\u6301\u3001Firmware\u652f\u6301\u3001\u8bed\u8a00\u652f\u6301\u7b49\uff0c\u53c2\u9605\u8fd9\u91cc\u3002 \u4e0b\u8f7d\u3001\u89e3\u538b \u4e0b\u8f7d\u5e76\u89e3\u538bSDK\uff0c\u8fd9\u91cc\u9009\u62e9v2.39.0\uff08\u539f\u56e0\u53c2\u9605\u7b2c\u4e00\u6761\u94fe\u63a5\uff09\u3002 \u7f16\u8bd1\u524d\u7684\u51c6\u5907\u5de5\u4f5c 1\uff09\u67e5\u770blinux\u5185\u6838\uff0c\u8981\u6c42\u7248\u672c &gt;=4.4.0-50 $ uname -r 2\uff09\u67e5\u770bcmake\u7248\u672c\uff0c\u8981\u6c42\u7248\u672c &gt;3.6 $ cmake &#8211;version 3\uff09\u5b89\u88c5\u5fc5\u8981\u4f9d\u8d56 $ sudo apt-get install libusb-1.0-0-dev pkg-config libgtk-3-dev libssl-dev \u7f16\u8bd1\u3001\u5b89\u88c5 $ sudo librealsense-2.39.0 $ mkdir build $ cd build $ cmake .. $ make $ sudo make install \u5b89\u88c5\u540e\u7eed\u5de5\u4f5c 1\uff09\u65ad\u5f00D435\u7684\u8fde\u63a5\uff0c\u5b89\u88c5ideo4Linux\u89c6\u9891\u5185\u6838\u9a71\u52a8 $ sudo cp config\/99-realsense-libusb.rules \/etc\/udev\/rules.d\/ $ sudo udevadm control [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[7],"tags":[],"_links":{"self":[{"href":"http:\/\/47.103.123.166\/index.php?rest_route=\/wp\/v2\/posts\/229"}],"collection":[{"href":"http:\/\/47.103.123.166\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/47.103.123.166\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/47.103.123.166\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/47.103.123.166\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=229"}],"version-history":[{"count":1,"href":"http:\/\/47.103.123.166\/index.php?rest_route=\/wp\/v2\/posts\/229\/revisions"}],"predecessor-version":[{"id":230,"href":"http:\/\/47.103.123.166\/index.php?rest_route=\/wp\/v2\/posts\/229\/revisions\/230"}],"wp:attachment":[{"href":"http:\/\/47.103.123.166\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=229"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/47.103.123.166\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=229"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/47.103.123.166\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=229"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}