Halcon3D篇-3D预处理,滤波,点云筛选

前言

由于3D相机采集到的数据通常通过Tiff格式的深度图进行显示或者保存。

深度图与模型的互转可以访问另一篇博客:https://blog.csdn.net/m0_51559565/article/details/135362674

关于3D相机的数据采集,可以访问我们另一篇关于LMI3D相机SDK的二次开发:

https://blog.csdn.net/m0_51559565/article/details/134404394

一:处理流程

常见的3D数据通常以Z轴作为灰度值的深度图的形式出现。所以我们可以根据2D图的特性,对2D图先进行灰度二值化筛选,图像增强,滤波等方式提取特征点。转换为3D模型后可以通过对点云的欧式距离进行点云集的拆分。

二:灰度筛选与滤波

csharp 复制代码
*读取图像
read_image (Image, 'E:/UpperComputer/3D检测/点云筛选和滤波/XYZ彩色融合图.tiff')
*拆分3通道,对Z通道进行单独处理
decompose3 (Image, x, y, z)
*通过选取灰度值,直接找到所需的区域
threshold (z, Regions, 114.83, 145.83)
*将区域进行裁剪
reduce_domain (z, Regions, ImageReduced)
crop_domain (ImageReduced, ImagePart)
*通过ROI的形式剔除边缘不适合的点云
gen_rectangle1 (ROI_0, 145.41, 81.8859, 509.72, 397.831)
reduce_domain (ImagePart, ROI_0, ImageReduced1)
crop_domain (ImageReduced1, ImagePart1)
*滤波。可以去除由于相机过曝造成的点云
*mean_image (ImagePart1, ImageMean, 9, 9)
*median_image (ImagePart1, ImageMedian, 'circle', 1, 'mirrored')
gauss_filter (ImagePart1, ImageGauss, 5)

原始图像

灰度二值化处理,与ROI拆分。在实际处理中,为了可以快速的完成对特征区域的匹配,通过会直接通过ROI的形式,当然不局限于还有,例如模板匹配,圆形测量等常用的2D图像提取方法。

三:点云筛选

在进行完预处理后,通常点云的去噪效果非常好,或者几何完成的情况。但是对于部分特殊情况。例如,由于相机过曝或者强反光的金属表面造成的点云波动,通常这类型的波动情况往往点云数少,高度差距小,所以比较难发现。

通常可以直接使用点云欧式距离。例如下面,对点云欧式距离大于5的点云进行区分(点云间的距离等于5个点的距离)。然后根据我们需要的点云数进行筛选即可

csharp 复制代码
connection_object_model_3d (ObjectModel3D, 'distance_3d', 5, ObjectModel3DConnected)

select_object_model_3d (ObjectModel3DConnected, 'num_points', 'and', 100, 1000000000, ObjectModel3DSelected)

结尾

通常情况下说,灰度二值化将要测量的平面选取出来,然后进行均值滤波,让平面变得光滑,去除噪点,在通过选取ROI去除边缘点云采样不理想的区域。基本可以完成对点云的预处理了。最后根据点云间的距离,还可以进一步的去除噪点。到最后基本就可以完成对点云的处理,方式适用于大部分3D检测和缺陷检测的项目。但是对倾斜面无需抓取项目仍有待考究

相关推荐
WWZZ202510 小时前
快速上手大模型:深度学习12(目标检测、语义分割、序列模型)
深度学习·算法·目标检测·计算机视觉·机器人·大模型·具身智能
看到我请叫我铁锤13 小时前
vue3中THINGJS初始化步骤
前端·javascript·vue.js·3d
后端小张15 小时前
智眼法盾:基于Rokid AR眼镜的合同条款智能审查系统开发全解析
人工智能·目标检测·计算机视觉·ai·语言模型·ar·硬件架构
浩浩的代码花园15 小时前
自研端侧推理模型实测效果展示
android·深度学习·计算机视觉·端智能
这张生成的图像能检测吗18 小时前
(论文速读)EfficientTrain++: 高效视觉骨干训练的通用课程学习
人工智能·深度学习·计算机视觉·训练方法
翔云 OCR API1 天前
人脸识别API开发者对接代码示例
开发语言·人工智能·python·计算机视觉·ocr
AndrewHZ1 天前
【图像处理基石】如何在图像中提取出基本形状,比如圆形,椭圆,方形等等?
图像处理·python·算法·计算机视觉·cv·形状提取
音视频牛哥1 天前
轻量级RTSP服务的工程化设计与应用:从移动端到边缘设备的实时媒体架构
人工智能·计算机视觉·音视频·音视频开发·rtsp播放器·安卓rtsp服务器·安卓实现ipc功能
棒棒的皮皮1 天前
【Python】Open3d用于3D测高项目
python·3d·open3d
audyxiao0011 天前
期刊研究热点扫描|一文了解计算机视觉顶刊TIP的研究热点
人工智能·计算机视觉·transformer·图像分割·多模态