= Depthcloud encoder that enables ros3d.js-based point cloud streaming =

 * Maintainer: [[Julius Kammerl|Julius Kammerl]]
 * License: BSD
 * Bugtracker: https://github.com/RobotWebTools/depthcloud_encoder/issues
 * Source: https://github.com/RobotWebTools/depthcloud_encoder

<<TOC(4)>>
== About ==
This package subscribes to the depth and rgb image of the openni_camera node and generates a single image stream that can be used to generate 3D point clouds in the web browser.


## see http://www.ros.org/wiki/StyleGuide for how to use this macro
{{{
#!clearsilver CS/NodeAPI
param {
  1.name = ~depth
  1.type = string 
  1.desc = Depth image topic to subscribe to
  1.default = /camera/depth/image

  2.name = ~rgb
  2.type = string
  2.desc = Color image topic to subscribe to
  2.default = /camera/rgb/image

}
pub{
  0.name = depthcloud_encoded
  0.type = sensor_msg/Image
  0.desc = Combined depth and color image
}


}}}


== Usage ==

The depthcloud encoded images can be streamed to a web browser with the help of the [[ros_web_video]] package. In order to increase the dynamic range of the streamed depth image, it is split into two individual frames that encode the captured depth information from 0 to 3 meters and from 3 to 6 meters, respectively. Furthermore, compression artifacts are reduced by filling areas of unknown depth information with interpolated sample data. A binary mask is used to detect and omit these samples during decoding. Once this video stream is received by the web browser, it is assigned to a WebGL texture object which allows for fast rendering of the point cloud on the GPU. Here, a vertex shader is used to reassemble the depth and color data followed by generating a colored point cloud. In addition, a filter based on local depth variance is used to further reduce the impact of video compression distortion. 


== Source Code ==
Source code is available at [[https://github.com/RobotWebTools/depthcloud_encoder]]. 

== Support ==
Please send bug reports to the [[https://github.com/RobotWebTools/ros_web_video/issues|GitHub Issue Tracker]]. Feel free to contact us at any point with questions and comments. 

 * [[mailto:robot-web-tools@googlegroups.com|robot-web-tools@googlegroups.com]]


## AUTOGENERATED DON'T DELETE
## CategoryStack