Skip to content

Commit 6c5d6d6

Browse files
authored
docs(sensing): update lidar data field requirement (#478)
* modify point field description Signed-off-by: Kento Yabuuchi <kento.yabuuchi.2@tier4.jp> * default T's name is `time_stamp` but not `time` Signed-off-by: Kento Yabuuchi <kento.yabuuchi.2@tier4.jp> --------- Signed-off-by: Kento Yabuuchi <kento.yabuuchi.2@tier4.jp>
1 parent 10f3ba7 commit 6c5d6d6

File tree

1 file changed

+15
-20
lines changed

1 file changed

+15
-20
lines changed

docs/design/autoware-architecture/sensing/data-types/point-cloud.md

+15-20
Original file line numberDiff line numberDiff line change
@@ -37,17 +37,17 @@ It is recommended that these modules are used in a single container as component
3737

3838
In the ideal case, the driver is expected to output a point cloud with the `PointXYZIRCADT` point type.
3939

40-
| name | datatype | derived | description |
41-
| ----------------- | --------- | ------- | ---------------------------------------------------------------------------- |
42-
| `X` | `FLOAT32` | `false` | X position |
43-
| `Y` | `FLOAT32` | `false` | Y position |
44-
| `Z` | `FLOAT32` | `false` | Z position |
45-
| `I` (intensity) | `UINT8` | `false` | Measured reflectivity, intensity of the point |
46-
| `R` (return type) | `UINT8` | `false` | Laser return type for dual return lidars |
47-
| `C` (channel) | `UINT16` | `false` | Vertical channel id of the laser that measured the point |
48-
| `A` (azimuth) | `FLOAT32` | `true` | `atan2(Y, X)`, Horizontal angle from the front of the lidar to the point |
49-
| `D` (distance) | `FLOAT32` | `true` | `hypot(X, Y, Z)`, Euclidean distance of the point to lidar |
50-
| `T` (time) | `UINT32` | `false` | Nanoseconds passed since the time of the header when this point was measured |
40+
| name | datatype | derived | description |
41+
| ----------------- | --------- | ------- | ------------------------------------------------------------------------ |
42+
| `X` | `FLOAT32` | `false` | X position |
43+
| `Y` | `FLOAT32` | `false` | Y position |
44+
| `Z` | `FLOAT32` | `false` | Z position |
45+
| `I` (intensity) | `FLOAT32` | `false` | Measured reflectivity, intensity of the point |
46+
| `R` (return type) | `UINT8` | `false` | Laser return type for dual return lidars |
47+
| `C` (channel) | `UINT16` | `false` | Vertical channel id of the laser that measured the point |
48+
| `A` (azimuth) | `FLOAT32` | `true` | `atan2(Y, X)`, Horizontal angle from the front of the lidar to the point |
49+
| `D` (distance) | `FLOAT32` | `true` | `hypot(X, Y, Z)`, Euclidean distance of the point to lidar |
50+
| `T` (time stamp) | `FLOAT64` | `false` | Seconds passed since the time of the header when this point was measured |
5151

5252
!!! note
5353

@@ -180,7 +180,7 @@ For solid state lidars that have lines, assign row number as the channel id.
180180

181181
For petal pattern lidars, you can keep channel 0.
182182

183-
### Time
183+
### Time stamp
184184

185185
In lidar point clouds, each point measurement can have its individual time stamp.
186186
This information can be used to eliminate the motion blur that is caused by the movement of the lidar during the scan.
@@ -204,13 +204,8 @@ The header of the point cloud message is expected to have the time of the earlie
204204

205205
**More info at:** https://github.com/ros2/rcl_interfaces/issues/85
206206

207-
#### Individual point time
207+
#### Individual point time stamp
208208

209-
Each `PointXYZIRCT` point type has the `T` field for representing the nanoseconds passed since the first-shot point of the point cloud.
209+
Each `PointXYZIRCT` point type has the `T` field for representing the seconds passed since the first-shot point of the point cloud.
210210

211-
To calculate exact time each point was shot, the `T` nanoseconds are added to the header time.
212-
213-
!!! note
214-
215-
The `T` field is `uint32` type. The largest value it can represent is 2^32 nanoseconds, which equates to roughly
216-
4.29 seconds. Usual point clouds don't last more than 100ms for full cycle. So this field should be enough.
211+
To calculate exact time each point was shot, the `T` seconds are added to the header time.

0 commit comments

Comments
 (0)