## 4 Environment Perception, Mapping, and Representation for Locomotion
### Sensor Technologies for Environment Perception for Navigation in Robotics  
The classification of sensors in Table 2 considers both the measuring principles and sensing devices involved. For more clarity, Figure 6 summarises the sensor technologies that have been taken into account as the most representative ones found in literature regarding environment perception for navigation. The qualifier _proprioceptive_ applied to sensors is used in robotics to distinguish between those measures of values internal to the robot (e.g., motor speed) from other sensors that obtain information from the robot's environment (e.g., distance to objects)--that is, exteroceptive. Contact sensors can inform whether the robot is touching elements from the environment in some specific locations, or even measure the pressure being applied. Range sensors provide distance measurements to nearby objects. _Proximity_ sensors [76] are intended for short-range distance measurements. They are active sensors that emit either an ultrasound (US) or infrared (IR) pulse and calculate the distance to the closest obstacle based on the time-of-flight principle; i.e., measuring the time it takes for the pulse to travel from the emitter to the obstacle, and then back to the receiver. In the case of infrared-based sensors, in order to simplify the electronics, in some cases instead of measuring the actual travelling time, the emitted pulse is modulated, and the basics for estimating the distance is the shift in the phase of the received signal with respect to the emitted one. Light detection and ranging (LiDAR) sensors are also based on the time-of-flight principle, emitting pulsed laser which is deflected by a rotating mirror. In this way, instead of obtaining a single measurement, the LiDAR system is able to scan the surroundings and provide measurements in a plane at specified angle intervals. Often in literature, LiDARs are mounted on an additional rotating element [77] that allows a full 3D reconstruction to be produced by aligning the subsequent scans in a single point cloud. Radars actuate under similar principles to LiDARs, but use electromagnetic waves instead of relying on optical signals. \begin{table}
\begin{tabular}{l l l l} \hline \hline
**Sensor/Sensing** & **Pros** & **Cons** & **References** \\ \hline \multirow{3}{*}{Proprioceptive} & \multirow{3}{*}{No need for additional payload.} & \multicolumn{2}{l}{Depends on accuracy of the robot’s model.} \\  & & Low level of detail. & [52, 53] \\  & & Does not allow to plan in advance. & \\ \hline \multirow{3}{*}{Contact/Force} & Bioinspired. & Low level of detail. & [10, 54, 55, 56, 57, 58] \\  & Suitable for simple obstacle-aided locomotion. & Reactive, does not allow to plan in advance. & [59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,  
Active 3D imaging techniques are also referred to as _structured light_[78]; the term \"active\" is used here in opposition to \"passive\" to denote that a controlled light source is projected onto the scene. In Table 2, we distinguish between laser triangulation, structured light, and light coding. _Laser triangulation_ sensors consist of a laser source calibrated with respect to a camera or imaging sensor (position and orientation). The laser generates a single-point or narrow stripe that is projected onto the scene or object being inspected. The projected element is deformed according to the shape of the scene; this deformation can be observed by the imaging sensor, and then the depth profile is estimated by simple triangulation principle. By providing an additional scanning movement, the different scans can be stuck together to generate a point cloud representation. In order to avoid the scanning movement, bi-dimensional patterns of non-coherent light are used. In literature there are multiple proposals for ways of designing the projected patterns to achieve better reconstructions (e.g., binary codes, gray codes, phase shifting).