CN116563282B - 一种基于机器视觉的钻削刀具检测方法及系统 - Google Patents
一种基于机器视觉的钻削刀具检测方法及系统 Download PDFInfo
- Publication number
- CN116563282B CN116563282B CN202310833935.7A CN202310833935A CN116563282B CN 116563282 B CN116563282 B CN 116563282B CN 202310833935 A CN202310833935 A CN 202310833935A CN 116563282 B CN116563282 B CN 116563282B
- Authority
- CN
- China
- Prior art keywords
- target curve
- pixel point
- target
- curve
- scratch
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000005553 drilling Methods 0.000 title claims abstract description 116
- 238000001514 detection method Methods 0.000 title claims abstract description 63
- 230000008901 benefit Effects 0.000 claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000002159 abnormal effect Effects 0.000 claims abstract description 39
- 238000011156 evaluation Methods 0.000 claims abstract description 26
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 18
- 238000004891 communication Methods 0.000 claims abstract description 6
- 238000007667 floating Methods 0.000 claims description 27
- 238000007689 inspection Methods 0.000 claims description 13
- 230000007797 corrosion Effects 0.000 claims description 6
- 238000005260 corrosion Methods 0.000 claims description 6
- 238000003708 edge detection Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 49
- 238000003860 storage Methods 0.000 description 35
- 230000007547 defect Effects 0.000 description 20
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000009826 distribution Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 239000000463 material Substances 0.000 description 7
- 238000005452 bending Methods 0.000 description 5
- 238000005286 illumination Methods 0.000 description 5
- 238000005299 abrasion Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000579895 Chlorostilbon Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000010976 emerald Substances 0.000 description 1
- 229910052876 emerald Inorganic materials 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003628 erosive effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
- G06T7/0008—Industrial image inspection checking presence/absence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本说明书实施例公开了一种基于机器视觉的钻削刀具检测方法及系统,涉及图像处理技术领域。该方法包括:获取针对钻削刀具采集的检测图像;检测该图像中钻削刀具的边缘轮廓,得到闭合连通域;确定该连通域内的角点;获取该连通域内以两个角点为端点的曲线;计算目标曲线上每一个像素点对应的螺纹阴暗区分度;获取邻域窗口内的角点数量;基于该角点数量、螺纹阴暗区分度、目标曲线两端点之间连线的第一斜率以及每一个像素点对应的第二斜率,确定目标曲线所对应的划痕特征隶属度;根据该划痕特征隶属度以及第一斜率,确定目标曲线对应的划痕估计优势;基于贝叶斯跳变算法确定异常曲线;根据该异常曲线的数量以及对应的划痕估计优势,得到评估结果。
Description
技术领域
本发明涉及图像处理技术领域,特别涉及一种基于机器视觉的钻削刀具检测方法及系统。
背景技术
钻削刀具作为一种常用且十分重要的加工工具,在CNC(Computer numericalcontrol)机床加工中得到广泛的使用。其质量对于整个设备来说至关重要。如果存在缺陷,极有可能在使用过程中出现损坏,甚至引发整个机械设备的故障和报废。CNC机床加工使用的钻削刀具制作的材料一般比较脆,在使用过程中容易受震动等因素的影响,出现磨损,对产品制作的精度影响较大,且其刀具也容易出现划痕等缺陷、断裂等缺陷。其中划痕这种缺陷相较于断裂、缺口这种缺陷观察起来不太明显。传统的图像处理技术在识别划痕缺陷时,容易将钻削刀具本身的螺纹错误识别为划痕,导致检测结果不正确,识别准确率较低。
基于此,有必要研究一种更加科学的划痕识别方法,以实现对钻削刀具进行更精准的检测。
发明内容
本说明书实施例的一个方面提供一种基于机器视觉的钻削刀具检测方法,该方法包括:
获取针对待检测的钻削刀具采集的检测图像;
通过Canny算子检测所述检测图像中钻削刀具的边缘轮廓,并通过腐蚀和细化处理得到闭合的连通域;
确定所述连通域内的所有角点;
获取所述连通域内以两个所述角点为端点的曲线;
对于每一条目标曲线,计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,所述螺纹阴暗区分度用于表征所述像素点所在的目标曲线为螺纹曲线的可能性;
获取所述目标曲线上每一个像素点所对应的邻域窗口内的角点数量;
基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度;
根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势;
将所述连通域内所有所述曲线对应的划痕估计优势作为贝叶斯跳变算法的输入,得到所有所述曲线中的异常曲线;
根据所述异常曲线的数量以及所述异常曲线对应的划痕估计优势,得到所述待检测的钻削刀具对应的评估结果。
在一些实施例中,所述确定所述连通域内的所有角点,包括:通过Harris角点检测算法,检测所述连通域内的所有角点。
在一些实施例中,所述计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,包括:
对于所述目标曲线上的每一个目标像素点;
计算以所述目标像素点为中心的邻域窗口中位于所述目标曲线的一侧的所有像素点对应的第一灰度浮动系数,以及位于所述目标曲线的另一侧的所有像素点对应的第二灰度浮动系数;
根据所述第一灰度浮动系数和所述第二灰度浮动系数的差值的绝对值,得到所述目标像素点所对应的螺纹阴暗区分度。
在一些实施例中,所述第一灰度浮动系数和所述第二灰度浮动系数通过如下方式计算:
;
;
其中,为以所述目标像素点为中心的邻域窗口中的像素点的灰度值,为以所述目标像素点为中心的邻域窗口中的像素点与所述目标像素点之间的距离,为以所述目标像素点为中心的邻域窗口中位于所述目标曲线的一侧的所有像素点的数量,为以所述目标像素点为中心的邻域窗口中位于所述目标曲线的另一侧的所有像素点的数量,为所述第一灰度浮动系数,为所述第二灰度浮动系数。
在一些实施例中,所述基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度,包括:
计算所述第一斜率与所述第二斜率的差值的绝对值;
将所述第一斜率与所述第二斜率的差值的绝对值乘以所述目标像素点所对应的螺纹阴暗区分度,得到第一参数;
基于所述角点数量与所述第一参数的比值,得到第二参数;
根据所述目标曲线上所有像素点所对应的第二参数的均值,得到所述目标曲线所对应的划痕特征隶属度。
在一些实施例中,所述目标曲线所对应的划痕特征隶属度通过如下方式计算:
;
其中,为所述目标曲线所对应的划痕特征隶属度,为归一化函数,为固定参数,为所述目标曲线上的像素点的数量,为所述目标曲线上第i个像素点所对应的邻域窗口内的角点数,为所述目标曲线上第i个像素点所对应的螺纹阴暗区分度,为所述目标曲线上第个像素点对应的第二斜率,为所述目标曲线两端点之间连线的第一斜率。
在一些实施例中,所述根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势,包括:
获取所述连通域中所有所述曲线对应的倾斜角均值;
根据所述目标曲线对应的第一斜率确定所述目标曲线对应的倾斜角,并根据所述目标曲线对应的倾斜角与所述倾斜角均值的差值的绝对值,得到第三参数;
基于所述目标曲线对应的划痕特征隶属度、所述划痕特征隶属度对应的第一权重、所述第三参数以及所述第三参数对应的第二权重,得到所述目标曲线对应的划痕估计优势。
在一些实施例中,所述划痕估计优势通过如下方式计算:
;
其中,为所述目标曲线对应的划痕估计优势,为归一化函数,为所述倾斜角均值,为所述第一权重,为所述第二权重,为所述目标曲线对应的倾斜角。
在一些实施例中,所述第一权重大于所述第二权重。
本说明书实施例的另一个方面还提供一种基于机器视觉的钻削刀具检测系统,该系统包括:
获取模块,用于获取针对待检测的钻削刀具采集的检测图像;
边缘检测模块,用于通过Canny算子检测所述检测图像中钻削刀具的边缘轮廓,并通过腐蚀和细化处理得到闭合的连通域;
角点确定模块,用于确定所述连通域内的所有角点;
曲线确定模块,用于获取所述连通域内以两个所述角点为端点的曲线;
螺纹阴暗区分度确定模块,用于对于每一条目标曲线,计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,所述螺纹阴暗区分度用于表征所述像素点所在的目标曲线为螺纹曲线的可能性;
角点数量确定模块,用于获取所述目标曲线上每一个像素点所对应的邻域窗口内的角点数量;
划痕特征隶属度确定模块,用于基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度;
划痕估计优势确定模块,用于根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势;
异常曲线确定模块,用于将所述连通域内所有所述曲线对应的划痕估计优势作为贝叶斯跳变算法的输入,得到所有所述曲线中的异常曲线;
评估结果生成模块,用于根据所述异常曲线的数量以及所述异常曲线对应的划痕估计优势,得到所述待检测的钻削刀具对应的评估结果。
本说明书实施例所提供的一种基于机器视觉的钻削刀具检测方法及系统可能带来的有益效果至少包括:(1)通过对钻削刀具本身的螺纹线条与划痕线条进行分析,根据螺纹线条数量多、线条弯曲、光滑等特征将划痕缺陷特征区分开来,并通过评估每条曲线的划痕估计优势,避免了将螺纹线条识别成划痕等异常情况的问题,提升了检测准确率;(2)通过对曲线两侧的像素点的灰度差异进行分析,可以间接消除反光区域对缺陷识别的干扰;(3)通过使用斜率特征来计算每一条曲线所对应的划痕特征隶属度,可以将具有直线特性的划痕与具有曲线特征的螺纹线条更好地区分开,从而更准确地检测出钻削刀具表面的划痕缺陷,避免发生将螺纹线条识别成划痕的情况。
附加的特征将在下面的描述中部分地阐述。对于本领域技术人员来说,通过查阅以下内容和附图将变得显而易见,或者可以通过实例的产生或操作来了解。本说明书的特征可以通过实践或使用以下详细实例中阐述的方法、工具和组合的各个方面来实现和获得。
附图说明
本说明书将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书的一些实施例所示的一种基于机器视觉的钻削刀具检测系统的示例性应用场景示意图;
图2是根据本说明书的一些实施例所示的一种基于机器视觉的钻削刀具检测系统的示例性模块图;
图3是根据本说明书一些实施例所示的一种基于机器视觉的钻削刀具检测方法的示例性流程图;
图4是根据本说明书一些实施例所示的示例性钻削刀具结构示意图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
下面结合附图对本说明书实施例提供的一种基于机器视觉的钻削刀具检测方法及系统进行详细说明。
图1是根据本说明书一些实施例所示的一种基于机器视觉的钻削刀具检测系统的示例性应用场景示意图。
参照图1,在一些实施例中,一种基于机器视觉的钻削刀具检测系统的应用场景100可以包括图像采集装置110、存储设备120、处理设备130、终端设备140以及网络150。应用场景100中的各个部件可以以多种方式相连接。例如,图像采集装置110可以与存储设备120和/或处理设备130通过网络150连接,也可以与存储设备120和/或处理设备130直接连接。又例如,存储设备120可以与处理设备130直接连接或通过网络150连接。又例如,终端设备140可以与存储设备120和/或处理设备130通过网络150连接,也可以与存储设备120和/或处理设备130直接连接。
图像采集装置110可以用于针对钻削刀具进行图像采集,以获得待检测的钻削刀具所对应的检测图像。在一些实施例中,图像采集装置110可以为CMOS(ComplementaryMetal-Oxide-Semiconductor)相机。在一些实施例中,可以在图像采集过程中使用无反射照明设备(即漫反射照明),将光线光源散布到钻削刀具的整个表面,从而尽量避免反射光的存在。在一些实施例中,该图像采集装置110可以按照设定的图像采集频率对钻削刀具进行图像采集(例如,每隔2小时、5小时、1天、2天或5天采集一次)。在一些实施例中,为了实现全方位的监控和拍摄,可以将该图像采集装置110设置在云台组件上。在一些实施例中,图像采集装置110可以具有独立的电源,其可以通过有线或无线(例如蓝牙、WiFi等)的方式将采集的检测图像发送给应用场景100中的其他部件(例如,存储设备120、处理设备130、终端设备140)。在一些实施例中,应用场景100中可以包括多个(例如两个及以上)图像采集装置110,该多个图像采集装置110可以从不同视角针对同一个钻削刀具进行图像采集。
在一些实施例中,图像采集装置110可以通过网络150将其采集的检测图像发送至存储设备120、处理设备130、终端设备140等。在一些实施例中,可以通过处理设备130对图像采集装置110所采集的检测图像进行处理。例如,处理设备130可以基于该检测图像确定待检测的钻削刀具对应的评估结果。在一些实施例中,该评估结果可以发送至存储设备120进行记录,或者发送至终端设备140以反馈给用户(例如机床设备管理人员)。
网络150可以促进信息和/或数据的交换。网络150可以包括能够促进应用场景100的信息和/或数据交换的任何合适的网络。在一些实施例中,应用场景100的至少一个组件(例如,图像采集装置110、存储设备120、处理设备130、终端设备140)可以通过网络150与应用场景100中至少一个其他组件交换信息和/或数据。例如,处理设备130可以通过网络150从图像采集装置110和/或存储设备120获得针对钻削刀具采集的检测图像。又例如,处理设备130可以通过网络150从终端设备140获得用户操作指令,示例性的操作指令可以包括但不限于调阅检测图像,读取基于该检测图像确定的待检测的钻削刀具对应的评估结果等。
在一些实施例中,网络150可以为任意形式的有线或无线网络,或其任意组合。仅作为示例,网络150可以包括缆线网络、有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共开关电话网络(PSTN)、蓝牙网络、ZigBee网络、近场通讯(NFC)网络等或其任意组合。在一些实施例中,网络150可以包括至少一个网络接入点,应用场景100的至少一个组件可以通过接入点连接到网络150以交换数据和/或信息。
存储设备120可以储存数据、指令和/或任何其他信息。在一些实施例中,存储设备120可以存储从图像采集装置110、处理设备130和/或终端设备140获得的数据。例如,存储设备120可以存储图像采集装置110采集的检测图像;又例如,存储设备120可以存储处理设备130计算得到的待检测的钻削刀具对应的评估结果。在一些实施例中,存储设备120可以存储处理设备130用来执行或使用来完成本说明书中描述的示例性方法的数据和/或指令。在一些实施例中,存储设备120可以包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。在一些实施例中,存储设备120可以在云平台上实现。仅作为示例,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
在一些实施例中,存储设备120可以连接到网络150以与应用场景100中的至少一个其他组件(例如,图像采集装置110、处理设备130、终端设备140)通信。应用场景100中的至少一个组件可以通过网络150访问存储设备120中存储的数据、指令或其他信息。在一些实施例中,存储设备120可以与应用场景100中的一个或以上组件(例如,图像采集装置110、终端设备140)直接连接或通信。在一些实施例中,存储设备120可以是图像采集装置110和/或处理设备130的一部分。
处理设备130可以处理从图像采集装置110、存储设备120、终端设备140和/或应用场景100的其他组件获得数据和/或信息。在一些实施例中,处理设备130可以从图像采集装置110、存储设备120或终端设备140中任意一个或多个获得检测图像,通过对该检测图像进行处理以确定待检测的钻削刀具对应的评估结果。在一些实施例中,处理设备130可以从存储设备120获取预先存储的计算机指令,并执行该计算机指令以实现本说明书所描述的一种基于机器视觉的钻削刀具检测方法。
在一些实施例中,处理设备130可以是单一服务器或服务器组。服务器组可以是集中式的或分布式的。在一些实施例中,处理设备130可以是本地或远程的。例如,处理设备130可以通过网络150从图像采集装置110、存储设备120和/或终端设备140访问信息和/或数据。又例如,处理设备130可以直接连接到图像采集装置110、存储设备120和/或终端设备140以访问信息和/或数据。在一些实施例中,处理设备130可以在云平台上实现。例如,云平台可以包括私有云、公共云、混合云、社区云、分布式云、云间云、多云等或其任意组合。
终端设备140可以接收、发送和/或显示数据。所述接收的数据可以包括图像采集装置110采集的数据、存储设备120存储的数据、处理设备130处理得到的待检测的钻削刀具对应的评估结果等。所述发送的数据可以包括用户(例如机床设备管理人员)的输入数据和指令等。例如,终端设备140可以将用户输入的操作指令通过网络150发送给图像采集装置110,以控制图像采集装置110进行相应的数据采集。又例如,终端设备140可以将用户输入的评估指令通过网络150发送给处理设备130。
在一些实施例中,终端设备140可以包括移动设备141、平板计算机142、膝上型计算机143等或其任意组合。例如,移动设备141可以包括移动电话、个人数字助理(PDA)、专用移动终端等或其任意组合。在一些实施例中,终端设备140可以包括输入设备(如键盘、触摸屏)、输出设备(如显示器、扬声器)等。在一些实施例中,处理设备130可以是终端设备140的一部分。
应当注意的是,上述有关应用场景100的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对应用场景100进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。例如,图像采集装置110的可以包括更多或更少的功能组件。
图2是根据本说明书一些实施例所示的一种基于机器视觉的钻削刀具检测系统的模块示意图。在一些实施例中,图2所示的一种基于机器视觉的钻削刀具检测系统200可以以软件和/或硬件的方式应用到图1所示的应用场景100,例如,可以以软件和/或硬件的形式配置到处理设备130和/或终端设备140,以用于对图像采集装置110所采集的检测图像进行处理,并基于该检测图像确定待检测的钻削刀具对应的评估结果。
参照图2,在一些实施例中,一种基于机器视觉的钻削刀具检测系统200可以包括获取模块210、边缘检测模块220、角点确定模块230、曲线确定模块240、螺纹阴暗区分度确定模块250、角点数量确定模块260、划痕特征隶属度确定模块270、划痕估计优势确定模块280、异常曲线确定模块290以及评估结果生成模块2100。
获取模块210可以用于获取针对待检测的钻削刀具采集的检测图像。
边缘检测模块220可以用于通过Canny算子检测所述检测图像中钻削刀具的边缘轮廓,并通过腐蚀和细化处理得到闭合的连通域。
角点确定模块230可以用于确定所述连通域内的所有角点。
曲线确定模块240可以用于获取所述连通域内以两个所述角点为端点的曲线。
螺纹阴暗区分度确定模块250可以用于对于每一条目标曲线,计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,所述螺纹阴暗区分度用于表征所述像素点所在的目标曲线为螺纹曲线的可能性。
角点数量确定模块260可以用于获取所述目标曲线上每一个像素点所对应的W×W邻域窗口内的角点数量。
划痕特征隶属度确定模块270可以用于基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度。
划痕估计优势确定模块280可以用于根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势。
异常曲线确定模块290可以用于将所述连通域内所有所述曲线对应的划痕估计优势作为贝叶斯跳变算法的输入,得到所有所述曲线中的异常曲线。
评估结果生成模块2100可以用于根据所述异常曲线的数量以及所述异常曲线对应的划痕估计优势,得到所述待检测的钻削刀具对应的评估结果。
关于上述各个模块的更多细节可以参照本说明书的其他位置(例如图3~图4部分及其相关描述),此处不再赘述。
应当理解,图2所示的一种基于机器视觉的钻削刀具检测系统200及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法及系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,上述关于一种基于机器视觉的钻削刀具检测系统200的描述仅出于说明性目的而提供,并不旨在限制本说明书的范围。可以理解,对于本领域的技术人员来说,可以根据本说明书的描述,在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,图2中所述的获取模块210、边缘检测模块220、角点确定模块230、曲线确定模块240、螺纹阴暗区分度确定模块250、角点数量确定模块260、划痕特征隶属度确定模块270、划痕估计优势确定模块280、异常曲线确定模块290以及评估结果生成模块2100可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。再例如,一种基于机器视觉的钻削刀具检测系统200还可以包括预处理模块,该预处理模块可以用于对前述检测图像进行灰度转换、滤波等处理。诸如此类的变形,均在本说明书的保护范围之内。在一些实施例中,前述各个模块可以是处理设备130和/或终端设备140的一部分。
图3是根据本说明书一些实施例所示的一种基于机器视觉的钻削刀具检测方法的示例性流程图。在一些实施例中,方法300可以通过处理逻辑来执行,该处理逻辑可以包括硬件(例如,电路、专用逻辑、可编程逻辑、微代码等)、软件(运行在处理设备上以执行硬件模拟的指令)等或其任意组合。在一些实施例中,图3所示的一种基于机器视觉的钻削刀具检测方法300的流程图中的一个或多个操作可以通过图1所示的处理设备130和/或终端设备140实现。例如,方法300可以以指令的形式存储在存储设备120中,并由处理设备130和/或终端设备140调用和/或执行。下文以处理设备130为例描述方法300的执行过程。
参照图3,在一些实施例中,一种基于机器视觉的钻削刀具检测方法300可以包括:
步骤310,获取针对待检测的钻削刀具采集的检测图像。在一些实施例中,步骤310可以由获取模块210执行。
在一些实施例中,图像采集装置110针对待检测的钻削刀具采集的检测图像可以存储在存储设备120中,获取模块210可以从存储设备120获取针对待检测的钻削刀具采集的检测图像。在一些实施例中,该获取模块210可以与图像采集装置110通信连接,获取模块210可以直接从图像采集装置110获取针对待检测的钻削刀具采集的检测图像。
由于钻削刀具的材质较为特殊,表面比较光滑,因此,在一些实施例中,可以使用无反射照明设备(即漫反射照明),将光线光源散布到整个物体表面,从而尽量避免反射光的存在,尽可能地减少反光对后续检测过程产生干扰。但是,需要指出的是,在钻削刀具表面非常光滑的情况下,其表面仍然可能出现反光区域。
在本说明书的一些实施例中,可以每隔天对CNC机床进行一次钻削刀具图像采集,其中,的取值可以由实施者自行设定,例如,可以设定为。需要说明的是,关于前述N的取值仅为示例性说明,在一些实施例中,该N值还可以为其他值,例如1天、2天等。在一些实施例中,该N值的单位还可以为分钟或小时,例如每隔1小时、2小时、5小时或其他时长针对待检测的钻削刀具进行一次图像采集。
在一些实施例中,可以在钻削道具工作前对其进行图像采集,获取其对应的检测图像,从而判断其是否适合进行后续工作。在一些实施例中,针对钻削刀具工作前采集的检测图像可以为RGB图像,在采集得到该RGB图像之后可以将其转换为灰度图像。进一步地,由于考虑到CNC机床工作的环境比较嘈杂,常规拍摄的图像中会存在较多的噪声干扰,因此,需要对该灰度图像进行预处理。示例性地,在一些实施例中,可以选用中值滤波方法对该灰度图像进行去噪,从而消除低光条件下和环境噪声对其造成的干扰。
步骤320,通过Canny算子检测所述检测图像中钻削刀具的边缘轮廓,并通过腐蚀和细化处理得到闭合的连通域。在一些实施例中,步骤320可以由边缘检测模块220执行。
在经过前述处理后,可以通过Canny算子检测处理后的检测图像中钻削刀具的边缘轮廓,然后通过腐蚀、细化等处理得到闭合的连通域,该连通域即钻削刀具所在的位置。示例性地,在一些实施例中,可以使用OpenCV库中的cv2.Canny()函数进行Canny边缘检测;然后,使用形态学操作对边缘进行腐蚀和细化,以得到连通域,例如使用OpenCV库中的cv2.erode()和cv2.morphologyEx()函数进行形态学操作;进一步地,可以使用OpenCV库中的cv2.findContours()函数找到所有的边缘轮廓,以寻找闭合的连通域,并使用cv2.drawContours()函数绘制这些轮廓。
步骤330,确定所述连通域内的所有角点。在一些实施例中,步骤330可以由角点确定模块230执行。
在通过上述步骤确定钻削刀具所对应的连通域之后,可以通过Harris角点检测算法,检测该钻削刀具连通域内所有的角点。其中,角点可以指两条线的交叉处,也可以指某方面特别突出的点。
具体地,在一些实施例中,可以使用OpenCV库中的cv2.cornerHarris()函数计算前述检测图像中每个像素对应的Harris角点响应值,然后通过对Harris角点响应值进行阈值化处理,从而得到该钻削刀具连通域内所有角点的位置。
步骤340,获取所述连通域内以两个所述角点为端点的曲线。在一些实施例中,步骤340可以由曲线确定模块240执行。
钻削刀具在加工物料时,会存在撞击或磨损,这就很容易导致刀片表面出现划痕,进而影响加工质量和工作效率。但是这种划痕的形状与钻削刀具的钻头螺旋形状较为相似,如果不加以区分,图像中钻削刀具表面本身的线条就会被误识别为划痕区域,这样就会得到比实际钻削刀具表面磨损程度更严重的检测结果。
参照图4,通过将划痕与钻削刀具表面钻头本身存在的螺旋形状的线条进行分析,可以看到钻削刀具钻头本身存在的螺旋形状的线条分布较多,且具有同一个方向、弯曲程度一致等特征,相对于出现较少的划痕来说,划痕的形状和纹理更具异常。并且,划痕具有较为明显的直线特征,而针对于钻削刀具表面的螺纹线条,则会出现一定的弯曲曲线。针对这一特征,在一些实施例中,可以通过曲线确定模块240获取钻削刀具连通域内以两个角点为端点的曲线。需要注意的是,在本说明书实施例中,连通域内以两个角点为端点的曲线中可以包括直线和/或曲线部分。具体而言,即该连通域内以两个角点为端点的曲线既包含钻削刀具表面的螺纹线条,也包含划痕所对应的线条。
在一些实施例中,可以将该连通域内得到的共条曲线按照从左到右、从上到下的顺序排列成一个序列,其中分别对应于一条曲线。
步骤350,对于每一条目标曲线,计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度。在一些实施例中,步骤350可以由螺纹阴暗区分度确定模块250执行。
根据观察可以看到,由于螺纹线条处于凸点,其左右两侧之间的纹理会出现阴暗交叉面;而钻削刀具中的划痕一般存在于光滑的曲面上,即使出现划痕,其划痕左右两侧的灰度纹理分布也不会出现较大的差距。此外,在拍摄的过程中,由于钻削刀具的材质,即使使用漫反射光照,其表面仍会存在一些反光区域,如果直接对整条曲线的左右两侧的纹理计算其是否有阴暗面,即从这种阴暗面的角度初步判断该条线是否为划痕缺陷,这些反光区域会对识别缺陷造成一定的干扰。由于反光区域在划痕线上的每个点的两侧都会存在,所以只需要对左右两侧分析就可以间接消除这些反光区域对识别缺陷的干扰。
基于以上分析,在一些实施例中,可以对于每一条目标曲线,计算目标曲线上每一个像素点所对应的邻域窗口中位于目标曲线两侧的像素点的灰度差异,从而得到该目标曲线上每一个像素点所对应的螺纹阴暗区分度。
具体地,在一些实施例中,对于目标曲线上的每一个目标像素点,螺纹阴暗区分度确定模块250可以计算以该目标像素点为中心的邻域窗口中位于目标曲线的一侧的所有像素点对应的第一灰度浮动系数,以及位于目标曲线的另一侧的所有像素点对应的第二灰度浮动系数;然后根据该第一灰度浮动系数和第二灰度浮动系数的差值的绝对值,得到目标像素点所对应的螺纹阴暗区分度。其中,的取值可由实施者自行设定,在本说明书的一些实施例中,可以取值为7。
在一些实施例中,前述第一灰度浮动系数、第二灰度浮动系数以及螺纹阴暗区分度可以通过如下方式计算:
;
;
;
其中,为以所述目标像素点为中心的邻域窗口中的像素点的灰度值,为以所述目标像素点为中心的邻域窗口中的像素点与所述目标像素点之间的距离,为以目标像素点为中心的邻域窗口中位于目标曲线的一侧的所有像素点的数量,为以目标像素点为中心的邻域窗口中位于目标曲线的另一侧的所有像素点的数量,为前述第一灰度浮动系数,为前述第二灰度浮动系数,为目标像素点所对应的螺纹阴暗区分度。
在本说明书实施例中,通过计算单侧中每个像素点的灰度值在距离中心像素点(即前述目标像素点)的影响下用来表征单侧的像素点灰度情况,然后将两侧的灰度情况进行相减后加个绝对值,得到螺纹阴暗区分度。可以理解,该值越大,在避免反光区域对其灰度值带来的影响下,表示该点两侧的灰度情况出现较大差异,即该点两侧具有阴暗区分度较大的特征,该点所在的线条有较大可能为螺纹线条。
步骤360,获取所述目标曲线上每一个像素点所对应的W×W邻域窗口内的角点数量。在一些实施例中,步骤360可以由角点数量确定模块260执行。
螺纹线条相较于划痕这种线条来说,由于螺纹本身的特点,其在图像中会有一定的弧度,而划痕线条则通常呈直线形状分布。同时,钻削刀具本身的螺纹是一种精密的零件结构,所以其螺纹线条也应该较为光滑;相反,划痕是在工作中被加工的产品对其造成的磨损缺陷,这种磨损缺陷通常会导致划痕线条附近出现一些毛刺,即划痕周围的角点数通常较多。
针对以上情况,在一些实施例中,可以根据Harris角点检测算法检测目标曲线上每个像素点所在的W×W邻域窗口内的角点个数,同时对该目标曲线两端点之间连线的斜率与线上每个像素点的斜率之间的差值来表征该条线是否为划痕这种直线。
步骤370,基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度。在一些实施例中,步骤370可以由划痕特征隶属度确定模块270执行。
在一些实施例中,目标曲线所对应的划痕特征隶属度可以通过如下方式计算:
;
其中,为目标曲线所对应的划痕特征隶属度;为归一化函数;为固定参数,其用于防止上述计算公式中的分母部分为0;为目标曲线上的像素点的数量;为目标曲线上第i个像素点所对应的邻域窗口内的角点数;为目标曲线上第i个像素点所对应的螺纹阴暗区分度;为目标曲线上第个像素点对应的第二斜率;为目标曲线两端点之间连线的第一斜率。
具体而言,在一些实施例中,划痕特征隶属度确定模块270可以计算该第一斜率与第二斜率的差值的绝对值;然后,将该第一斜率与第二斜率的差值的绝对值乘以目标像素点所对应的螺纹阴暗区分度,得到第一参数();进一步地,划痕特征隶属度确定模块270可以基于角点数量与该第一参数的比值,得到第二参数();最后,划痕特征隶属度确定模块270可以根据该目标曲线上所有像素点所对应的第二参数的均值,得到该目标曲线所对应的划痕特征隶属度。需要说明的是,在一些实施例中,前述目标曲线上第个像素点对应的第二斜率可以指该目标曲线在第个像素点处的切线的斜率。
在本说明书实施例中,通过计算目标曲线上每个点所对应的第二斜率与连线两端点所对应的第一斜率之间的差距,可以反映出每个点处的弯曲程度,该差距越小,表示该目标曲线的弯曲程度越小,即该目标曲线为划痕这种直线的可能性越大。目标曲线上第i个像素点所对应的邻域窗口内的角点数越多,表示该目标曲线为划痕可能性越大。每个点两侧的螺纹阴暗区分度越小,表示该点左右两侧没有出现阴暗交界面,即有较大可能为表面光滑的划痕缺陷区域。通过对该目标曲线上的每个点所对应的第二参数进行求和以及均值计算,然后通过归一化处理得到表征该目标曲线为划痕的可能性的划痕特征隶属度。可以理解,角点数越多,斜率差距越小,像素点两侧不存在较为明显的阴暗面,则划痕特征隶属度越大,表示该目标曲线更具有划痕的特点,其为划痕的可能性越大。
步骤380,根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势。在一些实施例中,步骤380可以由划痕估计优势确定模块280执行。
在间隔N天对钻削刀具进行异常检测的频次下,相对于螺纹线条,钻削刀具表面的划痕相对来说较少,且螺纹线条的走势基本相同,而划痕可能出现各种各样的角度。针对这一特征,在一些实施例中,可以通过将每条曲线所对应的划痕特征隶属度与其对应的第一斜率结合,得到该目标曲线所对应的划痕估计优势,该划痕估计优势可以进一步表征该目标曲线为划痕的可能性。
在一些实施例中,划痕估计优势可以通过如下公式进行计算:
;
其中,为目标曲线对应的划痕估计优势;为归一化函数;为钻削刀具连通域中所有曲线对应的倾斜角均值,由于划痕数量相对于螺纹线条较少,即所有曲线的倾斜角均值应较接近于螺纹线条的倾斜角;为划痕特征隶属度对应的第一权重,为对应的第二权重;为目标曲线两端点的连线对应的倾斜角。
具体而言,在一些实施例中,划痕估计优势确定模块280可以获取钻削刀具所对应的连通域中所有以前述角点为端点的曲线对应的倾斜角均值;然后,根据目标曲线对应的第一斜率K确定目标曲线对应的倾斜角(),并根据目标曲线对应的倾斜角与前述倾斜角均值的差值的绝对值,得到第三参数();最后,基于目标曲线对应的划痕特征隶属度、划痕特征隶属度对应的第一权重、第三参数()以及第三参数对应的第二权重,得到目标曲线对应的划痕估计优势。
由于划痕特征隶属度对该目标曲线是否为划痕的影响较大,基于此,在一些实施例中,可以使第一权重大于第二权重,从而使得划痕估计优势计算过程中,划痕特征隶属度占有相对更大的比重。示例性地,在一些实施例中,第一权重可以为0.7,第二权重可以为0.3。换言之,即越大,表示该目标曲线存在较大的划痕缺陷特征。
为该目标曲线两端连线的第一斜率所对应的倾斜角,该倾斜角对该目标曲线是否为划痕的影响程度相对较小,为该目标曲线所对应的倾斜角与所有曲线倾斜角均值之间的差异,该差异越大,表示该曲线具有划痕这种数量较少的倾斜角的特征。综上,在本说明书实施例中,划痕特征隶属度越大,与螺纹倾斜角之间的角度差距越大,则计算得到的划痕估计优势越大,表示该目标曲线相较于其他的曲线更有可能为划痕缺陷。
步骤390,将所述连通域内所有所述曲线对应的划痕估计优势作为贝叶斯跳变算法的输入,得到所有所述曲线中的异常曲线。在一些实施例中,步骤390可以由异常曲线确定模块290执行。
通过上述方法,可以计算出钻削刀具所对应的连通域中每一条以两个角点为端点的曲线所对应的划痕估计优势。在得到该连通域内所有曲线对应的划痕估计优势之后,异常曲线确定模块290可以将该连通域内所有曲线对应的划痕估计优势作为贝叶斯跳变算法的输入,然后通过贝叶斯跳变算法对其进行处理,得到所有曲线中的异常曲线,这些异常曲线即为钻削刀具表面可能出现划痕的线条。
需要说明的是,贝叶斯跳变算法是一种基于贝叶斯推断的异常检测算法。该算法可以使用预先定义的模型(例如高斯分布、伯努利分布等)对数据进行建模,并通过贝叶斯推断来计算每个数据点的异常分数。其能够适应不同类型的数据,并且能够处理多维数据和非线性关系。此外,该算法还具有较强的鲁棒性和可解释性,其基本思想是,对于每个数据点,将其看作是从一个概率分布中抽取的样本。如果该数据点的概率很低,则认为它是异常数据。具体地,对于每个数据点,算法会计算其在当前模型下的后验概率分布,然后将其与先验概率分布进行比较,得到该数据点的异常分数,然后根据判断阈值来判断其是否为异常数据。
步骤3100,根据所述异常曲线的数量以及所述异常曲线对应的划痕估计优势,得到所述待检测的钻削刀具对应的评估结果。在一些实施例中,步骤3100可以由评估结果生成模块2100执行。
进一步地,在通过前述步骤确定出异常曲线之后,评估结果生成模块2100可以根据该异常曲线的数量以及异常曲线对应的划痕估计优势,得到待检测的钻削刀具对应的评估结果。
在一些实施例中,可以将异常曲线的检测数量阈值设定为5,将异常曲线所对应的划痕估计优势阈值设定为0.9。具体而言,即当步骤390确定得到的异常曲线的数量大于等于5,和/或该异常曲线所对应的划痕估计优势大于或等于0.9时,可以认为当前检测的钻削刀具对应的评估结果为不合格,不适合再使用当前钻削刀具执行后续加工工作。
需要说明的是,前述异常曲线的检测数量阈值和划痕估计优势阈值仅为示例性说明,在本说明书实施例中,该阈值可由实施者根据需求自行设定。
在一些实施例中,当评估结果生成模块2100所得到的评估结构为不合格时,可以发出相应的预警信息,以提醒相关工作人员对其及时更换,避免其继续投入使用而影响到产品的质量和其他生产安全。
综上所述,本说明书实施例可能带来的有益效果包括但不限于:(1)在本说明书一些实施例所提供的一种基于机器视觉的钻削刀具检测方法及系统中,通过对钻削刀具本身的螺纹线条与划痕线条进行分析,根据螺纹线条数量多、线条弯曲、光滑等特征将划痕缺陷特征区分开来,并通过评估每条曲线的划痕估计优势,避免了将螺纹线条识别成划痕等异常情况的问题,提升了检测准确率;(2)在本说明书一些实施例所提供的一种基于机器视觉的钻削刀具检测方法及系统中,通过对曲线两侧的像素点的灰度差异进行分析,可以间接消除反光区域对缺陷识别的干扰;(3)在本说明书一些实施例所提供的一种基于机器视觉的钻削刀具检测方法及系统中,通过使用斜率特征来计算每一条曲线所对应的划痕特征隶属度,可以将具有直线特性的划痕与具有曲线特征的螺纹线条更好地区分开,从而更准确地检测出钻削刀具表面的划痕缺陷,避免发生将螺纹线条识别成划痕的情况。
需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例中,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran2003、Perl、COBOL2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (9)
1.一种基于机器视觉的钻削刀具检测方法,其特征在于,包括:
获取针对待检测的钻削刀具采集的检测图像;
通过Canny算子检测所述检测图像中钻削刀具的边缘轮廓,并通过腐蚀和细化处理得到闭合的连通域;
确定所述连通域内的所有角点;
获取所述连通域内以两个所述角点为端点的曲线;
对于每一条目标曲线,计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,所述螺纹阴暗区分度用于表征所述像素点所在的目标曲线为螺纹曲线的可能性;
获取所述目标曲线上每一个像素点所对应的邻域窗口内的角点数量;
基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度;
根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势;
将所述连通域内所有所述曲线对应的划痕估计优势作为贝叶斯跳变算法的输入,得到所有所述曲线中的异常曲线;
根据所述异常曲线的数量以及所述异常曲线对应的划痕估计优势,得到所述待检测的钻削刀具对应的评估结果;
所述计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,包括:
对于所述目标曲线上的每一个目标像素点;
计算以所述目标像素点为中心的邻域窗口中位于所述目标曲线的一侧的所有像素点对应的第一灰度浮动系数,以及位于所述目标曲线的另一侧的所有像素点对应的第二灰度浮动系数;
根据所述第一灰度浮动系数和所述第二灰度浮动系数的差值的绝对值,得到所述目标像素点所对应的螺纹阴暗区分度;
所述第二斜率为目标曲线上每一个像素点的切线斜率。
2.如权利要求1所述的一种基于机器视觉的钻削刀具检测方法,其特征在于,所述确定所述连通域内的所有角点,包括:通过Harris角点检测算法,检测所述连通域内的所有角点。
3.如权利要求1所述的一种基于机器视觉的钻削刀具检测方法,其特征在于,所述第一灰度浮动系数和所述第二灰度浮动系数通过如下方式计算:
其中,为以所述目标像素点为中心的邻域窗口中的像素点的灰度值,为以所述目标像素点为中心的邻域窗口中的像素点与所述目标像素点之间的距离,为以所述目标像素点为中心的邻域窗口中位于所述目标曲线的一侧的所有像素点的数量,为以所述目标像素点为中心的邻域窗口中位于所述目标曲线的另一侧的所有像素点的数量,为所述第一灰度浮动系数,为所述第二灰度浮动系数。
4.如权利要求3所述的一种基于机器视觉的钻削刀具检测方法,其特征在于,所述基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度,包括:
计算所述第一斜率与所述第二斜率的差值的绝对值;
将所述第一斜率与所述第二斜率的差值的绝对值乘以所述目标像素点所对应的螺纹阴暗区分度,得到第一参数;
基于所述角点数量与所述第一参数的比值,得到第二参数;
根据所述目标曲线上所有像素点所对应的第二参数的均值,得到所述目标曲线所对应的划痕特征隶属度。
5.如权利要求4所述的一种基于机器视觉的钻削刀具检测方法,其特征在于,所述目标曲线所对应的划痕特征隶属度通过如下方式计算:
其中,为所述目标曲线所对应的划痕特征隶属度,为归一化函数,为固定参数,为所述目标曲线上的像素点的数量,为所述目标曲线上第i个像素点所对应的邻域窗口内的角点数,为所述目标曲线上第i个像素点所对应的螺纹阴暗区分度,为所述目标曲线上第个像素点对应的第二斜率,为所述目标曲线两端点之间连线的第一斜率。
6.如权利要求5所述的一种基于机器视觉的钻削刀具检测方法,其特征在于,所述根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势,包括:
获取所述连通域中所有所述曲线对应的倾斜角均值;
根据所述目标曲线对应的第一斜率确定所述目标曲线对应的倾斜角,并根据所述目标曲线对应的倾斜角与所述倾斜角均值的差值的绝对值,得到第三参数;
基于所述目标曲线对应的划痕特征隶属度、所述划痕特征隶属度对应的第一权重、所述第三参数以及所述第三参数对应的第二权重,得到所述目标曲线对应的划痕估计优势。
7.如权利要求6所述的一种基于机器视觉的钻削刀具检测方法,其特征在于,所述划痕估计优势通过如下方式计算:
其中,为所述目标曲线对应的划痕估计优势,为归一化函数,为所述倾斜角均值,为所述第一权重,为所述第二权重,为所述目标曲线对应的倾斜角。
8.如权利要求7所述的一种基于机器视觉的钻削刀具检测方法,其特征在于,所述第一权重大于所述第二权重。
9.一种基于机器视觉的钻削刀具检测系统,其特征在于,包括:
获取模块,用于获取针对待检测的钻削刀具采集的检测图像;
边缘检测模块,用于通过Canny算子检测所述检测图像中钻削刀具的边缘轮廓,并通过腐蚀和细化处理得到闭合的连通域;
角点确定模块,用于确定所述连通域内的所有角点;
曲线确定模块,用于获取所述连通域内以两个所述角点为端点的曲线;
螺纹阴暗区分度确定模块,用于对于每一条目标曲线,计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,所述螺纹阴暗区分度用于表征所述像素点所在的目标曲线为螺纹曲线的可能性;
角点数量确定模块,用于获取所述目标曲线上每一个像素点所对应的邻域窗口内的角点数量;
划痕特征隶属度确定模块,用于基于所述角点数量、所述螺纹阴暗区分度、所述目标曲线两端点之间连线的第一斜率以及所述目标曲线上每一个像素点所对应的第二斜率,确定所述目标曲线所对应的划痕特征隶属度;
划痕估计优势确定模块,用于根据所述划痕特征隶属度以及所述第一斜率,确定所述目标曲线对应的划痕估计优势;
异常曲线确定模块,用于将所述连通域内所有所述曲线对应的划痕估计优势作为贝叶斯跳变算法的输入,得到所有所述曲线中的异常曲线;
评估结果生成模块,用于根据所述异常曲线的数量以及所述异常曲线对应的划痕估计优势,得到所述待检测的钻削刀具对应的评估结果;
所述计算所述目标曲线上每一个像素点所对应的邻域窗口中位于所述目标曲线两侧的像素点的灰度差异,得到所述目标曲线上每一个像素点所对应的螺纹阴暗区分度,包括:
对于所述目标曲线上的每一个目标像素点;
计算以所述目标像素点为中心的邻域窗口中位于所述目标曲线的一侧的所有像素点对应的第一灰度浮动系数,以及位于所述目标曲线的另一侧的所有像素点对应的第二灰度浮动系数;
根据所述第一灰度浮动系数和所述第二灰度浮动系数的差值的绝对值,得到所述目标像素点所对应的螺纹阴暗区分度;
所述第二斜率为目标曲线上每一个像素点的切线斜率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310833935.7A CN116563282B (zh) | 2023-07-10 | 2023-07-10 | 一种基于机器视觉的钻削刀具检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310833935.7A CN116563282B (zh) | 2023-07-10 | 2023-07-10 | 一种基于机器视觉的钻削刀具检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116563282A CN116563282A (zh) | 2023-08-08 |
CN116563282B true CN116563282B (zh) | 2023-10-27 |
Family
ID=87500442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310833935.7A Active CN116563282B (zh) | 2023-07-10 | 2023-07-10 | 一种基于机器视觉的钻削刀具检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116563282B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116823808B (zh) * | 2023-08-23 | 2023-11-17 | 青岛豪迈电缆集团有限公司 | 基于机器视觉的电缆绞线智能检测方法 |
CN117315664B (zh) * | 2023-09-18 | 2024-04-02 | 山东博昂信息科技有限公司 | 一种基于图像序列的废钢斗号码识别方法 |
CN117124139B (zh) * | 2023-10-26 | 2024-01-09 | 合肥亚明汽车部件有限公司 | 一种智能机床刀具磨损视觉检测方法 |
CN117808810B (zh) * | 2024-03-01 | 2024-05-28 | 陕西长空齿轮有限责任公司 | 一种滚刀磨损图像识别测量方法及系统 |
CN117808811B (zh) * | 2024-03-01 | 2024-07-05 | 陕西中盛天泽复合材料科技有限公司 | 一种数控机床刀具崩刃异常检测方法 |
CN117893541B (zh) * | 2024-03-18 | 2024-05-28 | 济南玖通志恒信息技术有限公司 | 一种基于边缘检测的果树叶部花叶病分析方法 |
CN118279293B (zh) * | 2024-05-29 | 2024-08-20 | 宝鸡拓普达钛业有限公司 | 基于双目相机的钛合金刀具刀尖识别方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10160823A1 (de) * | 2000-12-14 | 2002-09-26 | Software & Tech Glas Gmbh | Meßverfahren für Gemengebedeckung und Glasrückstrom bei Glasschmelzwannen mittels Ofenraumkamera |
CN112508913A (zh) * | 2020-12-10 | 2021-03-16 | 国网江西省电力有限公司电力科学研究院 | 基于图像检测的电缆截面边沿检测方法 |
CN113781406A (zh) * | 2021-08-20 | 2021-12-10 | 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) | 电子元器件的划痕检测方法、装置及计算机设备 |
WO2022148192A1 (zh) * | 2021-01-07 | 2022-07-14 | 新东方教育科技集团有限公司 | 图像处理方法、图像处理装置以及非瞬时性存储介质 |
CN115272341A (zh) * | 2022-09-29 | 2022-11-01 | 华联机械集团有限公司 | 一种基于机器视觉的包装机缺陷产品检测方法 |
CN115984272A (zh) * | 2023-03-20 | 2023-04-18 | 山东杨嘉汽车制造有限公司 | 基于计算机视觉的半挂车车桥缺陷识别方法 |
-
2023
- 2023-07-10 CN CN202310833935.7A patent/CN116563282B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10160823A1 (de) * | 2000-12-14 | 2002-09-26 | Software & Tech Glas Gmbh | Meßverfahren für Gemengebedeckung und Glasrückstrom bei Glasschmelzwannen mittels Ofenraumkamera |
CN112508913A (zh) * | 2020-12-10 | 2021-03-16 | 国网江西省电力有限公司电力科学研究院 | 基于图像检测的电缆截面边沿检测方法 |
WO2022148192A1 (zh) * | 2021-01-07 | 2022-07-14 | 新东方教育科技集团有限公司 | 图像处理方法、图像处理装置以及非瞬时性存储介质 |
CN113781406A (zh) * | 2021-08-20 | 2021-12-10 | 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) | 电子元器件的划痕检测方法、装置及计算机设备 |
CN115272341A (zh) * | 2022-09-29 | 2022-11-01 | 华联机械集团有限公司 | 一种基于机器视觉的包装机缺陷产品检测方法 |
CN115984272A (zh) * | 2023-03-20 | 2023-04-18 | 山东杨嘉汽车制造有限公司 | 基于计算机视觉的半挂车车桥缺陷识别方法 |
Non-Patent Citations (1)
Title |
---|
汽车玻璃黑边区域划痕的视觉检测技术;郑文斌 等;福建工程学院学报;18(01);第64-68页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116563282A (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116563282B (zh) | 一种基于机器视觉的钻削刀具检测方法及系统 | |
CN109141232B (zh) | 一种基于机器视觉的盘类铸件在线检测方法 | |
CN113538432B (zh) | 一种基于图像处理的零件缺陷检测方法及系统 | |
Fujita et al. | A robust automatic crack detection method from noisy concrete surfaces | |
EP1991946B1 (en) | Approaches and apparatus for eye detection in a digital image | |
CN116342597B (zh) | 一种汽车配件表面电镀加工缺陷检测方法和系统 | |
CN116485779B (zh) | 自适应晶圆缺陷检测方法、装置、电子设备及存储介质 | |
CN116563277B (zh) | 一种基于机器视觉的铜复铝表面缺陷检测方法及系统 | |
CN115937101A (zh) | 质量检测方法、装置、设备及存储介质 | |
Schmitt et al. | Machine vision system for inspecting flank wear on cutting tools | |
CN113705564B (zh) | 一种指针式仪表识别读数方法 | |
CN113298775B (zh) | 自吸泵双面金属叶轮外观缺陷检测方法、系统和介质 | |
CN116823815A (zh) | 一种电缆表面异常智能检测方法 | |
CN116818778A (zh) | 一种汽车部件快速智能检测方法及系统 | |
Lee et al. | Development of an On-Machine External Thread Measurement System for CNC Lathes Using Eye-in-Hand Machine Vision with Morphology Technology. | |
CN115049641A (zh) | 一种用于机械零件异常检测的电数据处理方法及系统 | |
CN112052727B (zh) | 一种基于大数据的人像识别分析系统及方法 | |
CN117934453B (zh) | 一种手机屏背光异物缺陷诊断方法及系统 | |
CN117274250B (zh) | 一种手表底盖磨损缺陷视觉检测方法 | |
CN118505708B (zh) | 基于图像重构技术的产品修复系统 | |
CN116523882B (zh) | 一种基于视觉的光学目标区域准确率检测方法与系统 | |
CN118196094B (zh) | 一种三轴转台缺陷视觉检测方法 | |
Wang et al. | An In-Situ Tool Wear Measurement Method Based on Super-pixels and Enhanced Corner Detection Algorithm | |
CN117852967A (zh) | 基于人工智能的工业零件生产过程质量溯源方法及系统 | |
CN114419009A (zh) | 一种基于边缘压缩近似处理的轴承正面缺口检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |