图像处理方法、装置、设备和存储介质
文献发布时间:2023-06-19 11:29:13
技术领域
本申请涉及图像处理技术领域,特别是涉及一种图像处理方法和装置、一种电子设备和一种存储介质。
背景技术
随着技术的发展,越来越多的场景中都使用了目标检测任务,目标检测通常是从一幅图像中检测出特定目标的任务,例如检测行人、车辆、人脸等目标。例如在人脸识别支付场景下,需要先识别出人脸,才能进行支付的处理;又如在公共场所不良行为检测的场景下,需要先检测出行人,方能继续后续工作;在车辆违章检测场景下,需要先识别出车辆违章,才能继续后续的违章处罚处理。
目标检测通常是基于深度学习的算法模型进行检测,但是算法模型对于输入的图像通常具有一定的尺寸要求,当待处理图像的尺寸较大,如分辨率比较大,或者宽高比与尺寸要求存在差异的情况下,往往要将待处理图像进行尺寸压缩,使其符合尺寸要求。而这样的压缩处理往往会导致图像损失空间信息,而深度学习的算法模型往往采用下采样的结构,这种结构会导致图像处理过程中信息的进一步损失,使得目标检测的性能较差。
发明内容
本申请实施例提供了一种图像处理方法,以提高对图像进行目标检测的性能。
相应的,本申请实施例还提供了一种图像处理装置、一种电子设备以及一种存储介质,用以保证上述方法的实现及应用。
为了解决上述问题,本申请实施例公开了一种图像处理方法,所述方法包括:将所述待处理图像裁剪为至少两个子图像,所述子图像具有重合部分;将所述至少两个子图像分别输入到所述图像检测器中进行检测,得到对应子图像的检测结果;在多于一个子图像的检测结果中包含检测目标的情况下,根据多于一个的检测目标,确定所述待处理图像的检测结果。
本申请实施例还公开了一种图像处理装置,所述装置包括:裁剪模块,用于在待处理图像的图像尺寸大于图像检测器的处理尺寸的情况下,将所述待处理图像裁剪为至少两个子图像,所述子图像具有重合部分;目标检测模块,用于将所述至少两个子图像分别输入到所述图像检测器中进行检测,得到对应子图像的检测结果;结果确定模块,用于在多于一个子图像的检测结果中包含检测目标的情况下,根据所述多于一个检测目标,确定所述待处理图像的检测结果。
本申请实施例还公开了一种电子设备,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如本申请实施例中一个或多个所述的方法。
本申请实施例还公开了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如本申请实施例中一个或多个所述的方法。
与现有技术相比,本申请实施例包括以下优点:
在本申请实施例中,在待处理图像的图像尺寸大于图像检测器的处理尺寸的情况下,可以将待处理图像裁剪为至少两个具有重合部分的子图像,通过预处理将待处理图像裁剪为彼此重合的多个子图像,然后将至少两个子图像分别输入到所述图像检测器中进行检测,得到对应子图像的检测结果,能够检测图像检测过程中的图像信息损失,在多于一个子图像的检测结果中包含检测目标的情况下,根据所述多于一个检测目标,确定所述待处理图像的检测结果,通过各子图像中得到待处理图像的检测结果,提高检测的准确性和性能。
附图说明
图1是本申请实施例的一种图像裁剪示例的示意图;
图2是本申请的一种图像检测后目标融合示例的示意图;
图3是本申请的一种图像处理方法实施例的步骤流程图;
图4是本申请的另一种图像处理方法实施例的步骤流程图;
图5是本申请的一种图像处理装置实施例的结构框图;
图6是本申请的另一种图像处理装置实施例的结构框图;
图7是本申请一实施例提供的装置的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例中可应用于图像处理的目标检测领域中。目标检测可应用于各种高分辨率图像的处理场景中,针对具有高分辨率图像处理需求的服务方,提供包括针对影视、监控等高分辨率图像的处理,如交通领域的违章车辆识别、支付领域中识别人脸进行支付、公共场所不良行为检测中检测不良行为以及不良行为人,垃圾分类领域中识别垃圾,以及异物识别、人体姿态估计等各种与图像相关的处理。当然本申请实施例对所处理图像的分辨率并不限制,可以应用于各种分辨率图像的处理中。
图像的目标检测通常会采用深度学习(Deep Learning,DL)的算法模型进行,可选择所需的深度学习的算法模型进行图像检测器的训练,将训练完成的图像检测器进行图像中目标的识别处理。其中,该图像检测器也可称为图像检测算法模型、图像检测数据集合、图像检测映射信息等,总之可为各种用于进行图像中目标检测的模型。其中,深度学习是机器学习算法中的一种,在图像检测领域,可选取所需的深度学习算法,基于该深度学习算法的算法模型进行训练,以便于进行图像的识别,例如将已经标注的图像作为训练数据进行训练等。其中,算法模型也可称为数学模型,是运用数理逻辑方法和数学语言建构的科学或工程模型,数学模型是针对参照某种事物系统的特征或数量依存关系,采用数学语言,概括地或近似地表述出的一种数学结构,这种数学结构是借助于数学符号刻画出来的某种系统的纯关系结构。数学模型可以是一个或一组代数方程、微分方程、差分方程、积分方程或统计学方程及其组合,通过这些方程定量地或定性地描述系统各变量之间的相互关系或因果关系。除了用方程描述的数学模型外,还有用其他数学工具,如代数、几何、拓扑、数理逻辑等描述的模型。数学模型描述的是系统的行为和特征而不是系统的实际结构。
本申请实施例可通过预处理将该待处理图像分割成多个子图像,然后再采用图像检测器进行检测,识别每个子图像中是否存在目标,然后通过后处理的步骤,将不同子图像中识别的目标进行合并,得到该待处理图像的检测结果。从而能够在图像检测中减少图像的损失,提高检测性能和准确性。
图1是本申请实施例的一种图像预处理示例的示意图,图2是一种图像检测结果的后处理示例的示意图。结合该图1、2的示例,可通过如下图3所示的步骤进行图像处理。其中,图1、图2的附图进用于举例描述本申请实施例对于图像剪裁、识别、融合的处理,其内容的清晰度等并不对本申请造成限制。
步骤302,将所述待处理图像裁剪为至少两个子图像,所述子图像具有重合部分。
可以获取待处理图像,其中,依据所应用的场景确定所述待处理图像,从相应的数据采集源设备或者服务端的数据库获取待处理图像,例如在交通领域可从各监控摄像头获取图像,或者从交通管理服务端获取道路监控图像等。在获取到待处理图像后,为了减少图像在处理过程中的损失,可对该待处理图像进行裁剪,得到至少两个子图像,其中为了保证识别的准确性,防止由于裁剪而导致信息的丢失,对于待处理图像的裁剪,可在裁剪的过程中使得裁剪得到的图像具有重合的部分,也就是说各将待处理图像裁剪为具有重合部分的至少两个子图像,每个子图像与至少一个子图像具有重合部分。
在另外一些可选实施例中,获取到待处理图像后,还可确定该待处理图像的图像尺寸,然后判断该待处理图像的图像尺寸是否大于图像检测器的处理尺寸,如果待处理图像的图像尺寸不大于图像检测器的处理尺寸,可以直接将该待处理图像输入到图像检测器中进行检测,得到对应的检测结果。若判断待处理图像的图像尺寸大于图像检测器的处理尺寸,则可以剪裁后再进行识别。当然对于待处理图像的图像尺寸不大于图像检测器的处理尺寸的情况,也可以剪裁为多个子图像,本申请实施例对此不作限制,具体可依据需求确定。
以图1为例,假设图1中待处理图像的图像尺寸为704×576,而图像检测器的处理尺寸为512×512,则该待处理图像的尺寸超出了该图像检测器的处理尺寸,需要对图像进行裁剪,如采用待处理图像右侧的裁剪方式,将待处理图像划分为a-e这6个裁剪区域,每个裁剪区域可裁剪为一个子图像,其中,每个裁剪区域与其他裁剪区域之间具有重合的部分,且该重合部分不限于是两个裁剪区域之间,也可为多个裁剪区域共有重合,如图1中裁剪示例图中,有一些裁剪区域完全落入到其他裁剪区域的范围内,裁剪得到图1下方的子图像a-子图像e这6个子图像。
其中,对于待处理图像的裁剪方式有多种,其中,可设置处理尺寸为最大尺寸,并根据检测目标的目标尺寸设置最小尺寸,为保证准确检测目标,可在目标尺寸之上一定阈值范围内设置最小阈值,如一定倍数等,从而裁剪尺寸可在该最大尺寸和最小尺寸之间任意选择。另外一些示例中,还可将该处理尺寸作为待处理图像的裁剪尺寸,裁剪得到多于一个处理尺寸的子图像。在另外一些示例中,待处理图像的裁剪尺寸还可按照处理尺寸的一定比例进行裁剪,则可裁剪得到图像比例与处理尺寸的比例相同的若干子图像。通过这些裁剪方式所裁剪得到的图像均要满足每个子图像与至少一个子图像具有重合部分,而同一待处理图像所裁剪得到的子图像的尺寸相同或不同。
在一个可选实施例中,所述将所述待处理图像裁剪为至少两个子图像,包括:依据所述处理尺寸确定裁剪尺寸;按照所述裁剪尺寸,将所述待处理图像裁剪为至少两个子图像。根据图像检测器的处理尺寸,可随机或按照一定规则确定出至少一个裁剪尺寸,然后基于该尺寸对待处理图像进行裁剪,其中,可基于尺寸在待处理图像中确定裁剪区域,每个裁剪区域与至少一个其他裁剪区域相重合,然后可按照该裁剪区域对待处理图像进行裁剪,得到至少一个子图像。
其中,所述依据所述处理尺寸确定裁剪尺寸,包括:依据所述处理尺寸的比例确定裁剪比例;按照所述裁剪比例和所述待处理图像的图像尺寸,确定裁剪尺寸。可按照该图像检测器的处理尺寸的比例确定裁剪比例,例如裁剪成与处理尺寸要求同比例的子图像,则可确定处理尺寸的比例。以图1为例,待处理图像的图像尺寸为704×576,而图像检测器的处理尺寸为512×512,处理尺寸的长宽比例为1:1,则可将待处理图像的裁剪比例也设置为1:1。在确定出裁剪比例之后,可按照该裁剪比例、处理尺寸和待处理图像的图像尺寸,确定出至少一个裁剪尺寸。例如将待处理图像的长设为H0,宽设为W0,设裁剪尺寸为Q,Q可在待处理图像的长、宽之间按照需求设置,从而Q的取值范围可依据需求设置,如(0.5*H0,H0)或(0.5*W0,W0),又如(0.3*H0,0.5*H0)或(0.3*W0,0.5*W0)等,可在该取值范围内选取一个值作为裁剪尺寸的长或宽,然后按照该裁剪比例和选取的值确定裁剪尺寸。如上述裁剪比例为1:1,通过取值范围选取值为368,则可确定裁剪尺寸为368×368。
在另外的一些示例中,也可预先确定出重合范围,该重合范围可基于目标尺寸设置,设置重合范围超出检测目标的尺寸,以减少各目标均在重合区域被裁剪成仅剩目标的一部分的情况,尽量多的使子图像中能够保留完整的目标,以提高检测的准确性。从在确定出裁剪比例后,依据该重合范围和裁剪比例,在所述待处理图像的图像尺寸下,确定裁剪尺寸。如将重合范围设置为超出裁剪区域的一半等。
可选的,所述按照所述裁剪尺寸,将所述待处理图像裁剪为至少两个子图像,包括:按照所述裁剪尺寸和目标的目标尺寸,在待处理图像中确定具有重合部分的至少两个裁剪区域,按照所述裁剪区域对所述待处理图像进行裁剪,得到至少两个子图像。在确定出裁剪尺寸之后,可结合该裁剪尺寸和目标的目标尺寸,在待处理图像中确定裁剪区域。其中,为了防止出现各子图像中仅有部分目标的情况,可基于裁剪尺寸和目标的目标尺寸,将各裁剪区域设置为重合部分较大的裁剪区域,如各裁剪区域中超过一半的尺寸为重合区域等。如图1的示例中,其每个子图像对应的裁剪区域均与其他子图像对应的裁剪区域具有重合部分,且重合区域超出了该裁剪区域的一半。在确定出裁剪区域后,即可按照各个裁剪区域对待处理图像进行裁剪,得到每个裁剪区域对应的子图像,如图1中子图像a-子图像e。
本申请实施例中,裁剪的方式可基于待处理图像的尺寸(分辨率),图像检测器的处理尺寸以及图像中目标的尺寸综合考虑,并确定对应剪裁、检测后的拼接方案。例如对于1920×1080的图像,针对图像检测器的处理尺寸为512×512的情况,可确定裁剪尺寸为480×480,得到18个子图像,通过模型处理后再进行后处理,实现检测结果的复原,提高检测结果的准确性。
步骤304,将所述至少两个子图像分别输入到所述图像检测器中进行检测,得到对应子图像的检测结果。
在裁剪得到待处理图像的子图像之后,就可将各子图像分别输入到图像检测器中进行检测,检测图像中是否具有目标,并得到相应的检测结果。其中,检测结果为可是否检测到目标的结果,针对检测到目标的结果,可记录目标对应的区域信息,或者,检测结果为标记有目标的图像等。其中,子图像中对于检测目标的标记可通过目标框来标记,也就是通过目标框来标记出检测目标所在的区域,目标框对应的区域可基于坐标的方式表示,例如针对矩形框可通过各顶点坐标标示出检测目标所在的区域。
从而将子图像输入到图像检测器进行处理后,就能够得到对应的检测结果。
在获取到各子图像的检测结果后,可以统计检测到目标的检测结果的数量。当数量为0,也就是各子图像均未检测到目标,可生成未检测到目标的检测结果作为该待处理图像的检测结果;当数量为1,也就是只有一个子图像的检测结果中检测到目标时,可依据该目标的信息得到包含目标的检测结果作为待处理图像的检测结果,如在待处理图像的检测结果中添加目标的区域信息等,又如在待处理图像中通过目标框标记出该目标作为检测结果等。
步骤306,当数量大于1,也就是多于一个子图像的检测结果中包含检测目标的情况下,根据多于一个的检测目标,确定所述待处理图像的检测结果。
针对多个子图像的检测结果中都包含有检测目标的情况,可根据各子图像中的检测目标来确定该待处理图像的目标。其中,子图像中所检测到目标,可能位于重合区域,也可能位于非重合区域,对于非重合区域中检测到的目标,表征仅有该子图像检测到了该目标,因此可直接作为待处理图像对应的目标。而对于重合区域中检测到目标,通常会在重合的两个或多个子图像中均检测到该目标,则可以将重合区域的目标两两进融合处理,确定重合区域中检测到的一个或多个目标,当然若重合区域中只有一个子图像检测到某个目标,也无需进行融合处理,具体可依据实际需求确定。
一个可选实施例中,根据多于一个的检测目标,确定所述待处理图像的检测结果,包括:将多于一个的检测目标映射到所述待处理图像上,在所述待处理图像中得到多于一个的检测目标框;对于子图像重合区域的检测目标框,将两个子图像对应重合区域中的检测目标框进行融合,采用融合得到的目标框标记对应的目标;对于子图像非重合区域检测目标框,采用所述检测目标框标记对应的目标;依据标记的目标确定所述待处理图像的检测结果。
在各子图像得到检测结果后,针对具有检测目标的子图像,可将各子图像中标记目标的目标框映射到待处理图像(原图)中,在原图上标记出各个检测目标对应的检测目标框。例如,可将子图像中标记目标的目标框在原图(待处理图像)上进行复原映射,也就是将子图像中目标的目标框(bounding_box)的坐标映射到待处理图像上,得到对应的bounding_box坐标。
则子图像中非重合区域的目标框在原图上映射也不会出现与其重合的其他目标的目标框,因此对于子图像非重合区域检测目标框,采用所述检测目标框标记对应的目标。而对于子图像重合区域的目标框,其映射到待处理图像上之后,通常是会与其他子图像在该重合区域针对同一目标标记并映射的检测目标框重合,当然在重合区域边缘等情况下,目标可能会在某些子图像中仅剩一部分而没有检测,因此没有重合的目标检测框,此种情况也可直接作为目标框标记对应的目标。而对于重合的多个检测目标框所标记的目标,可以通过一定的融合算法进行融合处理,得到对应的标记框来标记目标。其中,对于目标比较接近,导致一些不同目标的检测目标框重合的情况,在通过融合算法处理是也可进行区分,从而能够在融合处理时区分出不同的目标,在待处理图像中标记出一个或多目标,得到该待处理图像的检测结果。其中,将子图像间的重合区域中的检测目标框与其他检测目标框进行融合算法的处理,对于存在重合的检测目标框,可以两两进行融合处理,确定两个检测目标框是否需要融合。其中,两两的融合处理也可以按照一定的等级记性处理,如直接映射得到的检测目标框之间,在符合融合条件的情况下两两进行坐标融合,而融合之间的目标框在判断是否需要融合等,具体可依据需求确定。
如图2所示的,两个黑色虚线框为两个子图像检测到的目标映射到待处理图像后的检测目标框,这两个检测目标框位于重合区域,因此可进行融合处理。
可选的,所述将两个子图像对应重合区域中的检测目标框进行融合,包括:确定第一检测目标框和第二检测目标框之间重合区域的重合占比;在所述重合占比大于重合阈值的情况下,将所述第一检测目标框和第二检测目标框进行坐标融合。可在重合区域中确定具有重合部分的检测目标框,则两个检测目标框是从两个子图像的目标框映射得到的,为了便于区分,可分别设为第一检测目标框和第二检测目标框,然后确定第一检测目标框和第二检测目标框之间重合部分的重合占比,其中,可将所述第一检测目标框和第二检测目标框之间重合部分的面积,占第一检测目标框的面积的比重,作为重合占比。在得到重合占比后,将所述重合占比和重合阈值进行比较,如果重合占比不大于重合阈值,则保留各检测目标框,不进行融合;如果重合占比大于重合阈值,则将第一检测目标框和第二检测目标框进行坐标融合,在坐标融合的过程中,可以基于两个检测目标框的坐标进行融合,例如根据坐标边界取值,得到一个包含两个检测目标框的目标框来标记该目标。
其中,第一检测目标框的坐标范围通过第一左上坐标和第一右下坐标表示,第二检测框的坐标范围通过第二左上坐标和第二右下坐标表示,每个坐标可通过相应的横坐标x和纵坐标y的值表示,则在进行坐标融合时,融合后的目标框的左上坐标在第一左上坐标和第二左上坐标中,对于横坐标x和纵坐标y均取各自的最小值,融合后的目标框的右下坐标在第一右下坐标和第二右下坐标中,对于横坐标x和纵坐标y均取各自的最大值。
一个示例中,假设第一子图像和第二子图像映射到待处理图像后,得到具有重合部分的第一检测目标框和第二检测目标框,其中,第一检测目标框的bounding_box坐标为:左上:(x
然后将该重合占比ratio和重合阈值进行比较,若不满足该重合阈值,则保留两个检测目标框,若满足该重合阈值,则可将第一检测目标框和第二检测目标框进行坐标融合,两个bounding box融合后的坐标为:左上:(x
其中,x
本申请实施例中,重合阈值基于检测情况确定,结合实际的应用场景设置,如可根据该场景中要检测的目标的尺寸、图像的尺寸等进行设置,再结合待处理图像等进行调整。例如,在检测的目标比较小的情况下,可能出现边框重叠但是两个目标的情况,如远处并排放置的两辆车,则可将重合阈值设置的较高,如为0.8、0.9,重合占比高于该重合阈值才能进行坐标融合,而对于目标比较分散的情况,也可设置融合阈值相对比较小如0.5、0.6作用,则重合占比高于该重合阈值可进行坐标融合。
如图2所示的示例中,两个检测目标框通过出重合占比的计算,确定重合占比大于重合阈值,可进行坐标融合,之后得到白色实线框标记的目标框来标记该目标,从而得到通过白色的目标框标记的图像作为检测结果。其中,此处仅用于举例说明在两个子图像映射到原图后,在具有重合部分识别到同一目标,以及坐标融合后所得到的目标框,其内容本身并不限制各本申请实施例。
从而通过上述处理,可得到一个或多个目标框,每个目标框分别标记一个目标,得到相应的检测结果,其中,可将具有目标框来标记目标的图像作为待处理图像的检测结果的至少一部分。
在上述实施例的基础上,本申请实施例还提供了一种图像处理方法,以图像尺寸大于图像检测器的处理尺寸的情况下剪裁为例,能够提高图像检测的准确性。实际处理中对于图像尺寸不大于图像检测器的处理尺寸的情况下也可以剪裁图像,本申请实施例对此不作限制。
参照图4,示出了本申请的另一种图像处理方法实施例的步骤流程图。
步骤402,获取待处理图像。
可以从各图像采集源设备处获取采集的待处理图像,如监控摄像头等,也可从各服务端的数据库获取相应的待处理图像等。
步骤404,判断所述待处理图像的图像尺寸是否大于图像检测器的处理尺寸。
若是,即待处理图像的图像尺寸大于图像检测器的处理尺寸,执行步骤406;若否,即待处理图像的图像尺寸不大于图像检测器的处理尺寸,执行步骤410。在另外一些实施例中,也可以执行待处理图像的尺寸判断步骤,而是直接执行步骤406-步骤408的裁剪步骤,具体依据需求设定。
步骤406,依据所述处理尺寸确定裁剪尺寸。
步骤408,按照所述裁剪尺寸,将所述待处理图像裁剪为至少两个子图像。
其中,所述依据所述处理尺寸确定裁剪尺寸,包括:依据所述处理尺寸的比例确定裁剪比例;按照所述裁剪比例和所述待处理图像的图像尺寸,确定裁剪尺寸。
所述按照所述裁剪尺寸,将所述待处理图像裁剪为至少两个子图像,包括:按照所述裁剪尺寸和目标的目标尺寸,在待处理图像中确定具有重合部分的至少两个裁剪区域;按照所述裁剪区域对所述待处理图像进行裁剪,得到至少两个子图像
步骤410,将图像输入到图像检测器中进行检测,得到对应的检测结果。
其中,若待处理图像的图像尺寸不大于图像检测器的处理尺寸,直接将待处理图像输入到图像检测器中进行检测,得到该待处理图像的检测结果。
若待处理图像的图像尺寸大于图像检测器的处理尺寸,可将待处理图像裁剪为两个或更多子图像,然后将各子图像依次输入到图像检测器中,得到各子图像的检测结果。
步骤412,将所述子图像中检测目标的目标框映射到所述待处理图像上,在所述待处理图像中得到对应的检测目标框。
步骤414,统计子图像的检测结果中含有检测目标的检测结果的数量。
其中,可基于子图像的检测结果进行数量统计,也可基于待处理图像上映射得到的检测目标框进行统计。
步骤416,判断所述数量是否大于1。
对于子图像的检测结果,由于是从待处理图像中分割得到的,因此还需要综合考虑各子图像的检测结果来得到该待处理图像的检测结果。其中,统计含有检测目标的检测结果的数量,如果一个待处理图像有多于一个子图像的检测结果中含有检测目标,则需要将这些检测结果中的检测目标整合来得到该待处理图像的检测结果。而若仅有一个子图像的检测结果中含有检测目标,则可直接依据该检测目标得到对应的检测结果。
若是,执行步骤418,若否,则执行步骤422。
步骤418,判断检测目标框是否位于重合区域。
若是,执行步骤420,若否,执行步骤422。
步骤420,将两个子图像对应重合区域中的检测目标框进行融合,采用融合得到的目标框标记对应的目标。
对于子图像重合区域的检测目标框,将两个子图像对应重合区域中的检测目标框进行融合,采用融合得到的目标框标记对应的目标。
其中,所述将两个子图像对应重合区域中的检测目标框进行融合,包括:确定第一检测目标框和第二检测目标框之间重合部分的重合占比;在所述重合占比大于重合阈值的情况下,将所述第一检测目标框和第二检测目标框进行坐标融合。
所述确定第一检测目标框和第二检测目标框之间重合部分的重合占比,包括:确定所述第一检测目标框和第二检测目标框之间重合部分的面积,占第一检测目标框的面积的比重,作为重合占比。
步骤422,采用所述检测目标框标记对应的目标。
对于仅有一个子图像的检测结果中含有检测目标的情况,或者对于子图像非重合区域检测目标框,可以直接采用该检测目标框标记对应的目标。
步骤424,依据标记的目标确定所述待处理图像的检测结果。
综上,本申请实施例可将各子图像中检测出的对于同一个目标的物体的目标框进行融合,只保留一个,从而能够在处理过程中检测图像的损失,提高检测结果的准确性。
本申请实施例创新性的提出了针对高分辨率小目标检测的一种通用检测、预测、融合的方案,能够得到较好的检测结果,提升检测性能。通过引入预处理和后处理的过程,能够提升模型检测的性能,解决高分辨率且宽高比不一致的图像在模型检测时,对于小目标检测结果不佳的问题,能够通过减低的成本得到性能的较大提升。本申请实施例中,小目标指的是目标相对于待处理图像的尺寸,其中,可设置小目标为目标尺寸相对于待处理图像的尺寸达到一定的倍数,具体依据需求确定。
本申请实施例对于各尺寸下裁剪子图像的数量、尺寸不作限制。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
在上述实施例的基础上,本实施例还提供了一种图像处理装置,应用于终端设备、服务器等电子设备中。
参照图5,示出了本申请的一种图像处理装置实施例的结构框图,具体可以包括如下模块:
裁剪模块502,用于将所述待处理图像裁剪为至少两个子图像,所述子图像具有重合部分。
目标检测模块504,用于将所述至少两个子图像分别输入到所述图像检测器中进行检测,得到对应子图像的检测结果。
结果确定模块506,用于在多于一个子图像的检测结果中包含检测目标的情况下,根据多于一个的检测目标,确定所述待处理图像的检测结果。
综上,在待处理图像的图像尺寸大于图像检测器的处理尺寸的情况下,可以将待处理图像裁剪为至少两个具有重合部分的子图像,通过预处理将待处理图像裁剪为彼此重合的多个子图像,然后将至少两个子图像分别输入到所述图像检测器中进行检测,得到对应子图像的检测结果,能够检测图像检测过程中的图像信息损失,在多于一个子图像的检测结果中包含检测目标的情况下,根据所述多于一个检测目标,确定所述待处理图像的检测结果,通过各子图像中得到待处理图像的检测结果,提高检测的准确性和性能。
参照图6,示出了本申请的另一种图像处理装置实施例的结构框图,具体可以包括如下模块:
裁剪模块502,用于将所述待处理图像裁剪为至少两个子图像,所述子图像具有重合部分,其中,可判断所述待处理图像的图像尺寸是否大于图像检测器的处理尺寸;在待处理图像的图像尺寸大于图像检测器的处理尺寸的情况下,将所述待处理图像裁剪为至少两个子图像。
目标检测模块504,用于将所述至少两个子图像分别输入到所述图像检测器中进行检测,得到对应子图像的检测结果。
结果确定模块506,用于在多于一个子图像的检测结果中包含检测目标的情况下,根据多于一个的检测目标,确定所述待处理图像的检测结果。
所述裁剪模块502,包括:尺寸确定子模块5022和裁剪处理子模块5024,其中:
所述尺寸确定子模块5022,用于依据所述处理尺寸确定裁剪尺寸。
所述裁剪处理子模块5024,用于按照所述裁剪尺寸,将所述待处理图像裁剪为至少两个子图像。
所述尺寸确定子模块5022,用于依据所述处理尺寸的比例确定裁剪比例;按照所述裁剪比例和所述待处理图像的图像尺寸,确定裁剪尺寸。
所述裁剪处理子模块5024,用于按照所述裁剪尺寸和目标的目标尺寸,在待处理图像中确定具有重合部分的至少两个裁剪区域;按照所述裁剪区域对所述待处理图像进行裁剪,得到至少两个子图像。
所述结果确定模块506,包括:映射子模块5062、统计子模块5064、融合子模块5066和确定子模块5068,其中:
所述映射子模块5062,用于将所述子图像中检测目标的目标框映射到所述待处理图像上,在所述待处理图像中得到对应的检测目标框。
所述统计子模块5064,用于统计所述子图像的检测结果中含检测目标的数量。
所述融合子模块5066,用于对于子图像重合区域的检测目标框,将两个子图像对应重合区域中的检测目标框进行融合,采用融合得到的目标框标记对应的目标。
所述确定子模块5068,用于对于子图像非重合区域检测目标框,采用所述检测目标框标记对应的目标;依据标记的目标确定所述待处理图像的检测结果。
所述融合子模块5066,用于确定第一检测目标框和第二检测目标框之间重合部分的重合占比;在所述重合占比大于重合阈值的情况下,将所述第一检测目标框和第二检测目标框进行坐标融合。
所述融合子模块5066,用于确定所述第一检测目标框和第二检测目标框之间重合部分的面积,占第一检测目标框的面积的比重,作为重合占比。
综上,本申请实施例可将各子图像中检测出的对于同一个目标的物体的目标框进行融合,只保留一个,从而能够在处理过程中检测图像的损失,提高检测结果的准确性。
本申请实施例创新性的提出了针对高分辨率小目标检测的一种通用检测、预测、融合的方案,能够得到较好的检测结果,提升检测性能。通过引入预处理和后处理的过程,能够提升模型检测的性能,解决高分辨率且宽高比不一致的图像在模型检测时,对于小目标检测结果不佳的问题,能够通过减低的成本得到性能的较大提升。本申请实施例中,小目标指的是目标相对于待处理图像的尺寸,其中,可设置小目标为目标尺寸相对于待处理图像的尺寸达到一定的倍数,具体依据需求确定。
本申请实施例对于各尺寸下裁剪子图像的数量、尺寸不作限制。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本申请实施例中各方法步骤的指令(instructions)。
本申请实施例提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个所述的方法。本申请实施例中,所述电子设备包括终端设备、服务器(集群)等各类型的设备。
本公开的实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的装置,该装置可包括终端设备、服务器(集群)等电子设备。图7示意性地示出了可被用于实现本申请中所述的各个实施例的示例性装置700。
对于一个实施例,图7示出了示例性装置700,该装置具有一个或多个处理器702、被耦合到(一个或多个)处理器702中的至少一个的控制模块(芯片组)704、被耦合到控制模块704的存储器706、被耦合到控制模块704的非易失性存储器(NVM)/存储设备708、被耦合到控制模块704的一个或多个输入/输出设备710,以及被耦合到控制模块704的网络接口712。
处理器702可包括一个或多个单核或多核处理器,处理器702可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,装置700能够作为本申请实施例中所述终端设备、服务器(集群)等设备。
在一些实施例中,装置700可包括具有指令714的一个或多个计算机可读介质(例如,存储器706或NVM/存储设备708)以及与该一个或多个计算机可读介质相合并被配置为执行指令714以实现模块从而执行本公开中所述的动作的一个或多个处理器702。
对于一个实施例,控制模块704可包括任意适当的接口控制器,以向(一个或多个)处理器702中的至少一个和/或与控制模块704通信的任意适当的设备或组件提供任意适当的接口。
控制模块704可包括存储器控制器模块,以向存储器706提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。
存储器706可被用于例如为装置700加载和存储数据和/或指令714。对于一个实施例,存储器706可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,存储器706可包括双倍数据速率类型四同步动态随机存取存储器(DDR4SDRAM)。
对于一个实施例,控制模块704可包括一个或多个输入/输出控制器,以向NVM/存储设备708及(一个或多个)输入/输出设备710提供接口。
例如,NVM/存储设备708可被用于存储数据和/或指令714。NVM/存储设备708可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(HDD)、一个或多个光盘(CD)驱动器和/或一个或多个数字通用光盘(DVD)驱动器)。
NVM/存储设备708可包括在物理上作为装置700被安装在其上的设备的一部分的存储资源,或者其可被该设备访问可不必作为该设备的一部分。例如,NVM/存储设备708可通过网络经由(一个或多个)输入/输出设备710进行访问。
(一个或多个)输入/输出设备710可为装置700提供接口以与任意其他适当的设备通信,输入/输出设备710可以包括通信组件、音频组件、传感器组件等。网络接口712可为装置700提供接口以通过一个或多个网络通信,装置700可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如WiFi、2G、3G、4G、5G等,或它们的组合进行无线通信。
对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器(例如,存储器控制器模块)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器的逻辑封装在一起以形成系统级封装(SiP)。对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器702中的至少一个可与控制模块704的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(SoC)。
在各个实施例中,装置700可以但不限于是:服务器、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)等终端设备。在各个实施例中,装置700可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,装置700包括一个或多个摄像机、键盘、液晶显示器(LCD)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC)和扬声器。
其中,检测装置中可采用主控芯片作为处理器或控制模块,传感器数据、位置信息等存储到存储器或NVM/存储设备中,传感器组可作为输入/输出设备,通信接口可包括网络接口。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种图像处理方法和装置,一种电子设备和一种存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
- 图像处理设备、图像拾取设备、图像处理方法、图像处理程序以及存储介质
- 图像处理设备、图像捕获装置、图像处理方法和存储介质