双目图片转化成深度图
找到了把双目图片,转换成深度图的程序。
进行了小部分修改。
成功将EuRoC双目数据集转换成rgbd类似的形式。
但我用的是左目的图像和左目的时间戳哈。
左右目令时间戳相等,rgb和depth时间是相等的。相当于自己作了一个association.txt
跑出来效果很不好
ZED相机录制bag
注意刷新环境变量
Jetson Xavier NX 安装 ZED2相机 SDK及结合ROS使用_山水有相逢。的博客-CSDN博客
从rosbag提取图片和信息
用师姐给的 get_image.py 注意路径和图片格式
这两种 差不多 能成功
但是特征点只有二三十,容易跟踪失败,感觉需要从相机参数入手。
用ZED相机订阅rgb和depth
ZED相机录制bag
现在我们需要把我们工作空间的环境变量设置到bash中。
echo "source ~/catkin_zed/devel/setup.bash" >> ~/.bashrc
让上面的配置在当前的终端生效:
source ~/.bashrc
如果想要查看环境变量:
echo $ROS_PACKAGE_PATH
roscore
$ roslaunch zed_wrapper zed2.launch
修改参数
common.yaml
zed2.yaml
rostopic list
rosbag record -O spin360 /zed_node/rgb/camera_info /zed_node/depth/depth_registered
-O 参数告诉rosbag record将数据记录保存到名为spin360.bag的文件中,同时后面的话题参数告诉rosbag record只能录制这两个指定的话题rgb和depth
解图片不缺少
我直接在jetson上进行解图了,要用python2
出来的深度图很黑,很可能是相机标定的问题,确实离谱。
association脚本想换一下
在自己电脑装zed-sdk
cuda不匹配
安装anaconda3
conda create -n zed python=3.8 numpy
添加环境变量完 才能使用conda activate zed
sudo vim /etc/profile
最后加上
exportANACONDA_HOME=/home/zyl/anaconda3
exportPATH=$ANACONDA_HOME/bin:$PATH
conda env list 显示所有环境
conda list 显示所有安装的包
在指定环境中安装包
conda install --name <env_name> <package_name>
例如: conda install --name python2 pandas 即在名为“python2”的环境中安装pandas包。
在当前环境中安装包
conda install <package_name>
卸载指定环境中的包
conda remove --name <env_name> <package_name>
卸载当前环境中的包
conda remove <package_name>
发现conda只能下载更低版本
多版本cuda切换,主要是软链接
sudo rm -rf /usr/local/cuda #删除之前创建的软链接
sudo ln -s /usr/local/cuda-9.0 /usr/local/cuda #创建链接到cuda9.0的软链接
nvcc --version #查看当前cuda版本
ubuntu下安装多版本cuda及版本切换教程_ubuntu切换cuda版本_zeeq_的博客-CSDN博客
查看已安装的cuda版本有哪些
一般如果我们都是使用默认位置安装cuda的话,那么其安装路径都是/usr/local。
ls -l /usr/local | grep cuda
下载cuda11.8
在任一终端执行sudo gedit ~/.bashrc,打开环境变量配置文本。将里面所有与cuda有关的带版本号路径都改为无版本号的。比如我之前已经安装好了cuda10.0,然后当时配置环境变量时,有许多/usr/local/cuda-10.0/这样的路径,要做的就是把所有的-10.0都去掉。修改好之后,保存并关闭文件,然后在终端执行命令source ~/.bashrc使环境变量的修改生效。
然后,要切换cuda版本的时候,直接建立对应的软链接即可,命令如下:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include 这里好像要改cudnn*.h
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*