Web展示

功能介绍

Web展示用于预览摄像头图像(JPEG格式)和算法效果,通过网络将图像和算法结果传输到PC浏览器,然后进行渲染显示。该展示端还支持仅显示视频,而不渲染智能结果。

代码仓库:https://c-gitlab.horizon.ai/HHP/box/hobot_websocket

支持平台

平台 运行方式 示例功能
旭日X3派 Ubuntu 20.04 启动MIPI摄像头人体检测并通过Web展示图像和算法效果
X86 Ubuntu 20.04 启动USB摄像头,并通过Web展示图像

准备工作

旭日X3派

  1. 确认摄像头F37正确接到旭日X3派上

  2. 确认PC可以通过网络访问旭日X3派

  3. 确认已成功安装TogetheROS.Bot

X86平台

  1. 确认X86平台系统为Ubuntu 20.04,且已成功安装tros.b

  2. 确认USB摄像头接入主机USB插口,并可正常识别

使用方式

旭日X3派

  1. 通过SSH登录旭日X3派,启动板端相关程序

    source /opt/tros/setup.bash
    
    ros2 launch websocket hobot_websocket.launch.py
    
  2. PC浏览器(chrome/firefox/edge)输入http://IP:8000,即可查看图像和算法效果,IP为X3派IP地址。

    websocket

X86平台

  1. 启动hobot_usb_cam节点

    source /opt/tros/setup.bash
    
    # video_device需要更改为实际usb摄像头video节点
    ros2 run hobot_usb_cam hobot_usb_cam --ros-args -p pixel_format:=mjpeg -p image_width:=1280 -p image_height:=720 -p zero_copy:=false -p video_device:="/dev/video0"
    
  2. 启动websocket节点

    第一次运行要启动webservice服务,运行方法为:

    source /opt/tros/setup.bash
    ros2 launch websocket hobot_websocket_service.launch.py
    

    启动websocket

    source /opt/tros/setup.bash
    
    # 启动websocket
    ros2 run websocket websocket --ros-args -p image_topic:=/image -p image_type:=mjpeg -p only_show_image:=true 
    
  3. PC浏览器(chrome/firefox/edge)输入http://IP:8000,即可查看图像效果,IP为PC IP地址,若在本机访问,也可使用localhost。

注意事项

  1. X86 Ubuntu方式运行时,第一次运行要手动启动webservice服务。

  2. webservice服务需要使用8000端口,如果端口被占用,则会启动失败,解决方法如下:

    • 使用lsof -i:8000命令查看8000端口占用进程,使用kill <PID>关闭占用8000端口进程,然后重新启动webservice服务即可。

    • 若用户不想停止当前正在占用8000端口的服务,可以修改 /opt/tros/lib/websocket/webservice/conf/nginx.conf 配置文件中的listen端口号,改为大于1024且未使用的端口号。修改端口号后,浏览器端使用的URL也要同步修改。