.. _package-rst-vision:
====================
Package rst.vision
====================
*Not documented*
Messages
========
.. container:: mess4ge-multi
.. container:: mess4ge-graph
.. digraph:: message_graph
fontname="Arial";
fontsize=11;
stylesheet="../_static/corlab.css";
node [fontsize=11]
node [fontname="Arial"]
edge [fontsize=11]
edge [fontname="Arial"]
"14" [label=<
| LocatedXYZImage |
|
SimpleXYZImage | image |
CameraPose | camera |
ViewFrustum | frustum |
>,shape=box,style=filled,fillcolor="white"];
"21" [label=< | ViewFrustum |
|
FieldOfView | fov |
FLOAT32 | minimal_distance |
FLOAT32 | maximal_distance |
>,shape=box,style=filled,fillcolor="white"];
"22" [label=< | FieldOfView |
|
FLOAT32 | horizontal_aov |
FLOAT32 | vertical_aov |
>,shape=box,style=filled,fillcolor="white"];
"16" [label=< | CameraPose |
|
CoordinateFrame | coordinate_frame |
Pose | pose |
>,shape=box,style=filled,fillcolor="white"];
"18" [label=< | Pose |
|
Translation | translation |
Rotation | rotation |
>,shape=box,style=filled,fillcolor="white"];
"20" [label=< | Rotation |
|
FLOAT64 | qw |
FLOAT64 | qx |
FLOAT64 | qy |
FLOAT64 | qz |
>,shape=box,style=filled,fillcolor="white"];
"19" [label=< | Translation |
|
FLOAT64 | x |
FLOAT64 | y |
FLOAT64 | z |
>,shape=box,style=filled,fillcolor="white"];
"17" [label=< | CoordinateFrame |
|
CAMERA_IMAGE_FRAME | 0 |
CAMERA_X_UP_FRAME | 1 |
CAMERA_Y_UP_FRAME | 2 |
LASER_FRAME | 3 |
SCREEN_FRAME | 4 |
>,shape=box,style=filled,fillcolor="white"];
"15" [label=< | SimpleXYZImage |
|
UINT32 | width |
UINT32 | height |
FLOAT32 | x |
FLOAT32 | y |
FLOAT32 | z |
>,shape=box,style=filled,fillcolor="white"];
"4" [label=< | HeadObjects |
|
HeadObject | head_objects |
>,shape=box,style=filled,fillcolor="white"];
"5" [label=< | HeadObject |
|
TrackingInfo | tracking_info |
BoundingBox | region |
Vec3DFloat | position |
Vec3DFloat | pose |
LabeledFace | faces |
FLOAT32 | speaking_probability |
OCTET-VECTOR | vfoa_target |
ClassificationResult | identity |
ClassificationResult | gender |
ClassificationResult | age |
>,shape=box,style=filled,fillcolor="white"];
"12" [label=< | ClassificationResult |
|
OCTET-VECTOR | decided_class |
ClassWithProbability | classes |
>,shape=box,style=filled,fillcolor="white"];
"13" [label=< | ClassWithProbability |
|
OCTET-VECTOR | name |
FLOAT32 | confidence |
>,shape=box,style=filled,fillcolor="white"];
"10" [label=< | LabeledFace |
|
OCTET-VECTOR | label |
Face | face |
>,shape=box,style=filled,fillcolor="white"];
"11" [label=< | Face |
|
BoundingBox | region |
FLOAT64 | confidence |
>,shape=box,style=filled,fillcolor="white"];
"9" [label=< | Vec3DFloat |
|
FLOAT32 | x |
FLOAT32 | y |
FLOAT32 | z |
>,shape=box,style=filled,fillcolor="white"];
"7" [label=< | BoundingBox |
|
Vec2DInt | top_left |
UINT32 | width |
UINT32 | height |
UINT32 | image_width |
UINT32 | image_height |
>,shape=box,style=filled,fillcolor="white"];
"8" [label=< | Vec2DInt |
|
INT32 | x |
INT32 | y |
>,shape=box,style=filled,fillcolor="white"];
"6" [label=< | TrackingInfo |
|
UINT32 | id |
>,shape=box,style=filled,fillcolor="white"];
"3" [label=< | LaserScan |
|
FLOAT32 | scan_values |
FLOAT32 | scan_angle |
>,shape=box,style=filled,fillcolor="white"];
"1" [label=< | CalibrationMatrices |
|
CameraMatrix3x4 | left |
CameraMatrix3x4 | right |
>,shape=box,style=filled,fillcolor="white"];
"2" [label=< | CameraMatrix3x4 |
|
FLOAT32 | c11 |
FLOAT32 | c12 |
FLOAT32 | c13 |
FLOAT32 | c14 |
FLOAT32 | c21 |
FLOAT32 | c22 |
FLOAT32 | c23 |
FLOAT32 | c24 |
FLOAT32 | c31 |
FLOAT32 | c32 |
FLOAT32 | c33 |
FLOAT32 | c34 |
>,shape=box,style=filled,fillcolor="white"];
"14":frustum -> "21" [];
"14":camera -> "16" [];
"14":image -> "15" [];
"21":fov -> "22" [];
"16" -> "17" [dir=both,arrowtail=odiamond];
"16":pose -> "18" [];
"16":coordinate_frame -> "17" [];
"18":rotation -> "20" [];
"18":translation -> "19" [];
"4":head_objects -> "5" [];
"5" -> "10" [dir=both,arrowtail=odiamond];
"5":age -> "12" [];
"5":gender -> "12" [];
"5":identity -> "12" [];
"5":faces -> "10" [];
"5":pose -> "9" [];
"5":position -> "9" [];
"5":region -> "7" [];
"5":tracking_info -> "6" [];
"12" -> "13" [dir=both,arrowtail=odiamond];
"12":classes -> "13" [];
"10":face -> "11" [];
"11":region -> "7" [];
"7":top_left -> "8" [];
"1":right -> "2" [];
"1":left -> "2" [];
.. container:: mess4ge-list
.. container:: messages
* :ref:`CalibrationMatrices `
* :ref:`LaserScan `
* :ref:`HeadObjects `
* :ref:`HeadObject `
* :ref:`Face `
* :ref:`CameraMatrix3x4 `
* :ref:`LocatedXYZImage `
* :ref:`SimpleXYZImage `
.. container:: clearer
clearer: should be made invisible via css
.. _message-rst-vision-calibrationmatrices:
Message CalibrationMatrices
---------------------------
.. container:: message-rst-vision-calibrationmatrices-multi
.. container:: message-rst-vision-calibrationmatrices-documentation
.. py:class:: rst.vision.CalibrationMatrices
A pair of 2D Points.
.. todo::
comment seems wrong
.. codeauthor:: Johannes Wienke
.. py:attribute:: left
:type: :py:class:`rst.vision.CameraMatrix3x4`
*Not documented*
.. py:attribute:: right
:type: :py:class:`rst.vision.CameraMatrix3x4`
*Not documented*
.. container:: message-rst-vision-calibrationmatrices-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/CalibrationMatrices.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/CalibrationMatrices.proto
:lines: 13-19
:language: protobuf
:emphasize-lines: 3-3,5-5
.. _message-rst-vision-laserscan:
Message LaserScan
-----------------
.. container:: message-rst-vision-laserscan-multi
.. container:: message-rst-vision-laserscan-documentation
.. py:class:: rst.vision.LaserScan
An object of this type represents a single laser scan carried out by an
appropriate planar laser range-finder.
.. codeauthor:: Leon Ziegler
.. py:attribute:: scan_values
:type: array of :py:class:`FLOAT32`
**Unit**: meter
A set of values coming from the laserscanning device.
.. py:attribute:: scan_angle
:type: :py:class:`FLOAT32`
**Unit**: radian
The angular range that is covered by the scan.
This value depends on the used hardware and equals the sensor's
one-dimensional field of view. The values from :py:attr:`scan_values ` are evenly distributed over this angular range.
.. container:: message-rst-vision-laserscan-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/LaserScan.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/LaserScan.proto
:lines: 11-29
:language: protobuf
:emphasize-lines: 7-7,17-17
.. _message-rst-vision-headobjects:
Message HeadObjects
-------------------
.. container:: message-rst-vision-headobjects-multi
.. container:: message-rst-vision-headobjects-documentation
.. py:class:: rst.vision.HeadObjects
A list of head objects.
.. codeauthor:: Vasil Khalidov
.. py:attribute:: head_objects
:type: array of :py:class:`rst.vision.HeadObject`
*Not documented*
.. container:: message-rst-vision-headobjects-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/HeadObjects.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/HeadObjects.proto
:lines: 12-16
:language: protobuf
:emphasize-lines: 3-3
.. _message-rst-vision-headobject:
Message HeadObject
------------------
.. container:: message-rst-vision-headobject-multi
.. container:: message-rst-vision-headobject-documentation
.. py:class:: rst.vision.HeadObject
Focus on image coordinate systems (vision-based).
A head object represented by its ID, location in the image and head
rotation angles.
id : head object identifier
.. todo::
what does the above mean?
.. codeauthor:: Vasil Khalidov
.. py:attribute:: tracking_info
:type: :py:class:`rst.tracking.TrackingInfo`
*Not documented*
.. py:attribute:: region
:type: :py:class:`rst.geometry.BoundingBox`
Head location in the input image.
.. py:attribute:: position
:type: :py:class:`rst.math.Vec3DFloat`
*Not documented*
.. py:attribute:: pose
:type: :py:class:`rst.math.Vec3DFloat`
-> pan
Pan head rotation angle. Positive: person looks to her or his
right side.
-> tilt
Tilt head rotation angle. Positive: person looks up.
-> roll
Roll head rotation angle. Positive: person's head rolled to
his right shoulder.
.. py:attribute:: faces
:type: array of :py:class:`rst.vision.HeadObject.LabeledFace`
.. todo::
semantic description
Repeated field because in cases of stereo processing there
might be faces from both cameras.
.. py:attribute:: speaking_probability
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: vfoa_target
:type: :py:class:`OCTET-VECTOR`
String description of the visual focus of attention of this
head.
.. py:attribute:: identity
:type: :py:class:`rst.classification.ClassificationResult`
*Not documented*
.. py:attribute:: gender
:type: :py:class:`rst.classification.ClassificationResult`
*Not documented*
.. py:attribute:: age
:type: :py:class:`rst.classification.ClassificationResult`
*Not documented*
.. container:: message-rst-vision-headobject-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/HeadObject.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/HeadObject.proto
:lines: 22-80
:language: protobuf
:emphasize-lines: 3-3,8-8,10-10,27-27,43-43,45-45,51-51,53-53,55-55,57-57
.. _message-rst-vision-headobject-labeledface:
Message LabeledFace
-------------------
.. container:: message-rst-vision-headobject-labeledface-multi
.. container:: message-rst-vision-headobject-labeledface-documentation
.. py:class:: rst.vision.HeadObject.LabeledFace
*Not documented*
.. py:attribute:: label
:type: :py:class:`OCTET-VECTOR`
*Not documented*
.. py:attribute:: face
:type: :py:class:`rst.vision.Face`
*Not documented*
.. container:: message-rst-vision-headobject-labeledface-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/HeadObject.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/HeadObject.proto
:lines: 50-56
:language: protobuf
:emphasize-lines: 3-3,5-5
.. _message-rst-vision-face:
Message Face
------------
.. container:: message-rst-vision-face-multi
.. container:: message-rst-vision-face-documentation
.. py:class:: rst.vision.Face
An object of this type represents a human face detected in an image.
The region of the image which corresponds to the face is
represented as a :py:class:`BoundingBox ` .
.. codeauthor:: Johannes Wienke
.. py:attribute:: region
:type: :py:class:`rst.geometry.BoundingBox`
TODO Bounding box for the detection.
.. py:attribute:: confidence
:type: :py:class:`FLOAT64`
**Unit**: TODO
TODO Detection confidence factor.
.. container:: message-rst-vision-face-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/stable/rst/vision/Face.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/stable/rst/vision/Face.proto
:lines: 15-28
:language: protobuf
:emphasize-lines: 6-6,12-12
.. _message-rst-vision-cameramatrix3x4:
Message CameraMatrix3x4
-----------------------
.. container:: message-rst-vision-cameramatrix3x4-multi
.. container:: message-rst-vision-cameramatrix3x4-documentation
.. py:class:: rst.vision.CameraMatrix3x4
Matrix for Camera Matrix Parameters K(R, t).
.. codeauthor:: Johannes Wienke
.. py:attribute:: c11
:type: :py:class:`FLOAT32`
First row.
.. py:attribute:: c12
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c13
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c14
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c21
:type: :py:class:`FLOAT32`
Second row.
.. py:attribute:: c22
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c23
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c24
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c31
:type: :py:class:`FLOAT32`
Third row.
.. py:attribute:: c32
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c33
:type: :py:class:`FLOAT32`
*Not documented*
.. py:attribute:: c34
:type: :py:class:`FLOAT32`
*Not documented*
.. container:: message-rst-vision-cameramatrix3x4-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/CameraMatrix3x4.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/CameraMatrix3x4.proto
:lines: 10-36
:language: protobuf
:emphasize-lines: 6-6,7-7,8-8,9-9,14-14,15-15,16-16,17-17,22-22,23-23,24-24,25-25
.. _message-rst-vision-locatedxyzimage:
Message LocatedXYZImage
-----------------------
.. container:: message-rst-vision-locatedxyzimage-multi
.. container:: message-rst-vision-locatedxyzimage-documentation
.. py:class:: rst.vision.LocatedXYZImage
A simple point cloud represented in 2D structure with information
from where it was taken.
By adding information about the pose of the camera and its
perceived view frustum, one can reconstruct the location and the
circumstances under which the provided point cloud was captured.
.. codeauthor:: Leon Ziegler
.. py:attribute:: image
:type: :py:class:`rst.vision.SimpleXYZImage`
The background model.
.. py:attribute:: camera
:type: :py:class:`rst.geometry.CameraPose`
The camera's pose in 3d space.
.. py:attribute:: frustum
:type: :py:class:`rst.geometry.ViewFrustum`
The camera's view frustum.
.. container:: message-rst-vision-locatedxyzimage-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/LocatedXYZImage.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/LocatedXYZImage.proto
:lines: 19-36
:language: protobuf
:emphasize-lines: 6-6,11-11,16-16
.. _message-rst-vision-simplexyzimage:
Message SimpleXYZImage
----------------------
.. container:: message-rst-vision-simplexyzimage-multi
.. container:: message-rst-vision-simplexyzimage-documentation
.. py:class:: rst.vision.SimpleXYZImage
**Constraint**: ``.width * .height = len(.x)``
**Constraint**: ``.width * .height = len(.y)``
**Constraint**: ``.width * .height = len(.z)``
Saves 3D data (X, Y, Z values) which have a 2D ordering.
This kind of depth-data is produced by e.g. Kinect or Swissranger
cameras.
:py:attr:`x `, :py:attr:`y `, :py:attr:`z ` are 1D arrays which save separately the
X, Y, Z values of the 3D points.
.. codeauthor:: Agnes Swadzba
.. py:attribute:: width
:type: :py:class:`UINT32`
**Constraint**: ``value > 0``
**Unit**: pixel
Width of the underlying 2D ordering structure.
.. py:attribute:: height
:type: :py:class:`UINT32`
**Constraint**: ``value > 0``
**Unit**: pixel
Height of the underlying 2D ordering structure.
.. py:attribute:: x
:type: array of :py:class:`FLOAT32`
The values are ordered by linearizing the underlying 2D structure row-wise.
.. py:attribute:: y
:type: array of :py:class:`FLOAT32`
See :py:attr:`x `.
.. py:attribute:: z
:type: array of :py:class:`FLOAT32`
See :py:attr:`x `.
.. container:: message-rst-vision-simplexyzimage-source
:download:`Download this file /home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/SimpleXYZImage.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-0.10-merge-simulator/rst-manual/../rst-proto/proto/sandbox/rst/vision/SimpleXYZImage.proto
:lines: 19-51
:language: protobuf
:emphasize-lines: 8-8,16-16,21-21,26-26,31-31