CN116664822A - 一种基于自动切图算法的图像目标检测方法 - Google Patents

一种基于自动切图算法的图像目标检测方法 Download PDF

Info

Publication number
CN116664822A
CN116664822A CN202310637148.5A CN202310637148A CN116664822A CN 116664822 A CN116664822 A CN 116664822A CN 202310637148 A CN202310637148 A CN 202310637148A CN 116664822 A CN116664822 A CN 116664822A
Authority
CN
China
Prior art keywords
picture
axis
detection
pixel value
image
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
Application number
CN202310637148.5A
Other languages
English (en)
Other versions
CN116664822B (zh
Inventor
陈星�
梁丽霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Yueshu Technology Co ltd
Original Assignee
Guangzhou Yueshu Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Yueshu Technology Co ltd filed Critical Guangzhou Yueshu Technology Co ltd
Priority to CN202310637148.5A priority Critical patent/CN116664822B/zh
Publication of CN116664822A publication Critical patent/CN116664822A/zh
Application granted granted Critical
Publication of CN116664822B publication Critical patent/CN116664822B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • G06V10/267Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/809Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of classification results, e.g. where the classifiers operate on the same input data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种基于自动切图算法的图像目标检测方法,主要步骤如下:1)图片切分器将要检测的目标照片进行切分,将其分割成多个小图像,并对切分后的图像进行适当重叠;2)多线程并发检测装置通过将图片切分器生成的多个小图像分配给不同的线程或计算单元进行处理实现并行计算;3)识别结果融合器将多线程并发检测装置得到的结果进行汇总和整合得出识别结果,本发明通过图片切分器、多线程并发检测装置和识别结果融合器三个部分的相互协作,能够在保持现有目标检测模型不变的情况下,有效地提高目标检测的准确性和效率。此外,本发明的架构具有较强的通用性,可广泛应用于不同类型的目标检测任务和场景。

Description

一种基于自动切图算法的图像目标检测方法
技术领域
本发明属于本发明属于计算机视觉领域,尤其涉及一种基于自动切图算法的图像目标检测方法。
背景技术
本发明一种基于自动切图算法的图像目标检测方法主要应用在商品识别领域,目前这个领域采用的目标检测方法是YOLO识别器,当商品柜中摆放的商品是小目标,且摆放不对齐、拍照反光时,容易导致识别效果较差。
现阶段,因为YOLO模型采用单阶段目标检测的方法,只需提取一次特征的前提下,同时保证了良好的准确率和召回率,使得YOLO成为实战使用的最多的目标检测算法。但同时由于YOLO模型是固定输入图像通道,通常采用640*640或者1280*1280的图片尺寸输入,主流的拍照工具如大部分手机都已经达到了4k的图片尺寸,因此通常对图片进行的采用压缩方式改变图片尺寸输入,图片的压缩使得目标检测对部分小目标识别较差。若通过将模型的输入尺寸增大到4k甚至8k进行模型训练将会使得模型整体参数过于庞大而无法计算。
为解决现有商品柜中摆放小目标商品,受摆放不对齐、拍照反光等影响导致的识别效果较差、且现有YOLO识别器图片压缩方式使得目标检测对部分小目标识别较差问题,本发明提出了一种基于自动切图算法的图像目标检测方法。
发明内容
鉴于此,为解决前述现有技术存在的诸多缺点,本发明提出一种基于自动切图算法的高性能图像目标检测方法,该方法能保持模型训练尺寸为640*640或者1280*1280,在目标检测时候对输入图片进行切割分片成若干640*640小图片进行并发目标检测,最后将不同分片的检测结果进行加权融合得出识别结果。本发明可以采用JAVA编程语言实现,利用JAVA的多线程能力并发处理,保证了目标检测***的低延时检测。
本方法的技术方案如下:
一种基于自动切图算法的图像目标检测方法,主要步骤如下:
S1)考虑目标物体的尺寸和形状,图片切分器将要检测的目标照片进行切分,将其分割成多个小图像,并对切分后的小图像进行重叠;
配置图片切分器的参数,所述参数为切分高度、切分宽度、高度重叠率、宽度重叠率;切分流程步骤如下:
S11)计算图片y轴重叠像素数:将高度重叠率与切分高度相乘,然后取整数值;
S12)计算图片x轴重叠像素数:将宽度重叠率与切分宽度相乘,然后取整数值;
S13)初始化图片y轴最大像素值为0;
S14)进行行循环:当图片y轴最大像素值小于图片高度时,执行以下步骤:
A)将图片x轴最大像素值和图片x轴最小像素值都初始化为0;
B)计算图片y轴最大像素值:将图片y轴最小像素值与切分高度相加;
C)进行列循环:当图片x轴最大像素值小于图片宽度时,执行以下步骤:
i)计算图片x轴最大像素值:将图片x轴最小像素值与切分宽度相加;
ii)如果图片y轴最大像素值大于图片高度或图片x轴最大像素值大于图片宽度,则:
a)计算切分图片x轴最大值:取图片宽度和图片x轴最大像素值的最小值;
b)计算切分图片y轴最大值:取图片高度和图片y轴最大像素值的最小值;
c)计算切分图片x轴最小值:取0和切分图片x轴最大值减去切分宽度的最大值;
d)计算切分图片y轴最小值:取0和切分图片y轴最大值减去切分高度的最大值;
e)将切分区域的坐标(xmin,ymin,xmax,ymax)添加到切分列表中;
iii)如果图片y轴最大像素值小于图片高度或图片x轴最大像素值小于图片宽度,则:将切分区域的坐标(xmin,ymin,xmax,ymax)添加到切分列表中;
iv)为下一次切分更新图片x轴最小像素值:将图片x轴最大像素值减去图片x轴重叠像素;
v)为下一次切分更新图片y轴最小像素值:将图片y轴最大像素值减去图片y轴重叠像素;
S2)多线程并发检测装置通过将图片切分器生成的多个小图像分配给不同的线程或计算单元进行处理,实现并行计算;
S3)识别结果融合器,识别结果融合器将多线程并发检测装置得到的结果进行汇总和整合,识别结果融合器采用加权融合算法得出识别结果,具体如下:
S31)识别结果融合器采用加权融合算法对图片切分阶段存在的重叠区域的检测结果进行处理以避免目标物体的重复检测;
S32)识别结果融合器对多线程并发检测装置返回的检测结果的置信度进行权衡,确保整体的目标检测效果达到最优;
S33)最后,识别结果融合器将融合后的结果输出,完成整个目标检测过程。
优选地,多线程并发检测装置将YOLO模型转译为ONNX格式;转译后的ONNX模型使用JAVA ONNX runtime加载,使用多线程并发模型,对多张分片图片同时进行检测;具体如下:
首先,创建一个固定大小的线程池,大小根据需要加载的模型数量和可用的处理器核心来设定;然后对于每一个模型,创建一个实现Callable接口的类,该类负责加载和初始化ONNX模型;然后,将这些任务提交给ExecutorService执行,并等待所有任务完成;最后从Future对象中获取加载好的模型,返回检测结果。
优选地,多线程并发检测装置通过将图片切分器生成的多个小图像分配给不同的线程或计算单元进行处理,实现并行计算;具体步骤如下:
S21)准备环境:
a.安装ONNX运行时库;
b.下载并导入适当版本的YOLO ONNX模型;
c.添加所需的Java库,所述Java库为onnxruntime或其他图像处理库;
S22)加载YOLO ONNX模型:
a.创建一个类或方法,用于加载YOLO ONNX模型文件并初始化
ONNX运行时会话;
S23)图像预处理:
a.从输入源读取图像;
b.将图像转换为YOLO模型所需的尺寸;
c.对图像进行归一化处理并准备输入张量;
S24)创建多线程任务:
a.根据需要创建线程池,用于并发执行目标检测任务;
b.将图像预处理任务分配给线程池中的工作线程;
S25)目标检测:
a.在每个工作线程中,将预处理后的图像张量输入YOLO模型;
b.解析模型输出,提取目标检测结果,包括边界框、置信度和类别;
S26)后处理:
a.应用非极大值抑制算法剔除重叠边界框和低置信度检测结果;
b.将检测结果转换回原始图像尺寸;
S27)显示或存储结果:
a.在原始图像上绘制边界框和类别标签;
b.将检测结果显示在屏幕上或将其存储到文件中;
S28)清理资源:
a.关闭ONNX运行时会话;
b.释放线程池资源。
优选地,所述步骤S31)中:加权融合算法使用非极大值抑制算法和计算交并比实现;非极大值抑制算法筛选目标检测结果中的冗余检测框,保留最具代表性的检测结果,基本步骤如下:
a)根据检测框的置信度对候选框进行降序排列;
b)选择置信度最高的检测框作为参考框,将其与其他所有检测框计算交并比;
c)移除与参考框交并比大于阈值的其他检测框;
d)从剩余的检测框中,重复步骤b)-c),直到所有检测框都被处理。
优选地,所述交并比衡量两个矩形框重叠程度,评估预测的边界框与实际边界框的相似度,
IoU的计算公式为:
IoU=(A∩B)/(A∪B)
其中,A和B分别表示两个矩形框,A∩B表示两个矩形框的交集面积,A∪B表示两个矩形框的并集面积;IoU的取值范围为0到1。
优选地,所述步骤S31)的详细识别过程如下:
3.1.1)多个切边图片识别结果的置信度和box合并;
3.1.2)把置信度最高的一个bbox作为目标,然后对比剩下bbox与目标bbox之间的交叉区域;
3.1.3)如果交叉区域大于设定的阈值,那么在剩下的bbox中去除该bbox以抑制最大重叠区域;
3.1.4)把第二置信度高的bbox作为目标,重复3.1.2)、3.1.3)。
优选地,所述多线程并发检测装置利用硬件资源获得最佳性能;所述硬件资源包括多核处理器、GPU;同时,对线程之间的同步和通信进行管理确保各个线程的检测结果汇总。
本发明采用以上技术方案与现有技术相比,具有以下有益效果:
(1)本发明通过切分图片输入原始尺寸图片,避免压缩图片。可对原尺寸图片中的小物体、反光、遮挡干扰的物体可有效识别进行识别,解决原本YOLO模型对小物件识别差的问题。
(2)本发明通过图片切分器、多线程并发检测器、加权融合计算三部分,在提升识别准确率同时保证了识别的耗时与原YOLO模型相近。
(3)本发明能够在保持现有目标检测模型不变的情况下,有效地提高目标检测的准确性和效率。此外,本发明的架构具有较强的通用性,可广泛应用于不同类型的目标检测任务和场景。
附图说明
图1是整体框架图;
图2是切分过程示意图;
图3是Java加载模型优化示意图;
具体实施方式
下面将结合附图和实施例对本发明做进一步的详细说明。
如附图1所示,本发明一种基于自动切图算法的图像目标检测方法,主要作用在目标检测的检测端,无需对已训练模型进行重新训练。整体步骤流程分为三部分:
1)图片切分器,图片切分器将要检测的目标照片进行切分。
图片切分器负责将输入的原始图像进行合理切分,将其分割成多个小图像。这样可以确保目标检测算法能够更高效地处理图像,同时减小了计算资源的需求。在进行图片切分时,需要考虑到目标物体的尺寸和形状,以便在后续的检测过程中能够获得更好的结果。此外,图片切分器还应该对切分后的图像进行适当的重叠,以避免目标物体被切割而导致检测效果下降。
图片切分器负责将要检测的目标照片进行切分。图片切分器主要配置参数为切分高度、切分宽度、高度重叠率、宽度重叠率。
图片切分器首先根据输入参数,计算重叠像素,假设输入原图尺寸为1280*1280,YOLO训练模型的输入尺寸为640*640,切分步长为320,切分过程如附图2所示;流程步骤如下:
1计算图片y轴重叠像素数:将高度重叠率与切分高度相乘,然后取整数值。
2计算图片x轴重叠像素数:将宽度重叠率与切分宽度相乘,然后取整数值。
3初始化图片y轴最大像素值为0。
4进行行循环:当图片y轴最大像素小于图片高度时,执行以下步骤:
a.将图片x轴最大像素和图片x轴最小像素都初始化为0。
b.计算图片y轴最大像素值:将图片y轴最小像素与切分高度相加。
c.进行列循环:当图片x轴最大像素小于图片宽度时,执行以下步骤:
i.计算图片x轴最大像素值:将图片x轴最小像素与切分宽度相加。
ii.如果图片y轴最大像素大于图片高度或图片x轴最大像素大于图片宽度:
1).计算切分图片x轴最大值:取图片宽度和图片x轴最大像素的最小值。
2).计算切分图片y轴最大值:取图片高度和图片y轴最大像素的最小值。
3).计算切分图片x轴最小值:取0和切分图片x轴最大值减去切分宽度的最大值。
4).计算切分图片y轴最小值:取0和切分图片y轴最大值减去切分高度的最大值。
5).将切分区域的坐标(xmin,ymin,xmax,ymax)添加到切分列表中。
iii.否则:
1).将切分区域的坐标(x_min,y_min,x_max,y_max)添加到切分列表中。
iv.为下一次切分更新图片x轴最小像素:将图片x轴最大像素减去图片x轴重叠像素。
v.为下一次切分更新图片y轴最小像素:将图片y轴最大像素减去图片y轴重叠像素。
切分后总共获得9张640*640的图片分片。
2)多线程并发检测装置,多线程并发检测装置通过将图片切分器生成的多个小图像分配给不同的线程或计算单元进行处理,实现了并行计算。这样可以显著提高目标检测的速度,尤其在处理大型图像或实时目标检测场景中具有显著优势。为了保证检测效果,多线程并发检测需要充分利用硬件资源,如多核处理器、GPU等,以获得最佳性能。同时,需要对线程之间的同步和通信进行有效管理,确保各个线程的检测结果可以顺利汇总。
将YOLO模型转译为Open Neural Network Exchange(ONNX,开放神经网络交换)格式;转译后的ONNX模型使用JAVAONNX runtime加载,使用多线程并发模型,对多张分片图片同时进行检测;
YOLO模型由Pytorch编写,训练后模型仅能运行于Python环境中。由于Python性能不佳,在切分多张图片后的识别演示无法满足使用要求。因此本发明将YOLO模型转译为Open Neural Network Exchange(ONNX,开放神经网络交换)格式,是一个用于表示深度学习模型的标准,可使模型在不同框架之间进行转移。ONNX是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型。它使得不同的人工智能框架(如Pytorch,MXNet)可以采用相同格式存储模型数据并交互。ONNX的规范及代码主要由微软,亚马逊,Facebook和IBM等公司共同开发。转译后的ONNX模型使用JAVAONNX runtime加载,使用多线程并发模型,步骤如下:
1准备环境:
a.安装ONNX运行时库。
b.下载并导入适当版本的YOLO ONNX模型。
c.添加所需的Java库,如onnxruntime和其他图像处理库。
2加载YOLO ONNX模型:
b.创建一个类或方法,用于加载YOLO ONNX模型文件并初始化ONNX运行时会话。
3图像预处理:
a.从输入源读取图像(文件、摄像头等)。
b.将图像转换为YOLO模型所需的尺寸(如416x416)。
c.对图像进行归一化处理并准备输入张量。
4创建多线程任务:
a.根据需要创建线程池,用于并发执行目标检测任务。
b.将图像预处理任务分配给线程池中的工作线程。
c.确保线程安全,以避免在并发执行过程中出现问题。
5目标检测:
a.在每个工作线程中,将预处理后的图像张量输入YOLO模型。
b.解析模型输出,提取目标检测结果,包括边界框、置信度和类别。
6后处理:
a.应用非极大值抑制(NMS)算法,以剔除重叠边界框和低置信度检测结果。
b.将检测结果转换回原始图像尺寸。
7显示或存储结果:
a.在原始图像上绘制边界框和类别标签。
b.将检测结果显示在屏幕上或将其存储到文件中。
8清理资源:
a.关闭ONNX运行时会话。
b.释放线程池资源。
3)识别结果融合器,采用加权融合算法得出识别结果;
分片结果融合器负责将多线程并发检测得到的结果进行汇总和整合。由于在图片切分阶段可能存在重叠部分,因此分片结果融合器需要对这些重叠区域的检测结果进行处理,避免目标物体的重复检测。同时,分片结果融合器还需要根据各个检测结果的置信度进行权衡,确保整体的目标检测效果达到最优。最后,分片结果融合器将融合后的结果输出,完成整个目标检测过程。
多张图片分片及原图进行识别后,会得出大量重复识别结果。加权融合算法主要使用非极大值抑制(NMS)和交并比(IOU)算法实现。非极大值抑制(NMS)非极大值抑制是一种局部最大值搜索算法,用于筛选目标检测结果中的冗余检测框。在目标检测任务中,通常会有多个候选框重叠在同一个目标物体上。NMS的目的是保留最有代表性的那个检测框,并移除其他冗余的候选框。
NMS的基本步骤如下:
a)根据检测框的置信度(confidence score)对候选框进行降序排列。
b)选择置信度最高的检测框作为参考框,将其与其他所有检测框计算交并比(IoU)。
c)移除与参考框IoU大于某个阈值的其他检测框,因为它们可能表示同一个目标物体。
d)从剩余的检测框中,重复步骤b)-c),直到所有检测框都被处理。
通过这个过程,NMS有效地消除了重复的检测框,并保留了最具代表性的检测结果。
交并比(IoU)是一种衡量两个矩形框重叠程度的指标,广泛应用于目标检测、图像分割等领域。它用于评估预测的边界框与实际边界框的相似度。IoU的计算方法是两个矩形框的交集面积与并集面积之比。
IoU的计算公式为:
IoU=(A∩B)/(A∪B)
其中,A和B分别表示两个矩形框,A∩B表示两个矩形框的交集面积,A∪B表示两个矩形框的并集面积。IoU的取值范围为0到1。当IoU值越接近1时,表示两个矩形框的重叠程度越高;当IoU值越接近0时,表示两个矩形框的重叠程度越低。
多张图片分片及原图进行识别后,会得出多个识别结果。加权融合算法使用NMS和IOU合并计算实现,其原理与YOLO检测的NMS和IOU计算相近,详细识别过程如下:
3.1)多个切边图片识别结果的置信度和box合并;
3.2)把置信度最高的一个boundingbox(bbox)作为目标,然后对比剩下bbox与目标bbox之间的交叉区域;
3.3)如果交叉区域大于设定的阈值,那么在剩下的bbox中去除该bbox(即使该bbox的置信度与目标bbox的置信度一样)—-这个操作就是抑制最大重叠区域;
3.4)把第二置信度高的bbox作为目标,重复3.2)、3.3)。
通过这三个部分的相互协作,本发明能够在保持现有目标检测模型不变的情况下,有效地提高目标检测的准确性和效率。经对比,相同的yolo模型在切图前后的提升明显,对偏向、反光、倾斜的烟盒,有明显的识别提升。此外,本发明的架构具有较强的通用性,可广泛应用于不同类型的目标检测任务和场景。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (7)

1.一种基于自动切图算法的图像目标检测方法,其特征在于,主要步骤如下:
S1)考虑目标物体的尺寸和形状,图片切分器将要检测的目标照片进行切分,将其分割成多个小图像,并对切分后的小图像进行重叠;
配置图片切分器的参数,所述参数为切分高度、切分宽度、高度重叠率、宽度重叠率;切分流程步骤如下:
S11)计算图片y轴重叠像素数:将高度重叠率与切分高度相乘,然后取整数值;
S12)计算图片x轴重叠像素数:将宽度重叠率与切分宽度相乘,然后取整数值;
S13)初始化图片y轴最大像素值为0;
S14)进行行循环:当图片y轴最大像素值小于图片高度时,执行以下步骤:
A)将图片x轴最大像素值和图片x轴最小像素值都初始化为0;
B)计算图片y轴最大像素值:将图片y轴最小像素值与切分高度相加;
C)进行列循环:当图片x轴最大像素值小于图片宽度时,执行以下步骤:
i)计算图片x轴最大像素值:将图片x轴最小像素值与切分宽度相加;
ii)如果图片y轴最大像素值大于图片高度或图片x轴最大像素值大于图片宽度,则:
a)计算切分图片x轴最大值:取图片宽度和图片x轴最大像素值的最小值;
b)计算切分图片y轴最大值:取图片高度和图片y轴最大像素值的最小值;
c)计算切分图片x轴最小值:取0和切分图片x轴最大值减去切分宽度的最大值;
d)计算切分图片y轴最小值:取0和切分图片y轴最大值减去切分高度的最大值;
e)将切分区域的坐标(xmin,ymin,xmax,ymax)添加到切分列表中;
iii)如果图片y轴最大像素值小于图片高度或图片x轴最大像素值小于图片宽度,则:将切分区域的坐标(xmin,ymin,xmax,ymax)添加到切分列表中;
iv)为下一次切分更新图片x轴最小像素值:将图片x轴最大像素值减去图片x轴重叠像素;
v)为下一次切分更新图片y轴最小像素值:将图片y轴最大像素值减去图片y轴重叠像素;
S2)多线程并发检测装置通过将图片切分器生成的多个小图像分配给不同的线程或计算单元进行处理,实现并行计算;
S3)识别结果融合器,识别结果融合器将多线程并发检测装置得到的结果进行汇总和整合,识别结果融合器采用加权融合算法得出识别结果,具体如下:
S31)识别结果融合器采用加权融合算法对图片切分阶段存在的重叠区域的检测结果进行处理以避免目标物体的重复检测;
S32)识别结果融合器对多线程并发检测装置返回的检测结果的置信度进行权衡,确保整体的目标检测效果达到最优;
S33)最后,识别结果融合器将融合后的结果输出,完成整个目标检测过程。
2.根据权利要求1所述的一种基于自动切图算法的图像目标检测方法,其特征在于,多线程并发检测装置将YOLO模型转译为ONNX格式;转译后的ONNX模型使用JAVA ONNXruntime加载,使用多线程并发模型,对多张分片图片同时进行检测;具体如下:
首先,创建一个固定大小的线程池,大小根据需要加载的模型数量和可用的处理器核心来设定;然后对于每一个模型,创建一个实现Callable接口的类,该类负责加载和初始化ONNX模型;然后,将这些任务提交给ExecutorService执行,并等待所有任务完成;最后从Future对象中获取加载好的模型,返回检测结果。
3.根据权利要求2所述的一种基于自动切图算法的图像目标检测方法,其特征在于,多线程并发检测装置通过将图片切分器生成的多个小图像分配给不同的线程或计算单元进行处理,实现并行计算;具体步骤如下:
S21)准备环境:
a.安装ONNX运行时库;
b.下载并导入适当版本的YOLO ONNX模型;
c.添加所需的Java库,所述Java库为onnxruntime或其他图像处理库;
S22)加载YOLO ONNX模型:
a.创建一个类或方法,用于加载YOLO ONNX模型文件并初始化ONNX运行时会话;
S23)图像预处理:
a.从输入源读取图像;
b.将图像转换为YOLO模型所需的尺寸;
c.对图像进行归一化处理并准备输入张量;
S24)创建多线程任务:
a.根据需要创建线程池,用于并发执行目标检测任务;
b.将图像预处理任务分配给线程池中的工作线程;
S25)目标检测:
a.在每个工作线程中,将预处理后的图像张量输入YOLO模型;
b.解析模型输出,提取目标检测结果,包括边界框、置信度和类别;
S26)后处理:
a.应用非极大值抑制算法剔除重叠边界框和低置信度检测结果;
b.将检测结果转换回原始图像尺寸;
S27)显示或存储结果:
a.在原始图像上绘制边界框和类别标签;
b.将检测结果显示在屏幕上或将其存储到文件中;
S28)清理资源:
a.关闭ONNX运行时会话;
b.释放线程池资源。
4.根据权利要求1-3任一项所述的一种基于自动切图算法的图像目标检测方法,其特征在于,所述步骤S31)中:加权融合算法使用非极大值抑制算法和计算交并比实现;非极大值抑制算法筛选目标检测结果中的冗余检测框,保留最具代表性的检测结果,基本步骤如下:
a)根据检测框的置信度对候选框进行降序排列;
b)选择置信度最高的检测框作为参考框,将其与其他所有检测框计算交并比;
c)移除与参考框交并比大于阈值的其他检测框;
d)从剩余的检测框中,重复步骤b)-c),直到所有检测框都被处理。
5.根据权利要求4所述的一种基于自动切图算法的图像目标检测方法,其特征在于,所述交并比衡量两个矩形框重叠程度,评估预测的边界框与实际边界框的相似度,
IoU的计算公式为:
IoU=(A∩B)/(A∪B)
其中,A和B分别表示两个矩形框,A∩B表示两个矩形框的交集面积,A∪B表示两个矩形框的并集面积;IoU的取值范围为0到1。
6.根据权利要求1-5任一项所述的一种基于自动切图算法的图像目标检测方法,其特征在于,所述步骤S31)的详细识别过程如下:
3.1.1)多个切边图片识别结果的置信度和box合并;
3.1.2)把置信度最高的一个bbox作为目标,然后对比剩下bbox与目标bbox之间的交叉区域;
3.1.3)如果交叉区域大于设定的阈值,那么在剩下的bbox中去除该bbox以抑制最大重叠区域;
3.1.4)把第二置信度高的bbox作为目标,重复3.1.2)、3.1.3)。
7.根据权利要求6所述的一种基于自动切图算法的图像目标检测方法,其特征在于,所述多线程并发检测装置利用硬件资源获得最佳性能;所述硬件资源包括多核处理器、GPU;同时,对线程之间的同步和通信进行管理确保各个线程的检测结果汇总。
CN202310637148.5A 2023-06-01 2023-06-01 一种基于自动切图算法的图像目标检测方法 Active CN116664822B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310637148.5A CN116664822B (zh) 2023-06-01 2023-06-01 一种基于自动切图算法的图像目标检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310637148.5A CN116664822B (zh) 2023-06-01 2023-06-01 一种基于自动切图算法的图像目标检测方法

Publications (2)

Publication Number Publication Date
CN116664822A true CN116664822A (zh) 2023-08-29
CN116664822B CN116664822B (zh) 2024-07-05

Family

ID=87714790

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310637148.5A Active CN116664822B (zh) 2023-06-01 2023-06-01 一种基于自动切图算法的图像目标检测方法

Country Status (1)

Country Link
CN (1) CN116664822B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116993730A (zh) * 2023-09-26 2023-11-03 四川新视创伟超高清科技有限公司 一种基于8k图像的裂缝检测方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102163326A (zh) * 2010-12-22 2011-08-24 武汉沃生科学技术研究中心有限公司 血管超声图像中颈动脉血管内中膜的计算机自动分割和厚度均匀度分析方法
CN107146280A (zh) * 2017-05-09 2017-09-08 西安理工大学 一种基于切分的点云建筑物重建方法
CN112085010A (zh) * 2020-10-28 2020-12-15 成都信息工程大学 一种基于图像识别的口罩检测和部署***及方法
CN113011409A (zh) * 2021-04-02 2021-06-22 北京世纪好未来教育科技有限公司 一种图像识别方法、装置、电子设备及存储介质
US20220207742A1 (en) * 2020-12-30 2022-06-30 United Imaging Research Institute of Innovative Medical Equipment Image segmentation method, device, equipment and storage medium
KR20230036327A (ko) * 2021-09-07 2023-03-14 서울대학교산학협력단 패치기반의 딥러닝 알고리즘을 통한 실내도면 이미지에서의 실내공간정보 자동추출방법 및 그 장치
CN115861756A (zh) * 2022-12-22 2023-03-28 西安工业大学 基于级联组合网络的大地背景小目标识别方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102163326A (zh) * 2010-12-22 2011-08-24 武汉沃生科学技术研究中心有限公司 血管超声图像中颈动脉血管内中膜的计算机自动分割和厚度均匀度分析方法
CN107146280A (zh) * 2017-05-09 2017-09-08 西安理工大学 一种基于切分的点云建筑物重建方法
CN112085010A (zh) * 2020-10-28 2020-12-15 成都信息工程大学 一种基于图像识别的口罩检测和部署***及方法
US20220207742A1 (en) * 2020-12-30 2022-06-30 United Imaging Research Institute of Innovative Medical Equipment Image segmentation method, device, equipment and storage medium
CN113011409A (zh) * 2021-04-02 2021-06-22 北京世纪好未来教育科技有限公司 一种图像识别方法、装置、电子设备及存储介质
KR20230036327A (ko) * 2021-09-07 2023-03-14 서울대학교산학협력단 패치기반의 딥러닝 알고리즘을 통한 실내도면 이미지에서의 실내공간정보 자동추출방법 및 그 장치
CN115861756A (zh) * 2022-12-22 2023-03-28 西安工业大学 基于级联组合网络的大地背景小目标识别方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张荣国;刘小君;董磊;李富萍;: "物体轮廓形状超像素图割快速提取方法", 模式识别与人工智能, no. 04, 15 April 2015 (2015-04-15) *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116993730A (zh) * 2023-09-26 2023-11-03 四川新视创伟超高清科技有限公司 一种基于8k图像的裂缝检测方法
CN116993730B (zh) * 2023-09-26 2023-12-15 四川新视创伟超高清科技有限公司 一种基于8k图像的裂缝检测方法

Also Published As

Publication number Publication date
CN116664822B (zh) 2024-07-05

Similar Documents

Publication Publication Date Title
TWI773189B (zh) 基於人工智慧的物體檢測方法、裝置、設備及儲存媒體
US11455782B2 (en) Target detection method and apparatus, training method, electronic device and medium
US20200349875A1 (en) Display screen quality detection method, apparatus, electronic device and storage medium
WO2021136365A1 (zh) 基于机器学习模型的应用开发方法、装置及电子设备
CN108229343B (zh) 目标对象关键点检测方法、深度学习神经网络及装置
CN111054080B (zh) 智能检测透视外挂方法、装置、设备及其存储介质
US11354889B2 (en) Image analysis and processing pipeline with real-time feedback and autocapture capabilities, and visualization and configuration system
CN116664822B (zh) 一种基于自动切图算法的图像目标检测方法
CN111738243A (zh) 人脸图像的选择方法、装置、设备及存储介质
CN112598045A (zh) 训练神经网络的方法、图像识别方法及图像识别装置
CN113361645B (zh) 基于元学习及知识记忆的目标检测模型构建方法及***
CN108235116A (zh) 特征传播方法和装置、电子设备、程序和介质
CN114743196B (zh) 文本识别的方法及装置、神经网络的训练方法
CN109344864B (zh) 用于密集物体的图像处理方法及装置
US20240193923A1 (en) Method of training target object detection model, method of detecting target object, electronic device and storage medium
CN115422389B (zh) 处理文本图像的方法及装置、神经网络的训练方法
CN114972958B (zh) 关键点检测方法、神经网络的训练方法、装置和设备
CN110287125A (zh) 基于图像识别的软件例行化测试方法及装置
CN115861462B (zh) 图像生成模型的训练方法、装置、电子设备及存储介质
CN113792742A (zh) 遥感图像的语义分割方法和语义分割模型的训练方法
CN113269737A (zh) 一种眼底视网膜动静脉血管直径计算方法及***
CN116310993A (zh) 目标检测方法、装置、设备及存储介质
CN113705363B (zh) 一种特定卫星上行信号的识别方法及***
CN116702835A (zh) 神经网络推理加速方法、目标检测方法、设备及存储介质
US11380117B1 (en) Zero-footprint image capture by mobile device

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