5.yolov5配合深度相机目标检测+Astra Pro Plus搭建环境遇到的问题+相机标定

一、yolov5从深度相机读取画面并进行目标检测

1.进入到yolov5-master目录下:cd yolov5-master
2.运行识别USB摄像头(深度相机)所采集图像:python3 detect.py --source 0
这里有报错,有几个error搜索后一头雾水,然后发现最开始产生的是一个warning,说yolov5需要python3.7,而系统现在的python是3.6.9。
3.部署yolov5和搭建Astra Pro深度相机环境(成功版)树莓派4B+Ubuntu18.04+ROS1-Melodic这篇中,从头到尾都没有动过python,系统自带python是2.7和3.6,是可以顺利进行下去的,detect.py也能正常测试。
但既然现在明确显示这样的warning了,就要改一改python3的定向了,具体操作在4.树莓派4B装yolov5和搭astra深度相机环境遇到的问题里面提到过,这里单独摘出来再写一次:
①删除原来的:sudo rm -rf /usr/bin/python3
【注意不要误删,python3后面不要加 /,否则会删除整个根目录。】
②建立新连接:sudo ln -s /usr/local/bin/python3.7 /usr/bin/python3
这里/usr/local/bin/python3.7是我python3.7的地址,大家根据自己情况更改。】
3.这个操作结束后,把这三步重来一遍:

pip3 install torch==1.8.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install torchvision==0.9.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

因为python改成3.7了,所以4.树莓派4B装yolov5和搭astra深度相机环境遇到的问题里面出现的卡死状况将不会再有。
4.重新执行第二步:python3 detect.py --source 0

二、Astra Pro Plus环境搭建时遇到的错误记录

1.Invoking “cmake” failed

①第一次尝试 (这步的可行性有待考察):python3更改定向后,cmake编译时会失败,需要重新安装cmake:pip3 install cmake -i https://pypi.tuna.tsinghua.edu.cn/simple
这步卡死很多次,不断尝试重来后,最后终于成功了(它中后段还突然加速了!!!)
但是,第二天去cmake又报错如下:

在这里插入图片描述
再次尝试上述命令(pip3 install cmake -i https://pypi.tuna.tsinghua.edu.cn/simple)时报错:

在这里插入图片描述

②在第一次尝试成功后,我继续后面的别的步骤时,遇到了十分熟悉的报错:

在这里插入图片描述
熟悉的点在于“CommandNotFound”这个模块,我印象不止一次见到这个错误。
重点还是在python,Ubuntu18.04系统自带的python3是3.6,但由于yolov5需要3.7,我就改了python3的定向。
也就是说系统现在做什么有关python3的事都会去找python3.7(我是这样理解的,有错请指出),然而有些模块是3.6有而3.7没有的,即这个“CommandNotFound”模块(截图信息可能不太明显说明这个问题,有些是会直接报错:
ModuleNotFoundError: No module named ‘CommandNotFound’
以下的解决过程参考这篇文章,我将里面我用到的再写一遍:
首先比较两个东西:dist-packages和site-packages,两个都是python安装第三方包的安装路径,而前者是系统自带python使用的目录,后者是用户手动安装python使用的目录。
为了解决问题,我主要进行了两步操作:
<1>将dist-packages里的CommandNotFound模块复制到python3.7的site-packages目录下:sudo cp -r /usr/lib/python3/dist-packages/CommandNotFound /usr/local/python3/lib/python3.7/site-packages/
这里python3.7的site-packages具体在什么位置可以使用find /usr/ -name "site-packages"查看,它是一个找的过程,所以结果可能不会立马出来。
<2>为解决ModuleNotFoundError: No module named ‘apt_pkg’,我们将dist-packages中的apt_pkg.cpython-36m-aarch64-linux-gnu.so文件,软连接并更改名为apt_pkg.cpython-37m-aarch64-linux-gnu.so到python3.7的site-packages目录下:

cd /usr/local/python3/lib/python3.7/site-packages
sudo ln -s /usr/lib/python3/dist-packages/apt_pkg.cpython-36m-aarch64-linux-gnu.so apt_pkg.cpython-37m-aarch64-linux-gnu.so

具体路径根据自己实际情况更改。

ModuleNotFoundError: No module named ‘lsb_release’

在这里插入图片描述

原理跟第②步很像,就是原来的python3.6有的东西现在python3.7没有。
那么我们只要:sudo cp /usr/lib/python3/dist-packages/lsb_release.py /usr/bin/
然后就不报错啦。

2.Invoking “make -j4 -l4” failed

在这里插入图片描述
如果遇到这类报错,直接搜红字大概率搜不到问题所在,往上划划找找错误信息,可能是ModuleNotFoundError: No module named 'em’之类的,然后根据这个具体的错误信息去解决问题。
ModuleNotFoundError: No module named ‘em’ 的解决方法在3.部署yolov5和搭建Astra Pro深度相机环境(成功版)树莓派4B+Ubuntu18.04+ROS1-Melodic里面提到过,简略一点就是pip3 install empy==3.3.4

用亚博官方给的资料教程,把sdk驱动文件夹上传到相机工作空间的src中后,进行编译catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3时,在解决了上面的em模块找不到的问题后,重新编译后又出现了新的问题。

在这里插入图片描述
重点:file format not recognized; treating as linker script
/usr/bin/ld:/home/pi/orbbec_ws/src/orbbec-ros-sdk/SDK/lib/arm64/libOrbbecSDK.so:0: syntax error
ld链接器无法识别该.so文件的格式,试图将其作为链接脚本来处理。
file文件后发现它的格式是ASCII text。

在这里插入图片描述
解决参考这篇,大概意思就是我把文件先在Windows里解压了,然后再上传到Linux环境中,就有可能出错。
于是我就把sdk这个驱动文件的压缩包,重新直接上传到Ubuntu系统里,再解压它,就ok啦!

3.获得彩色图像

按照之前发的博客中的参考教程操作下来后,相机启动时会warning,如图:

在这里插入图片描述
这次我按亚博官方给的资料教程一步步操作下来,相比之前多了个驱动文件,这次启动相机后再用rviz查看图像时,就能看到彩色图像了,但是红外却检测不到了,之前有看到其他文章说,某两个图像似乎是不能一起看到的,其中一个应该就是红外图像,由于红外图像暂时不是我需要的,就先不管它了。

在这里插入图片描述

三、相机标定

这里只记录一些关键步骤,并不是完整的教程类整理。
①安装标定功能包:sudo apt install ros-melodic-camera-calibration*
②启动相机:roslaunch orbbec_camera astra.launch
它好像搁这卡住了,一直重复相似的信息:

在这里插入图片描述

重启树莓派解决。
③查看话题:rostopic list

在这里插入图片描述

④运行标定的程序:rosrun camera_calibration cameracalibrator.py image:=/camera/color/image_raw
在这里插入图片描述

直到右边全变绿:

在这里插入图片描述

⑤save后,标定结果存在 /tmp/calibrationdata.tar.gz 里,解压即可得到需要的文件。(注意及时保存)

在这里插入图片描述

  • 14
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
回答: 要安装英特尔D405深度相机,首先需要重新编译系统内核,以使内核能够识别D405i相机。这涉及到在内核编译过程中打补丁,将D405i的USB信息添加到相关文件中。\[1\]接下来,您需要安装ROS的一些包和依赖项。您可以使用以下命令安装rosinstall、python-rosinstall-generator、python-wstool和build-essential等软件包:sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential\[2\]最后,您需要安装ROS的官方包,以便与D405i相机进行通信。根据您使用的ROS版本,您可以使用以下命令安装适当的包://melodic sudo apt install ros-melodic-realsense2-camera sudo apt install ros-melodic-realsense2-description //kinetic sudo apt install ros-kinetic-realsense2-camera sudo apt install ros-kinetic-realsense2-description\[3\]通过按照这些步骤进行操作,您应该能够成功安装英特尔D405深度相机。 #### 引用[.reference_title] - *1* [英伟达 Jetson TX2 开发板安装英特尔 D435i 深度相机驱动](https://blog.csdn.net/SIR_wkp/article/details/103254051)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [RoboMaster视觉 深度相机(1):Ubuntu20.04上安装Intel D435深度相机SDK与ROS](https://blog.csdn.net/Yunhua__/article/details/122134729)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [ROS学习笔记(实践一)--英特尔D435i深度相机调试](https://blog.csdn.net/weixin_41866783/article/details/119342053)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值