一种基于机器视觉的型材轮廓检测方法及系统与流程
未命名
09-22
阅读:85
评论:0

1.本发明涉及图像数据处理技术领域,具体涉及一种基于机器视觉的型材轮廓检测方法及系统。
背景技术:
2.型材轮廓检测指在生产过程中,通过机器视觉技术实现对型材的边缘轮廓进行准确、高效的检测和识别。采集型材的切面图像,在图像采集过程因设备等原因导致切面图像上存在噪声,在对型材进行分析时需要对噪声信息进行去除。在利用常规滤波算法去除切面图像中噪声时,个别较小的毛刺会被误判为噪声并被平滑,导致后续提取轮廓时丢失重要细节,使最终轮廓提取结果不准确。
3.在生产过程中,可能因挤压过程中压力不均匀或者铝材料压入模具中出现流动不畅的死角等原因,型材轮廓上会出现与表面颜色差异较小的细小毛刺,则型材轮廓上的毛刺反映型材加工过程的异常情况和型材的质量,在对型材的切面图像进行分析时,需要保留型材轮廓上的毛刺。
技术实现要素:
4.为了解决个别较小的毛刺会被误判为噪声,导致型材的轮廓提取结果不技术问题,本发明的目的在于提供一种基于机器视觉的型材轮廓检测方法及系统,所采用的技术方案具体如下:第一方面,本发明一个实施例提供了一种基于机器视觉的型材轮廓检测方法,该方法包括:获取型材的切面灰度图像;将切面灰度图像划分搜索窗口;根据切面灰度图像中每个像素点与其预设邻域窗口内像素点之间的灰度差异,筛选每个像素点的相似像素点;依据切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述相似像素点的位置分布,获取切面灰度图像中每个像素点的邻域密集度;结合切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值;基于同一搜索窗口内任意两个像素点的邻域毛刺可能值,对所述两个像素点的预设邻域窗口内灰度分布的相似度进行调整,得到切面灰度图像中每个搜索窗口内任意两个像素点之间的改进相似度;根据同一搜索窗口内每个像素点与其他像素点之间的改进相似度对每个像素点的灰度值进行滤波,得到切面灰度图像中每个搜索窗口内每个像素点的滤波灰度值;基于切面灰度图像中像素点的滤波灰度值分布进行型材的轮廓检测。
5.进一步地,所述像素点的相似像素点获取方法,包括:对于切面灰度图像中任意一个像素点,将该像素点与其预设邻域窗口内每个像素点的灰度值的差值绝对值,作为对应两个像素点之间的特征灰度差异值;对所述特征灰度
差异值进行归一化,得到该像素点与其预设邻域窗口内每个像素点之间的归一特征灰度差异值;当所述归一特征灰度差异值小于预设差异阈值时,将该像素点的预设邻域窗口内对应的像素点作为该像素点的相似像素点。
6.进一步地,所述依据切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述相似像素点的位置分布,获取切面灰度图像中每个像素点的邻域密集度的方法,包括:对于切面灰度图像中任意一个像素点,将该像素点与其预设邻域窗口内每个像素点之间的特征灰度差异值进行累加,作为该像素点的综合灰度差异值;将该像素点的灰度值与所述综合灰度差异值的乘积,作为该像素点的邻域灰度差异度;将该像素点与其相似像素点组成的集合作为该像素点的同类像素集合;根据切面灰度图像中每个像素点的同类像素集合内像素点之间的距离,以及所述邻域灰度差异度,获取切面灰度图像中每个像素点的邻域密集度。
7.进一步地,所述每个像素点的邻域密集度的计算公式如下:式中,为切面灰度图像中第a个像素点的邻域密集度;为切面灰度图像中第a个像素点的邻域灰度差异度;为切面灰度图像中第a个像素点的相似像素点的个数;为切面灰度图像中第a个像素点的同类像素集合中第a个像素点与第b个像素点之间的欧式距离;为调节常数。
8.进一步地,所述结合切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值的方法,包括:根据切面灰度图像中每个像素点的相似像素点的位置分布进行区域生长,得到切面灰度图像中每个像素点的相似区域;对于切面灰度图像中任意一个像素点,获取该像素点的标记像素点;所述标记像素点同时位于该像素点的相似区域和预设邻域窗口内;对于该像素点的每个标记像素点,统计所述标记像素点的预设局部窗口内其相似像素点的个数,作为标记像素点的相似点数;将所述相似点数小于或者等于预设数量阈值的标记像素点,作为该像素点的疑似毛刺点;根据切面灰度图像中每个像素点对应的疑似毛刺点的数量与该疑似毛刺点的预设局部窗口内灰度分布,以及所述邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值。
9.进一步地,所述每个像素点的邻域毛刺可能值的计算公式如下:式中,为切面灰度图像中第a个像素点的邻域毛刺可能值;为切面灰度图像
中第a个像素点的疑似毛刺点的个数;为切面灰度图像中第a个像素点的相似像素点的个数;为切面灰度图像中第a个像素点的邻域密集度;为切面灰度图像中第a个像素点的第r个疑似毛刺点的相似点数;norm为归一化函数。
10.进一步地,所述切面灰度图像中每个搜索窗口内任意两个像素点之间的改进相似度的计算公式如下:式中,为切面灰度图像中每个搜索窗口内第c个像素点与第d个像素点之间的改进相似度;为切面灰度图像中每个搜索窗口内第c个像素点的邻域毛刺可能值;为切面灰度图像中每个搜索窗口内第d个像素点的邻域毛刺可能值;为切面灰度图像中每个搜索窗口内第c个像素点的预设邻域窗口内第i个像素点的灰度值;为切面灰度图像中每个搜索窗口内第d个像素点的预设邻域窗口内第i个像素点的灰度值;k为预设邻域窗口的长度;为调节常数;为绝对值函数。
11.进一步地,所述滤波灰度值的获取方法,包括:利用非局部均值滤波算法,根据切面灰度图像中每个搜索窗口内每个像素点与其他像素点之间的改进相似度,获取切面灰度图像中每个搜索窗口内每个像素点的滤波灰度值。
12.进一步地,所述基于切面灰度图像中像素点的滤波灰度值分布进行型材的轮廓检测的方法,包括:根据切面灰度图像中每个像素点的滤波灰度值,构造去噪切面灰度图像;对去噪切面灰度图像进行边缘检测得到边缘像素点,将边缘像素点构成的连通域作为去噪切面图像的型材轮廓。
13.第二方面,本发明另一个实施例提供了一种基于机器视觉的型材轮廓检测系统,该系统包括:存储器、处理器以及存储在所述存储器中并可在处理器上运行的计算机程序,处理器执行所述计算机程序时,实现上述任意一项方法的步骤。
14.本发明具有如下有益效果:本发明实施例中,获取切面灰度图像中与每个像素点的灰度值差异较小的相似像素点,通过像素点的预设邻域窗口内灰度分布,并结合像素点的空间分布特点,即像素点的预设邻域窗口内相似像素点的位置分布,获取像素点的邻域密集度;由于毛刺表现为方向不一的细小线条,则根据像素点的邻域内整体像素分布的连续程度,得到像素点的邻域毛刺可能值;综合考虑像素点所在邻域内像素整体分布的离散程度与连续程度,避免仅考虑任意两个像素点的预设邻域窗口内相同位置像素点的灰度值大小得到的相似度,导致细小毛刺被识别为噪声的问题,获取像素点之间的改进相似度;根据同一搜索窗口内像素点与其他像素点之间的改进相似度对像素点的灰度值进行滤波,使得滤波灰度值更加准确,增加切面灰度图像内的毛刺细节信息,提高了轮廓提取结果的准确性。
附图说明
15.为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
16.图1为本发明一个实施例所提供的一种基于机器视觉的型材轮廓检测方法的步骤流程图;图2为本发明一个实施例所提供的一种型材的切面灰度图像局部示意图。
具体实施方式
17.一种基于机器视觉的型材轮廓检测方法实施例:为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种基于机器视觉的型材轮廓检测方法及系统,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构或特点可由任何合适形式组合。
18.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
19.本发明所针对的具体场景:在生产型材过程中,其横截面轮廓上容易出现毛刺缺陷,在对毛刺进行图像检测之前会对整个图像进行去噪处理,但此时利用非局部均值滤波对其进行去噪时,容易将细小毛刺误判为噪声并平滑掉。
20.下面结合附图具体的说明本发明所提供的一种基于机器视觉的型材轮廓检测方法及系统的具体方案。
21.请参阅图1,其示出了本发明一个实施例提供的一种基于机器视觉的型材轮廓检测方法的步骤流程图,该方法包括:步骤s1:获取型材的切面灰度图像;将切面灰度图像划分搜索窗口。
22.具体的,利用工业相机采集加工结束后的型材的横截面即断面,获取型材的切面图像,工业相机位于型材的横截面的正上方,以确保型材的切面图像中不会出现型材的外表面,且型材拍摄时背景颜色为黑色。其中,型材的切面图像为rgb图像。将切面图像进行灰度化处理,得到型材的切面灰度图像。图2为本发明一个实施例所提供的一种型材的切面灰度图像局部示意图。
23.需要说明的是,本发明实施例中选用加权平均灰度化算法进行灰度化处理,具体方法在此不做介绍,为本领域技术人员熟知的技术手段。在本发明其他实施例中也可选用其他图像采集装置及图像预处理算法,图像采集和图像预处理算法均为本领域技术人员熟知的技术手段,在此不做限定。
24.在型材生产过程中,已知获取的型材的切面灰度图像的长和宽,为减少后续滤波过程中计算量,本发明实施例中将切面灰度图像平均划分为9个搜索窗口,每一个搜索窗口的尺寸均为,实施者可根据实际情况自行设置搜索窗口的个数。
25.步骤s2:根据切面灰度图像中每个像素点与其预设邻域窗口内像素点之间的灰度
差异,筛选每个像素点的相似像素点;依据切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述相似像素点的位置分布,获取切面灰度图像中每个像素点的邻域密集度。
26.在利用非局部均值滤波对图像进行增强时,将同一搜索窗口内两个像素点的邻域窗口内相同位置的两个像素点的灰度值进行比较,噪声像素点的灰度值较高,当噪声像素点位于正常背景区域内时,噪声像素点与其邻域内像素点的灰度值差异较大;当噪声像素点位于轮廓边缘时,因噪声像素点的灰度值与毛刺灰度值相近,会将细小毛刺视为噪声并进行平滑,导致细节信息丢失。由此,根据像素点与其预设邻域窗口内像素点之间的灰度差异,筛选每个像素点的相似像素点,以便确定像素点的位置。
27.其中,非局部均值滤波为本领域计算人员公知技术,在此不再进行赘述。
28.优选地,像素点的相似像素点的具体获取方法为:对于切面灰度图像中任意一个像素点,将该像素点与其预设邻域窗口内每个像素点的灰度值的差值绝对值,作为对应两个像素点之间的特征灰度差异值;对特征灰度差异值进行归一化,得到该像素点与其预设邻域窗口内每个像素点之间的归一特征灰度差异值;当归一特征灰度差异值小于预设差异阈值时,将该像素点的预设邻域窗口内对应的像素点作为该像素点的相似像素点。像素点的预设邻域窗口是以像素点为中心的预设邻域窗口。
29.为尽可能体现像素点的形态特征,并降低计算量,预设邻域窗口的尺寸取经验值,实施者可根据实际情况自行设置。
30.以型材的切面灰度图像中第a个像素点为例进行分析,将像素点与其预设邻域窗口内每个像素点的灰度值的差值绝对值,作为对应两个像素点之间的特征灰度差异值;当特征灰度差异值越大,说明像素点表现为噪声或者毛刺的可能性越大;当特征灰度差异值越小,说明像素点位于背景区域或者轮廓内部的可能性越大。利用归一化函数将特征灰度差异值进行归一化,得到像素点与其预设邻域窗口内每个像素点之间的归一特征灰度差异值。
31.将像素点与其预设邻域窗口内像素点之间的归一特征灰度差异值小于预设差异阈值的像素点,作为像素点的相似像素点。本发明实施例中预设差异阈值取经验值0.3,实施者可根据实际情况自行设置。
32.像素点的邻域密集度的具体获取方法为:对于切面灰度图像中任意一个像素点,将该像素点与其预设邻域窗口内每个像素点之间的特征灰度差异值进行累加,作为该像素点的综合灰度差异值;将该像素点的灰度值与综合灰度差异值的乘积,作为该像素点的邻域灰度差异度;将该像素点与其相似像素点组成的集合作为该像素点的同类像素集合;根据切面灰度图像中每个像素点的同类像素集合内像素点之间的距离,以及邻域灰度差异度,获取切面灰度图像中每个像素点的邻域密集度。
33.当像素点的综合灰度差异值且像素点的灰度值越大时,说明像素点与其预设邻域窗口内像素点之间的灰度差异越大,像素点为噪声或者毛刺的可能性越大;当像素点的综合灰度差异值且像素点的灰度值越小时,说明像素点a位于背景区域或者轮廓内部的可能性越大。根据像素点与其预设邻域窗口内像素点之间的灰度值差异,以及
像素点自身灰度值,获取像素点的邻域灰度差异度。
34.切面灰度图像中每个像素点的邻域灰度差异度的计算公式如下:式中,为切面灰度图像中第a个像素点的邻域灰度差异度;为切面灰度图像中第a个像素点的灰度值;为切面灰度图像中第a个像素点与其预设邻域窗口内除第a个像素点的第n个像素点之间的特征灰度差异值;为切面灰度图像中第a个像素点的综合灰度差异值;k为预设邻域窗口的长度。
35.需要说明的是,当越大时,说明像素点位于噪声或者毛刺的可能性越大,则邻域灰度差异度越大;当越大时,使得综合灰度差异值越大,说明像素点位于噪声或者毛刺的可能性越大;当越小时,说明像素点表现为背景区域或者轮廓内部的可能性,则邻域灰度差异度越小。
36.已知噪声之间分布无规律且较为分散,毛刺一般位于轮廓边缘且毛刺像素点分布相对聚集,因此,根据像素点与其相似像素点之间的距离,获取像素点的邻域密集度,进而确定像素点为毛刺像素点的可能性。
37.将像素点与其相似像素点构成像素点的同类像素集合,对于像素点的同类像素集合中每个像素点,计算该像素点分别与像素点的同类像素集合中每个像素点之间的欧式距离,取均值,得到该像素点的综合欧式距离,进一步获取像素点的同类像素集合中所有像素点的综合欧式距离的均值。当该值越大时,说明与像素点的灰度值差异较小的像素点分布较为分散,则像素点为噪声像素点的可能性越大;当该值越小时,说明与像素点的灰度值差异较小的像素点分布相对集中,像素点为毛刺像素点的可能性越大。
38.邻域灰度差异度只考虑了一定范围内相似像素点存在个数,而没有体现点与点之间位置关系,则利用像素点的同类像素集合中像素点的综合欧式距离的均值对邻域灰度差异度进行加权,使像素点呈现毛刺的可能性越准确,得到像素点的邻域密集度。
39.切面灰度图像中每个像素点的邻域密集度的计算公式如下:式中,为切面灰度图像中第a个像素点的邻域密集度;为切面灰度图像中第a个像素点的邻域灰度差异度;为切面灰度图像中第a个像素点的相似像素点的个数;为切面灰度图像中第a个像素点的同类像素集合中第a个像素点与第b个像素点之间的欧式距离;为调节常数,取经验值0.01,作用为防止分式无意义。
40.需要说明的是,当邻域灰度差异度越大时,说明像素点位于噪声或者毛刺的可
能性越大;当越小时,使得越大,说明与第a个像素点的灰度值差异较小的像素点分布较为密集,则邻域密集度越大,第a个像素点为毛刺的可能性越大;当越大时,越小,说明与第a个像素点的灰度值差异较小的像素点分布较为分散,则邻域密集度越小,第a个像素点为噪声的可能性越大。
41.步骤s3:结合切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值。
42.具体的,已知毛刺为方向不一的细小线条,且一定存在于轮廓边缘上,则毛刺像素点与轮廓边缘像素点之间的灰度值差异较小。若噪声像素点接近轮廓边缘,且噪声像素点与轮廓内部像素点的灰度值较为相似,在利用邻域密集度判断像素点表现毛刺特征时,容易受到轮廓内部正常像素点影响,仅根据邻域密集度无法准确判断像素点是否为毛刺像素点。
43.已知相较于噪点的不规律分布,毛刺具有一定的连续性,则根据与像素点灰度值较为接近的像素点的连续分布特征,判断毛刺像素点,得到像素点的邻域毛刺可能值。
44.优选地,像素点的邻域毛刺可能值的具体计算方法为:根据切面灰度图像中每个像素点的相似像素点的位置分布进行区域生长,得到切面灰度图像中每个像素点的相似区域;对于切面灰度图像中任意一个像素点,获取该像素点的标记像素点;标记像素点同时位于该像素点的相似区域和预设邻域窗口内;对于该像素点的每个标记像素点,统计标记像素点的预设局部窗口内其相似像素点的个数,作为标记像素点的相似点数;将相似点数小于或者等于预设数量阈值的标记像素点,作为该像素点的疑似毛刺点;根据切面灰度图像中每个像素点对应的疑似毛刺点的数量与该疑似毛刺点的预设局部窗口内灰度分布,以及邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值。
45.对于切面灰度图像中任意一个像素点,将该像素点作为生长点进行区域生长,在生长点的预设局部窗口内的相似像素点作为新的生长点进行区域生长,直至所有新的生长点的预设局部窗口内不存在新的生长点的相似像素点时停止区域生长,得到该像素点的相似区域。本发明实施例中预设局部窗口的尺寸取经验值,实施者可根据实际情况自行设定。需要说明的是,预设局部窗口的尺寸小于预设邻域窗口的尺寸。像素点的预设局部窗口是以像素点为中心的预设局部窗口。
46.其中,区域生长算法为本领域技术人员公知技术,在此不再进行赘述。
47.当像素点为噪声像素点时,噪点的不规律分布,则像素点的相似区域较小;当像素点位于轮廓内部时,轮廓内部像素点灰度较为均匀,像素点的相似区域较大。为保证像素点的判断准确性,限定像素点的相似区域的大小,获取像素点的标记像素点,标记像素点同时位于像素点的相似区域和预设邻域窗口内。
48.统计像素点的标记像素点的预设局部窗口内存在该标记像素点的相似像素点的数量,作为像素点的标记像素点的相似点数。已知噪声像素点分布不规律,则噪声像素点的标记像素点的相似点数较少;毛刺成细小线条,则毛刺像素点的标记像素点的相似点
数较少;轮廓内部像素点灰度分布较为均匀,则其标记像素点的相似点数较多。因此,根据像素点的标记像素点的相似点数可以粗略筛除轮廓内部像素点。
49.将像素点的标记像素点的相似点数小于或者等于预设数量阈值的标记像素点作为像素点的疑似毛刺点。本发明实施例中预设数量阈值取经验值4,实施者可根据具体情况自行设置。
50.已知噪声像素点分布不规律,毛刺成细小线条,则噪声像素点的疑似毛刺点的个数小于毛刺像素点的疑似毛刺点的个数,且噪声像素点的疑似毛刺点的相似点数小于毛刺像素点的标记像素点的相似点数,结合像素点的邻域密集度,得到像素点的邻域毛刺可能值。
51.切面灰度图像中每个像素点的邻域毛刺可能值的计算公式如下:式中,切面灰度图像中第a个像素点的邻域毛刺可能值;为切面灰度图像中第a个像素点的疑似毛刺点的个数;为切面灰度图像中第a个像素点的相似像素点的个数;为切面灰度图像中第a个像素点的邻域密集度;为切面灰度图像中第a个像素点的第r个疑似毛刺点的相似点数;norm为归一化函数。
52.需要说明的是,当越大且越大时,说明第a个像素点的邻域内像素点分布较为聚集,像素点为毛刺像素点的可能性越大,则邻域毛刺可能值越大;当邻域密集度越大时,说明与第a个像素点的灰度值差异较小的像素点分布较为密集,则邻域密集度越大,第a个像素点为毛刺的可能性越大,则邻域毛刺可能值越大。
53.至此,获取型材的切面灰度图像中每个像素点的邻域毛刺可能值。
54.步骤s4:基于同一搜索窗口内任意两个像素点的邻域毛刺可能值,对两个像素点的预设邻域窗口内灰度分布的相似度进行调整,得到切面灰度图像中每个搜索窗口内任意两个像素点之间的改进相似度。
55.具体的,对于切面灰度图像中搜索窗口q,假设像素点位于搜索窗口q内,利用非局部均值滤波,将像素点分别与搜索窗口q内所有像素点的预设邻域窗口内灰度值进行比较,得到像素点与搜索窗口q内每个像素点之间的相似度mse。
56.本发明在滤波时需要保留表现毛刺可能性大的像素点,平滑掉噪声,因此基于像素点的邻域毛刺可能值即像素点的预设邻域窗口内部毛刺表现程度,对像素点的预设邻域窗口分别与搜索窗口q内所有像素点之间的相似度mse进行加权,得到像素点与搜索窗口q内每个像素点之间的改进相似度。
57.以搜索窗口q内第c个像素点与第d个像素点为例进行分析,利用非局部均值滤波获取像素点与像素点之间的相似度,具体为:获取像素点与像素点的预设邻域窗口内相同位置像素点的灰度值差值的平方,取该平方的均值作为像素点与像素点之间
的相似度。当像素点与像素点的预设邻域窗口内相同位置像素点的灰度值差异越小时,相似度越小,像素点与像素点之间越相似。
58.利用像素点与像素点的邻域毛刺可能值、对两个像素点之间的相似度改进。当邻域毛刺可能值的差异越小时,说明两个像素点越相似;利用区分噪声像素点与毛刺像素点,当乘积越大时,说明像素点与像素点同时为毛刺像素点的可能性越大。因此,利用对像素点与像素点之间的相似度进行加权,得到像素点与像素点之间的改进相似度。
59.切面灰度图像中每个搜索窗口任意两个像素点之间的改进相似度的计算公式如下:式中,为切面灰度图像中每个搜索窗口内第c个像素点与第d个像素点之间的改进相似度;为切面灰度图像中每个搜索窗口内第c个像素点的邻域毛刺可能值;为切面灰度图像中每个搜索窗口内第d个像素点的邻域毛刺可能值;为切面灰度图像中每个搜索窗口内第c个像素点的预设邻域窗口内第i个像素点的灰度值;为切面灰度图像中每个搜索窗口内第d个像素点的预设邻域窗口内第i个像素点的灰度值;k为预设邻域窗口的长度,,z为大于0的整数;为调节常数,取经验值0.01,作用为防止分式无意义;为绝对值函数;为调节常数,取经验值0.01,作用为防止分式无意义。
60.需要说明的是,当越小时,说明搜索窗口内第c个像素点与第d个像素点的预设邻域窗口内灰度分布的差异较小,第c个像素点与第d个像素点越相似,则改进相似度越小;当越小时,说明搜索窗口内第c个像素点与第d个像素点邻域相似情况较高,则改进相似度越小;当越大时,搜索窗口内第c个像素点与第d个像素点同时表现为毛刺的可能性越大,则改进相似度越小。
61.至此,获取切面灰度图像中每个搜索窗口内任意两个像素点之间的改进相似度。
62.步骤s5:根据同一搜索窗口内每个像素点与其他像素点之间的改进相似度对每个像素点的灰度值进行滤波,得到切面灰度图像中每个搜索窗口内每个像素点的滤波灰度值。
63.利用非局部均值滤波算法,根据切面灰度图像中每个搜索窗口内每个像素点与其他像素点之间的改进相似度,获取切面灰度图像中每个搜索窗口内每个像素点的滤波灰度值。下面过程为利用非局部均值滤波获取像素点的滤波灰度值的过程:(1)获取搜索窗口内每个像素点与其像素点之间的高斯权重。
64.利用像素点与搜索窗口q内其他像素点之间的改进相似度,对像素点与像素点之间的改进相似度进行归一化处理,得到像素点与像素点的高斯权重。
65.切面灰度图像中每个搜索窗口内任意两个像素点的高斯权重的计算公式如下:式中,为切面灰度图像中每个搜索窗口内第c个像素点与第d个像素点的高斯权重;为切面灰度图像中每个搜索窗口内第c个像素点与第d个像素点之间的改进相似度;为滤波系数;为搜索窗口的长度;m为搜索窗口的宽度;为搜索窗口内像素点的数量;exp为自然常数e为底数的指数函数。
66.需要说明的是,当滤波系数h越大时,滤波效果越好,但切面灰度图像越模糊;当滤波系数h越小时,滤波效果越差,但切面灰度图像滤波后的失真情况越小;当越小时,越大,占比越大,赋予越大的高斯权重,则高斯权重越大。
67.(2)获取搜索窗口内每个像素点的滤波灰度值。
68.切面灰度图像中各搜索窗口内每个像素点的滤波灰度值的计算公式如下:式中,为切面灰度图像中每个搜索窗口内第c个像素点的滤波灰度值;为切面灰度图像中每个搜索窗口内第c个像素点与第d个像素点的高斯权重;为搜索窗口的长度;m为搜索窗口的宽度;为搜索窗口内像素点的数量;为切面灰度图像中每个搜索窗口内第d个像素点的灰度值。
69.需要说明的是,当高斯权重越大时,说明搜索窗口内第c个像素点与第d个像素点越相似,并将其作为第d个像素点的灰度值的权重,则滤波灰度值越大。
70.至此,获取切面灰度图像中每个像素点的滤波灰度值。
71.步骤s6:基于切面灰度图像中像素点的滤波灰度分布进行型材的轮廓检测。
72.根据切面灰度图像中每个像素点的滤波灰度值,构造去噪切面灰度图像;其中,去噪切面灰度图像中毛刺保存较为完好。本发明实施例中选用canny边缘检测算子对去噪切面灰度图像进行边缘检测,得到去噪切面灰度图像中型材轮廓的边缘像素点,将边缘像素点构成的连通域作为去噪切面图像的型材轮廓。其中,canny边缘检测算子为本邻域技术人员公知技术,在此不再赘述。
73.在本发明其他实施例中可以通过区域分割,获取切面灰度图像中型材的轮廓。
74.至此,本发明完成。
75.综上所述,本发明实施例将型材的切面灰度图像划分搜索窗口,获取每个像素点的相似像素点,基于像素点的相似像素点的位置分布,获取邻域密集度,并结合像素点的预设邻域窗口内灰度分布得到邻域毛刺可能值;对同一搜索窗口内任意两个像素点之间的相似度进行改进,获取像素点之间的改进相似度,进而基于切面灰度图像中像素点的滤波灰度值,进行型材的轮廓检测。本发明结合像素点所在邻域内像素整体分布的离散程度与连
续程度对像素点之间的相似度进行改进,增加切面灰度图像内的毛刺细节信息,提高了型材轮廓提取结果的准确性。
76.基于与上述方法实施例相同的发明构思,本发明实施例还提供了一种基于机器视觉的型材轮廓检测系统,该系统包括:存储器、处理器以及存储在所述存储器中并可在处理器上运行的计算机程序,处理器执行所述计算机程序时,实现上述一种基于机器视觉的型材轮廓检测方法实施例中的步骤,例如图1所示的步骤。该一种基于机器视觉的型材轮廓检测方法在上述实施例中已经详细说明,不再赘述。
77.一种基于机器视觉的型材图像去噪方法实施例:在利用常规滤波算法对切面图像中噪声信息进行去除时,像素点邻域内灰度分布情况难以反映像素点表现特征,容易将型材轮廓上的毛刺视为噪声去除,导致丢失切面图像中的毛刺细节信息,使得图像去噪效果不佳。
78.为了解决像素点邻域内灰度分布情况难以反映像素点表现特征,导致型材图像去噪效果不佳的技术问题,本发明的目的在于提供一种基于机器视觉的型材图像去噪方法,所采用的技术方案具体如下:步骤s1:获取型材的切面灰度图像;将切面灰度图像划分搜索窗口;步骤s2:根据切面灰度图像中每个像素点与其预设邻域窗口内像素点之间的灰度差异,筛选每个像素点的相似像素点;依据切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述相似像素点的位置分布,获取切面灰度图像中每个像素点的邻域密集度;步骤s3:结合切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值;步骤s4:基于同一搜索窗口内任意两个像素点的邻域毛刺可能值,对所述两个像素点的预设邻域窗口内灰度分布的相似度进行调整,得到切面灰度图像中每个搜索窗口内任意两个像素点之间的改进相似度;步骤s5:根据同一搜索窗口内每个像素点与其他像素点之间的改进相似度对每个像素点的灰度值进行滤波,得到切面灰度图像中每个搜索窗口内每个像素点的滤波灰度值。
79.其中,步骤s1-s5在上述一种基于机器视觉的型材轮廓检测方法实施例中已给出了详细说明,不再赘述。
80.本发明实施例提供一种基于机器视觉的型材图像去噪方法具有如下技术效果:本发明实施例中,获取切面灰度图像中与每个像素点的灰度值差异较小的相似像素点,通过像素点的预设邻域窗口内灰度分布,并结合像素点的空间分布特点,即像素点的预设邻域窗口内相似像素点的位置分布,获取像素点的邻域密集度;由于毛刺表现为方向不一的细小线条,则根据像素点的邻域内整体像素分布的连续程度,得到像素点的邻域毛刺可能值;综合考虑像素点所在邻域内像素整体分布的离散程度与连续程度,避免仅考虑任意两个像素点的预设邻域窗口内相同位置像素点的灰度值大小得到的相似度,导致细小毛刺被识别为噪声的问题,获取像素点之间的改进相似度;根据同一搜索窗口内像素点与其他像素点之间的改进相似度对像素点的灰度值进行滤波,使得滤波灰度值更加准确,提高切面灰度图像内的去噪效果。
81.需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
82.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
83.以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于机器视觉的型材轮廓检测方法,其特征在于,该方法包括:获取型材的切面灰度图像;将切面灰度图像划分搜索窗口;根据切面灰度图像中每个像素点与其预设邻域窗口内像素点之间的灰度差异,筛选每个像素点的相似像素点;依据切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述相似像素点的位置分布,获取切面灰度图像中每个像素点的邻域密集度;结合切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值;基于同一搜索窗口内任意两个像素点的邻域毛刺可能值,对所述两个像素点的预设邻域窗口内灰度分布的相似度进行调整,得到切面灰度图像中每个搜索窗口内任意两个像素点之间的改进相似度;根据同一搜索窗口内每个像素点与其他像素点之间的改进相似度对每个像素点的灰度值进行滤波,得到切面灰度图像中每个搜索窗口内每个像素点的滤波灰度值;基于切面灰度图像中像素点的滤波灰度值分布进行型材的轮廓检测。2.根据权利要求1所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述像素点的相似像素点获取方法,包括:对于切面灰度图像中任意一个像素点,将该像素点与其预设邻域窗口内每个像素点的灰度值的差值绝对值,作为对应两个像素点之间的特征灰度差异值;对所述特征灰度差异值进行归一化,得到该像素点与其预设邻域窗口内每个像素点之间的归一特征灰度差异值;当所述归一特征灰度差异值小于预设差异阈值时,将该像素点的预设邻域窗口内对应的像素点作为该像素点的相似像素点。3.根据权利要求2所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述依据切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述相似像素点的位置分布,获取切面灰度图像中每个像素点的邻域密集度的方法,包括:对于切面灰度图像中任意一个像素点,将该像素点与其预设邻域窗口内每个像素点之间的特征灰度差异值进行累加,作为该像素点的综合灰度差异值;将该像素点的灰度值与所述综合灰度差异值的乘积,作为该像素点的邻域灰度差异度;将该像素点与其相似像素点组成的集合作为该像素点的同类像素集合;根据切面灰度图像中每个像素点的同类像素集合内像素点之间的距离,以及所述邻域灰度差异度,获取切面灰度图像中每个像素点的邻域密集度。4.根据权利要求3所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述每个像素点的邻域密集度的计算公式如下:式中,为切面灰度图像中第a个像素点的邻域密集度;为切面灰度图像中第a个像素点的邻域灰度差异度;为切面灰度图像中第a个像素点的相似像素点的个数;为切面灰度图像中第a个像素点的同类像素集合中第a个像素点与第b个像素点之间的欧式距
离;为调节常数。5.根据权利要求1所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述结合切面灰度图像中每个像素点的预设邻域窗口内灰度分布,以及所述邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值的方法,包括:根据切面灰度图像中每个像素点的相似像素点的位置分布进行区域生长,得到切面灰度图像中每个像素点的相似区域;对于切面灰度图像中任意一个像素点,获取该像素点的标记像素点;所述标记像素点同时位于该像素点的相似区域和预设邻域窗口内;对于该像素点的每个标记像素点,统计所述标记像素点的预设局部窗口内其相似像素点的个数,作为标记像素点的相似点数;将所述相似点数小于或者等于预设数量阈值的标记像素点,作为该像素点的疑似毛刺点;根据切面灰度图像中每个像素点对应的疑似毛刺点的数量与该疑似毛刺点的预设局部窗口内灰度分布,以及所述邻域密集度,获取切面灰度图像中每个像素点的邻域毛刺可能值。6.根据权利要求5所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述每个像素点的邻域毛刺可能值的计算公式如下:式中,为切面灰度图像中第a个像素点的邻域毛刺可能值;为切面灰度图像中第a个像素点的疑似毛刺点的个数;为切面灰度图像中第a个像素点的相似像素点的个数;为切面灰度图像中第a个像素点的邻域密集度;为切面灰度图像中第a个像素点的第r个疑似毛刺点的相似点数;norm为归一化函数。7.根据权利要求1所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述切面灰度图像中每个搜索窗口内任意两个像素点之间的改进相似度的计算公式如下:式中,为切面灰度图像中每个搜索窗口内第c个像素点与第d个像素点之间的改进相似度;为切面灰度图像中每个搜索窗口内第c个像素点的邻域毛刺可能值;为切面灰度图像中每个搜索窗口内第d个像素点的邻域毛刺可能值;为切面灰度图像中每个搜索窗口内第c个像素点的预设邻域窗口内第i个像素点的灰度值;为切面灰度图像中每个搜索窗口内第d个像素点的预设邻域窗口内第i个像素点的灰度值;k为预设邻域窗口的长度;为调节常数;为绝对值函数。8.根据权利要求1所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述滤波灰度值的获取方法,包括:利用非局部均值滤波算法,根据切面灰度图像中每个搜索窗口内每个像素点与其他像
素点之间的改进相似度,获取切面灰度图像中每个搜索窗口内每个像素点的滤波灰度值。9.根据权利要求1所述的一种基于机器视觉的型材轮廓检测方法,其特征在于,所述基于切面灰度图像中像素点的滤波灰度值分布进行型材的轮廓检测的方法,包括:根据切面灰度图像中每个像素点的滤波灰度值,构造去噪切面灰度图像;对去噪切面灰度图像进行边缘检测得到边缘像素点,将边缘像素点构成的连通域作为去噪切面图像的型材轮廓。10.一种基于机器视觉的型材轮廓检测系统,其特征在于,该系统包括:存储器、处理器以及存储在所述存储器中并可在处理器上运行的计算机程序,处理器执行所述计算机程序时,实现上述权利要求1-9任意一项所述一种基于机器视觉的型材轮廓检测方法的步骤。
技术总结
本发明涉及图像数据处理技术领域,具体涉及一种基于机器视觉的型材轮廓检测方法及系统。该方法将型材的切面灰度图像划分搜索窗口,获取每个像素点的相似像素点,基于像素点的相似像素点的位置分布,获取邻域密集度,并结合像素点的预设邻域窗口内灰度分布得到邻域毛刺可能值;对同一搜索窗口内任意两个像素点之间的相似度进行改进,获取像素点之间的改进相似度,进而基于切面灰度图像中像素点的滤波灰度值进行型材的轮廓检测。本发明结合像素点所在邻域内像素整体分布的离散程度与连续程度对像素点之间的相似度进行改进,增加切面灰度图像内的毛刺细节信息,提高了型材轮廓提取结果的准确性。取结果的准确性。取结果的准确性。
技术研发人员:薛强 臧明仁 李文龙
受保护的技术使用者:山东明达圣昌铝业集团有限公司
技术研发日:2023.08.22
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/