乐视三合一体感深度相机AstraPro图像获取流程【必看】

news/2024/7/8 3:12:35

1、下载ros包或者自己去github
如果不能科学上网,可以在这里下载所有源代码。
下载链接:https://download.csdn.net/download/ryanji/87990936

git clone https://github.com/orbbec/ros_astra_camera.git
git clone https://github.com/libuvc/libuvc.git

2、安装依赖

sudo apt install libgflags-dev  ros-$ROS_DISTRO-image-geometry ros-$ROS_DISTRO-camera-info-manager ros-$ROS_DISTRO-image-transport ros-$ROS_DISTRO-image-publisher libgoogle-glog-dev libusb-1.0-0-dev libeigen3-dev ros-$ROS_DISTRO-astra-camera ros-$ROS_DISTRO-astra-launch ros-$ROS_DISTRO-libuvc-* ros-$ROS_DISTRO-rgbd-launch

(1)、在openNI驱动包中进行下列操作

cd OpenNI-Linux-x64-2.3
sudo chmod a+x install.sh
sudo ./install.sh

插拔摄像头之后

source OpenNIDevEnvironment

编译

cd Samples/SimpleViewer
make

连接设备,执行示例

cd Bin/x64-Release
./SimpleViewer

此时可以看到深度图像
在这里插入图片描述
假如没有图像,确认已重新插拔。再不行执行命令

sudo apt-get install build-essential freeglut3 freeglut3-dev
ldconfig -p | grep libudev.so.1
cd /lib/x86_64-linux-gnu
sudo ln -s libudev.so.x.x.x libudev.so.1

(2)、在libuvc驱动包中进行下列操作

cd libuvc
mkdir build && cd build
cmake .. && make -j 
sudo make install
sudo cp /usr/include/libusb-1.0/libusb.h  /usr/local/include/libuvc/
sudo ldconfig

3、创建ros工作区

mkdir -p ~/ros_ws/src
  • 将开头下载的src包ros_astra_camera放入工作区
 cd ~/ros_ws/src
  • Build
cd ~/ros_ws
catkin_make
  • 安装udev
cd ~/ros_ws
source ./devel/setup.bash
roscd astra_camera
./scripts/create_udev_rules
sudo udevadm control --reload && sudo  udevadm trigger
  • 编辑source ~/.bashrc
echo "source ~/ros_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

4、打开相机

  • 深度图大小640*480
  • 修改astra_pro.launch文件
    将
lsusb 

会得到usb列表
在这里插入图片描述
其中0502是彩色图的usb接口,0403是深度图接口。将launch文件里的对应product_id改成你自己电脑上的接口即可。

  • 在launch文件夹下新建一个uvc_camera.launch
    内容如下
<launch>
  <node pkg="uvc_camera" type="uvc_camera_node" name="uvc_camera" output="screen">
        <param name="device" type="string" value="/dev/video4" /> 
        <param name="width" type="int" value="640" />
        <param name="height" type="int" value="480" />
        <param name="fps" type="int" value="30" />
        <param name="frame_id" type="string" value="camera_rgb_optical_frame" />
    </node>
</launch>

通过插拔摄像头确定 device 的id
ls dev 可以看到,基本上是/dev/video,后面的数字会改变。

sudo apt-get install uvc_camera

如果安装不了,无视即可,继续往下走。

  • 打开terminal 1
    source ./devel/setup.bash
    roslaunch astra_camera uvc_camera.launch
    roslaunch astra_camera astra_pro.launch
  • 打开terminal 2
    source ./devel/setup.bash
    rviz
    添加image,topic是/image_raw
    添加pointcloud2,topic是/camera/depth/points
    可以看到图像和点云,记得把fixed_frame设置成camera
    在这里插入图片描述

后续都是参数调整,可以不看
5、参数设置
rosrun rqt_reconfigure rqt_reconfigure

  • 选择topics / services/ parameters
    rostopic list
    rosservice list
    rosparam list
  • 相机的 extrinsic parameter
    rostopic echo /camera/extrinsic/depth_to_color
  • 获得相机参数
    rosservice call /camera/get_camera_params “{}”
    设置曝光
  1. 打开ir流。默认ir_exposure是3000,uvc_exposure是157。
  2. 设置曝光值
    rosservice call /camera/set_uvc_auto_exposure ‘{data: false}’
    rosservice call /camera/set_ir_auto_exposure “{data: false}”
    rosservice call /camera/set_ir_exposure “{data: 3000}”
    rosservice call /camera/set_uvc_exposure “{data: 157}”
    rosservice call /camera/get_ir_exposure “{}”
    rosservice call /camera/get_uvc_exposure “{}”
    设置增益
  3. 打开ir流。默认ir_gain是2000,uvc_gain是0。
  4. 设置增益值
    Get Gain
    rosservice call /camera/get_ir_gain ‘{}’ # OpenNI camera
    rosservice call /camera/get_uvc_gain “{}” # UVC camera
    rosservice call /camera/set_ir_gain “{data: 2000}”
    roservice call /camera/set_uvc_gain “{data: 0}”

http://lihuaxi.xjx100.cn/news/1304846.html

相关文章

【WSN定位】基于浣熊优化算法的多通信半径和跳距加权Dvhop定位算法【Matlab代码#46】

文章目录 【可更换其他算法&#xff0c;获取资源请见文章第6节&#xff1a;资源获取】1. Dvhop定位算法2. 原始浣熊优化算法2.1 开发阶段2.2 探索阶段 3. 多通信半径和跳距加权策略3.1 多通信半径策略3.2 跳距加权策略 4. 部分代码展示5. 仿真结果展示6. 资源获取 【可更换其他…

Linux-CentOS/统信UOS(v20-1060a/e)安装.net core 6.0运行环境

打开终端&#xff0c;输入以下指令&#xff0c;将Microsoft包的签名密钥添加到受信任密钥列表&#xff0c;同时添加Microsoft包存储库 //如果是管理员账号 例如 root 登录的系统&#xff0c;那么前面的sudo可以省略 sudo rpm -Uvh https://packages.microsoft.com/config/cent…

Distractor-aware Siamese Networks for Visual Object Tracking(DaSiamRPN)

Distractor-aware Siamese Networks for Visual Object Tracking&#xff08;DaSiamRPN&#xff0c;ECCV2018&#xff09; 该论文针对以下三个问题&#xff0c;分别进行了改进&#xff1a; 常见的Siam类跟踪方法只能区分目标和无语义信息的背景&#xff08;即简单背景&#x…

MMdetection框架速成系列 第04部分:配置文件详细解析+文件结构剖析+Config类核心实现

&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697;&#x1f697; MMdetection框架速成系列 MMdetect…

正则表达式和BeautifulSoup

文章目录 1、正则表达式介绍2、正则表达式和BeautifulSoup3、获取属性4、Lambda表达式 1、正则表达式介绍 正则表达式是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。它描述了一种字符串匹配的模式&#xff08;pattern&#xff09;&#xff0c;可以用来…

解决方案︱视频孪生智慧发电厂解决方案

一、方案概述 现代化发电厂的自动化、信息化程度都相对较高&#xff0c;各种系统的部署&#xff0c;软硬件的联合应用&#xff0c;都使得电厂管理的重要性更为突出&#xff0c;同时也增加了管理的工作量。 视频孪生智慧电厂解决方案&#xff0c;旨在通过三维可视化技术、快速…

电脑-问题

如果使用了小米路由器&#xff0c;有望 但是平凡跳转到miwifi进行检查&#xff0c;或者显示证书问题 在浏览器设置里搜索dns&#xff0c;将 确定如何通过安全连接来连接到网站后面部分改成自定义&#xff1a; https://dns.alidns.com/dns-query 主要原因是&#xff1a; edge新…

深入探索APP架构:构建高效、可扩展的移动应用

引言 移动应用开发是一个快速发展的领域&#xff0c;而良好的应用架构对于构建高效、可扩展的应用至关重要。作为一名技术专家&#xff0c;我们需要深入了解APP架构的核心原则和设计思想&#xff0c;并学会如何应用它来构建出色的移动应用。本篇博客将详细介绍APP架构&#xf…