-
Notifications
You must be signed in to change notification settings - Fork 2
JSON message formats in the pipeline
mihai-trascau edited this page May 4, 2013
·
4 revisions
This page describes the formats of the JSON messages that are passed through the pipeline.
- Acquisition
- from Kinect sensors (into "measurements" queue)
- from Arduino sensors (into "measurements" queue)
{ "description" : "Example of JSON message for the kinect skeleton measurement",
"type" : "object",
"properties" : {
"created_at" : {
"title" : "Specifies the creation timestamp of the measurement",
"type" : "number",
"required" : "true"
},
"context" : {
"title" : "Specifies the context of the measurement",
"type" : "string",
"required" : "true"
},
"sensor_type" : {
"title" : "Specifies the type of sensor (normally 'kinect')",
"type" : "string",
"required" : "true"
},
"sensor_id" : {
"title" : "Specifies the id of the sensor",
"type" : "string",
"required" : "true"
},
"sensor_position" : {
"title" : "Specifies the position of the sensor wrt the room",
"type" : "object",
"required" : "true",
"properties" : {
"X" : { "title" : "Coordinate X of sensor in the room space", "type" : "number", "required" : "true" },
"Y" : { "title" : "Coordinate Y of sensor in the room space", "type" : "number", "required" : "true" },
"Z" : { "title" : "Coordinate Z of sensor in the room space", "type" : "number", "required" : "true" },
"alpha" : { "title" : "Angle alpha of sensor in the room space", "type" : "number", "required" : "true" },
"beta" : { "title" : "Angle beta of sensor in the room space", "type" : "number", "required" : "true" },
"gamma" : { "title" : "Angle gamma of sensor in the room space", "type" : "number", "required" : "true" }
}
},
"player" : {
"title" : "Specifies the id of the player (XnUserID)",
"type" : "number",
"required" : "true"
},
"type" : {
"title" : "Specifies the measurement type",
"type" : "string",
"required" : "true"
},
"skeleton_3D" : {
"title" : "Specifies the 3D joints",
"type" : "object",
"required" : "true",
"properties" : {
"head" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"neck" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"left_shoulder" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"right_shoulder" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"left_elbow" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"right_elbow" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"left_hand" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"right_hand" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"torso" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"left_hip" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"right_hip" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"left_knee" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"right_knee" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"left_foot" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
},
"right_foot" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
"Z" : { "type" : "number", "required" : "true"}
}
}
},
"skeleton_2D" : {
"title" : "Specifies the 2D joints",
"type" : "object",
"required" : "true",
"properties" : {
"head_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"neck_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"left_shoulder_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"right_shoulder_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"left_elbow_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"right_elbow_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"left_hand_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"right_hand_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"torso_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"left_hip_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"right_hip_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"left_knee_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"right_knee_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"left_foot_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
},
"right_foot_2D" : { "type" : "object", "required" : "true", "properties" : {
"X" : { "type" : "number", "required" : "true"},
"Y" : { "type" : "number", "required" : "true"},
}
}
}
}}
{ "description" : "Example of JSON message for the kinect image measurement",
"type" : "object",
"properties" : {
"created_at" : {
"title" : "Specifies the creation timestamp of the measurement",
"type" : "number",
"required" : "true"
},
"context" : {
"title" : "Specifies the context of the measurement",
"type" : "string",
"required" : "true"
},
"sensor_type" : {
"title" : "Specifies the type of sensor (normally \"kinect\")",
"type" : "string",
"required" : "true"
},
"sensor_id" : {
"title" : "Specifies the id of the sensor",
"type" : "string",
"required" : "true"
},
"sensor_position" : {
"title" : "Specifies the position of the sensor wrt the room",
"type" : "object",
"required" : "true",
"properties" : {
"X" : { "title" : "Coordinate X of sensor in the room space", "type" : "number", "required" : "true" },
"Y" : { "title" : "Coordinate Y of sensor in the room space", "type" : "number", "required" : "true" },
"Z" : { "title" : "Coordinate Z of sensor in the room space", "type" : "number", "required" : "true" },
"alpha" : { "title" : "Angle alpha of sensor in the room space", "type" : "number", "required" : "true" },
"beta" : { "title" : "Angle beta of sensor in the room space", "type" : "number", "required" : "true" },
"gamma" : { "title" : "Angle gamma of sensor in the room space", "type" : "number", "required" : "true" }
}
},
"type" : {
"title" : "Specifies the measurement type",
"type" : "string",
"enum" : [ "image_depth", "image_rgb" ],
"required" : "true"
},
"image_depth" : {
"title" : "Specifies a depth image measurement",
"type" : "object",
"optional" : "true",
"properties" : {
"encoder_name" : { "title" : "Type of the encoder for the image measurement (only jpg for now)",
"type" : "string",
"enum" : [ "jpg" ],
"required" : "true"
},
"image" : { "title" : "Encoded image content",
"type" : "string",
"required" : "true"
},
"width" : { "title" : "Width of the encoded image",
"type" : "number",
"required" : "true"
},
"height" : { "title" : "Height of the encoded image",
"type" : "number",
"required" : "true"
}
}
},
"image_depth" : {
"title" : "Specifies a RGB image measurement",
"type" : "object",
"optional" : "true",
"properties" : {
"encoder_name" : { "title" : "Type of the encoder for the image measurement (only jpg for now)",
"type" : "string",
"enum" : [ "jpg" ],
"required" : "true"
},
"image" : { "title" : "Encoded image content",
"type" : "string",
"required" : "true"
},
"width" : { "title" : "Width of the encoded image",
"type" : "number",
"required" : "true"
},
"height" : { "title" : "Height of the encoded image",
"type" : "number",
"required" : "true"
}
}
}
}}
{ "description" : "Example of JSON message for the Arduino board measurements",
"type" : "object",
"properties" : {
"sensor_type" : {
"title" : "Specifies the sensor type",
"type" : "string",
"required" : "true",
"enum" : [ "arduino" ]
},
"sensor_id" : {
"title" : "Specifies the sensor id",
"type" : "number",
"required" : "true",
},
"type" : {
"title" : "Specifies the type of measurement (coming from the measurement payload)",
"type" : "string",
"required" : "true",
"enum" : ["temperature", "luminosity", "sharp_data"]
},
"data" : {
"title" : "Specifies the measurement payload",
"type" : "object",
"required" : "true",
"properties" : {
"temperature" : {
"title" : "Specifies the measured temperature value (SHT15)",
"type" : "number",
"optional" : "true"
},
"luminosity" : {
"title" : "Specifies the measured luminosity value",
"type" : "integer",
"optional" : "true"
},
"sharp_data" : {
"title" : "Specifies the measured ??? value",
"type" : "integer",
"optional" : "true"
}
}
}
}}