Depth data at around 1m looks uneven
I have a checkerboard 16 X 34 on a flat surface and I am collecting data at each point on the checkerboard using the depth sensor. The realsense 415 is at around 1m from the surface of the table,
After plotting the data (data - mean(data)), I have noticed that the data goes from low to high along the y- axis. An image is posted below. The mean along each row is also shows that the depth increases although the surface is flat.
Any suggestions ? I have tried the on-chip calibration already.
# Get device product line for setting a supporting resolution
pipeline_wrapper = rs.pipeline_wrapper(pipeline)
pipeline_profile = config.resolve(pipeline_wrapper)
device = pipeline_profile.get_device()
device_product_line = str(device.get_info(rs.camera_info.product_line))
print(device_product_line)
config.enable_stream(rs.stream.depth)
config.enable_stream(rs.stream.color)
profile = pipeline.start(config)
depth_sensor = profile.get_device().first_depth_sensor()
depth_scale = depth_sensor.get_depth_scale()
align_to = rs.stream.color
align = rs.align(align_to)
found_rgb = False
for s in device.sensors:
if s.get_info(rs.camera_info.name) == 'RGB Camera':
found_rgb = True
break
if not found_rgb:
print("The demo requires Depth camera with Colcor sensor")
exit(0)
config.enable_stream(rs.stream.depth, 1280, 720, rs.format.z16, 30)
try:
while True:
# Wait for frames
frames = pipeline.wait_for_frames()
aligned_frames = align.process(frames)
aligned_depth_frame = aligned_frames.get_depth_frame()
color_frame = aligned_frames.get_color_frame()
if not aligned_depth_frame or not color_frame:
continue
-
Hi Nitin It appears that the depth values in the lower half of the board are okay as they have colors that represent depth values above 0. In the upper half of the board, the values are below zero. As a correct depth value is 0 or higher, minus values likely represent an area of invalid depth values where the camera could not read depth detail from the board.
Were you standing behind the board and holding the camera in your hand at a distance of 1 meter, please? If you did then this might have cast a shadow from your body over the upper half of the board that could have made it more difficult for the camera to analyze for depth information.
-
Checkerboards are typically used for camera calibration rather than measuring depth values from the board. The depth sensing algorithm of RealSense cameras can become confused by repeating horizontal and vertical patterns such as tiled floors or ceilings, a phenomenon called Repetitive Pattern. An Intel guide in PDF document format at the link below provides advice for negating the negative effects of such patterns.
https://dev.intelrealsense.com/docs/mitigate-repetitive-pattern-effect-stereo-depth-cameras
Please sign in to leave a comment.
Comments
4 comments