Intel RealSense - 在两个 numpy 数组中对齐深度和颜色
Intel RealSense - Align depth and color in two numpy arrays
我正在使用英特尔实感 L515。我想在两个不同的 numpy 数组中对齐深度和彩色图像,以便它们的分辨率相同。
这是我的代码
import pyrealsense2 as rs
import numpy as np
pc = rs.pointcloud()
pipe = rs.pipeline()
config = rs.config()
config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16, 30)
config.enable_stream(rs.stream.color, 960, 540, rs.format.bgr8, 30)
pipe.start(config)
try:
frames = pipe.wait_for_frames()
depth = frames.get_depth_frame()
color = frames.get_color_frame()
# These are the two different frames to align
depth_image = np.asanyarray(depth.get_data())
color_image = np.asanyarray(color.get_data())
# The new color image
# color_image_with_same_resolution = ?
finally:
pipe.stop()
彩色图像的分辨率高于深度图像。调整彩色图像大小的最有效方法是什么,以使其具有与深度图像相同的尺寸,并且每个彩色像素都映射到正确的对应深度像素。在这种情况下,速度和效率至关重要。
基本上我希望能够保存两个单独的数组,可以在另一个程序中使用。数组必须具有相同的维度,如下所示:(Z - Array 640x480x1) 和 (RGB -Array 640x480x3)
检查这个 librealsense 示例:
它使用 pyrealsense2.align() 允许执行深度帧与其他帧的对齐。
解决方法很简单。使用 pyrealsense2 库时也非常快!
import pyrealsense2 as rs
pipeline = None
colorizer = rs.colorizer()
align = rs.align(rs.stream.depth)
pipeline = rs.pipeline()
config = rs.config()
config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16,30) config.enable_stream(rs.stream.color, 960, 540, rs.format.rgb8, 30)
profile = pipeline.start(config)
frameset = pipeline.wait_for_frames()
frameset = align.process(frameset)
aligned_color_frame = frameset.get_color_frame()
color_frame = np.asanyarray(aligned_color_frame.get_data())
depth = np.asanyarray(frameset.get_depth_frame().get_data())
我正在使用英特尔实感 L515。我想在两个不同的 numpy 数组中对齐深度和彩色图像,以便它们的分辨率相同。
这是我的代码
import pyrealsense2 as rs
import numpy as np
pc = rs.pointcloud()
pipe = rs.pipeline()
config = rs.config()
config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16, 30)
config.enable_stream(rs.stream.color, 960, 540, rs.format.bgr8, 30)
pipe.start(config)
try:
frames = pipe.wait_for_frames()
depth = frames.get_depth_frame()
color = frames.get_color_frame()
# These are the two different frames to align
depth_image = np.asanyarray(depth.get_data())
color_image = np.asanyarray(color.get_data())
# The new color image
# color_image_with_same_resolution = ?
finally:
pipe.stop()
彩色图像的分辨率高于深度图像。调整彩色图像大小的最有效方法是什么,以使其具有与深度图像相同的尺寸,并且每个彩色像素都映射到正确的对应深度像素。在这种情况下,速度和效率至关重要。
基本上我希望能够保存两个单独的数组,可以在另一个程序中使用。数组必须具有相同的维度,如下所示:(Z - Array 640x480x1) 和 (RGB -Array 640x480x3)
检查这个 librealsense 示例:
它使用 pyrealsense2.align() 允许执行深度帧与其他帧的对齐。
解决方法很简单。使用 pyrealsense2 库时也非常快!
import pyrealsense2 as rs
pipeline = None
colorizer = rs.colorizer()
align = rs.align(rs.stream.depth)
pipeline = rs.pipeline()
config = rs.config()
config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16,30) config.enable_stream(rs.stream.color, 960, 540, rs.format.rgb8, 30)
profile = pipeline.start(config)
frameset = pipeline.wait_for_frames()
frameset = align.process(frameset)
aligned_color_frame = frameset.get_color_frame()
color_frame = np.asanyarray(aligned_color_frame.get_data())
depth = np.asanyarray(frameset.get_depth_frame().get_data())