Candy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | Friends | List of all members
HVR::KinectDepthCamera Class Reference

The Kinect depth camera connects a Kinect to provide depth image data. More...

Inheritance diagram for HVR::KinectDepthCamera:
Inheritance graph
[legend]

Classes

struct  Acceleration
 
struct  Collector
 

Public Member Functions

 KinectDepthCamera (H3D::Inst< H3D::SFNode > _metadata=0, H3D::Inst< H3D::SFVec2f > _fieldOfView=0, H3D::Inst< ViewSize > _viewSize=0, H3D::Inst< H3D::SFBool > _updateBackground=0, H3D::Inst< H3D::SFFloat > _maximumBackgroundDistance=0, H3D::Inst< H3D::SFFloat > _backgroundDepthMargin=0, H3D::Inst< H3D::SFInt32 > _backgroundPixelMargin=0, H3D::Inst< SFImage > _depthData=0, H3D::Inst< SFPositionImage > _positionData=0, H3D::Inst< SFBackgroundImage > _depthDataBackground=0, H3D::Inst< SFPaintTexture > _debugTexture=0, H3D::Inst< H3D::SFInt32 > _deviceId=0, H3D::Inst< H3D::SFFloat > _depthScaleFactor=0, H3D::Inst< H3D::SFFloat > _depthOffsetFactor=0, H3D::Inst< Acceleration > _acceleration=0, H3D::Inst< H3D::SFVec2f > _angleLimits=0, H3D::Inst< H3D::SFFloat > _angle=0, H3D::Inst< Collector > _collector=0)
 
void initialize ()
 
- Public Member Functions inherited from HVR::DepthCamera
 DepthCamera (H3D::Inst< H3D::SFNode > _metadata=0, H3D::Inst< H3D::SFVec2f > _fieldOfView=0, H3D::Inst< ViewSize > _viewSize=0, H3D::Inst< H3D::SFBool > _updateBackground=0, H3D::Inst< H3D::SFFloat > _maximumBackgroundDistance=0, H3D::Inst< H3D::SFFloat > _backgroundDepthMargin=0, H3D::Inst< H3D::SFInt32 > _backgroundPixelMargin=0, H3D::Inst< SFImage > _depthData=0, H3D::Inst< SFPositionImage > _positionData=0, H3D::Inst< SFBackgroundImage > _depthDataBackground=0, H3D::Inst< SFPaintTexture > _debugTexture=0)
 
virtual std::string defaultXMLContainerField ()
 
H3D::Vec3f pixel2DtoLine (float x, float y)
 Convert a pixel coordinate on the Kinect image into a 3D line representing that pixels direction from the Kinects point of view. More...
 
H3D::Vec3f pixel2Dto3D (float x, float y, float d)
 Convert a pixel coordinate on the Kinect image and depth value into a 3D position from the Kinects point of view. More...
 
H3D::Vec3f pixel2Dto3D (H3D::Vec3f p)
 Convert a pixel coordinate on the Kinect image (x,y,depth) into a 3D position from the Kinects point of view. More...
 
H3D::Vec3f point2DtoLine (float x, float y)
 Convert a point on the Kinect image into a 3D line representing that pixels direction from the Kinects point of view. More...
 
H3D::Vec3f point2Dto3D (float x, float y, float d)
 Convert a point on the Kinect image into a 3D position from the Kinects point of view. More...
 
H3D::Vec3f point2Dto3D (H3D::Vec3f p)
 Convert a point on the Kinect image into a 3D position from the Kinects point of view. More...
 
const std::vector< Shape > & getShapes ()
 
H3D::Vec2f getExtremes ()
 Returns a 2D vector containing the largest and smallest value of the depth in x and y, respectively. More...
 
const ExtremesMapgetExtremesMap ()
 Returns a map of extremes. More...
 

Public Attributes

std::auto_ptr< H3D::SFInt32deviceId
  (initialize only) The Kinect device to read data from. More...
 
std::auto_ptr< H3D::SFFloatdepthScaleFactor
  (input/output) This field controls the scale factor used when converting the Kinect data converted to metric values. More...
 
std::auto_ptr< H3D::SFFloatdepthOffsetFactor
  (input/output) This field controls the offset factor used when converting the Kinect data converted to metric values. More...
 
std::auto_ptr< Accelerationacceleration
  (output only) This SFVec3f field reads the acceleration value from the Kinect. More...
 
std::auto_ptr< H3D::SFVec2fangleLimits
  (input/output) The limits of the tilt angle of the Kinect. More...
 
std::auto_ptr< H3D::SFFloatangle
  (input/output) The tilt angle of the Kinect. More...
 
- Public Attributes inherited from HVR::DepthCamera
struct HVR_API Shape
 
struct HVR_API ExtremesMap
 
std::auto_ptr< H3D::SFVec2ffieldOfView
  (input/output) This camera field of view is used when converting coordinates between 2D and 3D. More...
 
std::auto_ptr< ViewSizeviewSize
  (output only) This field holds the width and height of the view at the distance of one length unit. More...
 
std::auto_ptr< H3D::SFBoolupdateBackground
  (input/output) The background image (depthDataBackground) will be updated if this field is set to true. More...
 
std::auto_ptr< H3D::SFFloatmaximumBackgroundDistance
  (input/output) This is the largest distance that the background image may contain. More...
 
std::auto_ptr< H3D::SFFloatbackgroundDepthMargin
  (input/output) This is a margin removed from the depth when specifying the background, in meters. More...
 
std::auto_ptr< H3D::SFInt32backgroundPixelMargin
  (input/output) This is the margin around object when specifying the background, in pixels. More...
 
std::auto_ptr< SFImagedepthData
  (input/output) This is the depth data from the depth camera, in meters. More...
 
std::auto_ptr< SFPositionImagepositionData
  (output only) This is the 3D pixel position data from the depth camera, in meters and camera coordinates. More...
 
std::auto_ptr< SFBackgroundImagedepthDataBackground
  (output only) The depth camera holds a background image to more easily remove uninteresting data. More...
 
std::auto_ptr< SFPaintTexturedebugTexture
  (input/output) When specified, debug data are drawn to this texture. More...
 

Static Public Attributes

static H3D::H3DNodeDatabase database
 
- Static Public Attributes inherited from HVR::DepthCamera
static H3D::H3DNodeDatabase database
 

Protected Attributes

std::auto_ptr< Collectorcollector
 
- Protected Attributes inherited from HVR::DepthCamera
struct HVR_API ViewSize
 
struct HVR_API SFBackgroundImage
 
struct HVR_API SFPositionImage
 

Friends

struct Collector
 
struct Acceleration
 

Additional Inherited Members

- Public Types inherited from HVR::DepthCamera
typedef
H3D::H3DImageObject::SFImage 
SFImage
 
typedef H3D::TypedSFNode
< Candy::PaintTexture
SFPaintTexture
 
typedef std::vector< H3D::Vec3f > contour_t
 
typedef std::vector< contour_t > contours_t
 
- Protected Member Functions inherited from HVR::DepthCamera
void update_debug_texture ()
 

Detailed Description

The Kinect depth camera connects a Kinect to provide depth image data.

Member Data Documentation

std::auto_ptr< Acceleration > HVR::KinectDepthCamera::acceleration

(output only) This SFVec3f field reads the acceleration value from the Kinect.

Since the Kinect is typically stationary, this will be the gravity vector indicating the tilt of the camera, and fairly constant over time. Also, reading this value will lock and synchronize with the Kinect driver, so do not read it unnecessarily.

std::auto_ptr< H3D::SFFloat > HVR::KinectDepthCamera::angle

(input/output) The tilt angle of the Kinect.

std::auto_ptr< H3D::SFVec2f > HVR::KinectDepthCamera::angleLimits

(input/output) The limits of the tilt angle of the Kinect.

std::auto_ptr< H3D::SFFloat > HVR::KinectDepthCamera::depthOffsetFactor

(input/output) This field controls the offset factor used when converting the Kinect data converted to metric values.

This parameter is inserted in the convertion equation D = scale/(offset-value).

std::auto_ptr< H3D::SFFloat > HVR::KinectDepthCamera::depthScaleFactor

(input/output) This field controls the scale factor used when converting the Kinect data converted to metric values.

This parameter is inserted in the convertion equation D = scale/(offset-value).

std::auto_ptr< H3D::SFInt32 > HVR::KinectDepthCamera::deviceId

(initialize only) The Kinect device to read data from.