0001-temp-commit-message.patch

J. Moringen, 05/31/2013 07:03 PM

Download (7.31 KB)

View differences:

proto/sandbox/rst/classification/ClassifiedRegion2D.proto
1
package rst.classification;
2

  
3
import "rst/geometry/BoundingBox.proto";
4
import "rst/classification/ClassificationResult.proto";
5

  
6
option java_outer_classname = "ClassifiedRegion2DType";
7

  
8
/**
9
 * Focus on image coordinate systems (vision-based).
10
 *
11
 * A image region with a classification result.
12
 *
13
 * @author Leon Ziegler <lziegler@techfak.uni-bielefeld.de>
14
 */
15
message ClassifiedRegion2D {
16

  
17
    /**
18
     * Region in the input image.
19
     */
20
    optional geometry.BoundingBox region = 1;
21

  
22
    /**
23
     * The class represented by the image region.
24
     */
25
    optional ClassificationResult result = 2;
26

  
27
}
proto/sandbox/rst/classification/ClassifiedRegion3D.proto
1
package rst.classification;
2

  
3
import "rst/geometry/BoundingBox3DFloat.proto";
4
import "rst/classification/ClassificationResult.proto";
5

  
6
option java_outer_classname = "ClassifiedRegion3DType";
7

  
8
/**
9
 * Focus on image coordinate systems (vision-based).
10
 *
11
 * A region in 3D space with a classification result.
12
 *
13
 * @author Leon Ziegler <lziegler@techfak.uni-bielefeld.de>
14
 */
15
message ClassifiedRegion3D {
16

  
17
    /**
18
     * Region in 3D space.
19
     */
20
    optional geometry.BoundingBox3DFloat region = 1;
21

  
22
    /**
23
     * The class represented by the 3D region.
24
     */
25
    optional ClassificationResult result = 2;
26

  
27
}
proto/sandbox/rst/geometry/CameraPose.proto
1
package rst.geometry;
2

  
3
import "rst/geometry/Pose.proto";
4

  
5
option java_outer_classname = "CameraPoseType";
6

  
7
/**
8
 * Pose of a camera with semantic annotation of the axes.
9
 *
10
 * @todo "extend explanation"
11
 *
12
 * @author Leon Ziegler <lziegler@techfak.uni-bielefeld.de>
13
 */
14
message CameraPose {
15

  
16
    /**
17
     * Semantic annotation of the axes. (all right-handed)
18
     */
19
    enum CoordinateFrame {
20

  
21
        /**
22
         * X: right - Y: down - Z: forward (depth axis)
23
         */
24
        CAMERA_IMAGE_FRAME = 0;
25

  
26
        /**
27
         * X: up - Y: right - Z: forward (depth axis)
28
         */
29
        CAMERA_X_UP_FRAME = 1;
30

  
31
        /**
32
         * X: left - Y: up - Z: forward (depth axis)
33
         */
34
        CAMERA_Y_UP_FRAME = 2;
35

  
36
        /**
37
         * X: forward (depth axis) - Y: left - Z: up
38
         */
39
        LASER_FRAME = 3;
40

  
41
        /**
42
         * X: right - Y: up - Z: towards viewer (negative depth axis)
43
         */
44
        SCREEN_FRAME = 4;
45

  
46
    }
47

  
48
    /**
49
     * Annotation of the axes.
50
     */
51
    optional CoordinateFrame coordinate_frame = 1 [default = CAMERA_IMAGE_FRAME];
52

  
53
    /**
54
     * TODO
55
     */
56
    required geometry.Pose pose = 2;
57

  
58
}
proto/sandbox/rst/geometry/FieldOfView.proto
1
package rst.geometry;
2

  
3
option java_outer_classname = "FieldOfViewType";
4

  
5
/**
6
 * The field of view of a sensor.
7
 *
8
 * @todo "extend explanation"
9
 *
10
 * @author Leon Ziegler <lziegler@techfak.uni-bielefeld.de>
11
 */
12
message FieldOfView {
13

  
14
    /**
15
     * An angle defining the horizontal bounds of the FOV.
16
     */
17
    // @constraint(value > 0)
18
    // @unit(radian)
19
    required float horizontal_aov = 1;
20

  
21
    /**
22
     * An angle defining the vertical bounds of the FOV.
23
     */
24
    // @constraint(value > 0)
25
    // @unit(radian)
26
    required float vertical_aov = 2;
27

  
28
}
proto/sandbox/rst/geometry/Frustum.proto
1
package rst.geometry;
2

  
3
import "rst/geometry/CameraPose.proto";
4
import "rst/geometry/FieldOfView.proto";
5

  
6
option java_outer_classname = "FrustumType";
7

  
8
/**
9
 * A camera's view frustum.
10
 *
11
 * @author Leon Ziegler <lziegler@techfak.uni-bielefeld.de>
12
 */
13
// @constraint(.maximal_distance > .minimal_distance)
14
message Frustum {
15

  
16
    /**
17
     * Origin of the frustum.
18
     */
19
    required CameraPose camera = 1;
20

  
21
    /**
22
     * The field of view of the frustum.
23
     */
24
    required FieldOfView fov = 2;
25

  
26
    /**
27
     * The minimal perceivable distance.
28
     */
29
    // @constraint(value > 0)
30
    // @unit(meter)
31
    optional float minimal_distance = 3 [default = 0];
32

  
33
    /**
34
     * The maximal perceivable distance.
35
     */
36
    // @constraint(value > 0)
37
    // @unit(meter)
38
    optional float maximal_distance = 4 [default = 99999];
39

  
40
    /**
41
     * The angular difference between the individual pixels in the
42
     * image
43
     */
44
    // @constraint(value > 0)
45
    // @unit(radian)
46
    optional float angular_resolution_x = 5 [default = 0];
47

  
48
    /**
49
     * The angular difference between the individual pixels in the
50
     * image
51
     */
52
    // @constraint(value > 0)
53
    // @unit(radian)
54
    optional float angular_resolution_y = 6 [default = 0];
55

  
56
}
proto/sandbox/rst/vision/LocatedXYZImage.proto
1
package rst.vision;
2

  
3
import "rst/geometry/Frustum.proto";
4
import "rst/vision/SimpleXYZImage.proto";
5

  
6
option java_outer_classname = "LocatedXYZImageType";
7

  
8
/**
9
 * A simple point cloud represented in 2D structure with information
10
 * from where it was taken.
11
 *
12
 * @author Leon Ziegler <lziegler@techfak.uni-bielefeld.de>
13
 */
14
message LocatedXYZImage {
15

  
16
    /**
17
     * The camera's frustum.
18
     */
19
    required geometry.Frustum camera = 1;
20

  
21
    /**
22
     * The background model.
23
     */
24
    required vision.SimpleXYZImage image = 2;
25

  
26
}
0
-