一种实弹射击靶像采集处理方法及装置与流程

文档序号:21785950发布日期:2020-08-07 20:30阅读:392来源:国知局
一种实弹射击靶像采集处理方法及装置与流程

本发明涉及实弹射击和智能图像识别的技术领域,尤其是一种实弹射击靶像采集处理方法及装置。



背景技术:

射击训练是部队、公安以及运动员的日常训练中至关重要的一部分,目前他们的射击训练、考核、比赛等大都采用实弹射击,但实弹射击的成绩采集还依靠原始的人眼识别靶像来采集成绩,采集效率非常低,采集精度不高,严重影响射击训练效果的提升。如何实现实弹射击中靶像的自动分析处理从而精准、快速地得到打靶成绩已成为亟待解决的一个问题。



技术实现要素:

本发明的目的在于提供一种实弹射击靶像采集处理方法及装置,旨在解决现有技术中实弹射击靶像采集处理效率低、精度低的问题。

本发明是这样实现的,第一方面,本申请提供了一种实弹射击靶像采集处理方法,包括以下步骤:

s1、在实时采集到的图像中提取弹孔区域,若找到弹孔区域,将找到的弹孔区域更新为当前弹孔区域;若是首次找到的弹孔区域,将当前找到的弹孔区域更新为参考区域;若没有找到弹孔区域,则继续实时采集图像并执行该步骤;所述图像为对经实弹射击后的靶纸进行采集得到的图像;

s2、若首次更新参考区域,用当前弹孔区域更新为新增弹孔区域;若非首次更新参考区域,将参考区域仿射变换到当前图像,比对当前区域与仿射变换后的参考区域的差异,得出新增弹孔区域,并将当前弹孔区域更新为参考区域;

s3、计算新增弹孔区域数量,若非0个,则继续向下操作;

s4、在采集到的图像之中,提取靶纸区域;

s5、在提取到的靶纸区域内,提取人像区域;

s6、在提取到的人像区域内,提取靶环分界带区域;

s7、在提取到的人像区域内,提取靶环中心区域以及数字区域;

s8、在提取到的人像区域内,提取环位定义带区域;

s9、在提取到的人像区域内,提取弹孔区域;

s10、与上一次提取的弹孔区域进行比对得到新增的弹孔区域;

s11、计算新增的弹孔区域所处坐标以及环位。

进一步地,在所述步骤s4中,所述图像包括空白区域以及靶纸区域,所述步骤s4具体包括:

根据所述空白区域与所述靶纸区域的颜色不同,利用阈值分割将所述第一图像中的所述空白区域全部提取出,得到靶纸区域。

进一步地,所述空白区域的颜色为白色。

进一步地,所述步骤s5包括:

根据人像区域与靶纸区域中除人像区域外的其他区域的颜色不同,利用阈值分割将所述靶纸区域中的人像区域提取出来,得到人像区域。

进一步地,所述人像区域的颜色为黑色。

进一步地,所述步骤s6包括:

对人像区域进行中值滤波处理,

根据人像区域的靶环分界带区域与人像区域中的其他区域的颜色不同,利用阈值分割将所述靶环分界带区域提取出来,得到靶环分界带区域。

进一步地,所述步骤s7包括:

根据人像区域的数字区域与人像区域中的其他区域的颜色不同,利用阈值分割将所述数字区域提取出来,得到所述数字区域;

根据人像区域的靶环中心区域与人像区域中的其他区域的颜色不同,利用阈值分割将所述靶环中心区域提取出来,得到所述靶环中心区域。

进一步地,所述步骤s8包括:

利用得到的数字区域以及相对于靶环中心区域的相对位置关系,将原本属于同一个靶环定义带区域的数字区域以及靶环分界带区域合并在一起得到环位定义带区域。

进一步地,所述步骤s9包括:

对人像区域通过局部均值和标准差分析,提取弹孔区域。

第二方面,本申请还提供了一种实弹射击靶像采集处理装置,包括:

第一弹孔区域提取模块,用于在实时采集到的图像中提取弹孔区域,若找到弹孔区域,将找到的弹孔区域更新为当前弹孔区域;若是首次找到的弹孔区域,将当前找到的弹孔区域更新为参考区域;若没有找到弹孔区域,则继续实时采集图像并执行该步骤;所述图像为对经实弹射击后的靶纸进行采集得到的图像;

新增弹孔区域生成模块,所述新增弹孔区域生成单元用于执行以下操作:若首次更新参考区域,用当前弹孔区域更新为新增弹孔区域;若非首次更新参考区域,将参考区域仿射变换到当前图像,比对当前区域与仿射变换后的参考区域的差异,得出新增弹孔区域,并将当前弹孔区域更新为参考区域;

新增弹孔区域数量计算模块,用于计算新增弹孔区域的数量;

靶纸区域提取模块,用于在采集到的图像内,提取靶纸区域;

人像区域提取模块,用于在所述靶纸区域提取模块提取到的所述靶纸区域内,提取人像区域;

靶环分界带区域提取模块,用于在所述人像区域提取模块提取到的所述人像区域内,提取靶环分界带区域;

靶环中心区域及数字区域提取模块,用于在所述人像区域提取模块提取到的所述人像区域内,提取靶环中心区域以及数字区域;

环位定义带提取模块,用于在所述人像区域提取模块提取到的人像区域内,提取环位定义带区域;

第二弹孔区域提取模块,用于在所述人像区域提取模块提取到的所述人像区域内,提取弹孔区域;

比对模块,用于将所述第二弹孔区域提取模块提取到的弹孔区域与上一次提取的弹孔区域进行比对得到新增的弹孔区域;

计算模块,用于计算新增的弹孔区域所处的坐标以及环位。

与现有技术相比,本申请提供的一种实弹射击靶像采集处理方法及装置,实现了实弹射击靶像的采集处理,处理效率高、处理结果准确,有利于大幅提高实弹射击的训练效率和训练水平,提高被训者的射击能力。

附图说明

图1是本发明实施例提供的一种实弹射击靶像采集处理方法的流程示意图;

图2是本发明实施例提供的一种实弹射击靶像采集处理装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。

以下结合具体实施例对本发明的实现进行详细的描述。

参照图1-2所示,为本发明提供较佳实施例。

第一方面,本申请提供了一种实弹射击靶像采集处理方法,包括以下步骤:

s1、在实时采集到的图像中提取弹孔区域,若找到弹孔区域,将找到的弹孔区域更新为当前弹孔区域;若是首次找到的弹孔区域,将当前找到的弹孔区域更新为参考区域;若没有找到弹孔区域,则继续实时采集图像并执行该步骤;所述图像为对经实弹射击后的靶纸进行采集得到的图像。

s2、若首次更新参考区域,用当前弹孔区域更新为新增弹孔区域;若非首次更新参考区域,将参考区域仿射变换到当前图像,比对当前区域与仿射变换后的参考区域的差异,得出新增弹孔区域,并将当前弹孔区域更新为参考区域。

s3、计算新增弹孔区域数量,若非0个,则继续向下操作。

s4、在采集到的图像之中,提取靶纸区域。

所述采集到的图像包括空白区域以及靶纸区域。

步骤s4具体包括:根据所述空白区域与所述靶纸区域的颜色不同,利用阈值分割将所述第一图像中的所述空白区域全部提取出,得到靶纸区域。

优选地,所述空白区域的颜色为白色。

利用二值化阈值分割的具体方法步骤如下:

利用算子:

binary_threshold(image:region:method,lightdark:usedthreshold)

获取预期的区域,即靶纸区域,其中image表示输入的原始图像,region表示分割出来的结果区域,method是可选的算法参数,这里选择“max_separability”,lightdark表示选择的区域是亮区域还是暗区域,这里选择“light”,即亮区域,userthreshold是可选的算法参数计算出来的结果阈值;

说明,可选的算法参数选择“max_separability”,即是基于像素灰度值的利用otsu算法自动阈值分割;

otsu算法如下:

①把图像的灰度数按灰度级分成2个部分,使得两个部分之间的灰度值差异最大,每个部分之间的灰度差异最小;

②通过方差的计算来寻找一个合适的灰度级别来划分;

因方差是灰度分布均匀性的一种度量,背景和前景之间的类间方差越大,说明构成图像的两部分的差别越大,当部分前景错分为背景或部分背景错分为前景都会导致两部分差别变小;

对图像i(x,y),前景和背景的分割阈值记作t,

前景像素点数占整幅图像的比例为ω0,其平均灰度μ0;

背景像素点数占整幅图像的比例为ω1,其平均灰度μ1;

图像的总平均灰度记为μ=ω0*μ0+ω1*μ1;

类间方差记为g

像素灰度值小于阈值t的像素个数记作n0,

像素灰度值大于阈值t的像素个数记作n1,

则有:

ω0=n0/m×n;(1)

ω1=n1/m×n;(2)

n0+n1=m×n;(3)

ω0+ω1=1;(4)

μ=ω0*μ0+ω1*μ1;(5)

g=ω0(μ0-μ)^2+ω1(μ1-μ)^2;(6)

将式(5)代入式(6),得到等价公式:

g=ω0*ω1*(μ0-μ1)^2;(7)

采用遍历的方法得到使类间方差g最大的阈值t,即为所求。

迭代选择法是首先猜测一个初始阈值,然后再通过对图像的多趟计算对阈值进行改进的过程。重复地对图像进行阈值操作,将图像分割为对象类和背景类,然后来利用每一个类中的灰阶级别对阈值进行改进。

迭代算法如下:

迭代法是基于逼近的思想,其步骤如下:

a、求出图像的最大灰度值和最小灰度值,分别记为zmax和zmin,令初始阈值t0=(zmax+zmin)/2;

b、根据阈值tk将图象分割为前景和背景,分别求出两者的平均灰度值zo和zb

n0小于阈值t0的个数,n1大于阈值t0的个数

zo=n0/m×nzb=n1/m×n

c、求出新阈值tk+1=(zo+zb)/2;

d、若tk==tk+1,则所得即为阈值;否则转2,迭代计算。

s5、在提取到的靶纸区域内,提取人像区域。

所述步骤s5包括:根据人像区域与靶纸区域中除人像区域外的其他区域的颜色不同,利用阈值分割将所述靶纸区域中的人像区域提取出来,得到人像区域。

优选地,所述人像区域的颜色为黑色。

具体地,获取到靶纸区域后,利用算子:reduce_domain(image,region:imagereduced::),

获取靶纸区域在图像定义域内对应的靶纸图像定义域,image为输入的原始图像,region为定义新图像定义域的区域(即这里获取到的靶纸区域),imagereduce为新图像(即这里需要的靶纸图像)

进一步利用全局阈值分割,即算子threshold(image:region:mingray,maxgray:),得到人像区域。

s6、在提取到的人像区域内,提取靶环分界带区域。

步骤s6具体包括:对人像区域进行中值滤波处理,

根据人像区域的靶环分界带区域与人像区域中的其他区域的颜色不同,利用阈值分割将所述靶环分界带区域提取出来,得到靶环分界带区域。

具体地方法为:获取到人像区域后,利用算子

median_rect(image:imagemedian:maskwidth,maskheight:)

对人像区域进行中值滤波,

image为输入图像(即这里的人像区域),imagemedian为输出的结果图像,即中值滤波后的图像,maskwidth和maskheight为矩形掩膜的宽度和高度。该算子计算掩膜内的所有像素的灰度值,并取掩膜内所有像素灰度值的中值作为掩膜区域的灰度值;

进行中值滤波后,可以使得人像区域内的一些噪点被抑制掉,进而为动态阈值分割提供参考图像;

进一步,利用算子

dyn_threshold(origimage,thresholdimage:regiondynthresh:offset,lightdark:);

origimage,为输入原始图像(即这里的人像区域),thresholdimage为输入对比图像,(即这里的中值滤波后的图像),regiondynthresh为结果区域(即预期的靶环分界带区域),

offset为阈值偏离值,

lightdark为可选的算子操作模式,包括“light”,“dark”,“equal”,“not_equal”;

算子从输入图像中选择灰度值满足条件的像素,并组成区域;条件如下:

假设原始图像像素灰度值为go=g_{origimage},对比图像的灰度值为gt=g_{thresholimage},当条件为

lightdark=“light时,go≥gt+offset;

lightdark=“dark”时,go≤gt-offset;

lightdark=“equal”时,gt-offset≤go≤gt+offset;

lightdark=“not_equal”时,go>gt+offset,或go<gt-offset

优选地,靶环分界带区域是白色的,因此lightdark操作模式选择“light”,进而得到靶环分界带区域;

s7、在提取到的人像区域内,提取靶环中心区域以及数字区域。

步骤s7具体包括:根据人像区域的数字区域与人像区域中的其他区域的颜色不同,利用阈值分割将所述数字区域提取出来,得到所述数字区域;

根据人像区域的靶环中心区域与人像区域中的其他区域的颜色不同,利用阈值分割将所述靶环中心区域提取出来,得到所述靶环中心区域。

s8、在提取到的人像区域内,提取环位定义带区域。

具体地,步骤s8包括:

利用得到的数字区域以及相对于靶环中心区域的相对位置关系,将原本属于同一个靶环定义带区域的数字区域以及靶环分界带区域合并在一起得到环位定义带区域。

s9、在提取到的人像区域内,提取弹孔区域。

具体地,获取到人像区域后,利用算子

var_threshold(image:region:maskwidth,maskheight,stddevscale,absthreshold,lightdark:)

image为输入图像(即这里的人像图像),region为输出结果区域,maskwidth和maskheight为矩形掩膜的宽度和高度,stddevscale为标准方差系数,用于反映预期的噪声灵敏度,absthreshold为绝对阈值,lightdark为可选的算子操作模式,包括“light”,“dark”,“equal”,“not_equal”;

算子从输入图像中选择灰度值满足条件的像素,并组成区域;条件如下:

假设在像素点(x,y)处的灰度值为g(x,y),m(x,y)与d(x,y)分别表示在(x,y)像素点处掩膜框内得到的平均灰度值和灰度值标准差,

当sdtdevscale≥0时,

v(x,y)=max{stddevscale*d(x,y),absthreshold}

当stddevscale<0时,

v(x,y)=min{stddevscale*d(x,y),absthreshold}

目标区域的阈值筛选条件如下:当条件为

lightdark=“light”时,g(x,y)≥m(x,y)+v(x,y);

lightdark=“dark”时,g(x,y)≤m(x,y)-v(x,y);

lightdark=“equal”时,m(x,y)-v(x,y)≤g(x,y)≤m(x,y)+v(x,y);

lightdark=“not_equal”时,g(x,y)<m(x,y)-v(x,y),或g(x,y)>m(x,y)+v(x,y)

在输入图像中搜索满足条件的区域,即弹孔区域。

s10、与上一次提取的弹孔区域进行比对得到新增的弹孔区域。

具体地,获取到人像区域后,利用算子

var_threshold(image:region:maskwidth,maskheight,stddevscale,absthreshold,lightdark:)

image为输入图像(即这里的人像图像),region为输出结果区域,maskwidth和maskheight为矩形掩膜的宽度和高度,stddevscale为标准方差系数,用于反映预期的噪声灵敏度,absthreshold为绝对阈值,lightdark为可选的算子操作模式,包括“light”,“dark”,“equal”,“not_equal”;

算子从输入图像中选择灰度值满足条件的像素,并组成区域;条件如下:

假设在像素点(x,y)处的灰度值为g(x,y),m(x,y)与d(x,y)分别表示在(x,y)像素点处掩膜框内得到的平均灰度值和灰度值标准差,

当sdtdevscale≥0时,

v(x,y)=max{stddevscale*d(x,y),absthreshold}

当stddevscale<0时,

v(x,y)=min{stddevscale*d(x,y),absthreshold}

目标区域的阈值筛选条件如下:当条件为

lightdark=“light”时,g(x,y)≥m(x,y)+v(x,y);

lightdark=“dark”时,g(x,y)≤m(x,y)-v(x,y);

lightdark=“equal”时,m(x,y)-v(x,y)≤g(x,y)≤m(x,y)+v(x,y);

lightdark=“not_equal”时,g(x,y)<m(x,y)-v(x,y),或g(x,y)>m(x,y)+v(x,y)

在输入图像中搜索满足条件的区域,即弹孔区域。

s11、计算新增的弹孔区域所处坐标以及环位。

具体地,步骤s11包括:

1、获取记录的上次形状模板特征的几何中心坐标以及记录的上次弹孔区域

2、利用模板匹配模型在当前图像中搜索匹配模板的形状特征

并计算其几何中心坐标

3、计算二维平面坐标系转换矩阵,即二维齐次变换矩阵

利用算子

vector_to_hom_mat2d(::px,py,qx,qy:hommat2d)

px与py表示特征点在原坐标系的坐标值(注:px,py满足右手坐标系坐标描述)

qx与qy表示变换后坐标系的点相对于原坐标系的坐标值(注:qx,qy满足右手坐标系坐标描述)

hommat2d表示由原坐标系到变换后坐标系的变换关系(包含绕坐标系坐标轴旋转变换以及平移变换)

通过上式得到二维齐次变换矩阵hommat2d;

4、计算新增弹孔区域

将记录的上次弹孔区域通过二维齐次变换矩阵,变换到当前图像;使其在当前图像中与旧有的弹孔区域对齐;

然后用当前图像找到的弹孔区域与变换得到的区域做差集操作,在差集区域通过筛选,得到新增的区域,即当前打靶得到的新弹孔区域;

5.判断新增区域所处环位

得到新增的弹孔区域后,循环遍历得到的靶环定义带区域,并判断新增弹孔区域的几何中心坐标是否在靶环定义带区域,若在靶环定义带区域则得到新增弹孔的环位;否则未打到靶环定义带内。

第二方面,本申请还提供了一种实弹射击靶像采集处理装置,包括:

第一弹孔区域提取模块1,用于在实时采集到的图像中提取弹孔区域,若找到弹孔区域,将找到的弹孔区域更新为当前弹孔区域;若是首次找到的弹孔区域,将当前找到的弹孔区域更新为参考区域;若没有找到弹孔区域,则继续实时采集图像并执行该步骤;所述图像为对经实弹射击后的靶纸进行采集得到的图像;

新增弹孔区域生成模块2,所述新增弹孔区域生成单元用于执行以下操作:若首次更新参考区域,用当前弹孔区域更新为新增弹孔区域;若非首次更新参考区域,将参考区域仿射变换到当前图像,比对当前区域与仿射变换后的参考区域的差异,得出新增弹孔区域,并将当前弹孔区域更新为参考区域;

新增弹孔区域数量计算模块3,用于计算新增弹孔区域的数量;

靶纸区域提取模块4,用于在图像内,提取靶纸区域;

人像区域提取模块5,用于在所述靶纸区域提取模块4提取到的所述靶纸区域内,提取人像区域;

靶环分界带区域提取模块6,用于在所述人像区域提取模块5提取到的所述人像区域内,提取靶环分界带区域;

靶环中心区域及数字区域提取模块7,用于在所述人像区域提取模块5提取到的所述人像区域内,提取靶环中心区域以及数字区域;

环位定义带提取模块8,用于在所述人像区域提取模块5提取到的人像区域内,提取环位定义带区域;

第二弹孔区域提取模块9,用于在所述人像区域提取模块5提取到的所述人像区域内,提取弹孔区域;

比对模块10,用于将所述第二弹孔区域提取模块9提取到的弹孔区域与上一次提取的弹孔区域进行比对得到新增的弹孔区域;

计算模块11,用于计算新增的弹孔区域所处的坐标以及环位。

上述提供的一种实弹射击靶像采集处理方法及装置,实现了实弹射击靶像的采集处理,处理效率高、处理结果准确,有利于大幅提高实弹射击的训练效率和训练水平,提高被训者的射击能力。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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