Updated documentation

This commit is contained in:
Daniel Santos-Olivan 2020-07-06 11:09:48 +02:00 committed by Marc Garcia Puig
parent 07a871309b
commit 9bff4f3ac2
4 changed files with 15 additions and 3 deletions

View File

@ -138,7 +138,11 @@ Check out the [introduction to blueprints](core_actors.md).
- `sensor_tick` (_Float_)<sub>_ Modifiable_</sub>
- **<font color="#498efc">sensor.lidar.ray_cast</font>**
- **Attributes:**
- `atmosphere_attenuation_rate` (_Float_)<sub>_ Modifiable_</sub>
- `channels` (_Int_)<sub>_ Modifiable_</sub>
- `dropoff_general_rate` (_Float_)<sub>_ Modifiable_</sub>
- `dropoff_intensity_limit` (_Float_)<sub>_ Modifiable_</sub>
- `dropoff_zero_intensity` (_Float_)<sub>_ Modifiable_</sub>
- `lower_fov` (_Float_)<sub>_ Modifiable_</sub>
- `points_per_second` (_Int_)<sub>_ Modifiable_</sub>
- `range` (_Float_)<sub>_ Modifiable_</sub>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -1013,7 +1013,7 @@ Number of lasers shot.
- <a name="carla.LidarMeasurement.horizontal_angle"></a>**<font color="#f8805a">horizontal_angle</font>** (_float_)
Horizontal angle the Lidar is rotated at the time of the measurement (in radians).
- <a name="carla.LidarMeasurement.raw_data"></a>**<font color="#f8805a">raw_data</font>** (_bytes_)
List of 3D points received as data.
Received list of 4D points. Each point consists in a 3D-xyz data plus the intensity computed for that point.
<h3>Methods</h3>
- <a name="carla.LidarMeasurement.save_to_disk"></a>**<font color="#7fb800">save_to_disk</font>**(<font color="#00a6ed">**self**</font>, <font color="#00a6ed">**path**</font>)
@ -1892,6 +1892,12 @@ Computes a right vector using its rotation.
- <a name="carla.Transform.get_up_vector"></a>**<font color="#7fb800">get_up_vector</font>**(<font color="#00a6ed">**self**</font>)
Computes an up vector using its rotation.
- **Return:** _[carla.Vector3D](#carla.Vector3D)_
- <a name="carla.Transform.get_matrix"></a>**<font color="#7fb800">get_matrix</font>**(<font color="#00a6ed">**self**</font>)
Computes the 4-matrix representation of the transformation.
- **Return:** _list(list(float))_
- <a name="carla.Transform.get_inverse_matrix"></a>**<font color="#7fb800">get_inverse_matrix</font>**(<font color="#00a6ed">**self**</font>)
Computes the 4-matrix representation of the inverse transformation.
- **Return:** _list(list(float))_
<h5 style="margin-top: -20px">Dunder methods</h5>
<div style="padding-left:30px;margin-top:-25px"></div>- <a name="carla.Transform.__eq__"></a>**<font color="#7fb800">\__eq__</font>**(<font color="#00a6ed">**self**</font>, <font color="#00a6ed">**other**=[carla.Transform](#carla.Transform)</font>)

View File

@ -472,13 +472,15 @@ This sensor simulates a rotating Lidar implemented using ray-casting.
The points are computed by adding a laser for each channel distributed in the vertical FOV. The rotation is simulated computing the horizontal angle that the Lidar rotated in a frame. The point cloud is calculated by doing a ray-cast for each laser in every step:
`points_per_channel_each_step = points_per_second / (FPS * channels)`
A Lidar measurement contains a packet with all the points generated during a `1/FPS` interval. During this interval the physics are not updated so all the points in a measurement reflect the same "static picture" of the scene. The information of the Lidar measurement is enconded 4D points. Being the first three, the space points in xyz coordinates and the last one intensity loss during the travel. This intensity is computed by:
A Lidar measurement contains a packet with all the points generated during a `1/FPS` interval. During this interval the physics are not updated so all the points in a measurement reflect the same "static picture" of the scene.
The information of the Lidar measurement is enconded 4D points. Being the first three, the space points in xyz coordinates and the last one intensity loss during the travel. This intensity is computed by:
<br>
![LidarIntensityComputation](img/lidar_intensity.png)
<br>
where a is the attenuation coefficient and d is the distance to the sensor.
In order to increase the realism, we add the possibiliy of dropping cloud points. This is done in two different ways. In a general way, we can randomly drop points with a probability given by <b>dropoff_general_rate</b>. In this case the drop off of points is done before tracing the ray cast so adjust this parameter can actually increase our performance. If that parameter is set to zero it will be ignored. The second way to regulate the drop off of points is in a rate proportional to the intensity. This drop off rate will be proportional to the intensity from zero drop off at <b>dropoff_intensity_limit</b> to <b>dropoff_zero_intensity</b> at zero intensity.
In order to increase the realism, we add the possibility of dropping cloud points. This is done in two different ways. In a general way, we can randomly drop points with a probability given by <b>dropoff_general_rate</b>. In this case, the drop off of points is done before tracing the ray cast so adjust this parameter can increase our performance. If that parameter is set to zero it will be ignored. The second way to regulate the drop off of points is in a rate proportional to the intensity. This drop off rate will be proportional to the intensity from zero at <b>dropoff_intensity_limit</b> to <b>dropoff_zero_intensity</b> at zero intensity.
This output contains a cloud of simulation points and thus, can be iterated to retrieve a list of their [`carla.Location`](python_api.md#carla.Location):