LabVIEW纹理分析(基础篇—9)

简介: LabVIEW纹理分析(基础篇—9)

纹理(Texture)是物体表面固有的特征之一。目前对于纹理尚无正式的定义,但一般认为它是由许多相互连接且常周期性重复的单元构成。与灰度特征不同,纹理不是基于单个像素点的特征,它通常与图像的尺度关系密切,且具有区域性和统计特征。


通常来说,在放大后的图像上可以观察到目标表面的纹理。而且一般来说,纹理特征需要在包含多个像素点的图像区域中进行灰度统计才能获得。纹理特征的这种区域性可使特征匹配过程不会因局部的偏差而失败。因此通过纹理分析,可对物体表面尺寸和形状的变化进行检测,如划痕(Scratch)、裂纹(Crack)和污渍(Stain)等。


纹理分析常用于对具有不规则纹理图案的目标表面进行检测,如瓷砖、纺织品、木材、纸张、塑料或玻璃的表面等。


多数基于纹理分析的机器视觉应用使用纹理分类器(Texture Classifier)进行检测。纹理分类器可通过对无缺陷的标准样本目标进行学习获得,其中包含样本的纹理特征信息。检测时,算法会将被测目标中的纹理特征与纹理分类器中的特征信息进行匹配,并将不能接受的区域标识为缺陷。


通常来说,纹理分析过程会以目标的表面图像为输入,并以二进制大颗粒(Binary Large OBjects,BLOB)的形式输出检测结果。获得缺陷部分的BLOB后,可以进一步使用颗粒分析工具对其属性、尺寸等进行分析。


适用性强的纹理分析检测过程不仅应对于噪声有较强的抵抗能力,还应具有平移不变(Shift-Invariant)、旋转不变(Rotate-Invariant)和尺度不变(Scale-Invariant)的性质。也就是说,相较于纹理分类器中的纹理特征而言,即使被测目标中的纹理特征垂直或水平移动,在平面内旋转或有一定比例的缩放,纹理分析检测过程仍能继续正确地识别它们。一般的纹理检测过程都具有平移不变的性质,且能支持±5°的旋转和±10°的缩放。


若要支持更大范围的旋转不变和尺度不变性,则要通过学习和训练过程,创建包含各个方向和比例纹理特征信息的纹理分类器。此外,还应注意在纹理匹配过程的执行速度与旋转不变和尺度不变性范围之间进行平衡。

image.png

由于纹理特征与图像的尺度、区域及灰度统计数据具有密切联系,因此NI Vision使用离散小波变换和统计的方法来提取纹理特征并对其进行分类检测。一般的纹理检测过程如下图所示,主要包括以下步骤:

image.png

Nl Vision使用位于LabVIEW的视觉与运动→lmage Processing→Texture函数选板中的VI对上述过程进行封装,如下图所示:

image.png

函数说明及使用可参见帮助手册:

image.png

其中:


IMAQ Extract Wavelet Bands可执行小波变换从纹理图像中提取各种子带图像;

IMAQ Cooccurrence Matrix能计算图像的共生矩阵和Haralick特征;

IMAQ Extract Texture Feature对子带提取、共生矩阵计算和Haralick特征提取与连接进行了集成,可直接返回计算得到的纹理特征;

IMAQDetect Texture Defect不仅集成了整个纹理特征的提取过程,还集成了按照纹理分类器对纹理进行分类的过程,它能以二值图像输出检测到的纹理缺陷。

通过一个墙壁纹理或缺陷检测的实例,了解纹理分析的实现方法,程序设计思路如下所示:


程序一开始先由IMAQ Read ClassifierFile从分类器文件Texture.clf中读取事先训练好的纹理特征信息,并为后续处理分配内存;

循环结构中的代码,逐一从文件夹中取出被测图像,在用清除无损图层后,由IMAQ Detect Texture Defect根据分类器对纹理进行分类;

Nl Vision分类过程使用范围为0~1000的识别得分(ldentification Score)来判别被测特征与某一类别的相似程度,当纹理与合格的特征信息差别越大时,说明其越接近缺陷;

由此,程序中设置了最小缺陷分类识别得分为200,分类时任何得分等于或大于该阈值的像素均被识别为纹理缺陷。

程序设计如下所示:

image.png

通过运行程序,效果如下所示:

image.png


相关文章
halcon的灰度变换(图像增强)
halcon的灰度变换(图像增强)
1464 1
|
存储 机器学习/深度学习 数据可视化
结合多模态RAG和异步调用实现大模型内容
文章探讨了如何利用多模态大模型和工程优化手段提升物流理赔业务效率。核心方案包括:通过多模态RAG技术实现图片查重,结合异步调用方法优化货损识别功能。
642 36
结合多模态RAG和异步调用实现大模型内容
Halcon中关于角度计算和测量拟合的算子详解
Halcon中关于角度计算和测量拟合的算子详解
2434 0
|
人工智能 JSON Serverless
阿里云AI剧本生成与动画创作解决方案深度评测
阿里云AI剧本动画全链路解决方案基于函数计算FC、百炼大模型和ComfyUI技术架构,实现从剧本生成到动画渲染的自动化流程。方案在电商广告、知识科普等快速批产场景表现出色,大幅缩短创作时间(如30秒动画从9.5小时减至16.1分钟)。然而,在强剧情连续性和物理规则方面存在不足,建议结合人工审核优化。测试显示其商用级成熟度,推荐采用“AI初稿-人工润色”模式。
1141 138
阿里云AI剧本生成与动画创作解决方案深度评测
|
人工智能 自然语言处理 小程序
让小程序拥有“视觉之眼“:DeepSeek图像识别实战指南
本文介绍如何通过DeepSeek计算机视觉技术,赋予小程序“看懂世界”的能力。从构建视觉感知系统、训练专属视觉词典到创造会思考的界面,详细讲解了实现智能相册、植物识别器和老旧照片修复等功能的步骤。最后探讨性能优化与安全合规要点,展望未来视觉智能应用的无限可能。
|
存储 网络协议 物联网
C 语言物联网开发之网络通信与数据传输难题
本文探讨了C语言在物联网开发中遇到的网络通信与数据传输挑战,分析了常见问题并提出了优化策略,旨在提高数据传输效率和系统稳定性。
|
机器学习/深度学习 运维 算法
高斯混合模型(GMM)
高斯混合模型(GMM)
|
前端开发 Java 数据库连接
基于SpringBoot宠物领养系统的设计与实现(代码+数据库+文档)
基于SpringBoot宠物领养系统的设计与实现(代码+数据库+文档)
|
前端开发
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程初步完成转bpmn设计(还有bug,以后再修改)
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程初步完成转bpmn设计(还有bug,以后再修改)
495 0
[Halcon&几何] 直线的垂线与延长线的计算
[Halcon&几何] 直线的垂线与延长线的计算
955 1