Image and Depth Map Buffer
Image and depth map pixels are stored contiguously, from top row to bottom, from left to right, in Windows bitmap format (top-down DIBdevice-independent bitmap) into an associated buffer.
The buffer address is a pointer to the start address of the buffer, which contains the top left pixel of the image.
Image Buffer pitch
● | Alignment must be a multiple of 4 bytes. |
● | Open eVision 1.2 onwards default pitch is 32 bytes for performance reasons (Open eVision 1.1.5 was 8 bytes). |
Memory Layout
● | EImageBW1 stores 8 pixels in one byte. |
Example memory layout of the first 2 pixels of a BW1 image buffer:
● | EImageBW8 and EDepthMap8 store each pixel in one byte. |
Example memory layout of the first pixels of a BW8 image buffer:
● | EImageBW16 stores each pixel in a 16-bit word (two bytes). |
Example memory layout of the first pixels of a BW16 image buffer:
● | EImageC15 stores each pixel in 2 bytes. Each color component is coded with 5-bits. The 16th bit is left unused. |
Example memory layout of the first pixels of a C15 image buffer:
● | EImageC16 stores each pixel in 2 bytes. The first and third color components are coded with 5-bits. The second color component is coded with 6-bits. |
Example memory layout of the first pixels of a C16 image buffer:
● | EDepthMap16 store each pixel in 2 bytes using a fixed point format. |
● | EImageC24 stores each pixel in 3 bytes. Each color component is coded with 8-bits. |
Example memory layout of the first pixels of a C24 image buffer:
● | EImageC24A stores each pixel in 4 bytes. Each color component is coded with 8-bits. The alpha channel is also coded with 8-bits. |
Example memory layout of the first pixels of a C24A image buffer:
● | EDepthMap32f store each pixel in 4 bytes using a float format. |