一种目标物体的自动射击方法及装置与流程

文档序号:16214386发布日期:2018-12-08 08:10阅读:338来源:国知局
一种目标物体的自动射击方法及装置与流程

本发明涉及自动识别技术领域,具体而言,涉及一种目标物体的自动射击方法及装置。

背景技术

现有技术中,在军事作战中,单纯的由人力进行作战会导致成本增加,且作战效率较低。因此如何提供一种自动射击的方法,在进行对目标物体(如装甲车等)射击时能够自动识别目标物体,并对识别的目标物体进行自动射击,具有十分重要的意义。



技术实现要素:

有鉴于此,本发明的目的在于提供一种高目标物体的自动射击方法和装置,以实现对目标物体进行自动识别和射击。

第一方面,本发明实施例提供了一种目标物体的自动射击方法,该方法包括:

获取摄像头所捕获的初始图像;

对所述初始图像进行处理,确定所述初始图像中所包含的目标物体以及目标物体的坐标信息;

判断所述目标物体是否符合射击条件;

如果符合,发送射击指令,所述射击指令中包含有所述目标物体的坐标信息,以使发射装置接收所述射击指令以后,根据所述目标物体的坐标信息进行自动射击所述目标物体。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,

所述获取摄像头所捕获的初始图像,包括:

通过第一线程读取摄像头,获取摄像头所捕获的图像,将所述图像进行拷贝至内存中,并在拷贝前将存储的变量的状态设置成为锁定状态,直至拷贝完成将所述存储的变量的状态设置成为非锁定状态;

在需要进行图像处理时,在所述存储的变量为非锁定状态时,通过第二线程读取所述内存中的初始图像,并在读取前将所述存储的变量设置成为锁定状态,直至读取工作完成将所述存储的变量的状态设置成为非锁定状态;通过所述第二线程读取所述内存中的图像以后,执行对所述初始图像进行处理的步骤。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,

所述对所述初始图像进行处理,确定所述初始图像中所包含的目标物体以及目标物体的坐标信息,包括:

对所述初始图像进行降亮度处理以及灰度二值处理,得到第一图像;对所述初始图像进行颜色通道分离和二值化处理,得到第二图像;所述第二图像中包含有特定颜色为目标颜色的标识物;其中,所述目标物体预先设置有具有目标颜色的标识物;

通过所述第一图像和所述第二图像进行求与计算得到第三图像,对所述第三图像中包含有的物体进行轮廓提取和拟合,得到包含有所述标识物的物体的图形,根据标识物的特征从所述物体的图形中提取目标标识物;

将所述目标标识物所在的物体确定为目标物体,根据所述目标标识物的坐标确定所述目标物体的坐标信息。

结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,当所述标识物为灯条时,所述根据标识物的特征从所述物体的图形中提取目标标识物,包括:

根据所述灯条的比例和倾斜角度从所述包含有所述标识物的物体的图形中提取灯条的图形;

根据将所有所述灯条的图形两两组合以后,筛选出两个灯条的图形的平行度、宽度比和长度比分别满足预设条件的灯条组,将该灯条组所在的物体确定为目标物体.

结合第一方面本发明实施例提供了第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述判断所述目标物体是否符合射击条件,包括:

根据所述目标物体的面积和所述目标物体相对于摄像头中心的偏航角和俯仰角进行判断所述目标物体是否符合射击条件。

第二方面,本发明实施例还提供了一种目标物体的自动射击装置,包括:

获取模块,用于获取摄像头所捕获的初始图像;

处理模块,用于对所述初始图像进行处理,识别出所述初始图像中所包含的目标物体以及目标物体的坐标信息;

判断模块,用于判断所述目标物体是否符合射击条件;

射击指令发送模块,用于发送射击指令,所述射击指令中包含有所述目标物体的坐标信息,以使发射装置接收所述射击指令以后,根据所述目标物体的坐标信息进行自动射击所述目标物体。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述获取模块,具体用于:

通过第一线程读取摄像头,获取摄像头所捕获的图像,将所述图像进行拷贝至内存中,并在拷贝前将存储的变量的状态设置成为锁定状态,直至拷贝完成将所述存储的变量的状态设置成为非锁定状态;

在需要进行图像处理时,在所述存储的变量为非锁定状态时,通过第二线程读取所述内存中的初始图像,并在读取前将所述存储的变量设置成为锁定状态,直至读取工作完成将所述存储的变量的状态设置成为非锁定状态;通过所述第二线程读取所述内存中的图像以后,执行对所述初始图像进行处理的步骤。

结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述处理模块,具体用于:

对所述初始图像进行降亮度处理以及灰度二值处理,得到第一图像;对所述初始图像进行颜色通道分离和二值化处理,得到第二图像;所述第二图像中包含有特定颜色为目标颜色的标识物;其中,所述目标物体预先设置有具有目标颜色的标识物;

通过所述第一图像和所述第二图像进行求与计算得到第三图像,对所述第三图像中包含有的物体进行轮廓提取和拟合,得到包含有所述标识物的物体的图形,根据标识物的特征从所述物体的图形中提取目标标识物;

将所述目标标识物所在的物体确定为目标物体,根据所述目标标识物的坐标确定所述目标物体的坐标信息。

结合第二方面的二种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,当所述标识物为灯条时,所述处理模块用于:

根据所述灯条的比例和倾斜角度从所述包含有所述标识物的物体的图形中提取灯条的图形;

根据将所有所述灯条的图形两两组合以后,筛选出两个灯条的图形的平行度、宽度比和长度比分别满足预设条件的灯条组,将该灯条组所在的物体确定为目标物体。

结合第二方面,本发明实施例提供了第二方面的第四种可能的实施方式,其中,当所述标识物为灯条时,所述处理模块用于:

根据所述灯条的比例和倾斜角度从所述包含有所述标识物的物体的图形中提取灯条的图形;

根据将所有所述灯条的图形两两组合以后,筛选出两个灯条的图形的平行度、宽度比和长度比分别满足预设条件的灯条组,将该灯条组所在的物体确定为目标物体。

本发明实施例提供的一种目标物体的自动射击的方法和装置,通过获取摄像头所捕获的初始图像,对该图像进行处理,确定该初始图像中所包含的目标物体以及目标物体的坐标,在判断该目标物体符合射击条件以后进行发送射击指令至发射装置,进而可以使发射装置自动射击目标物体。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

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

图1示出了本发明一个实施例所提供的一种目标物体的自动射击方法的流程示意图;

图2示出了本发明一个实施例所提供的一种获取摄像头所捕获的初始图像的方法的流程示意图;

图3示出了本发明另一个实施例所提供的一种自动射击装置的结构示意图;

图4示出了本发明另一个实施例所提供的一种自动射击系统的结构示意图。

具体实施方式

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

图1为本申请一个实施例提供的一种目标物体的自动射击方法的流程示意图。参照图1所示,该方包括如下步骤:

s101、获取摄像头所捕获的初始图像。

s102、对所述初始图像进行处理,确定所述初始图像中所包含的目标物体以及目标物体的坐标信息。

s103、判断所述目标物体是否符合射击条件。

s104、如果符合,发送射击指令至发射装置,所述射击指令中包含有所述目标物体的坐标信息,以使发射装置接收所述射击指令以后,根据所述目标物体的坐标信息进行自动射击所述目标物体。

图2为本申请一个实施例提供的一种获取摄像头所捕获的初始图像的方法的流程示意图。参照图2所示,上述步骤s101、获取摄像头所捕获的初始图像,具体包括如下步骤:

s201、通过第一线程读取摄像头,获取摄像头所捕获的图像,将所述图像进行拷贝至内存中,并在拷贝前将存储的变量的状态设置成为锁定状态,直至拷贝完成将所述存储的变量的状态设置成为非锁定状态。

s202、在需要进行图像处理时,在所述存储的变量为非锁定状态时,通过第二线程读取所述内存中的初始图像,并在读取前将所述存储的变量设置成为锁定状态,直至读取工作完成将所述存储的变量的状态设置成为非锁定状态;通过所述第二线程读取所述内存中的图像以后,执行对所述初始图像进行处理的步骤。

具体的,本申请实施例中,处理器通过第一线程不断将摄像头捕获到的图像进行拷贝至内存中,具体的可以是通过将摄像头捕获到的图像赋值给一个变量(比如该变量为mat类型的image)的方式实现;通过第二线程进行图像处理和目标物体识别与跟踪,在第二线程需要获取图像进行处理时,第二线程将image拷贝走;因为第一线程与第二线程可能会同时访问变量image,此时为了避免同时访问导致的程序崩溃,设置当前一个线程对变量进行操作时,都先用互斥锁将变量锁住,此时该变量被设置成为锁定状态,以确保另一个线程此时无法访问该变量,等当前的进行操作完成后再解锁,此时所述存储的变量的状态设置成为非锁定状态。

本实施例中单独为读取摄像头开设一个线程,相对于现有技术中的,通过opencv读取摄像头,并将读取的摄像头捕获的图像存储到缓存区,下次再读取摄像头时,首先读取的是缓存区的图片的方式相比,具有能够有效降低延迟的积极效果。

本申请实施例中通过上述的方法,保证了获取到的图片总是最新拍摄到的,延迟几乎可以忽略。

在一可能的实施例中,因为目标物体的亮度是固定的,所以摄像头的曝光可以使用手动曝光,曝光值略低于自动曝光,以便于能够有效的提取图片的亮度信息。

本申请一个实施例中,上述步骤s102中,对所述初始图像进行处理,确定所述初始图像中所包含的目标物体以及目标物体的坐标信息,具体包括如下步骤a10-a12:

a10、对所述初始图像进行降亮度处理以及灰度二值处理,得到第一图像;对所述初始图像进行颜色通道分离和二值化处理,得到第二图像;所述第二图像中包含有特定颜色为目标颜色的标识物;其中,所述目标物体预先设置有具有目标颜色的标识物。

目标物体上预先设置有标识物,以装甲为例,装甲上会预先设置有红色灯条和蓝色灯条。上述将对初始图像进行降亮度处理及灰度处理以后,得到第一图像,该第一图像中包含有白色的部分的图像即为发亮的物体的图像。上述对初始图像进行颜色通道分离后得到第二图像,该第二图像中会包含有特定颜色的图像部分即为目标颜色的物体的图像。此处可以是用split函数分离原图颜色通道,分离成红绿蓝三通道,如果是蓝色灯条的话,将蓝色通道和红色通道相减,并将得到的图片二值化,就可以提取出蓝色的物体,得到第二图像。

a12、通过所述第一图像和所述第二图像进行求与计算得到第三图像,对所述第三图像中包含有的物体进行轮廓提取和拟合,得到包含有所述标识物的物体的图形,根据标识物的特征从所述物体的图形中提取目标标识物。

以标识物为蓝色灯条为例,在得到第一图像和第二图像以后,综合发光和蓝色这两个特性,对第一图像和第二图像进行求与运算,得到第三图像,用findcontours函数对第三图像进行轮廓提取,并用fitellipse函数对提取的轮廓进行椭圆拟合,得到包含有标识物的物体的图形,该物体的图形包括蓝色灯条和其他一些干扰物体。

当所述标识物为灯条时,上述根据标识物的特征从所述物体的图形中提取目标标识物,具体包括:

b10、在得到上述的包含有标识物的物体的图形以后,根据灯条的比例(长宽比小于1或者大于8)、倾角(偏离竖直方向超过45度)进行提取目标灯条的图形,过滤掉第三图像中不符合条件的灯条的图形和干扰物体。

b12、将所有目标灯条两两组合,筛选出灯条平行度高(倾角差小于10度),宽度比(宽边长度与窄边长度的比值)小于2.5、长度比(长边长度与宽边长度的比值)小于1.7的灯条组,将该灯条组所在的物体确定为目标物体(目标装甲)。

由于实际情况中,装甲上设置的蓝色灯条或者红色灯条都是平行设置的,并且两个灯条的长度、大小一致。因此可以根据两个灯条的图形的平行度、宽度比和长度比的特征进行筛选出目标物体上的灯条组。

本申请一实施例中,上述的步骤s103、判断所述目标物体是否符合射击条件,包括如下步骤:

c10、根据所述目标物体的面积和所述目标物体相对于摄像头中心的偏航角和俯仰角进行判断所述目标物体是否符合射击条件。

本实施例中根据标识物的面积和标识物与其所在目标物体的位置关系和比例关系即可以计算出目标物体的面积。

如果一个摄像头的视野内出现多个装甲,即包含有多个目标物体,此时还要选择最适合击打的目标装甲。具体的,根据上述目标物体的面积、目标物体相对于摄像头中心的偏航角和俯仰角和三者分别对应的权重,进行加权求和得到分数值a,以目标物体为装甲为例,a=装甲面积-10*装甲离相机中心的偏航角-10*装甲离相机中心的俯仰角,计算得到视野内每个装甲的分数值,选取分数值最高的装甲作为打击目标。

本申请实施例中,当视野内只有一个装甲时,也可以按照上述的计算方法得到该装甲的最终的分数值a,并将该分数值a与预设的标准值进行比较,当该分数值a大于该预设的标准值时,认为该装甲符合射击条件。

a14、将所述目标标识物所在的物体确定为目标物体,根据所述目标标识物的坐标确定所述目标物体的坐标信息。

上述的目标物体的坐标信息,包含该目标物体的方位信息,处理器将该目标的方位信息和是否开枪的指令通过串口发送给发射装置的单片机。

上述实施例中,为了保证跟踪的稳定性和目标的一致性(防止视野中有多个目标时不同帧跟踪不同的目标),在获取目标后,开始运行跟踪算法,连续运行15帧,然后再进行上述的识别过程,如果跟踪过程中出现跟踪失败或者跟踪结果不符合条件(尺寸等),也立刻运行识别算法,以实现整个过程中的目标物体的精确打击。

这个程序相对于其他程序,单独为读取摄像头开了一个线程,显著降低了拍摄的延时,保证了画面的及时性,能够使处理的得到的结果更加精准。此外,该算法采用识别与跟踪有机结合的方法,保证了跟踪的连续性,同时也加快了处理速度,因为单纯的识别不是所有帧都能识别到,跟踪的速度也比识别快。该算法经过实际检验,能够有效地识别对象并控制炮台进行较为精确的打击。

图3为本申请一个实施例提供的一种目标物体的自动射击装置的结构示意图。参照图3所示,该装置包括:获取模块300,用于获取摄像头所捕获的初始图像;

处理模块301,用于对所述初始图像进行处理,识别出所述初始图像中所包含的目标物体以及目标物体的坐标信息;

判断模块302,用于判断所述目标物体是否符合射击条件;

射击指令发送模块303,用于发送射击指令,所述射击指令中包含有所述目标物体的坐标信息,以使发射装置接收所述射击指令以后,根据所述目标物体的坐标信息进行自动射击所述目标物体。

本申请一可选的实施例中,上述获取模块300,具体用于:

通过第一线程读取摄像头,获取摄像头所捕获的图像,将所述图像进行拷贝至内存中,并在拷贝前将存储的变量的状态设置成为锁定状态,直至拷贝完成将所述存储的变量的状态设置成为非锁定状态;

在需要进行图像处理时,在所述存储的变量为非锁定状态时,通过第二线程读取所述内存中的初始图像,并在读取前将所述存储的变量设置成为锁定状态,直至读取工作完成将所述存储的变量的状态设置成为非锁定状态;通过所述第二线程读取所述内存中的图像以后,执行对所述初始图像进行处理的步骤。

本申请一可选的实施例中,上述处理模块301,具体用于:

对所述初始图像进行降亮度处理以及灰度二值处理,得到第一图像;对所述初始图像进行颜色通道分离和二值化处理,得到第二图像;所述第二图像中包含有特定颜色为目标颜色的标识物;其中,所述目标物体预先设置有具有目标颜色的标识物;

通过所述第一图像和所述第二图像进行求与计算得到第三图像,对所述第三图像中包含有的物体进行轮廓提取和拟合,得到包含有所述标识物的物体的图形,根据标识物的特征从所述物体的图形中提取目标标识物;

将所述目标标识物所在的物体确定为目标物体,根据所述目标标识物的坐标确定所述目标物体的坐标信息。

本申请一可选的实施例中,当所述标识物为灯条时,上述处理模块301用于:

根据所述灯条的比例和倾斜角度从所述包含有所述标识物的物体的图形中提取灯条的图形;

根据将所有所述灯条的图形两两组合以后,筛选出两个灯条的图形的平行度、宽度比和长度比分别满足预设条件的灯条组,将该灯条组所在的物体确定为目标物体。

本申请一可选的实施例中,上述判断模块302,具体用于:

根据所述目标物体的面积和所述目标物体相对于摄像头中心的偏航角和俯仰角进行判断所述目标物体是否符合射击条件。

图4为本申请另一个实施例所提供的一种自动射击系统的结构示意图。参照图4所示,该系统,包括:一种目标物体的自动射击装置40和发射装置41,其中自动射击装置用于根据商户的实施例中的方法生成发射指令,并发送射击指令至发射装置,所述射击指令中包含有所述目标物体的坐标信息,以使发射装置接收所述射击指令以后,根据所述目标物体的坐标信息进行自动射击所述目标物体。

本发明实施例所提供的进行目标物体的自动射击的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

本发明实施例所提供的目标物体的自动射击的装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。

在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

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

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1