掌桥专利:专业的专利平台
掌桥专利
首页

一种目标对象定位方法、装置、设备及可读存储介质

文献发布时间:2024-04-18 19:59:31


一种目标对象定位方法、装置、设备及可读存储介质

技术领域

本发明涉及目标定位技术领域,具体而言,涉及一种目标对象定位方法、装置、设备及可读存储介质。

背景技术

在移动目标的检测中,视觉传感器会一次性获取其视场范围内所有2D信息,但这些获取到的信息中包含了多种干扰目标检测的噪声信息,为了最大程度避免相机拍到的除了检测目标外的噪声信息,需要精准的确定目标的位置,但目前实践过程中采用的解决方案中,中心区域定义对定位结果影响较大,例如,小的中心区域导致小边界框的查全率较低,而大的中心区域导致大边界框的精度较低,因此需要对这些不足进行改进。

发明内容

本发明的目的在于提供一种目标对象定位方法、装置、设备及可读存储介质,以改善上述问题。

为了实现上述目的,本申请实施例提供了如下技术方案:

一方面,本申请实施例提供了一种目标对象定位方法,所述方法包括:

获取场景图像,所述场景图像中包含目标对象;

对所述场景图像进行特征提取,得到第一特征图;

将所述第一特征图进行上采样处理,得到第二特征图,将所述第二特征图分别输入角点池化层和中心池化层,分别得到角点热力图和中心点热力图;

基于所述角点热力图和所述中心点热力图得到边界框,利用所述边界框对所述目标对象进行定位。

第二方面,本申请实施例提供了一种目标对象定位装置,所述装置包括获取模块、提取模块、处理模块和定位模块。

获取模块,用于获取场景图像,所述场景图像中包含目标对象;

提取模块,用于对所述场景图像进行特征提取,得到第一特征图;

处理模块,用于将所述第一特征图进行上采样处理,得到第二特征图,将所述第二特征图分别输入角点池化层和中心池化层,分别得到角点热力图和中心点热力图;

定位模块,用于基于所述角点热力图和所述中心点热力图得到边界框,利用所述边界框对所述目标对象进行定位。

第三方面,本申请实施例提供了一种目标对象定位设备,所述设备包括存储器和处理器。存储器用于存储计算机程序;处理器用于执行所述计算机程序时实现上述目标对象定位方法的步骤。

第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述目标对象定位方法的步骤。

本发明的有益效果为:

本发明提出了一个尺度感知的中心区域来自适应地拟合边界框的大小。主要思路包括尺度感知的中心区域倾向于为一个小的边界框产生一个相对较大的中心区域,以及对于一个大的边界框产生一个相对较小的中心区域,通过本发明中方法可以提高定位的准确性。

本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明实施例中所述的目标对象定位方法流程示意图;

图2是本发明实施例中所述的目标对象定位装置结构示意图;

图3是本发明实施例中所述的目标对象定位设备结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号或字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

实施例1

如图1所示,本实施例提供了一种目标对象定位方法,该方法包括步骤S1、步骤S2、步骤S3和步骤S4。

步骤S1、获取场景图像,所述场景图像中包含目标对象;

在本步骤中,场景图像为图像采集装置采集到的图像,图像中除了包含目标对象之外,还包括一些场景信息;

步骤S2、对所述场景图像进行特征提取,得到第一特征图;

本步骤的具体实现步骤包括步骤S21;

步骤S21、将所述场景图像缩放到预设尺寸,缩放后将其输入到resnet50网络模型中,在所述resnet50网络模型中,所述场景图像依次经过第一卷积层、池化层和第一预设个数的残差块,得到所述第一特征图,在残差块处理中,输入到每个所述残差块中的输入数据先经过两个第二卷积层得到第一处理结果,再将所述第一处理结果与所述输入数据相加,得到输出数据,再将所述输出数据输入下一个残差块。

在本步骤中,将场景图像缩放到预设尺寸之前,还可以对场景图像进行裁剪、旋转等操作;本步骤中,将场景图像缩放到512×512尺寸;第一卷积层的卷积核大小为7*7,步长为2;池化层的步长为2;残差块的个数为四个,残差块中的第二卷积层的卷积核大小为3*3,步长为1;

步骤S3、将所述第一特征图进行上采样处理,得到第二特征图,将所述第二特征图分别输入角点池化层和中心池化层,分别得到角点热力图和中心点热力图;

本步骤中,将所述第一特征图进行上采样处理,得到第二特征图的具体实现步骤包括步骤S31;

步骤S31、将所述第一特征图依次经过第二预设个数的第一反卷积层,得到所述第二特征图,其中,每个所述第一反卷积层相同,每个所述第一反卷积层由一个第三卷积层和一个反卷积层组成。

在本步骤中,第二预设个数为3个,每个第一反卷积由卷积核大小为3*3的第三卷积层和卷积核大小为4*4,步长为2的反卷积构成;

本步骤中,将所述第二特征图分别输入角点池化层和中心池化层,分别得到角点热力图和中心点热力图的具体实现步骤包括步骤S32和步骤S33;

步骤S32、将所述第二特征图输入角点池化层中,输出得到角点热力图,所述角点池化层的处理步骤为将输入的所述第二特征图沿四个边界方向找到最大值,以确定四个角点;

在本步骤中,第二特征图可以理解为一个三维矩阵,将第二特征图输入角点池化层后,输出的即为角点热力图,其中,输入角点池化层后的处理步骤即是沿四个边界方向找到最大值,以确定四个角点,从而得到角点热力图;

步骤S33、将所述第二特征图输入中心池化层中,输出得到中心点热力图,所述中心池化层的处理步骤为将输入的所述第二特征图在水平和垂直方向上分别找到最大值,并将其相加。

在本步骤中,将第二特征图输入中心池化层后,输出的即为中心点热力图,其中,输入中心池化层后的处理步骤即是将第二特征图在水平和垂直方向上分别找到最大值,并将其相加,从而得到中心点热力图;

步骤S4、基于所述角点热力图和所述中心点热力图得到边界框,利用所述边界框对所述目标对象进行定位。

本步骤的具体实现步骤包括步骤S41、步骤S42和步骤S43;

步骤S41、基于所述角点热力图得到其对应的多个第一感受野,将每个所述第一感受野作为一个第一边界框,在全部的所述第一边界框中选取第三预设个数的第一边界框;对所述角点热力图中的每个点进行选取,选取第四预设个数的点作为第一关键点;在每个选取的第一边界框中划分一个第一中心区域,判断所述第一中心区域中包含的第一关键点的个数是否超过预设阈值,若未超过,则将选取的第一边界框删除,得到剩余的第一边界框;

在本步骤中,角点热力图可以看做是特征图,基于所述角点热力图,采用常规的方法得到其对应的多个感受野;同时,第三预设个数和第四预设个数可以根据用户需求进行自定义设置,第三预设个数和第四预设个数可以相同也可以不相同,本步骤中,第三预设个数和第四预设个数相同,均为100;

步骤S42、基于所述中心点热力图得到其对应的多个第二感受野,将每个所述第二感受野作为一个第二边界框,在全部的所述第二边界框中选取第五预设个数的第二边界框;对所述中心点热力图中的每个点进行选取,选取第六预设个数的点作为第二关键点;在每个选取的第二边界框中划分一个第二中心区域,判断所述第二中心区域中包含的第二关键点的个数是否超过所述预设阈值,若未超过,则将选取的第二边界框删除,得到剩余的第二边界框;

本步骤可以根据步骤S41的解释进行理解;

步骤S43、利用非极大值抑制算法对所述剩余的第一边界框和所述剩余的第二边界框进行合并,得到所述边界框。

在上述步骤S41和步骤S42中提及到了第一边界框、第一中心区域、第二边界框、第二中心区域,其中,中心区域的划分方法具体为步骤S411;

步骤S411、获取边界框的坐标信息,根据所述坐标信息和公式(1)计算得到中心区域的坐标信息,所述公式(1)为:

公式(1)中,ltx为边界框左上角的横坐标,lty为边界框左上角的纵坐标,rdx为边界框右下角的横坐标,rdy为边界框右下角的纵坐标,cltx为中心区域左上角的横坐标,clty为中心区域左上角的纵坐标,crdx为中心区域右下角的横坐标,crdy为中心区域右下角的纵坐标,box

本步骤中的边界框为第一边界框或第二边界框,中心区域为第一中心区域或第二中心区域,第一边界框对应第一中心区域,第二边界框对应第二中心区域,可以理解为,获取第一边界框的坐标信息,根据第一边界框的坐标信息和公式(1)计算得到第一中心区域的坐标信息;获取第二边界框的坐标信息,根据第二边界框的坐标信息和公式(1)计算得到第二中心区域的坐标信息。

实施例2

如图2所示,本实施例提供了目标对象定位装置,所述装置包括获取模块701、提取模块702、处理模块703和定位模块704。

获取模块701,用于获取场景图像,所述场景图像中包含目标对象;

提取模块702,用于对所述场景图像进行特征提取,得到第一特征图;

处理模块703,用于将所述第一特征图进行上采样处理,得到第二特征图,将所述第二特征图分别输入角点池化层和中心池化层,分别得到角点热力图和中心点热力图;

定位模块704,用于基于所述角点热力图和所述中心点热力图得到边界框,利用所述边界框对所述目标对象进行定位。

在本公开的一种具体实施方式中,所述提取模块702,还包括提取单元7021。

提取单元7021,用于将所述场景图像缩放到预设尺寸,缩放后将其输入到resnet50网络模型中,在所述resnet50网络模型中,所述场景图像依次经过第一卷积层、池化层和第一预设个数的残差块,得到所述第一特征图,在残差块处理中,输入到每个所述残差块中的输入数据先经过两个第二卷积层得到第一处理结果,再将所述第一处理结果与所述输入数据相加,得到输出数据,再将所述输出数据输入下一个残差块。

在本公开的一种具体实施方式中,所述处理模块703,还包括采样单元7031。

采样单元7031,用于将所述第一特征图依次经过第二预设个数的第一反卷积层,得到所述第二特征图,其中,每个所述第一反卷积层相同,每个所述第一反卷积层由一个第三卷积层和一个反卷积层组成。

在本公开的一种具体实施方式中,所述处理模块703,还包括第一计算单元7032和第二计算单元7033。

第一计算单元7032,用于将所述第二特征图输入角点池化层中,输出得到角点热力图,所述角点池化层的处理步骤为将输入的所述第二特征图沿四个边界方向找到最大值,以确定四个角点;

第二计算单元7033,用于将所述第二特征图输入中心池化层中,输出得到中心点热力图,所述中心池化层的处理步骤为将输入的所述第二特征图在水平和垂直方向上分别找到最大值,并将其相加。

在本公开的一种具体实施方式中,所述定位模块704,还包括第一删除单元7041、第二删除单元7042和合并单元7043。

第一删除单元7041,用于所述第一感受野作为一个第一边界框,在全部的所述第一边界框中选取第三预设个数的第一边界框;对所述角点热力图中的每个点进行选取,选取第四预设个数的点作为第一关键点;在每个选取的第一边界框中划分一个第一中心区域,判断所述第一中心区域中包含的第一关键点的个数是否超过预设阈值,若未超过,则将选取的第一边界框删除,得到剩余的第一边界框;

第二删除单元7042,用于基于所述中心点热力图得到其对应的多个第二感受野,将每个所述第二感受野作为一个第二边界框,在全部的所述第二边界框中选取第五预设个数的第二边界框;对所述中心点热力图中的每个点进行选取,选取第六预设个数的点作为第二关键点;在每个选取的第二边界框中划分一个第二中心区域,判断所述第二中心区域中包含的第二关键点的个数是否超过所述预设阈值,若未超过,则将选取的第二边界框删除,得到剩余的第二边界框;

合并单元7043,用于利用非极大值抑制算法对所述剩余的第一边界框和所述剩余的第二边界框进行合并,得到所述最终边界框。

在本公开的一种具体实施方式中,所述定位模块704,还包括第三计算单元7044。

第三计算单元7044,用于获取边界框的坐标信息,根据所述坐标信息和公式(1)计算得到中心区域的坐标信息,所述公式(1)为:

公式(1)中,ltx为边界框左上角的横坐标,lty为边界框左上角的纵坐标,rdx为边界框右下角的横坐标,rdy为边界框右下角的纵坐标,cltx为中心区域左上角的横坐标,clty为中心区域左上角的纵坐标,crdx为中心区域右下角的横坐标,crdy为中心区域右下角的纵坐标,box

需要说明的是,关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

实施例3

相应于上面的方法实施例,本公开实施例还提供了目标对象定位设备,下文描述的目标对象定位设备与上文描述的目标对象定位方法可相互对应参照。

图3是根据一示例性实施例示出的目标对象定位设备800的框图。如图3所示,该目标对象定位设备800可以包括:处理器801,存储器802。该目标对象定位设备800还可以包括多媒体组件803,I/O接口804,以及通信组件805中的一者或多者。

其中,处理器801用于控制该目标对象定位设备800的整体操作,以完成上述的目标对象定位方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该目标对象定位设备800的操作,这些数据例如可以包括用于在该目标对象定位设备800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该目标对象定位设备800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块。

在一示例性实施例中,该目标对象定位设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal ProcessingDevice,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的目标对象定位方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的目标对象定位方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由该目标对象定位设备800的处理器801执行以完成上述的目标对象定位方法。

实施例4

相应于上面的方法实施例,本公开实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的目标对象定位方法可相互对应参照。

一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的目标对象定位方法的步骤。

该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术分类

06120116521202