Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is 'Depth' in Image Processing

When I develop Image Processing Program to use OpenCV, I can usually see 'IPL_DEPTH_8U' or 'IPL_DEPTH_16U'

But, I don't know what does that mean.

What is the meaning of 'Depth' in the context of Image Processing?

like image 529
jacktheripper Avatar asked Sep 16 '15 07:09

jacktheripper


People also ask

What is depth in a image?

Depth of field is the distance between the closest and farthest objects in a photo that appears acceptably sharp.

What is the use of depth image?

Depth Image Based Rendering is a technique to render new views from a video stream. The scene geometry is given by an additional depth stream which stores for each pixel its distance to the camera. This technique allows for a wide variety of applications including 2D-3D video conversion.

What is depth map in image processing?

Depth maps are a representation of the distance from the camera to the subject for each pixel in an image. They have various applications, including the familiar smartphone camera function that blurs distant background images when taking a picture and detecting nearby objects for self-driving vehicles.

What is depth in Opencv?

Depth information means the distance of surface of scene objects from a viewpoint. An example of pixel value depth map can be found here : Pixel Value Depth Map using Histograms. Stereo Images : Two images with slight offset. For example, take a picture of an object from the center.


1 Answers

Depth is the "precision" of each pixel. Typically it can be 8/24/32 bit for displaying, but any precision for computations.

Instead of precision you can also call it the data type of the pixel. The more bits per element, the better to represent different colors or intensities.

Your examples mean: 8U : 8 bit per element (maybe 8 bit per channel if multiple channels) of unsigned integer type. So probably you can access elements as unsigned char values, because that's 8 bit unsigned type.

16U : 16 bit per element => unsigned short is typically the 16 bit unsigned integer type on your system.

In OpenCV you typically have those types:

8UC3 : 8 bit unsigned and 3 channels => 24 bit per pixel in total.

8UC1 : 8 bit unsigned with a single channel

32S: 32 bit integer type => int

32F: 32 bit floating point => float

64F: 64 bit floating point => double

hope this helps

like image 99
Micka Avatar answered Sep 27 '22 16:09

Micka