3D视觉专用名词概念解释,深度图、点云图、IR图、RGB图像

本文介绍了深度相机如何生成深度图、点云图以及IR和RGB图像,着重讨论了这些数据结构的生成原理、位深度和相关参数,包括内参、外参和畸变处理。

🌞欢迎来到深度学习的世界 
🌈博客主页:卿云阁

💌欢迎关注🎉点赞👍收藏⭐️留言📝

🌟本文由卿云阁原创!

🙏作者水平很有限,如果发现错误,请留言轰炸哦!万分感谢!


1. 深度图

深度图中的单个像素值是空间中物体的某个点到垂直于左红外镜头光轴并通过镜头光心(深度相机光学零点)平面的垂直距离。

深度图是深度相机视野内所有点的深度数据构成的矩阵。深度图是一个16bit位深的单通道矩阵,单位为毫米。没有深度信息的点值为0。为直观的体现不同距离数值,在SDK提供的sample程序中,输出的深度图均被映射到了RGB色彩空间,所以显示出来的结果为RGB三通道8bit位深的位图,深度数据无外参,无畸变,只能提供用于转换点云数据的内参。

2.点云图

    通过深度相机得到的物体外观表面的点数据集合是点云。使用深度相机得到的点云信息为三维坐标(X,Y,Z)。点云图是深度相机捕捉到的所有点的点云信息构成的数据矩阵。每点为3个float类型x,y,z值。没有三维空间信息的点为(0,0,0)。

点云图数据格式。

3. IR图

IR图像为红外图像传感器输

### 点云图处理方法、算法及其实现方式 #### 文本形式点云数据的读取与可视化展示 对于文本形式的点云数据,可以采用特定的方法将其读入并进行初步的数据清洗和预处理工作。之后通过合适的API接口或者函数调用来完成这些点云数据的可视化表示[^1]。 ```python import open3d as o3d import numpy as np # 假设从文件加载点坐标到numpy数组points points = np.loadtxt('point_cloud.txt', delimiter=',') pcd = o3d.geometry.PointCloud() pcd.points = o3d.utility.Vector3dVector(points) o3d.visualization.draw_geometries([pcd]) ``` #### 使用Open3D进行点云图展示 为了更好地理解和分析点云图像,在实际应用中通常会先计算深度图,再由该深度图构建三维点云模型最后借助于像Open3D这样的专用库来进行高质量渲染效果下的交互式查看[^2]。 ```python from PIL import Image import cv2 def depth_to_pointcloud(depth_image_path, fx, fy, cx, cy): """Convert a depth image to point cloud.""" # Load the depth image using OpenCV or any other library. depth_img = cv2.imread(depth_image_path, cv2.IMREAD_UNCHANGED).astype(np.float32)/1000 rows, cols = depth_img.shape[:2] c, r = np.meshgrid(np.arange(cols), np.arange(rows)) points_z = depth_img / 1000.0 points_x = (c - cx) * points_z / fx points_y = (r - cy) * points_z / fy mask = points_z > 0 xyz_points = np.stack((points_x[mask], points_y[mask], points_z[mask]), axis=-1) pcd = o3d.geometry.PointCloud() pcd.points = o3d.utility.Vector3dVector(xyz_points.reshape(-1, 3)) return pcd depth_pcd = depth_to_pointcloud("path/to/your_depth_image.png", 585, 585, 320, 240) o3d.visualization.draw_geometries([depth_pcd]) ``` #### Python中的TVTK用于标量和矢量数据的空间轮廓线可视化 除了上述提到的技术之外,还有其他一些强大的工具可用于更复杂的场景下对多维科学数据集执行高级别的形化表达;比如Python里的TVTK模块就提供了很好的支持来创建结构化的网格边界框以及绘制各种类型的场(如温度分布等)。这同样适用于某些特殊情况下需要特别关注内部几何特征变化趋势的研究领域[^4]。 ```python from tvtk.api import tvtk from mayavi.sources.vtk_data_source import VTKDataSource from mayavi.modules.outline import Outline from mayavi.core.pipeline_base import PipelineBase from mayavi import mlab outline_filter = tvtk.StructuredGridOutlineFilter(input_connection=polydata.GetProducerPort()) mlab.pipeline.surface(outline_filter.output_port) mlab.show() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卿云阁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值