CN117557784A - 目标检测方法、装置、电子设备及存储介质 - Google Patents
目标检测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117557784A CN117557784A CN202410029363.1A CN202410029363A CN117557784A CN 117557784 A CN117557784 A CN 117557784A CN 202410029363 A CN202410029363 A CN 202410029363A CN 117557784 A CN117557784 A CN 117557784A
- Authority
- CN
- China
- Prior art keywords
- target object
- gray
- object detection
- detection frame
- pixel
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 314
- 238000003860 storage Methods 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 claims abstract description 45
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000001914 filtration Methods 0.000 claims abstract description 7
- 238000004590 computer program Methods 0.000 claims description 19
- 239000011159 matrix material Substances 0.000 claims description 18
- 238000009826 distribution Methods 0.000 claims description 16
- 238000005315 distribution function Methods 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 abstract description 28
- 238000013473 artificial intelligence Methods 0.000 abstract description 20
- 230000000007 visual effect Effects 0.000 abstract description 5
- 230000007547 defect Effects 0.000 description 93
- 238000004364 calculation method Methods 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 11
- 238000013135 deep learning Methods 0.000 description 11
- 238000012549 training Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000007689 inspection Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000011161 development Methods 0.000 description 6
- 230000018109 developmental process Effects 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000012805 post-processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005562 fading Methods 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 239000003086 colorant Substances 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000011109 contamination Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 229910000831 Steel Inorganic materials 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000011324 bead Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/06—Recognition of objects for industrial automation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例提供了一种目标检测方法、装置、电子设备及存储介质,涉及人工智能、图像处理、智慧交通、云技术等领域。该方法包括:使用目标检测模型对待检测图像中的目标对象进行识别,得到至少一个目标对象检测框;针对每个目标对象检测框,确定目标对象检测框内像素的第一灰度值,获取目标对象检测框周围预定范围的背景区域,以确定背景区域内像素的第二灰度值,并确定第一灰度值和第二灰度值之间的灰度对比度;基于至少一个目标对象检测框分别对应的灰度对比度,确定待检测图像的检测结果,其中,该灰度对比度可以用来区分目标对象检测框的前景和背景的差距,用于将视觉差距不明显的检测结果滤除,避免过度检测的问题。
Description
技术领域
本申请涉及图像处理技术领域,具体而言,本申请涉及一种目标检测方法、装置、电子设备及存储介质。
背景技术
随着人工智能和深度学习等新兴技术的发展,使用这些对目标对象进行检测已成为非常常见的手段。深度学习方法具有检出率高、泛化性能强、模型稳定后能够以较小成本推广等优点。
然而,目前深度网络方法可能存在过度检测的问题。例如对于缺陷检测场景,如果在灰色界面上出现了浅灰色的轻微污渍,这种缺陷可能会被检出,但这种缺陷在视觉上并不明显,即目前的深度网络方法无法有效地区分视觉上明显的缺陷和视觉上不明显的缺陷,造成较多过检现象。
发明内容
本申请实施例的目的旨在能解决目标检测的过检问题。
根据本申请实施例的一个方面,提供了一种目标检测方法,该方法包括:
获取待检测图像;
使用目标检测模型对待检测图像中的目标对象进行识别,得到至少一个目标对象检测框;
针对每个目标对象检测框,确定目标对象检测框内像素的第一灰度值,获取目标对象检测框周围预定范围的背景区域,以确定背景区域内像素的第二灰度值,并确定第一灰度值和第二灰度值之间的灰度对比度;
基于至少一个目标对象检测框分别对应的灰度对比度,确定待检测图像的检测结果。
根据本申请实施例的另一个方面,提供了一种目标检测装置,该装置包括:
图像获取模块,用于获取待检测图像;
目标对象识别模块,用于使用目标检测模型对待检测图像中的目标对象进行识别,得到至少一个目标对象检测框;
对比度确定模块,用于针对每个目标对象检测框,确定目标对象检测框内像素的第一灰度值,获取目标对象检测框周围预定范围的背景区域,以确定背景区域内像素的第二灰度值,并确定第一灰度值和第二灰度值之间的灰度对比度;
检测结果确定模块,基于至少一个目标对象检测框分别对应的灰度对比度,确定待检测图像的检测结果。
根据本申请实施例的又一个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,处理器执行计算机程序以实现本申请实施例提供的数据处理方法。
根据本申请实施例的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本申请实施例提供的数据处理方法。
根据本申请实施例的还一个方面,提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现本申请实施例提供的数据处理方法。
本申请实施例提供的目标检测方法、装置、电子设备及存储介质,使用目标检测模型对待检测图像中的目标对象进行识别,得到至少一个目标对象检测框;针对每个目标对象检测框,确定目标对象检测框内像素的第一灰度值,获取目标对象检测框周围预定范围的背景区域,以确定背景区域内像素的第二灰度值,并确定第一灰度值和第二灰度值之间的灰度对比度;基于至少一个目标对象检测框分别对应的灰度对比度,确定待检测图像的检测结果,其中,该灰度对比度可以用来区分目标对象检测框的前景和背景的差距,用于将视觉差距不明显的检测结果滤除,避免过度检测的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种目标检测方法的流程示意图;
图2为本申请实施例提供的一种原始背景区域的示意图;
图3为本申请实施例提供的另一种原始背景区域的示意图;
图4为本申请实施例提供的一种周围预定范围背景区域的示意图;
图5为本申请实施例提供的一种目标检测模型的示意图;
图6为本申请实施例提供的一种特征提取网络的示意图;
图7为本申请实施例提供的一种特征融合网络的示意图;
图8为本申请实施例提供的一种缺陷检测方法流程的示意图;
图9为本申请实施例提供的一种目标检测方案应用场景的示意图;
图10为本申请实施例提供的一种目标检测装置的结构示意图;
图11为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式 “一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或 “耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的几个名词进行介绍和解释:
(1)目标检测(Object Detection):目标检测关注特定的目标对象,旨在从背景中分离出感兴趣的目标对象。
(2)缺陷检测(Defect Detection):缺陷检测又叫异常检测(AnomalyDetection),属于目标检测的一种,主要任务是判断图像是否有缺陷。
(3)RGB:代表红、绿、蓝三个通道的颜色,通过对红(Red,R)、绿(Green,G)、蓝(Blue,B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色,是照相机成像后照片的保存格式和显示格式。在本申请实施例中也指代与光度立体法向量图像相区分的一般照片。
(4)灰度值:是指图像中每个像素的亮度值,通常用0到255的整数表示。灰度值越大表示该像素的亮度越高,越小表示该像素的亮度越低。例如,灰度值为0表示黑色,灰度值为255表示白色,灰度值在0到255之间的数值表示不同的灰度级别。
(5)OK/NG(No Good):表示工件质检通过/质检不通过。
(6)高斯分布:也称为正态分布,是一种在数学、物理和工程等领域中常见的连续概率分布。
现有的目标检测方法可能存在过度检测的问题,例如在工业制造场景中,常用人工智能和深度学习等技术对产品的外观部分进行质检工作,保证产品的一致性、良品率、安全性,实现产线质检的全自动化。然而,目前的人工智能和深度学习没有办法满足业务侧对于明显缺陷和不明显缺陷区分的需求,造成较多过检现象。而如果简单地提升置信度阈值,又可能会造成一些明显缺陷的漏检。
本申请提供的目标检测方法、装置、电子设备及存储介质,旨在解决现有技术的如上技术问题。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
本申请实施例中提供了一种目标检测方法,如图1所示,该方法包括:
步骤S101:获取待检测图像。
本申请实施例中,待检测图像指的是待进行目标对象检测的图像,以缺陷检测场景为例,待检测图像可以是指产品图像,图像中的产品可以是待检测缺陷的工业产品,比如工业零件或元器件等,目标对象是指缺陷,但不限于此。其中,待处理图像可以是从其他设备接收的,或从本地读取的,也可以是实时拍摄的,本申请实施例在此不做限定。作为示例地,可以通过采集设备(例如照相机)对产品的局部或整体进行拍照,获取待检测图像。
步骤S102:使用目标检测模型对待检测图像中的目标对象进行识别,得到至少一个目标对象检测框。
本申请实施例中,对目标检测模型的类型不做具体限定,例如可以采用CascadeRCNN(Cascade Region-Convolutional Neural Network,级联区域卷积神经网络)模型、Faster RCNN(Faster Region-Convolutional Neural Network,快速区域卷积神经网络)模型、DETR(Detection Transformer,检测Transformer)模型等,但不限于此。
本申请实施例中,目标检测模型需要对待检测图像前景和背景等有充分的理解,并确定目标对象的描述,以获得目标对象的类别信息(classification)和位置信息(localization)。
其中,识别出的目标对象可以通过一个矩形检测框来表示包括目标对象的区域。位置信息可以通过矩形检测框的坐标进行表示,例如可以表示为目标对象检测框的中心坐标和宽高(x, y, w, h)。目标对象的类别信息可以表示为置信概率,即目标对象属于各种预定类别的概率,选取其中概率最高的预定类别作为目标对象的类别信息。
可选地,若目标检测模型检测出待检测图像中目标对象的数量有多个,目标检测模型的输出可以是一个列表,列表的每一项使用一个数组给出检出的目标对象的类别信息和位置信息。
步骤S103:针对每个目标对象检测框,确定目标对象检测框内像素的第一灰度值,获取目标对象检测框周围预定范围的背景区域,以确定背景区域内像素的第二灰度值,并确定第一灰度值和第二灰度值之间的灰度对比度。
本申请实施例中,第一灰度值可以表示目标对象检测框内所有像素(也可称为前景)的整体灰度情况。其中,第一灰度值(也可称为前景灰度值)的确定方式可以根据实际情况进行设置,作为示例地,目标对象检测框内所有像素的灰度值比较单一,可以采用前景中一个或部分像素的灰度值来表示第一灰度值。又为示例地,若目标对象检测框内所有像素的灰度值较多且分布比较均匀,可以采用前景中所有像素的灰度值的平均值来表示第一灰度值等,本申请实施例在此不做限定。
本申请实施例中,对于一个目标对象检测框来说,其原始背景区域就是除了同类别检测框外,其他区域的部分。例如以缺陷检测场景为例,如图2所示,对于类别A的缺陷1而言,阴影部分均为原始背景区域,包括类别B的缺陷3区域,不包括类别A的缺陷2区域,或者如图3所示,对于类别B的缺陷3而言,阴影部分均为原始背景区域,包括类别A的缺陷1区域和类别A的缺陷2区域。
然而,考虑到背景的复杂性,例如在实际的工业缺陷检测应用中,通常需要检测的待处理图像是一个完整的设备或部件,这可能包括加工工件、机台、光源、机械结构等各种元素,在这种情况下,将全图作为背景去计算第二灰度值会受到其他结构件等因素的干扰,因此本申请实施例中,为了减少背景中的干扰,设定一个目标对象检测框周围的预定范围作为背景区域,例如可以是目标对象检测框周围的n=10像素的区域,如图4中的阴影部分所示。这个区域包含其他目标对象的概率较小,因此可以作为背景区域。实际应用中,本领域技术人员可以根据实际情况对该区域的范围进行设置,本申请实施例在此不做限定。
本申请实施例中,第二灰度值可以表示该背景区域内所有像素的整体灰度情况。其中,第二灰度值(也可称为背景灰度值)的确定方式也可以根据实际情况进行设置,例如采用该背景区域内一个或部分像素的灰度值来表示第二灰度值,或采用该背景区域内所有像素的灰度值的平均值来表示第二灰度值等,本申请实施例在此不做限定。
进一步地,在得到第一灰度值和第二灰度值后,可以评估第一灰度值和第二灰度值之间的灰度对比度,即评估目标对象和背景的对比情况,灰度对比度越大,目标对象相对于背景来说就越明显。其中,灰度对比度的确定方式也可以根据实际情况进行设置,例如计算第一灰度值和第二灰度值差值,又或者计算差值的比率等,本申请实施例在此不做限定。
本申请实施例中,会对所有的目标对象检测框都进行这样的处理,最终得到每个目标对象检测框对应的灰度对比度。
步骤S104:基于至少一个目标对象检测框分别对应的灰度对比度,确定待检测图像的检测结果。
其中,该步骤也可以理解为业务逻辑后处理过程,作用就是执行业务侧的逻辑判断。后处理的输入是目标检测模型输出的位置信息、类别信息、确定出的各目标对象检测框分别对应的灰度对比度,输出是每个目标对象是检出还是过滤的二元判断,对于缺陷检测场景,也可以直接输出工件OK/NG的二元判断。
本申请实施例中,基于至少一个目标对象检测框分别对应的灰度对比度,便可确定每个目标对象检测框中的目标对象是否符合检出的要求,这样就可以有效地区分出每个目标对象是否属于过度检测的情况。作为示例地,以缺陷检测场景为例,可以有效地区分出视觉上明显的缺陷和视觉上不明显的缺陷。例如如果在白底表面出现了深色异物,那么其灰度对比度就会很大,会将其检出。而如果在灰色界面上出现了深灰色的轻微污渍,那么其灰度对比度就会很小,可能会将其过滤掉。这样,就可以有效地检测出工件上的可见缺陷,避免检出不易察觉的缺陷,提高生产效率和产品质量。
本申请实施例提供的目标检测方法,通过对识别出的前景区域和背景区域的灰度对比度的计算,可以区分目标对象检测框的前景和背景的差距,用于将视觉差距不明显的检测结果滤除,避免过度检测的问题。另外,该灰度对比度还能够辅助业务逻辑的决策。
本申请实施例中,对于步骤S103,确定目标对象检测框内像素的第一灰度值,具体可以包括:
步骤SA1:基于目标对象检测框的位置信息,确定目标对象检测框内各个像素对应的权重。
其中,每个像素对应的权重表征该像素对于第一灰度值的重要性。
本申请实施例中,考虑到目标对象检测框中目标对象很难占满整个矩形检测框。作为示例地,在实际的工业缺陷检测中,真实的缺陷形态通常是不规则的,而步骤102使用的目标检测模型,其输出为矩形检测框。这就导致了实际缺陷形态和目标对象检测框之间存在一定的差异。如果直接计算这个目标对象检测框内的灰度值,可能会导致计算出的前景灰度值与真实目标对象上的灰度值存在误差,为了解决这个问题,可以为目标对象检测框内各个像素设置相应的权重,以提高真实目标对象部分对于第一灰度值的重要性,减小差异部分对于第一灰度值的重要性。
具体地,基于目标对象检测框的位置信息,可以获知目标对象检测框的大小以及目标对象检测框内像素的个数、行数、列数等信息,便可确定哪些像素需要设置权重。
其中,目标对象检测框内各个像素对应的权重可以是预设的,也可以是按照一定的规则计算得到的,本申请实施例在此不做限定。
步骤SA2:获取目标对象检测框内各个像素的灰度值。
本申请实施例中,若待处理图像是RGB图像,可以先对待处理图像进行灰度化,得到待处理图像对应的灰度图像,再从灰度图像中获取每个目标对象检测框内各个像素的灰度值。其中,图像灰度化的方式可以根据实际需求进行选取,本申请实施例在此不做限定。若待处理图像就是灰度图像,可以直接从待处理图像中获取每个目标对象检测框内各个像素的灰度值。
步骤SA3:基于各个像素对应的权重,对各个像素的灰度值进行加权平均,得到目标对象检测框内像素的第一灰度值。
其中,目标对象检测框内各个像素对应的权重可以是一个二维矩阵,大小和前景相同,假设矩阵内的每个元素表示为,可以通过这个权重矩阵来调整目标对象检测框内每个像素对第一灰度值的贡献。
具体地,基于目标对象检测框内各个像素对应的权重,对目标对象检测框内各个像素的灰度值进行加权平均。对于目标对象检测框内的每个像素的灰度值来说,可以通过以下公式计算来计算第一灰度值/>:
或者,若目标对象检测框内各个像素对应的权重是一个归一化后的二维矩阵,假设矩阵内的每个元素表示为,可以通过以下公式来计算第一灰度值/>:
这些公式表示的是前景的灰度值及其权重矩阵的加权平均。通过这种方式,就可以更准确地计算出前景的平均灰度值,从而更准确地比较灰度对比度。
如上文中的介绍可知,实际目标对象形态和矩形检测框之间可能存在一定的差异,考虑到这可能是因为矩形检测框会包含一部分背景。基于此,本申请实施例中,可以将目标对象检测框内各个像素对应的权重设置为目标对象检测框内中心像素对应的权重大于目标对象检测框内边缘像素对应的权重。其中,本申请中的中心和边缘可以认为是相对的,对于两个位置来说,较中心的像素的权重大于较边缘的像素的权重。
本申请实施例中,为步骤SA1提供一种可选的实施方式,具体地,目标对象检测框内中心像素对应的权重到目标对象检测框内边缘像素对应的权重可以是逐渐递减的。其中,具体的递减步长可以根据实际情况进行设置,本申请实施例在此不做限定。
本申请实施例中,为步骤SA1提供另一种可选的实施方式,具体地,可以包括:
步骤SA11:基于目标对象检测框的位置信息,将目标对象检测框的中心位置作为二维高斯分布函数的原点,将目标对象检测框内的各个像素作为二维高斯分布函数的变量,计算得到高斯分布二维矩阵。
步骤SA12:将高斯分布二维矩阵确定为目标对象检测框内各个像素对应的权重。
本申请实施例旨在提供一种目标对象检测框内各个像素对应的权重,使得矩形检测框区域中心的像素(通常是目标对象部分的中心)的权重更大,边缘的像素(可能是背景)的权重更小。
具体而言,可以将目标对象检测框内各个像素对应的权重设置为高斯分布权重矩阵gaussian_weights。对于本申请实施例,可以基于目标对象检测框的位置信息,将目标对象检测框的中心位置作为二维高斯分布函数的原点,将目标对象检测框内的各个像素作为二维高斯分布函数的变量,计算得到高斯分布二维矩阵。
其中,在二维空间中,高斯分布函数的公式如下:
其中,和y是二维空间中的坐标,/>和/>是均值,在本申请实施例中,将/>和/>设置为0,因为希望目标对象检测框的中心像素有最大的权重),/>是标准差。
因此,可以得到高斯分布二维矩阵为:
同理地,生成高斯分布二维矩阵gaussian_weights大小和前景相同,中心的权重最大,向四周逐渐减小。将高斯分布二维矩阵确定为目标对象检测框内各个像素对应的权重,就可以通过这个权重矩阵来调整目标对象检测框内每个像素对第一灰度值的贡献,使得目标对象检测框内中心的像素对第一灰度值的影响更大。
基于该高斯分布二维矩阵,对各个像素的灰度值进行加权平均,得到目标对象检测框内像素的第一灰度值的方式和效果与步骤SA3类似,在此将不再赘述。
总的来说,以上对目标对象检测框前景处理的目的是在考虑到真实目标对象形态和矩形检测框之间的差异的情况下,尽可能准确地计算出前景和背景的灰度对比度。
本申请实施例中,对于步骤S103,确定背景区域内像素的第二灰度值,具体可以包括:
步骤SB1:基于背景区域内各个像素的颜色信息,对背景区域内的各个像素进行聚类,得到至少两个聚类中心和各个像素的聚类结果。
本申请实施例中,为了避免当目标对象位于复杂纹理区域时,周围预定范围的区域可能仍然会受到复杂纹理的干扰,从而导致第二灰度值的计算不准确的问题,采用聚类算法对设定背景区域的灰度值进行过滤,以减少复杂纹理的干扰。
其中,颜色信息采用灰度值,即使用灰度值来实现聚类,或者,颜色信息页可以采用RGB值,例如直接使用RGB值作为三元组来实现聚类,本申请实施例在此不做限定。
本申请实施例中,本领域技术人员可以根据实际情况选择合适的聚类算法,对背景区域内的各个像素进行聚类,例如可以采用K-Means聚类算法(一种无监督学习算法,主要用于数据聚类)、也可以采用其他算法如层次聚类、DBSCAN(Density-Based SpatialClustering of Applications with Noise,基于密度的噪声应用空间聚类,一种基于密度的聚类算法)或者深度学习算法如自编码器、DEC(Deep Embedding Clustering,深度嵌入聚类)、DBC(Density-Based Clustering,基于密度的聚类)等,本申请实施例在此不做限定,最终得到至少两个聚类中心和各个像素的聚类结果。
在实际应用中,可以根据具体的情况来确定合适的聚类数量。例如,如果背景纹理非常复杂,可以增加聚类数量,增加聚类数量可以使得第二灰度值的划分更细致,从而更好地处理复杂的背景纹理;如果背景纹理比较简单,没有太多干扰,可以设置较少的聚类数量,例如两类聚类就足够了,避免过多的聚类数量可能导致的第二灰度值的计算偏移,同时减小计算的复杂性和运行时间。
步骤SB2:基于至少两个聚类中心的灰度值及各个像素的聚类结果,更新背景区域内的各个像素的灰度值。
即本申请实施例中,根据每个像素聚类结果确定出该像素属于哪个聚类,就将该像素的灰度值更改为相应聚类中心的灰度值,更新后的各个像素的灰度值均是至少两个聚类中心的灰度值中的一种。例如,假设聚类的数量设置为2,也就是将背景区域的灰度值分为两类。
步骤SB3:基于背景区域内的各个像素更新后的灰度值,确定背景区域内像素的第二灰度值。
由此就可以得到一个相对准确的第二灰度值,用来计算目标对象前景和背景区域的灰度对比度。
具体而言,该步骤可以包括以下至少一种方式:
(1)基于背景区域内的各个像素更新后的灰度值,确定至少两个聚类中心的灰度值中对应像素个数最多的目标灰度值,并将目标灰度值作为背景区域内像素的第二灰度值。
作为示例地,假设背景区域的灰度值被分为两类,可以判断这两类灰度值中哪个灰度值对应的像素个数比较多,则可以选择像素数量最多的灰度值类别作为背景区域的第二灰度值。
(2)对背景区域内的各个像素更新后的灰度值计算平均值,作为背景区域内像素的第二灰度值。
具体地,可以计算背景区域内的所有像素的灰度值的和,再除以像素个数,得到背景区域内像素的第二灰度值。
通过以上任一种方式,都能够更准确地计算出背景区域的平均灰度值,从而更准确地比较灰度对比度。实际应用中,本领域技术人员可以根据实际情况选择在哪些场景中使用哪种第二灰度值计算方式,本申请实施例在此不做限定。例如以实际的工业缺陷检测应用为例,若一个缺陷位于一个部件的边缘附近,周围预定范围的背景区域可能包括该部件边缘以及部件外的环境区域,通过前一种选择像素数量最多的灰度值的方式,可以有效滤除环境区域对灰度对比度计算的干扰,有效提升判断精度。
本申请实施例中,为步骤SB1提供了一种可选的实施方式,具体地,可以包括:
步骤SB11:选择预定个数的像素作为初始的聚类中心。
该步骤可以理解为一个初始化步骤,选择K(即预定个数)个点作为初始的聚类中心,这些点可以是从背景区域的各个像素中随机选择的。
步骤SB12:针对背景区域内的各个像素,计算像素到预定个数的聚类中心的距离,得到了预定个数的聚类。
即对背景区域内的各个像素进行分配。对于每一个像素,计算它到每一个聚类中心的距离,然后将它分配给最近的聚类中心。这样便可得到K个聚类。
步骤SB13:重复以下聚类步骤,直到满足预定条件:
步骤SB131:对于得到的每一个聚类,计算聚类中所有像素的均值,并将均值作为新的聚类中心。
步骤SB132:针对背景区域内的各个像素,计算像素到各个新的聚类中心的距离,得到了预定个数的新的聚类。
其中,本领域技术人员可以根据实际情况对预定条件进行设置,例如聚类中心不再发生变化,或者达到预设的最大迭代次数等,本申请实施例在此不做限定。最终便可得到K个聚类中心和每个像素属于哪个聚类的聚类结果。
在本申请实施例中,通过对背景区域的灰度值进行聚类,可以减少复杂纹理的干扰,提高第二灰度值计算的准确性。通过以上聚类算法对背景区域的灰度值进行过滤,在工业缺陷检测等目标检测方案中提供了一种有效的方法,有助于准确地计算第二灰度值,从而更准确地检测出目标对象。
本申请实施例中,对于步骤S103,确定第一灰度值和第二灰度值之间的灰度对比度,具体可以包括:
步骤SC1:计算第一灰度值和第二灰度值的差异的绝对值。
步骤SC2:将差异的绝对值作为第一灰度值和第二灰度值之间的灰度对比度。
在本申请实施例中,计算前景和背景的灰度对比度差异,可以通过计算第一灰度值和第二灰度值的绝对差值来实现。计算方式如下:
其中,是第一灰度值(例如可以是前景的加权平均灰度值),/>是第二灰度值(例如可以是背景的平均灰度值)。这个绝对差值可以用来评估前景和背景的对比度,对比度越大,目标对象就越明显。
本申请实施例中,为步骤S104提供了一种可选的实施方式,具体地,可以包括:
步骤S1041:针对每个目标对象检测框,判断目标对象检测框对应的灰度对比度是否大于预定阈值。
步骤S1042:过滤灰度对比度小于预定阈值的目标对象检测框。
步骤S1043:获取灰度对比度大于预定阈值的目标对象检测框的位置信息和目标对象类别信息,作为待检测图像的检测结果。
在本申请实施例中,可以预置相关的检出参数,即预定阈值,例如50,灰度对比度的绝对值大于预定阈值的目标对象可以检出,例如,明显缺陷(如严重脏污,但不限于此)会被检出,而视觉近似的目标对象,例如不明显缺陷(如轻微脏污,但不限于此)会被过滤,从而实现精准目标对象检测的功能。
进一步地,对于存在至少一个灰度对比度大于预定阈值的目标对象检测框的待处理图像,表示该待处理图像存在检出结果。以缺陷检测场景为例,表示该待处理图像中的工件存在缺陷,则可以对其输出质检结果NG,还可以输出其缺陷的位置,以及缺陷的类别,例如脏污、掉色、划伤、破损、凹陷等,但不限于此。
对于不存在灰度对比度大于预定阈值的目标对象检测框的待处理图像,表示该待处理图像不存在检出结果。以缺陷检测场景为例,表示该待处理图像中的工件不存在缺陷,则可以对其输出质检结果OK。
本申请实施例提供的目标检测方法,可以避免检出视觉上不明显的目标对象,从而提高检测的精确度。
本申请实施例中,为步骤S102提供了一种可选的实施方式,具体地,可以包括:
步骤S1021:获取待检测图像的灰度图。
步骤S1022:将待检测图像的灰度图与待检测图像进行串接,得到目标检测模型的输入图像。
步骤S1023:使用目标检测模型提取输入图像的图像特征,并获取初始预选区域,基于图像特征,对初始预选区域进行多次回归处理和分类处理,得到至少一个目标对象检测框的位置信息和目标对象类别信息。
本申请实施例中,基于深度学习的目标检测模型是为了实现在成像可见性一般,区分性一般的条件下,完成对缺陷的检出和判别。
其中,目标检测模型的输入通道数是四,即待检测图像对应的彩色RGB图具有三个通道,待检测图像差分对比的灰度图具有一个通道,串接后为四通道的输入图像。
具体而言,如图5所示,使用目标检测模型提取输入图像的图像特征,图5中,I表示输入图像,couv表示骨干网络,可以采用HRNetV2P网络、ResNet网络,Swin Transformer网络等,但不限于此,用于提取输入图像的图像特征,BO表示获取的初始预选区域,也可以通过神经网络进行处理,例如RPN(Region Proposal Network,区域提议网络),但不限于此。pool表示局部区域特征提取器(例如执行ROI(region of interest,感兴趣区域)Pooling操作),H1~H3表示网络头,B1~B3表示对初始预选区域进行分级的回归处理得到的目标区域(目标对象检测框的位置信息),C1~C3表示对初始预选区域进行分级的分类处理得到的分类结果,每一级的回归处理和分类处理都是在前一级的基础上进行的,这种级联的检测方式可以提升检测精度。
本申请实施例中,目标检测模型中的骨干网络可以采用如图6所示的特征提取网络和图7所示的特征融合网络,该特征提取网络具有很强的全景信息提取的能力,对工业场景中工件缺陷检测的效果极优。具体而言,该特征提取网络可以逐步增加下采样得到的不同尺度的特征,且可以并行处理多个尺度的特征,并在各种尺度的特征中进行多次特征信息共享,得到包含充分语义信息和纹理信息的多个尺度的特征图,并通过特征融合网络将多个尺度的特征图进行融合,得到输入图像的图像特征,使得图像特征在空间上和语义上均更加准确。
本申请实施例中,目标检测网络可以进行端到端的训练,具体地,可以有监督训练,并且训练集中包含有目标对象位置和类别的标注信息。以缺陷检测场景为例,可以准备好所有待检测的包括各种类缺陷的零件,针对零件图像进行缺陷位置和缺陷类别的标注,即标注出需要检出的脏污、掉色等缺陷的边界框,对模型进行训练。推理时只需要加载相应的训练后的网络参数,直接进行图像输入,取得模型输出结果即可。即推理时目标检测网络的输入是RGB彩色图片和对比差分灰度图的串接,输出是脏污、掉色、划伤、破损、凹陷等边界框和其类别(或类别的置信概率)。
本申请实施例中,目标检测模型训练的损失函数与原始模型的损失函数相同,包括回归损失项,用来进行检测框坐标的拟合回归,以及分类损失项,用来对检测框的类别进行监督和约束。这个过程可以用以下公式表示:
其中,是回归损失项,用来进行检测框的拟合回归,/>是分类损失项,用来对检测框的类别进行监督和约束。/>分别代表检测框的中心坐标和宽高,/>代表检测框的类别。
在训练过程中,可以使用大量的标注样本来训练模型,使得模型能够学习到如何准确地识别和定位缺陷。这个过程需要大量的计算资源和时间,但是一旦模型训练好了,就可以在实际生产中快速、准确地进行缺陷检测。
另外,本申请实施例的模型训练过程只针对目标检测模型进行训练,其余流程中的步骤均是确定的,不包含可学习的参数。由此,本申请实施例提供的技术方案在新的机台上应用时,不需要大量繁杂的调参工作,具有良好的兼容性。这是因为只需要设定一个阈值,就可以根据检测框的灰度对比度来判断是否需要检出缺陷。这种方法比现有的深度学习方法更简单,更易于实施,无需额外的人工标注,能够应用于需要快速部署和迭代的实际场景中。
总的来说,本申请实施例提供的目标检测方法,通过联合使用深度神经网络模型和业务逻辑后处理模块,以及对前景和背景的灰度对比度的计算,能够有效地检测出目标对象。特别是在目标检测中,可以通过前景高斯加权和背景聚类过滤噪声,既考虑了真实目标对象形态和矩形检测框之间的差异,也考虑了业务侧的实际需求,更准确地计算前景背景对比度,还能够辅助决策,因此在实际生产中具有很高的应用价值。
基于上述至少一个实施例,本申请实施例中以缺陷检测场景为例,通过图8给出了缺陷检测方法的流程示例,具体地,可以包括:
步骤S8.1:输入一张待检测图像。这张待检测图像通常是工件的高清图像,可以包含各种可能的缺陷。将这张待检测图像输入到深度学习目标检测网络(具体可以是缺陷检测网络)中。这个神经网络是事先训练好的,可以识别和定位图像中的缺陷,并输出若干个缺陷检测框,每个缺陷检测框都代表了一个可能的缺陷区域。
步骤S8.2:对于每个缺陷检测框分别进行处理。首先,计算缺陷检测框内的前景灰度值(即第一灰度值)。前景通常是缺陷本身,可以计算其灰度值的平均值或通过前景高斯分布加权计算灰度,以表示其颜色和亮度。
步骤S8.3:计算缺陷检测框周围的背景灰度值(即第二灰度值)。背景通常是工件的正常部分,也可以计算其灰度值的平均值或将背景经过聚类过滤噪声灰度。
步骤S8.4:计算前景和背景的灰度值的差异绝对值。这个差异绝对值可以用来评估缺陷和背景的对比度。对比度越大,缺陷就越明显。
步骤S8.5:对所有的缺陷检测框都进行这样的处理,最终得到每个缺陷检测框的灰度对比度。
步骤S8.6:将所有缺陷检测框的灰度对比度送入后处理模块中。在后处理模块中,根据业务逻辑来设定一个阈值。如果某个检测框的灰度对比度大于这个阈值,那么就认为这是一个NG的缺陷,需要检出,并从缺陷检测模型的输出结果中获取该缺陷的位置信息和类别信息进行输出。如果灰度对比度小于这个阈值,那么就认为这是一个可以忽略的缺陷,可以进行过滤。
本申请实施例提供的缺陷检测方法,通过对待处理图像进行预处理,构建对应的深度神经网络(缺陷检测网络),实现工件的脏污、掉色、划伤、破损、凹陷等多种类型的表面缺陷的检测,经过检出前景高斯分布加权和周边背景聚类过滤噪声,并计算灰度差异绝对值,实现检测框的前景背景对比度的准确计算。这个对比度可以用来区分视觉上明显的缺陷和视觉上不明显的缺陷。不仅能够提高视觉明显缺陷的检出率(例如通过降低分数阈值提升神经网络检出率,再采用本方案将视觉不明显缺陷滤除),还能够辅助业务逻辑的决策。
可选地,本申请实施例提供的目标检测方案,可应用于终端或服务器。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。用户终端包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。本发明实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
其中,云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing )、分布式计算(DistributedComputing)、并行计算(ParallelComputing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。
云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
可选地,本申请实施例提供的目标检测方案,也可以由多个具有计算能力的计算机设备或器件协作完成,例如,不同的计算机设备或器件各自完成本申请实施提供的各方法的一部分步骤。作为示例地,如图9所示,可以由通过网络连接的采集设备901、计算设备902、显示设备903来协作完成。其中,采集设备901用于采集图像,获取待检测图像。计算设备902用于对采集设备901所采集的图像进行处理,例如进行缺陷检测和判断。显示设备903用于显示计算设备902处理得到的缺陷检测结果,其中可以包括缺陷位置和缺陷类型。其中,采集设备901可以包括但不限于相机、摄像头等图像采集设备。在一些实施例中,计算设备902具有显示功能时,显示设备903可以为计算设备902中的显示器。
本申请实施例提供的基于灰度对比度的目标检测方法,如工业缺陷检测方法在缺陷检测、产品质量控制领域都可以应用,例如钢板缺陷检测、地板瑕疵检测、PCB(PrintedCircuit Board,印刷电路板)缺陷检测、薄膜缺陷检测、灯珠缺陷检测、金属棒材端面检测、织物褶皱等级评定、工业零件的表面缺陷自动化质检仪器等。
本申请实施例提供的目标检测方法具有以下技术效果:
1)网络结构明晰,各个模块均有较好的泛化能力,在流行的工业质检数据集上的实验证明了本方案性能优越稳定,对于缺陷的召回率较高、过检率较低。
2)算法逻辑清晰,稳定可控,每一分支的运算结果均可以进行可视化查看,方便在算法工作异常时快速定位问题。
3)提供更好的可解释性:通过计算灰度差异,可以得到一个直观的特征,这个特征可以辅助业务的决策过程,对比度差异直观好调节。
4)灰度对比度计算准确性高:该方案能够在矩形检测框中也实现较高准确度的灰度对比度计算。而不需要分割网络的复杂运算和标注(对于一个多边形缺陷来说,分割网络需要根据缺陷标注多个点(>10),这会大大降低标注和模型训练迭代的速度,同时分割模型在推理时通常需要消耗更多的时间和显存占用。种种因素导致分割模型在实际工业检测中难以应用)工作,大大提升工业检测部署的实用性。
本申请实施例涉及的人工智能(Artificial Intelligence,AI)技术是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互系统、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
具体地,本申请实施例涉及计算机视觉技术(Computer Vision,CV)和机器学习(Machine Learning,ML)技术。
其中,计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。大模型技术为计算机视觉技术发展带来重要变革,swin-transformer,ViT,V-MOE,MAE等视觉领域的预训练模型经过微调(fine tune)可以快速、广泛适用于下游具体任务。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。预训练模型是深度学习的最新发展成果,融合了以上技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、数字孪生、虚拟人、机器人、人工智能生成内容(AIGC)、对话式交互、智能医疗、智能客服、游戏AI等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供了一种目标检测装置,如图10所示,该目标检测装置100可以包括:图像获取模块1001、目标对象识别模块1002、对比度确定模块1003以及检测结果确定模块1004,其中,
图像获取模块1001用于获取待检测图像;
目标对象识别模块1002用于使用目标检测模型对待检测图像中的目标对象进行识别,得到至少一个目标对象检测框;
对比度确定模块1003用于针对每个目标对象检测框,确定目标对象检测框内像素的第一灰度值,获取目标对象检测框周围预定范围的背景区域,以确定背景区域内像素的第二灰度值,并确定第一灰度值和第二灰度值之间的灰度对比度;
检测结果确定模块1004基于至少一个目标对象检测框分别对应的灰度对比度,确定待检测图像的检测结果。
在一种可选的实施方式中,对比度确定模块1003在用于确定目标对象检测框内像素的第一灰度值时,具体用于:
基于目标对象检测框的位置信息,确定目标对象检测框内各个像素对应的权重,每个像素对应的权重表征该像素对于第一灰度值的重要性;
获取目标对象检测框内各个像素的灰度值;
基于各个像素对应的权重,对各个像素的灰度值进行加权平均,得到目标对象检测框内像素的第一灰度值。
在一种可选的实施方式中,目标对象检测框内中心像素对应的权重大于目标对象检测框内边缘像素对应的权重。
在一种可选的实施方式中,对比度确定模块1003在用于基于目标对象检测框的位置信息,确定目标对象检测框内各个像素对应的权重时,具体用于:
基于目标对象检测框的位置信息,将目标对象检测框的中心位置作为二维高斯分布函数的原点,将目标对象检测框内的各个像素作为二维高斯分布函数的变量,计算得到高斯分布二维矩阵;
将高斯分布二维矩阵确定为目标对象检测框内各个像素对应的权重。
在一种可选的实施方式中,对比度确定模块1003在用于确定背景区域内像素的第二灰度值时,具体用于:
基于背景区域内各个像素的颜色信息,对背景区域内的各个像素进行聚类,得到至少两个聚类中心和各个像素的聚类结果;
基于至少两个聚类中心的灰度值及各个像素的聚类结果,更新背景区域内的各个像素的灰度值;
基于背景区域内的各个像素更新后的灰度值,确定背景区域内像素的第二灰度值。
在一种可选的实施方式中,对比度确定模块1003在用于基于背景区域内的各个像素更新后的灰度值,确定背景区域内像素的第二灰度值时,具体用于以下至少一种方式:
基于背景区域内的各个像素更新后的灰度值,确定至少两个聚类中心的灰度值中对应像素个数最多的目标灰度值,并将目标灰度值作为背景区域内像素的第二灰度值;
对背景区域内的各个像素更新后的灰度值计算平均值,作为背景区域内像素的第二灰度值。
在一种可选的实施方式中,对比度确定模块1003在用于基于背景区域内各个像素的颜色信息,对背景区域内的各个像素进行聚类时,具体用于:
选择预定个数的像素作为初始的聚类中心;
针对背景区域内的各个像素,计算像素到预定个数的聚类中心的距离,得到了预定个数的聚类。
重复以下聚类步骤,直到满足预定条件:
对于得到的每一个聚类,计算聚类中所有像素的均值,并将均值作为新的聚类中心;
针对背景区域内的各个像素,计算像素到各个新的聚类中心的距离,得到了预定个数的新的聚类。
在一种可选的实施方式中,对比度确定模块1003在用于确定第一灰度值和第二灰度值之间的灰度对比度时,具体用于:
计算第一灰度值和第二灰度值的差异的绝对值;
将差异的绝对值作为第一灰度值和第二灰度值之间的灰度对比度。
在一种可选的实施方式中,检测结果确定模块1004在用于基于至少一个目标对象检测框分别对应的灰度对比度,确定待检测图像的检测结果时,具体用于:
针对每个目标对象检测框,判断目标对象检测框对应的灰度对比度是否大于预定阈值;
过滤灰度对比度小于预定阈值的目标对象检测框。
获取灰度对比度大于预定阈值的目标对象检测框的位置信息和目标对象类别信息,作为待检测图像的检测结果。
在一种可选的实施方式中,目标对象识别模块1002在用于使用目标检测模型对待检测图像中的目标对象进行识别,得到至少一个目标对象检测框时,具体用于:
获取待检测图像的灰度图;
将待检测图像的灰度图与待检测图像进行串接,得到目标检测模型的输入图像;
使用目标检测模型提取输入图像的图像特征,并获取初始预选区域,基于图像特征,对初始预选区域进行多次回归处理和分类处理,得到至少一个目标对象检测框的位置信息和目标对象类别信息。
本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述及产生的有益效果具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现前述各方法实施例的步骤。
在一个可选实施例中提供了一种电子设备,如图11所示,图11所示的电子设备1100包括:处理器1101和存储器1103。其中,处理器1101和存储器1103相连,如通过总线1102相连。可选地,电子设备1100还可以包括收发器1104,收发器1104可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器1104不限于一个,该电子设备1100的结构并不构成对本申请实施例的限定。
处理器1101可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1101也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线1102可包括一通路,在上述组件之间传送信息。总线1102可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线1102可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1103可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器1103用于存储执行本申请实施例的计算机程序,并由处理器1101来控制执行。处理器1101用于执行存储器1103中存储的计算机程序,以实现前述方法实施例所示的步骤。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。
Claims (13)
1.一种目标检测方法,其特征在于,包括:
获取待检测图像;
使用目标检测模型对所述待检测图像中的目标对象进行识别,得到至少一个目标对象检测框;
针对每个所述目标对象检测框,确定所述目标对象检测框内像素的第一灰度值,获取所述目标对象检测框周围预定范围的背景区域,以确定所述背景区域内像素的第二灰度值,并确定所述第一灰度值和所述第二灰度值之间的灰度对比度;
基于所述至少一个目标对象检测框分别对应的所述灰度对比度,确定所述待检测图像的检测结果。
2.根据权利要求1所述的目标检测方法,其特征在于,确定所述目标对象检测框内像素的第一灰度值,包括:
基于所述目标对象检测框的位置信息,确定所述目标对象检测框内各个像素对应的权重,每个像素对应的权重表征该像素对于所述第一灰度值的重要性;
获取所述目标对象检测框内各个像素的灰度值;
基于所述各个像素对应的权重,对所述各个像素的灰度值进行加权平均,得到所述目标对象检测框内像素的第一灰度值。
3.根据权利要求2所述的目标检测方法,其特征在于,所述目标对象检测框内中心像素对应的权重大于所述目标对象检测框内边缘像素对应的权重。
4.根据权利要求3所述的目标检测方法,其特征在于,所述基于所述目标对象检测框的位置信息,确定所述目标对象检测框内各个像素对应的权重,包括:
基于所述目标对象检测框的位置信息,将所述目标对象检测框的中心位置作为二维高斯分布函数的原点,将所述目标对象检测框内的各个像素作为二维高斯分布函数的变量,计算得到高斯分布二维矩阵;
将所述高斯分布二维矩阵确定为所述目标对象检测框内各个像素对应的权重。
5.根据权利要求1所述的目标检测方法,其特征在于,所述确定所述背景区域内像素的第二灰度值,包括:
基于所述背景区域内各个像素的颜色信息,对所述背景区域内的各个像素进行聚类,得到至少两个聚类中心和各个像素的聚类结果;
基于所述至少两个聚类中心的灰度值及各个像素的聚类结果,更新所述背景区域内的各个像素的灰度值;
基于所述背景区域内的各个像素更新后的灰度值,确定所述背景区域内像素的第二灰度值。
6.根据权利要求5所述的目标检测方法,其特征在于,所述基于所述背景区域内的各个像素更新后的灰度值,确定所述背景区域内像素的第二灰度值,包括以下至少一种方式:
基于所述背景区域内的各个像素更新后的灰度值,确定所述至少两个聚类中心的灰度值中对应像素个数最多的目标灰度值,并将所述目标灰度值作为所述背景区域内像素的第二灰度值;
对所述背景区域内的各个像素更新后的灰度值计算平均值,作为所述背景区域内像素的第二灰度值。
7.根据权利要求5所述的目标检测方法,其特征在于,所述基于所述背景区域内各个像素的颜色信息,对所述背景区域内的各个像素进行聚类,包括:
选择预定个数的像素作为初始的聚类中心;
针对所述背景区域内的各个像素,计算像素到预定个数的聚类中心的距离,得到了预定个数的聚类;
重复以下聚类步骤,直到满足预定条件:
对于得到的每一个聚类,计算聚类中所有像素的均值,并将所述均值作为新的聚类中心;
针对所述背景区域内的各个像素,计算像素到各个新的聚类中心的距离,得到了预定个数的新的聚类。
8.根据权利要求1所述的目标检测方法,其特征在于,所述确定所述第一灰度值和所述第二灰度值之间的灰度对比度,包括:
计算所述第一灰度值和所述第二灰度值的差异的绝对值;
将所述差异的绝对值作为所述第一灰度值和所述第二灰度值之间的灰度对比度。
9.根据权利要求1-8任一项所述的目标检测方法,其特征在于,所述基于所述至少一个目标对象检测框分别对应的所述灰度对比度,确定所述待检测图像的检测结果,包括:
针对每个所述目标对象检测框,判断目标对象检测框对应的所述灰度对比度是否大于预定阈值;
过滤所述灰度对比度小于所述预定阈值的目标对象检测框;
获取所述灰度对比度大于所述预定阈值的目标对象检测框的位置信息和目标对象类别信息,作为所述待检测图像的检测结果。
10.根据权利要求1-8任一项所述的目标检测方法,其特征在于,使用目标检测模型对所述待检测图像中的目标对象进行识别,得到至少一个目标对象检测框,包括:
获取所述待检测图像的灰度图;
将所述待检测图像的灰度图与所述待检测图像进行串接,得到所述目标检测模型的输入图像;
使用目标检测模型提取所述输入图像的图像特征,并获取初始预选区域,基于所述图像特征,对所述初始预选区域进行多次回归处理和分类处理,得到至少一个目标对象检测框的位置信息和目标对象类别信息。
11.一种目标检测装置,其特征在于,包括:
图像获取模块,用于获取待检测图像;
目标对象识别模块,用于使用目标检测模型对所述待检测图像中的目标对象进行识别,得到至少一个目标对象检测框;
对比度确定模块,用于针对每个所述目标对象检测框,确定所述目标对象检测框内像素的第一灰度值,获取所述目标对象检测框周围预定范围的背景区域,以确定所述背景区域内像素的第二灰度值,并确定所述第一灰度值和所述第二灰度值之间的灰度对比度;
检测结果确定模块,基于所述至少一个目标对象检测框分别对应的所述灰度对比度,确定所述待检测图像的检测结果。
12.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-10任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410029363.1A CN117557784B (zh) | 2024-01-09 | 2024-01-09 | 目标检测方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410029363.1A CN117557784B (zh) | 2024-01-09 | 2024-01-09 | 目标检测方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117557784A true CN117557784A (zh) | 2024-02-13 |
CN117557784B CN117557784B (zh) | 2024-04-26 |
Family
ID=89818863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410029363.1A Active CN117557784B (zh) | 2024-01-09 | 2024-01-09 | 目标检测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117557784B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117893537A (zh) * | 2024-03-14 | 2024-04-16 | 深圳市普拉托科技有限公司 | 托盘表面材质的脱色检测方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7330565B1 (en) * | 2002-02-26 | 2008-02-12 | The United States Of America As Represented By The Secretary Of The Army | Scale insensitive vehicle detection algorithm for flir imagery |
CN108182690A (zh) * | 2017-12-29 | 2018-06-19 | 中国人民解放军63861部队 | 一种基于前景加权局部对比度的红外微弱目标检测方法 |
CN109961065A (zh) * | 2017-12-25 | 2019-07-02 | 中国科学院沈阳自动化研究所 | 一种海面舰船目标检测方法 |
CN110415208A (zh) * | 2019-06-10 | 2019-11-05 | 西安电子科技大学 | 一种自适应目标检测方法及其装置、设备、存储介质 |
CN116645499A (zh) * | 2023-06-12 | 2023-08-25 | 影石创新科技股份有限公司 | 边界框的确定方法、装置、设备、存储介质和程序产品 |
CN116758081A (zh) * | 2023-08-18 | 2023-09-15 | 安徽乾劲企业管理有限公司 | 一种无人机道路桥梁巡检图像处理方法 |
-
2024
- 2024-01-09 CN CN202410029363.1A patent/CN117557784B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7330565B1 (en) * | 2002-02-26 | 2008-02-12 | The United States Of America As Represented By The Secretary Of The Army | Scale insensitive vehicle detection algorithm for flir imagery |
CN109961065A (zh) * | 2017-12-25 | 2019-07-02 | 中国科学院沈阳自动化研究所 | 一种海面舰船目标检测方法 |
CN108182690A (zh) * | 2017-12-29 | 2018-06-19 | 中国人民解放军63861部队 | 一种基于前景加权局部对比度的红外微弱目标检测方法 |
CN110415208A (zh) * | 2019-06-10 | 2019-11-05 | 西安电子科技大学 | 一种自适应目标检测方法及其装置、设备、存储介质 |
CN116645499A (zh) * | 2023-06-12 | 2023-08-25 | 影石创新科技股份有限公司 | 边界框的确定方法、装置、设备、存储介质和程序产品 |
CN116758081A (zh) * | 2023-08-18 | 2023-09-15 | 安徽乾劲企业管理有限公司 | 一种无人机道路桥梁巡检图像处理方法 |
Non-Patent Citations (2)
Title |
---|
LI ZEHAO ET AL.: "Small and dim infrared moving target detection based on spatial–temporal saliency", 《OPTIK》, 31 December 2022 (2022-12-31), pages 1 - 6 * |
朱金辉 等: "基于双邻域对比度的红外小目标检测算法", 《激光技术》, 31 December 2021 (2021-12-31), pages 1 - 5 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117893537A (zh) * | 2024-03-14 | 2024-04-16 | 深圳市普拉托科技有限公司 | 托盘表面材质的脱色检测方法及系统 |
CN117893537B (zh) * | 2024-03-14 | 2024-05-28 | 深圳市普拉托科技有限公司 | 托盘表面材质的脱色检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117557784B (zh) | 2024-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109584248B (zh) | 基于特征融合和稠密连接网络的红外面目标实例分割方法 | |
CN110060237B (zh) | 一种故障检测方法、装置、设备及系统 | |
CN111160249A (zh) | 基于跨尺度特征融合的光学遥感图像多类目标检测方法 | |
Moreira et al. | Neural-based color image segmentation and classification using self-organizing maps | |
Shahab et al. | How salient is scene text? | |
CN117557784B (zh) | 目标检测方法、装置、电子设备及存储介质 | |
CN110298297A (zh) | 火焰识别方法和装置 | |
CN109711268B (zh) | 一种人脸图像筛选方法及设备 | |
CN107330360A (zh) | 一种行人衣着颜色识别、行人检索方法和装置 | |
CN113449606B (zh) | 一种目标对象识别方法、装置、计算机设备及存储介质 | |
CN113888461A (zh) | 基于深度学习的小五金件缺陷检测方法、系统及设备 | |
CN111242026A (zh) | 一种基于空间层次感知模块和度量学习的遥感图像目标检测方法 | |
CN110852327A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN111524113A (zh) | 提升链异常识别方法、系统、设备及介质 | |
CN111695373A (zh) | 斑马线的定位方法、系统、介质及设备 | |
CN107610136B (zh) | 基于凸包结构中心查询点排序的显著目标检测方法 | |
CN115937552A (zh) | 一种基于融合手工特征与深度特征的图像匹配方法 | |
Devadethan et al. | Face detection and facial feature extraction based on a fusion of knowledge based method and morphological image processing | |
WO2022222036A1 (zh) | 车位确定方法及装置 | |
CN111368865A (zh) | 遥感影像储油罐检测方法、装置、可读存储介质及设备 | |
CN110334703B (zh) | 一种昼夜图像中的船舶检测和识别方法 | |
CN117496532A (zh) | 基于0cr的智慧识别工具 | |
CN110910497B (zh) | 实现增强现实地图的方法和系统 | |
CN111507252A (zh) | 人体跌倒检测装置、方法、电子终端及存储介质 | |
CN111368856A (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 |