Camera Features¶
Image Processing Flow¶
The HTW003S camera is equipped with the following image processing control flow.
The details of each of the image processing controls are described below.
Operating Mode¶
The HTW003S allows for various operating modes noted below.
Operating Mode | Modulation Frequency |
---|---|
1.25 m | 120 MHz |
3.0 m | 50 MHz |
4.0 m | 37 MHz |
5.0 m | 120 MHz + 90 MHz |
6.0 m | 25 MHz |
8.3 m | 90 MHz + 72 MHz |
In all operating modes, the camera is capable of generating depth data at 30 FPS.
Minimum Distance Offset¶
The HTW003S allows the user to define a minimum and maximum distance to be evaluated for depth calculations with the Scan 3D Distance Min feature. For example, if you are in a 5.0 m operating mode and are measuring from 0.5 m to 5.5 m, you can set Scan 3D Distance Min to 500. The node is represented in mm.
Flying Pixel Filter¶
The flying pixel filter evaluates if a pixel has a large depth discontinuity from its surrounding pixels. The center pixel is marked as invalid when the distance from its surrounding pixels is larger than the defined threshold.
To enable the flying pixel filter:
- Set Flying Pixels Removal Enable = True
- Set Flying Pixels Distance Threshold = 20 (represented in mm)
Exposure Time¶
The HTW003S camera enables three discrete exposure time settings - 1000 us, 250 us, and 62.5 us. The 1000 us setting is the default exposure time and also the maximum exposure time allowed. The longer exposure time should be used for scenes further away from the camera, or when imaging objects with low reflectivity. Shorter exposure times should be used for scenes closer to the camera, or objects appearing over saturated.
Gain¶
The HTW003S camera allows the user to adjust two gain settings. High gain settings should be used for objects that are further away or that have low reflectivity. High gain settings will amplify sensor readings including any noise.
Amplitude Gain¶
The HTW003S camera allows the users to apply amplitude gain to the Mono / intensity image (up to 128 counts). This control affects the mono image only, not the depth data.
Image Accumulation¶
The HTW003S camera’s processing pipeline is capable of accumulating multiple frames of images for depth calculation. The higher number of frames accumulated on the camera’s pipeline, the slower the depth date is generated as more images need to be captured to calculate the data. The higher number of images accumulated, the better the noise performance would be on the resultant depth data. Note that if four images are accumulated under 1.5 m operating mode, the maximum frame rate achievable is about 7 fps as 30 fps is slowed down by a factor of four.
Communication Channel¶
The HTW003S camera allows users to assign 5 different channels to allow 5 different units pointing at the same target without interference. It is accomplished by using slightly different modulation frequencies for each channel.
The Communication Channel feature is available the following operating modes:
|
If the camera is acquiring images, AcquisitionStop must be called before adjusting Communication Channel. |
Confidence Threshold¶
The HTW003S camera allows configuration of a confidence threshold using the Confidence Threshold parameter. To turn this feature on, please set Confidence Threshold Enable to True. Pixels with values above the confidence threshold are deemed valid and will have valid X, Y, Z and Y values (assuming Coord3D_ABCY16 pixel format).
- In signed pixel formats, values below the threshold will have their X, Y, Z and intensity values set to 0x8000 (denoting invalid)
- In unsigned pixel formats, values below the threshold will have their X, Y, Z and intensity values set to 0xFFFF (denoting invalid)
Pixel Formats¶
Range Data¶
Range data represent the depth image. These pixel formats below represent the radial distance between the target and the camera. The following pixel formats are available:
Coord3D_ABCY16 | 4-channel point cloud XYZ + Intensity, 16 bits for each channel, unsigned |
Coord3D_ABC16 | 3-channel point cloud XYZ, 16 bits for each channel, unsigned |
Coord3D_C16 | Depth Map Z plane, 16 bits, unsigned |
Coord3D_C16Y8 | Depth Map Z plane, 16 bits + Intensity, 8 bits, unsigned (available on firmware v1.7 or higher) |
Coord3D_CY16 | Depth Map Z plane + Intensity, 16 bits for each channel, unsigned (available on firmware v1.7 or higher) |
The range data pixel formats listed above represent points in the point cloud with each of the ABC values representing the XYZ coordinates of the object’s surface from which the light pulse was reflected. For distance values in mm, the user can query nodes under the Scan 3D control in order to convert the digital count to millimeters. For example, for a depth reading of 1000 digital count using Coord3D_C16, the real world distance can be calculated by querying Scan 3D Coordinate Selector, Scan 3D Coordinate Scale
An example on how to calculate the depth for a 16-bit pixel value:
- Scan 3D Coordinate Selector = Coordinate C (Z-axis)
- 16-bit pixel for Coordinate C = 1000
- Scan 3D Distance Unit = Millimeter
- Scan 3D Coordinate Scale = 0.25
- Scan 3D Coordinate Offset = 0
The image data ordering is row by row in raster order. The origin of the coordinate system is defined by: * The X and Y coordinates are zero at the center of the lens optical axis. * The Z coordinate is zero at the front of the camera housing.
Intensity Image¶
The intensity image shows the brightness of the reflected laser light pulses as values per pixel. Because the wavelength of the light sent out by the camera has an influence on this, the intensity image may differ from the human perception of the targeted scene. The intensity image is useful for checking the image for over or under-saturated pixels. To avoid these, try changing the exposure time or the camera position and check whether the image improves. The following pixel format is available:
Mono8 | 8 bits per pixel, monochrome raw image |
Mono12Packed | 12 bits per pixel, monochrome raw image |
Mono12p | 12 bits per pixel, in bit stream, monochrome raw image |
Mono16 | 16 bits per pixel, monochrome raw image |
Confidence Data¶
The confidence value represents a measure of how reliable the depth data is. By analyzing the temporal variations of the light pulse signal, a 16-bit integer value per pixel is generated. The higher the confidence value for that pixel, the more reliable the depth measurement. The following pixel format is available:
Confidence16 | Confidence map, 16 bits |
Time of Flight Invalidation¶
Multipath¶
Multipath occurs when light is bounced off several surfaces before it is reflected back to the camera. These extra bounces can introduce error in the depth measurement. This phenomenon occurs commonly when imaging concave objects such as corners of a box or the bottom of a cup.
High Reflectivity¶
Objects with high reflectivity could cause the pixel to become saturated. When this happens, the phase information is lost and the depth calculation becomes invalid.
Low Reflectivity¶
When imaging objects with dark colors or low reflectivity, the return signal could be weak and close to the noise floor, making is difficult to differentiate valid data from noise. To mitigate this, averaging of frames can help improve the quality of the data.
Aliasing/Ambiguity¶
If an object is outside the working distance of the camera’s operating mode (1.5 m for near mode or 6 m for far mode), the distance of the object becomes ambiguous. For example, when in near mode, an object at a distance of 1.8 m will appear as 0.3 m.
Veiling Glare¶
Lenses are inherently imperfect and could introduce stray light via scattering inside the lens which then manifest itself as image noise. When imaging a dark spot next to a bright spot (e.g. black text and white paper), veiling glare from the bright spot will cause the depth calculation for the dark spots to be less accurate.
Calibration¶
The HTW003S camera goes through a series of calibration steps in manufacturing to ensure the output depth point cloud is accurate, precise, and in the world coordinate frame for ease of use. Since this calibration is already performed on the camera, the user does not need to handle this calibration themselves.
The following calibration steps are done on the camera family.
Cyclic error calibration | The non-sinusoidal property of laser illumination is calibrated to ensure depth error is not introduced. |
Temperature calibration | The phase drift with temperature is calibrated to give consistent depth measurement as the device temperature changes. |
The following calibration steps are done on a per-unit basis.
Lens calibration | Parameters such as focal length, image center, and lens distortion parameters are computed and calibrated. |
Offset calibration | The phase offset between the laser pulses and sensor is calibrated to ensure the measured distance matches ground truth. |
Intrinsic Parameters¶
The HTW003S includes access to intrinsic lens distortion parameters. The distortion coefficient parameters follow the model:
Distortion coefficients = k1, k2, p1, p2, k3
- Lens Distortion Value Selector 0 and its Lens Distortion Value = radial (k1)
- Lens Distortion Value Selector 1 and its Lens Distortion Value = radial (k2)
- Lens Distortion Value Selector 2 and its Lens Distortion Value = tangential (p1)
- Lens Distortion Value Selector 3 and its Lens Distortion Value = tangential (p2)
- Lens Distortion Value Selector 4 and its Lens Distortion Value = radial (k3)
Firmware Update¶
Use the camera’s Firmware Update page to update your camera’s firmware. Updating your camera’s firmware is easy with our firmware (fwa) file. The firmware fwa files for each camera are located on our Downloads page.
Every Lucid camera comes with an onboard firmware update page that you can directly access in a web browser. If you already know your camera’s IP address, you can access it at http://{your-camera-ip-address}/firmware-update.html.
Updating your Camera Firmware¶
- Navigate to your camera’s firmware update page in your web browser (http://{your-camera-ip-address}/firmware-update.html).
- Click Choose a file on the Firmware Update page and select your fwa file.
- Click Submit on the Firmware Update page. This will start the firmware update process.
The Firmware Update page will show the progress of the update. During the update, the camera will not be accessible for control or image capture. The update may take a few minutes to complete. Please refrain from turning off power to the camera during the update.
When the firmware update is complete, the camera will reboot. Once the update is finished, you can close the Firmware Update page and access the camera again.