5.2.2 数据展示
Web展示
功能介绍
Web展示用于预览摄像头图像(JPEG格式)和算法效果,通过网络将图像和算法结果传输到PC浏览器,然后进行渲染显示。该展示端还支持仅显示视频,而不渲染智能结果。
代码仓库:https://github.com/D-Robotics/hobot_websocket
支持平台
平台 | 运行方式 | 示例功能 |
---|---|---|
RDK X3, RDK X3 Module | Ubuntu 20.04 (Foxy), Ubuntu 22.04 (Humble) | 启动MIPI摄像头,并通过Web展示图像 |
RDK X5, RDK X5 Module,RDK S100 | Ubuntu 22.04 (Humble) | 启动MIPI摄像头,并通过Web展示图像 |
RDK Ultra | Ubuntu 20.04 (Foxy) | 启动MIPI摄像头,并通过Web展示图像 |
X86 | Ubuntu 20.04 (Foxy) | 启动USB摄像头,并通过Web展示图像 |
准备工作
RDK平台
-
确认摄像头F37正确接到RDK上
-
确认PC可以通过网络访问RDK
-
确认已成功安装TogetheROS.Bot
X86平台
-
确认X86平台系统为Ubuntu 20.04,且已成功安装tros.b
-
确认USB摄像头接入主机USB插口,并可正常识别
使用方式
RDK平台
-
通过SSH登录RDK,启动板端相关程序
a. 启动mipi_cam
- Foxy
- Humble
# 配置tros.b环境
source /opt/tros/setup.bash# 配置tros.b环境
source /opt/tros/humble/setup.bashros2 launch mipi_cam mipi_cam.launch.py mipi_video_device:=F37
b. 启动编码
- Foxy
- Humble
# 配置tros.b环境
source /opt/tros/setup.bash# 配置tros.b环境
source /opt/tros/humble/setup.bashros2 launch hobot_codec hobot_codec_encode.launch.py
c. 启动websocket
- Foxy
- Humble
# 配置tros.b环境
source /opt/tros/setup.bash# 配置tros.b环境
source /opt/tros/humble/setup.bashros2 launch websocket websocket.launch.py websocket_image_topic:=/image_jpeg websocket_only_show_image:=true
-
PC浏览器(chrome/firefox/edge)输入
http://IP:8000
,即可查看图像,IP为RDK IP地址。
X86平台
-
启动hobot_usb_cam节点
- Foxy
- Humble
# 配置tros.b环境
source /opt/tros/setup.bash# 配置tros.b环境
source /opt/tros/humble/setup.bash# usb_video_device需要更改为实际usb摄像头video节点
ros2 launch hobot_usb_cam hobot_usb_cam.launch.py usb_image_width:=1280 usb_image_height:=720 usb_video_device:=/dev/video0 -
启动websocket节点
- Foxy
- Humble
# 配置tros.b环境
source /opt/tros/setup.bash# 配置tros.b环境
source /opt/tros/humble/setup.bashros2 launch websocket websocket.launch.py websocket_image_topic:=/image websocket_only_show_image:=true
-
PC浏览器(chrome/firefox/edge)输入
http://IP:8000
,即可查看图像效果,IP为PC IP地址,若在本机访问,也可使用localhost。
注意事项
-
websocket需要使用8000端口,如果端口被占用,则会启动失败,解决方法如下:
-
使用
lsof -i:8000
命令查看8000端口占用进程,使用kill <PID>
关闭占用8000端口进程,然后重新启动websocket即可。 -
若用户不想停止当前正在占用8000端口的服务,可以修改
/opt/tros/${TROS_DISTRO}/lib/websocket/webservice/conf/nginx.conf
配置文件中的listen
端口号,改为大于1024且未使用的端口号。修改端口号后,浏览器端使用的URL也要同步修改。
-
HDMI展示
功能介绍
本章节介绍通过HDMI展示camera nv12图像的使用,RDK通过HDMI接显示器即可显示实时图像效果,对应于hobot_hdmi package。
代码仓库:https://github.com/D-Robotics/hobot_hdmi