Edit this page
    
      
      
      
      Back to Projects List
ROS-IGTL-Bridge Video Streaming
Key Investigators
  - Junichi Tokuda (BWH)
 
  - Longquan Chen (BWH)
 
Project Description
Objective
  - Integrate compressed video streaming in ROS-IGTL-Bridge
 
Approach and Plan
  - Define ROS topic for video streaming
 
  - Compile ROS-IGTL-Bridge with the latest OpenIGTLink with compressed video streaming feature.
 
Progress and Next Steps
Progress
  - Solved a build error for OpenIGTLink in the Linux environment. See GitHub Issue Tracker.
 
  - Tested OpenIGTLink with VP9 support on Linux.
 
  - Added VP9 support in ROS-IGTL-Bridge
 
  - Install video_stream_opencv module
 
  - Install new OpenIGTLinkIF module with IGSIO integration. This adds compressed video streaming support in 3D Slicer.
 
  - Tested video streaming from ROS-IGTL-Bridge to 3D Slicer using Virtual Box.
 
Next Steps
  - Support more video formats (only BGR8 is supported currently) and codecs (e.g. AV1, H.265)
 
  - ROS topic to subscribe should be configurable. Currently it is hard-coded in the C++ source file.
 
Illustrations

##Instructions:
  - Download ROS-IGTL-Bridge from the CompressedVideoStreaming branch.
 
  - Install video_stream_opencv module in ROS.
 
  - Edit line 55 in ROS-IGTL-Bridge/src/ros_igtl_bridge.cpp and replace “IGTL_VIDEO_OUT” with “/webcom/image_raw”.
 
  - Start video_stream_opencv module by calling “roslaunch video_stream_opencv webcam.launch”
 
  - Start ROS-IGTL-Bridge by calling “roslaunch ros_igtl_bridge bridge.launch”. Configure it as a server.
 
  - Start 3D Slicer, open OpenIGTLinkIF module, and connect to the ROS-IGTL-Bridge as a client.
 
Background and References