CN108133491A - 一种实现动态目标跟踪的方法 - Google Patents
一种实现动态目标跟踪的方法 Download PDFInfo
- Publication number
- CN108133491A CN108133491A CN201711476198.0A CN201711476198A CN108133491A CN 108133491 A CN108133491 A CN 108133491A CN 201711476198 A CN201711476198 A CN 201711476198A CN 108133491 A CN108133491 A CN 108133491A
- Authority
- CN
- China
- Prior art keywords
- target
- value
- image
- following
- window
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/277—Analysis of motion involving stochastic approaches, e.g. using Kalman filters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/66—Analysis of geometric attributes of image moments or centre of gravity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了本发明提供了一种实现动态目标跟随的方法,包括以下步骤:(1)目标检测;(2)目标识别;(3)目标跟踪;(4)目标反馈;其中,所述步骤(3)中包括目标干扰排除和目标动作适应。本发明提供了一种效率较高,且能够准确排出干扰的动态目标跟踪方法,能够有效实现动态目标跟踪,并且运算简便,效率较高。
Description
技术领域
本发明涉及机器人技术领域,特别是涉及一种跟随运动中实现动态目标跟 踪的方法。
背景技术
随着机器人智能化发展,机器人识别跟随越来越受到关注,但是机器人在 跟随运动中,由于环境原因可能存在跟随目标外的干扰,以及随着跟随目标的 运动,机器人很可能无法识别运动后的跟随目标,因此现有技术中,缺少一种 能够快速排除干扰并能够适应动态目标的方法,使机器人能够有效跟随适应运 动目标,并排除其他干扰。
因此本领域技术人员致力于开发一种能够快速排除干扰并能够适应动态目 标的方法,使机器人能够有效跟随适应运动目标,并排除其他干扰。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种能够 快速排除干扰并能够适应动态目标的方法,使机器人能够有效跟随适应运动目 标,并排除其他干扰。
为实现上述目的,本发明提供了一种实现动态目标跟随的方法,包括以下 步骤:
(1)目标检测;
(2)目标识别;
(3)目标跟踪;
(4)目标反馈;
其中,所述步骤(3)中包括目标干扰排除和目标动作适应。
较优的,所述步骤(1)中按照以下步骤实现:
(11)利用图像传感器捕捉每一帧图像;
(12)针对前后两帧图像进行光流场计算;
(13)进行光流场阈值计算;
(14)运动目标轮廓确定;
其中,所述步骤(12)中,按照以下步骤进行光流场计算:
121)对前后两帧中图像的每个元素偏移量ni进行排序;
122)按照下列公式进行光流场分析检测点的计算:
其中,为前后两帧的图像平均光流位移;
ni为前后两帧图像中的元素最小偏移量;
rows:图像行数;
cols:图像列数;
其中,所述步骤222)中,用以下公式等效替换原公式:
E=2*(n0+nrows*clos)/rows*cols
E为等效后的前后两帧的图像平均光流位移;
n0为前后两帧图像中的元素最小偏移量;
nrows*cols为前后两帧图像中的元素最大偏移量;
rows:图像行数;
cols:图像列数;
其中,所述步骤(13)中,按照下列步骤进行光流场阈值计算:
131)按照下列公式对前后两帧图像的偏移量方差进行计算;
其中:为前后两帧的图像平均光流位移;
n为前后两帧图像的位移方差;
132)根据下列公式确定有效光流阈值:
其中:为有效光流阈值;
所述步骤(14)中,找出满足下列公式的{ni},作为运动目标的区域:
所述步骤(14)中,按照下列步骤计算运动目标的轮廓模型:
141)按照下列公式截取运动目标区域的最大内接圆:
(xi,yi)为区域{ni}上的顶点;
其中,A为运动目标区域面积;
(xi,yi)为区域{ni}上的顶点ni;
(xi+1,yi+1)为顶点ni的后一个顶点ni+1坐标;
Cx为运动目标区域多边形中心的X轴坐标;
Cy为运动目标区域多边形中心的Y轴坐标;
r为运动目标区域多边形最大内接圆半径;
142)根据步骤(141)中的最大内接圆计算该圆的最大内接矩形S:
143)设定步骤(142)中的内接圆的最大内接矩形作为运动目标的轮廓模 型。
较所述步骤(1)还包括以下步骤:
(15)按照下列公式计算运动区域或运动区域模型的RGB均值,并进行记 录:
其中为运动区域内的红色分量平均强度;
Rn为运动目标区域内第n个元素红色分量平均强度;
为运动区域内的绿色分量平均强度;
Gn为运动目标区域内第n个元素绿色分量平均强度;
为运动区域内的蓝色分量平均强度;
Bn为运动目标区域内第n个元素红蓝色分量平均强度;
n为运动区域内总分量数。
较优的,所述步骤(2)中,按照以下步骤实现目标识别:
(21)根据预设的轮廓数值条件(n1,n2,…ni…nn),对(n1,n2,…ni…nn)取交集,对不属于交集{Ni}的目标进行排除;得到目标集{Xi};
(22)判断排除后的目标集{Xi}中元素是否唯一,如是,则确定该唯一目标 为跟随目标;
如不是,则计算目标的所有条件值,并且将每个条件分配权重,得到权重 (p1,p2,…pi…pn),根据权重按照下列公式计算目标轮廓的概率:
其中,Px表示步骤(22)中目标x的概率;
pi表示第i个条件的权重;
fx(ni)表示目标x在第n个条件下的条件值;
(23)计算符合步骤(22)的每个目标的概率值,并按照大小进行排序, 选取最大概率值的目标作为跟随目标;
其中,还包括以下步骤:
(24)跟随运动过程中,按照卡尔曼滤波算法进行对目标位置进行预测;
其中,按照下列公式预测目标位置:
xk=(2xk-1-xk-2)+Kgk(2xk-1-xk-2-VkxΔt)
Kgk=σk 2/σk 2+C2
Δμk-1=(1-Kgk-1)σk-1 2/2
yk=(2yk-1-yk-2)+Kgk(2yk-1-yk-2-VkyΔt)
Kgk=σk 2/σk 2+C2
Δμk-1=(1-Kgk-1)σk-1 2/2
其中,xk为在K状态下目标预测的x轴坐标;
xk-1为在K-1状态下目标实际x轴坐标;
xk-2为在K-2状态下目标实际x轴坐标;
yk为在K状态下目标预测的y轴坐标;
yk-1为在K-1状态下目标实际y轴坐标;
yk-2为在K-2状态下目标实际y轴坐标;
Kgk为k-1到k状态的变化增益,可以按照上述公式进行计算;
Vkx为观测到的在k状态目标的移动速度;
Δt为K-1状态到K状态的时间差;
Δμk-1为k-1状态下的最优偏差;
σk为k状态下的预测值高斯噪声偏差;
(25)结合预测位置进行目标和目标轮廓进行相似性判断,根据相似度和 位置进行评价,验证该目标为跟随目标:
其中,按照下列公式实现对跟随目标的验证:
其中,dist(Xk-1,Xk)为目标X在K状态值与在K-1状态值的目标相似度;
X(k-1)i为k-1状态下的目标在第i条件下的值;
Xki为k状态下的目标在i条件下的值;
按照下列公式实现评价:
P验证=P验证1dist(Xk-1,Xk)+P验证2dist(PX预,PX实际测量)
dist(PX预,PX实际测量)=PX实际测量-PX预/PX实际测量
其中,P验证为在K状态下目标X的验证值,若其大于50%则验证通过;
P验证1为在K状态下Xk与Xk-1相似度权重;
PX预为K状态下预测下的X目标位置;
PX实际测量为K状态下实际预测的X目标位置;
P验证2为在K状态下PX预与PX实际测量的位置关系权重;
较优的,在步骤(3)中,按照以下步骤实现人手检测多目标排除:
31)将检测范围内的所有目标外接圆简化为外接椭圆模型,设其长轴为a, 短轴为b,识别总面积为S,目标X的面积为SX;
确定条件一:a/b∈[1,4);确定条件二:取两个条件均符 合的目标{Xi},排除其他目标;
32)如果{Xi}中是单一元素,则确定该Xi为跟随的目标;
如果存在多个元素,则按照下列公式进行概率计算:
Px=p1f(ax/bx)+p2*f(Sx/S)
其中,Px为满足条件的X目标是跟随目标的概率;
p1设置为条件一的权重;
p2设置为条件二的权重;
f(ax/bx)设置为ax/bx与条件一区间极值的关系函数;
f(Sx/S)设置为Sx/S与条件二区间极值的关系函数。
33)遍历计算步骤32)中的每一个目标概率值;排序,选取概率值最大的 目标,确定其为跟随目标。
通过步骤31)至33)能够有效排除非跟随目标,防止目标跟随实现中其他 目标的干扰。
较优的,在步骤(3)中,采用以下步骤实现目标动作的适应:
34)采用中值滤波算法实现对采集图像的处理;
35)采用膨胀算法对图像进行二次处理;
36)采用腐蚀算法对目标图像进行三次处理;
37)进行CAMSHIFT算法对目标进行迭代并根据迭代结果进行目标跟踪;
38)将跟踪目标区域进行R、G、B均值计算,每50帧进行一次卡尔曼加权 滤波计算,排除跟踪目标区域的光污染干扰。
较优的,在步骤34)中,按照下列步骤进行:
341)设th为门限:m为整个识别窗口的长度像素值,n为整个识别窗口的 宽度像素值,
当m、n均为奇数时,
当m、n其中至少一个为偶数时,则
342)将检测到的目标窗口每一个像素值进行排序,建立窗口像素的直方图 H,确定其中中值mnm,记下亮度小于等于mnm的像素个数nmn。
343)对于最左亮度的每个像素pgli,做:
H(pgli')=H(pgli)-1
nnmgli'=nnmgli-1
其中,H(pgli)为计算前的pgli像素灰度值;
H(pgli')为计算后的pgli像素灰度值;
nnmgli'为计算后的亮度小于等于mnm的像素个数;
nnmgli为计算前的亮度小于等于mnm的像素个数;
344)对于最右列亮度的每个像素pgri,做:
H(pgri')=H(pgri)+1
nnmgri'=nnmgri-1
其中,H(pgri)为计算前的pgri像素灰度值;
H(pgri')为计算后的pgri像素灰度值;
nnmgri'为计算后的亮度小于等于mnm的像素个数;
nnmgri为计算前的亮度小于等于mnm的像素个数;
345)如果nnmgri'=th则跳转至348);
346)如果nnmgri'>th则跳转至347);
如果nnmgri'<th,按照下列公式对mnm、nnm进行变换:
mnm'=mnm+1
nnm'=nnm+H[mnm]
以mnm'、nnm'值重复步骤341)至346);
347)当nnmgri'>th,按照下列公式对mnm、nnm进行变换:
mnm”=mnm+1
nnm”=nnm+H[mnm]
以mnm”、nnm”值重复步骤341)至346);
348)如果窗口的右侧不是图像的右边界,则跳转至344);
如果窗口的右侧不是图像的右边界,则跳转至349);
349)对于最上行亮度的每个像素pgai,做:
H(pgai')=H(pgai)-1
nnmgai'=nnmgai-1
其中,H(pgai)为计算前的pgai像素灰度值;
H(pgai')为计算后的pgai像素灰度值;
nnmgai'为计算后的亮度小于等于mnm的像素个数;
nnmgai为计算前的亮度小于等于mnm的像素个数;
3410)对于最下行亮度的每个像素pgri,做:
H(pgbi')=H(pgbi)-1
nnmgbi'=nnmgbi-1
其中,H(pgbi)为计算前的pgri像素灰度值;
H(pgbi')为计算后的pgri像素灰度值;
nnmgbi'为计算后的亮度小于等于mnm的像素个数;
nnmgbi为计算前的亮度小于等于mnm的像素个数;
3411)如果nnmgbi'=th则跳转至348);
3412)如果nnmgbi'>th则跳转至347);
如果nnmgbi'<th,按照下列公式对mnm、nnm进行变换:
mnm'=mnm+1
nnm'=nnm+H[mnm]
以mnm'、nnm'值重复步骤349)至3410);
3413)当nnmgbi'>th,按照下列公式对mnm、nnm进行变换: mnm”=mnm+1
nnm”=nnm+H[mnm]
以mnm”、nnm”值重复步骤349)至3410);
其中,H[mnm]为mnm的灰度。
如果窗口的底行不是图像的下边界,则跳转至341)。
如果是,则结束。
较优的,在步骤35)中,按照下列步骤进行图像的二次处理:
351)用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆 盖的二值图像做“与”运算,如果都为0,结构图像的该像素为0,否则为1;
352)取所有值为1的像素作为二次处理完的图像结果。
较优的,在步骤36)中,按照下列步骤进行图像的三次处理:
361)用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆 盖的二值图像做“与”运算,如果都为1,结构图像的该像素为1,否则为0。
362)取所有值为1的像素作为三次处理完的图像结果。
较优的,在步骤37)中,按照下列步骤进行图像的目标迭代:
371)按照下列步骤实现反向投影,
3711)首先将图像从RGB空间转换到HSV空间;
3712)对其中的H分量作直方图,取得颜色概率查找表;
3713)将图像中每个像素的值用其颜色出现的概率对替换,得到颜色概率 分布图;
372)通过光流检测目标,找出目标窗口X;
373)根据下列步骤实现CAMSHIFT迭代,
3731)按照下列公式计算零阶距:
其中,rows为目标窗口的总行数;
clos为目标窗口的总列数;
(xi,yi)为目标图像X中的点I的坐标;
其中,x、y为每个图像中每个像素的坐标;
3732)计算一阶距:
3733)按照下列公式计算目标窗口X的质心C;
xc=M10/M00
yc=M01/M00
其中,(xc,yc)为质心C的坐标;
3734)移动目标窗口的中心M(xm,ym)到质心C(xc,yc),如果移动距离大于预 设的固定阈值,则重复上面步骤计算质心C',直到目标窗口的中心M与质心C'间 的移动距离小于预设的固定阈值;
当循环运算的次数达到最大值,停止计算,反馈出目前目标窗口中心M的 坐标;
374)将视频的所有帧做步骤3731)至3734)的运算,并将上一帧的结果, 即上一帧目标窗的大小和中心,作为下一帧目标窗的初始值,持续迭代;
所述步骤38)中,按照下列步骤实现将跟踪目标区域进行R、G、B均值计 算,每50帧进行一次卡尔曼加权滤波计算,排除跟踪目标区域的光污染干扰:
381)每50帧记录跟随目标的RGB均值,并存储;
382)利用步骤381)计算的前5次记录,将每次记录分配权重,得到前5 次记录的数值集和对应的权重集;
383)利用所述步骤382)中记录的前5次记录的数值集和对应的权重集根 据卡尔曼滤波公式算法计算下一次的目标RGB均值,得到下一个50帧时的预测 目标RGB值;
其中卡尔曼滤波算法属于现有技术,本申请文件中不再对其赘述。步骤381) 至383)能够有效实现对环境干扰因素的排除,防止因光线等造成跟随过程中目 标识别干扰。
384)跟据步骤383)的预测目标RGB值,找到与预测目标RGB值近似的目 标,确定其为跟随目标;
通过第(3)步骤能够在跟随过程中既实现干扰目标的排除,并且在运动过 程中实现跟随同时减少光线等环境干扰因素对跟随目标的干扰,使用本方法能 够有效实现对目标的跟随。
所述步骤(4)中,按照下列步骤实现机器人的将图像坐标中的x,y转换 成以图像中心为圆心o的坐标,并换算出第一、二、三、四象限:
41)追踪到目标以后,按照下列公式将目标中心点M作为目标在坐标系中 的有效点,并换算坐标系;
xm0=round(xm-cols/2)
ym0=round(ym-cols/2)
其中(xm,ym)为换算前图像坐标系的目标窗口中心点M坐标值;
rows为图像的总行数;
cols为图像的总列数;
(xm0,ym0)为换算后的点M'坐标值;
42)然后通过目标点在坐标系中的位置(xm0,ym0),换算出机器人运动控制命 令,驱动电机让机器人实现跟踪目标移动。
通过坐标系变换后能够更好地完成坐标识别,方便识别过程中产生问题时 的识别。
本发明的有益效果是:本发明提供了一种效率较高,且能够准确排出干扰 的动态目标跟踪方法,能够有效实现动态目标跟踪,并且运算简便,效率较高。
附图说明
图1是本发明流程示意图。
图2是图1中具体流程示意总图。
图3是图1中目标检测的流程示意图。
图4是图1中目标跟踪步骤目标干扰排除流程示意图。
图5是图1中目标跟踪步骤目标干扰排除另一流程示意图。
图6是图1中目标跟踪步骤目标动作适应流程示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明:
如图1至图6所示,一种实现动态目标跟随的方法,包括以下步骤:
(1)目标检测;
(2)目标识别;
(3)目标跟踪;
(4)目标反馈;
其中,所述步骤(3)中包括目标干扰排除和目标动作适应。
特别的,所述步骤(1)中按照以下步骤实现:
(11)利用图像传感器捕捉每一帧图像;
(12)针对前后两帧图像进行光流场计算;
(13)进行光流场阈值计算;
(14)运动目标轮廓确定;
其中,所述步骤(12)中,按照以下步骤进行光流场计算:
121)对前后两帧中图像的每个元素偏移量ni进行排序;
122)按照下列公式进行光流场分析检测点的计算:
其中,为前后两帧的图像平均光流位移;
ni为前后两帧图像中的元素最小偏移量;
rows:图像行数;
cols:图像列数;
其中,所述步骤222)中,用以下公式等效替换原公式:
E=2*(n0+nrows*clos)/rows*cols
E为等效后的前后两帧的图像平均光流位移;
n0为前后两帧图像中的元素最小偏移量;
nrows*cols为前后两帧图像中的元素最大偏移量;
rows:图像行数;
cols:图像列数;
其中,所述步骤(13)中,按照下列步骤进行光流场阈值计算:
131)按照下列公式对前后两帧图像的偏移量方差进行计算;
其中:为前后两帧的图像平均光流位移;
为前后两帧图像的位移方差;
132)根据下列公式确定有效光流阈值:
其中:为有效光流阈值;
所述步骤(14)中,找出满足下列公式的{ni},作为运动目标的区域:
所述步骤(14)中,按照下列步骤计算运动目标的轮廓模型:
141)按照下列公式截取运动目标区域的最大内接圆:
(xi,yi)为区域{ni}上的顶点;
其中,A为运动目标区域面积;
(xi,yi)为区域{ni}上的顶点ni;
(xi+1,yi+1)为顶点ni的后一个顶点ni+1坐标;
Cx为运动目标区域多边形中心的X轴坐标;
Cy为运动目标区域多边形中心的Y轴坐标;
r为运动目标区域多边形最大内接圆半径;
142)根据步骤(141)中的最大内接圆计算该圆的最大内接矩形S:
143)设定步骤(142)中的内接圆的最大内接矩形作为运动目标的轮廓模 型。
特别的,所述步骤(1)还包括以下步骤:
(15)按照下列公式计算运动区域或运动区域模型的RGB均值,并进行记 录:
其中为运动区域内的红色分量平均强度;
Rn为运动目标区域内第n个元素红色分量平均强度;
为运动区域内的绿色分量平均强度;
Gn为运动目标区域内第n个元素绿色分量平均强度;
为运动区域内的蓝色分量平均强度;
Bn为运动目标区域内第n个元素红蓝色分量平均强度;
n为运动区域内总分量数。
特别的,所述步骤(2)中,按照以下步骤实现目标识别:
(21)根据预设的轮廓数值条件(n1,n2,…ni…nn),对(n1,n2,…ni…nn)取交集,对不属于交集{Ni}的目标进行排除;得到目标集{Xi};
(22)判断排除后的目标集{Xi}中元素是否唯一,如是,则确定该唯一目标 为跟随目标;
如不是,则计算目标的所有条件值,并且将每个条件分配权重,得到权重 (p1,p2,…pi…pn),根据权重按照下列公式计算目标轮廓的概率:
其中,Px表示步骤(22)中目标x的概率;
pi表示第i个条件的权重;
fx(ni)表示目标x在第n个条件下的条件值;其中,目标x越接近条件,则fx(ni) 值越大。
(23)计算符合步骤(22)的每个目标的概率值,并按照大小进行排序, 选取最大概率值的目标作为跟随目标;
其中,还包括以下步骤:
(24)跟随运动过程中,按照卡尔曼滤波算法进行对目标位置进行预测;
其中,按照下列公式预测目标位置:
xk=(2xk-1-xk-2)+Kgk(2xk-1-xk-2-VkxΔt)
Kgk=σk 2/σk 2+C2
Δμk-1=(1-Kgk-1)σk-1 2/2
yk=(2yk-1-yk-2)+Kgk(2yk-1-yk-2-VkyΔt)
Kgk=σk 2/σk 2+C2
Δμk-1=(1-Kgk-1)σk-1 2/2
其中,xk为在K状态下目标预测的x轴坐标;
xk-1为在K-1状态下目标实际x轴坐标;
xk-2为在K-2状态下目标实际x轴坐标;
yk为在K状态下目标预测的y轴坐标;
yk-1为在K-1状态下目标实际y轴坐标;
yk-2为在K-2状态下目标实际y轴坐标;
Kgk为k-1到k状态的变化增益,可以按照上述公式进行计算;
Vkx为观测到的在k状态目标的移动速度;
Δt为K-1状态到K状态的时间差;
Δμk-1为k-1状态下的最优偏差;
σk为k状态下的预测值高斯噪声偏差;
(25)结合预测位置进行目标和目标轮廓进行相似性判断,根据相似度和 位置进行评价,验证该目标为跟随目标:
其中,按照下列公式实现对跟随目标的验证:
其中,dist(Xk-1,Xk)为目标X在K状态值与在K-1状态值的目标相似度;
X(k-1)i为k-1状态下的目标在第i条件下的值;
Xki为k状态下的目标在i条件下的值;
按照下列公式实现评价:
P验证=P验证1dist(Xk-1,Xk)+P验证2dist(PX预,PX实际测量)
dist(PX预,PX实际测量)=PX实际测量-PX预/PX实际测量
其中,P验证为在K状态下目标X的验证值,若其大于50%则验证通过;
P验证1为在K状态下Xk与Xk-1相似度权重;
PX预为K状态下预测下的X目标位置;
PX实际测量为K状态下实际预测的X目标位置;
P验证2为在K状态下PX预与PX实际测量的位置关系权重;
特别的,在步骤(3)中,按照以下步骤实现人手检测多目标排除:
31)将检测范围内的所有目标外接圆简化为外接椭圆模型,设其长轴为a, 短轴为b,识别总面积为S,目标X的面积为SX;
确定条件一:a/b∈[1,4);确定条件二:取两个条件均符 合的目标{Xi},排除其他目标;
32)如果{Xi}中是单一元素,则确定该Xi为跟随的目标;
如果存在多个元素,则按照下列公式进行概率计算:
Px=p1f(ax/bx)+p2*f(Sx/S)
其中,Px为满足条件的X目标是跟随目标的概率;
p1设置为条件一的权重;
p2设置为条件二的权重;
f(ax/bx)设置为ax/bx与条件一区间极值的关系函数;
f(Sx/S)设置为Sx/S与条件二区间极值的关系函数。
关系函数值与条件范围值之间的关系需要成正比,即当越接近范围值时, 关系函数值越大,本实施例中,将关系函数设定为条件的线性函数如下:
f(ax/bx)=1/3(ax/bx)-1/3
f(Sx/S)=40/3(Sx/S)-2/3
跟据上述函数与分配的条件权重即可实现计算其为目标的概率。
其他实施例中,也可以将关系函数与条件的函数设置为其他具有正相关关 系的函数,以达到相同的技术效果。
33)遍历计算步骤32)中的每一个目标概率值;排序,选取概率值最大的 目标,确定其为跟随目标。
特别的,在步骤(3)中,采用以下步骤实现目标动作的适应:
34)采用中值滤波算法实现对采集图像的处理;
35)采用膨胀算法对图像进行二次处理;
36)采用腐蚀算法对目标图像进行三次处理;
37)进行CAMSHIFT算法对目标进行迭代并根据迭代结果进行目标跟踪;
38)将跟踪目标区域进行R、G、B均值计算,每50帧进行一次卡尔曼加权 滤波计算,排除跟踪目标区域的光污染干扰。
特别的,在步骤34)中,按照下列步骤进行:
341)设th为门限:m为整个识别窗口的长度像素值,n为整个识别窗口的 宽度像素值,
当m、n均为奇数时,
当m、n其中至少一个为偶数时,则
342)将检测到的目标窗口每一个像素值进行排序,建立窗口像素的直方图 H,确定其中中值mnm,记下亮度小于等于mnm的像素个数nmn。
343)对于最左亮度的每个像素pgli,做:
H(pgli')=H(pgli)-1
nnmgli'=nnmgli-1
其中,H(pgli)为计算前的pgli像素灰度值;
H(pgli')为计算后的pgli像素灰度值;
nnmgli'为计算后的亮度小于等于mnm的像素个数;
nnmgli为计算前的亮度小于等于mnm的像素个数;
344)对于最右列亮度的每个像素pgri,做:
H(pgri')=H(pgri)+1
nnmgri'=nnmgri-1
其中,H(pgri)为计算前的pgri像素灰度值;
H(pgri')为计算后的pgri像素灰度值;
nnmgri'为计算后的亮度小于等于mnm的像素个数;
nnmgri为计算前的亮度小于等于mnm的像素个数;
345)如果nnmgri'=th则跳转至348);
346)如果nnmgri'>th则跳转至347);
如果nnmgri'<th,按照下列公式对mnm、nnm进行变换:
mnm'=mnm+1
nnm'=nnm+H[mnm]
其中,H[mnm]为中值mnm的灰度;
以mnm'、nnm'值重复步骤341)至346);
347)当nnmgri'>th,按照下列公式对mnm、nnm进行变换:
mnm”=mnm+1
nnm”=nnm+H[mnm]
以mnm”、nnm”值重复步骤341)至346);
348)如果窗口的右侧不是图像的右边界,则跳转至344);
如果窗口的右侧不是图像的右边界,则跳转至349);
349)对于最上行亮度的每个像素pgai,做:
H(pgai')=H(pgai)-1
nnmgai'=nnmgai-1
其中,H(pgai)为计算前的pgai像素灰度值;
H(pgai')为计算后的pgai像素灰度值;
nnmgai'为计算后的亮度小于等于mnm的像素个数;
nnmgai为计算前的亮度小于等于mnm的像素个数;
3410)对于最下行亮度的每个像素pgri,做:
H(pgbi')=H(pgbi)-1
nnmgbi'=nnmgbi-1
其中,H(pgbi)为计算前的pgri像素灰度值;
H(pgbi')为计算后的pgri像素灰度值;
nnmgbi'为计算后的亮度小于等于mnm的像素个数;
nnmgbi为计算前的亮度小于等于mnm的像素个数;
3411)如果nnmgbi'=th则跳转至348);
3412)如果nnmgbi'>th则跳转至347);
如果nnmgbi'<th,按照下列公式对mnm、nnm进行变换:
mnm'=mnm+1
nnm'=nnm+H[mnm]
以mnm'、nnm'值重复步骤349)至3410);
3413)当nnmgbi'>th,按照下列公式对mnm、nnm进行变换:
mnm”=mnm+1
nnm”=nnm+H[mnm]
以mnm”、nnm”值重复步骤349)至3410);
如果窗口的底行不是图像的下边界,则跳转至341);
如果窗口的底行是图像的下边界,则结束。
经过本方法处理后,可以使目标取得图像更为平滑。
特别的,在步骤35)中,按照下列步骤进行图像的二次处理:
351)用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆 盖的二值图像做“与”运算,如果都为0,结构图像的该像素为0,否则为1;
352)取所有值为1的像素作为二次处理完的图像结果。
特别的,在步骤36)中,按照下列步骤进行图像的三次处理:
361)用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆 盖的二值图像做“与”运算,如果都为1,结构图像的该像素为1,否则为0。
362)取所有值为1的像素作为三次处理完的图像结果。
通过膨胀和腐蚀算法处理后的图像能够降低噪声点,为后续跟随做准备。
特别的,在步骤37)中,按照下列步骤进行图像的目标迭代:
371)按照下列步骤实现反向投影,
3711)首先将图像从RGB空间转换到HSV空间;
3712)对其中的H分量作直方图,取得颜色概率查找表;
3713)将图像中每个像素的值用其颜色出现的概率对替换,得到颜色概率 分布图;
372)通过光流检测目标,找出目标窗口X;
373)根据下列步骤实现CAMSHIFT迭代,
3731)按照下列公式计算零阶距:
其中,rows为目标窗口的总行数;
clos为目标窗口的总列数;
(xi,yi)为目标图像X中的点I的坐标;
其中,x、y为每个图像中每个像素的坐标;
3732)计算一阶距:
3733)按照下列公式计算目标窗口X的质心C;
xc=M10/M00
yc=M01/M00
其中,(xc,yc)为质心C的坐标;
3734)移动目标窗口的中心M(xm,ym)到质心C(xc,yc),如果移动距离大于预 设的固定阈值,则重复上面步骤计算质心C',直到目标窗口的中心M与质心C'间 的移动距离小于预设的固定阈值;
当循环运算的次数达到最大值,停止计算,反馈出目前目标窗口中心M的 坐标;
通过camshift能够有效实现运动中的跟随计算。
374)将视频的所有帧做步骤3731)至3734)的运算,并将上一帧的结果, 即上一帧目标窗的大小和中心,作为下一帧目标窗的初始值,持续迭代;
所述步骤38)中,按照下列步骤实现将跟踪目标区域进行R、G、B均值计 算,每50帧进行一次卡尔曼加权滤波计算,排除跟踪目标区域的光污染干扰:
381)每50帧记录跟随目标的RGB均值,并存储;
382)利用步骤381)计算的前5次记录,将每次记录分配权重,得到前5 次记录的数值集和对应的权重集;
383)利用所述步骤382)中记录的前5次记录的数值集和对应的权重集根 据卡尔曼滤波公式算法计算下一次的目标RGB均值,得到下一个50帧时的预测 目标RGB值;由于卡尔曼滤波算法为现有技术,此处不再赘述。
384)跟据步骤383)的预测目标RGB值,找到与预测目标RGB值近似的目 标,确定其为跟随目标。
步骤381)至384),能够有效减少环境对目标干扰的影响,如光照等影响 运动过程中目标的实现。
所述步骤(4)中,按照下列步骤实现机器人的将图像坐标中的x,y转换 成以图像中心为圆心o的坐标,并换算出第一、二、三、四象限:
41)追踪到目标以后,按照下列公式将目标中心点M作为目标在坐标系中 的有效点,并换算坐标系;
xm0=round(xm-cols/2)
ym0=round(ym-cols/2)
其中(xm,ym)为换算前图像坐标系的目标窗口中心点M坐标值;
rows为图像的总行数;
cols为图像的总列数;
(xm0,ym0)为换算后的点M'坐标值;
42)然后通过目标点在坐标系中的位置(xm0,ym0),换算出机器人运动控制命 令,驱动电机让机器人实现跟踪目标移动。
经过本方法换算后的坐标系能够更有利于识别,利于机器人跟随运动功能 的实现。
本方法可以使用在机器人上,实现跟随人或其他移动物体运动,可以弥补 某些机器人目前不具备的视觉导航功能的缺陷。
本技术方案可以采用不同的条件进行评价,如图4,就采用轮廓条件和HSV 进行过滤后实现单目标的确定;其他实施方式中,也可以设置其他条件进行确 定。
图2是本实施例中目标跟随方法的具体流程图。
工作时,利用机器人常规的硬件模块,如摄像头、驱动电机、控制模块等, 进行按照本技术方案进行常规的编程导入,使得机器人首先能够利用摄像头进 行数据采集,在控制模块的控制下,驱动电机实现跟随。
具体设计思路为:目标检测、目标识别、目标跟踪、目标反馈。
跟随目标检测使用的是光流Farneback算法,该算法是密集光流算法,是 对图像中每一个点进行光流计算。光流算法是通过相邻的前后两帧相同大小的 图像矩阵中的每一个元素的两个值进行计算,分别表示这个像素点在x方向和y 方向的运动量,这两帧的图像的关系式为:
prev Im g(y,x)~next Im g(y+flow(y,x))[1],x+flow(y,x)[0])
通过对密集光流场的动态的阈值设计,可以过滤掉干扰光流点,得到需要 跟随目标的光流场,并计算出跟随目标的RGB和轮廓。然后通过颜色直方图对 检测到的目标进行分析。
目标识别
在检测跟随目标时如果在非理想环境或者在检测过程中未按照检测要求进 行,则可能会检测出非跟随目标,在现实生活中,如果用户量比较大,那么出 现这种情况是比较常见的,那么在目标检测之后进行跟随目标识别就非常有必 要,这样可以排除掉大部分外部干扰。
在目标识别中,经常大量测试,会对跟随目标进行干扰的会有其 他和人手相似的物体、非唤醒跟随导航人员的手、强光照射、能见度 低等、跟随目标太远等因数,在不同的因素影响下,有不同的解决方 法,在跟随识别算法中,主要是排除外形和颜色和手类是的物体和其 他人手的干扰问题。解决方案如图1、2所示:
目标跟踪
目标跟踪是在确定唯一跟随目标之后采取Camshift算法,该算法全称为:Continuously Adaptive Mean-SHIFT。其基本思想是对视频序列的所有图像帧 都作MeanShift运算,并将上一帧的结果(即搜索窗口的中心位置和窗口大小) 作为下一帧MeanShift算法的搜索窗口的初始值,如此迭代下去。meanShift是 针对单张图片寻找最优迭代结果,而camShift则是针对视频序列来处理,并对 该序列中的每一帧图片都调用meanShift来寻找最优迭代结果。正是由于 camShift针对一个视频序列进行处理,从而保证其可以不断调整窗口的大小, 如此一来,当目标的大小发生变化的时候,该算法就可以自适应地调整目标区 域继续跟踪。
目标反馈
将图像坐标中的x,y转换成以图像中心为圆心o的坐标,并换算出第一、 二、三、四象限。当通过算法追踪到目标以后,将目标中心点作为目标在坐标 系中的有效点,并换算坐标系。然后通过目标点在坐标系中的位置,换算出机 器人运动控制命令,让机器人达到跟踪目标移动,运动方式平滑连贯。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术 人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡 本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推 理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范 围内。
Claims (10)
1.一种实现动态目标跟踪的方法,其特征是;包括以下步骤:
(1)目标检测;
(2)目标识别;
(3)目标跟踪;
(4)目标反馈;
其中,所述步骤(3)中包括目标干扰排除和目标动作适应。
2.如权利要求1所述的实现动态目标跟踪的方法,其特征是:所述步骤(1)中按照以下步骤实现:
(11)利用图像传感器捕捉每一帧图像;
(12)针对前后两帧图像进行光流场计算;
(13)进行光流场阈值计算;
(14)运动目标轮廓确定;
其中,所述步骤(12)中,按照以下步骤进行光流场计算:
121)对前后两帧中图像的每个元素偏移量ni进行排序;
122)按照下列公式进行光流场分析检测点的计算:
其中,为前后两帧的图像平均光流位移;
ni为前后两帧图像中的元素最小偏移量;
rows:图像行数;
cols:图像列数;
其中,所述步骤222)中,用以下公式等效替换原公式:
E=2*(n0+nrows*clos)/rows*cols
E为等效后的前后两帧的图像平均光流位移;
n0为前后两帧图像中的元素最小偏移量;
nrows*cols为前后两帧图像中的元素最大偏移量;
rows:图像行数;
cols:图像列数;
其中,所述步骤(13)中,按照下列步骤进行光流场阈值计算:
131)按照下列公式对前后两帧图像的偏移量方差进行计算;
其中:为前后两帧的图像平均光流位移;
为前后两帧图像的位移方差;
132)根据下列公式确定有效光流阈值:
其中:为有效光流阈值;
所述步骤(14)中,找出满足下列公式的{ni},作为运动目标的区域:
所述步骤(14)中,按照下列步骤计算运动目标的轮廓模型:
141)按照下列公式截取运动目标区域的最大内接圆:
(xi,yi)为区域{ni}上的顶点;
其中,A为运动目标区域面积;
(xi,yi)为区域{ni}上的顶点ni;
(xi+1,yi+1)为顶点ni的后一个顶点ni+1坐标;
Cx为运动目标区域多边形中心的X轴坐标;
Cy为运动目标区域多边形中心的Y轴坐标;
r为运动目标区域多边形最大内接圆半径;
142)根据步骤(141)中的最大内接圆计算该圆的最大内接矩形S:
143)设定步骤(142)中的内接圆的最大内接矩形作为运动目标的轮廓模型。
3.如权利要求1所述的实现动态目标跟踪的方法,其特征是:所述步骤(1)还包括以下步骤:
(15)按照下列公式计算运动区域或运动区域模型的RGB均值,并进行记录:
其中为运动区域内的红色分量平均强度;
Rn为运动目标区域内第n个元素红色分量平均强度;
为运动区域内的绿色分量平均强度;
Gn为运动目标区域内第n个元素绿色分量平均强度;
为运动区域内的蓝色分量平均强度;
Bn为运动目标区域内第n个元素红蓝色分量平均强度;
n为运动区域内总分量数。
4.如权利要求1所述的实现动态目标跟踪的方法,其特征是:所述步骤(2)中,按照以下步骤实现目标识别:
(21)根据预设的轮廓数值条件(n1,n2,…ni…nn),对(n1,n2,…ni…nn)取交集,对不属于交集{Ni}的目标进行排除;得到目标集{Xi};
(22)判断排除后的目标集{Xi}中元素是否唯一,如是,则确定该唯一目标为跟随目标;
如不是,则计算目标的所有条件值,并且将每个条件分配权重,得到权重(p1,p2,…pi…pn),根据权重按照下列公式计算目标轮廓的概率:
其中,Px表示步骤(22)中目标x的概率;
pi表示第i个条件的权重;
fx(ni)表示目标x在第n个条件下的条件值;
(23)计算符合步骤(22)的每个目标的概率值,并按照大小进行排序,选取最大概率值的目标作为跟随目标;
其中,还包括以下步骤:
(24)跟随运动过程中,按照卡尔曼滤波算法进行对目标位置进行预测;
其中,按照下列公式预测目标位置:
xk=(2xk-1-xk-2)+Kgk(2xk-1-xk-2-VkxΔt)
Kgk=σk 2/σk 2+C2
Δμk-1=(1-Kgk-1)σk-1 2/2
yk=(2yk-1-yk-2)+Kgk(2yk-1-yk-2-VkyΔt)
Kgk=σk 2/σk 2+C2
Δμk-1=(1-Kgk-1)σk-1 2/2
其中,xk为在K状态下目标预测的x轴坐标;
xk-1为在K-1状态下目标实际x轴坐标;
xk-2为在K-2状态下目标实际x轴坐标;
yk为在K状态下目标预测的y轴坐标;
yk-1为在K-1状态下目标实际y轴坐标;
yk-2为在K-2状态下目标实际y轴坐标;
Kgk为k-1到k状态的变化增益,可以按照上述公式进行计算;
Vkx为观测到的在k状态目标的移动速度;
Δt为K-1状态到K状态的时间差;
Δμk-1为k-1状态下的最优偏差;
σk为k状态下的预测值高斯噪声偏差;
(25)结合预测位置进行目标和目标轮廓进行相似性判断,根据相似度和位置进行评价,验证该目标为跟随目标:
其中,按照下列公式实现对跟随目标的验证:
其中,dist(Xk-1,Xk)为目标X在K状态值与在K-1状态值的目标相似度;
X(k-1)i为k-1状态下的目标在第i条件下的值;
Xki为k状态下的目标在i条件下的值;
按照下列公式实现评价:
P验证=P验证1dist(Xk-1,Xk)+P验证2dist(PX预,PX实际测量)
dist(PX预,PX实际测量)=PX实际测量-PX预/PX实际测量
其中,P验证为在K状态下目标X的验证值,若其大于50%则验证通过;
P验证1为在K状态下Xk与Xk-1相似度权重;
PX预为K状态下预测下的X目标位置;
PX实际测量为K状态下实际预测的X目标位置;
P验证2为在K状态下PX预与PX实际测量的位置关系权重。
5.如权利要求1所述的实现动态目标跟踪的方法,其特征是:在步骤(3)中,按照以下步骤实现人手检测多目标排除:
31)将检测范围内的所有目标外接圆简化为外接椭圆模型,设其长轴为a,短轴为b,识别总面积为S,目标X的面积为SX;
确定条件一:a/b∈[1,4);确定条件二:Sx/S∈(1/20,1/8);取两个条件均符合的目标{Xi},排除其他目标;
32)如果{Xi}中是单一元素,则确定该Xi为跟随的目标;
如果存在多个元素,则按照下列公式进行概率计算:
Px=p1f(ax/bx)+p2*f(Sx/S)
其中,Px为满足条件的X目标是跟随目标的概率;
p1设置为条件一的权重;
p2设置为条件二的权重;
f(ax/bx)设置为ax/bx与条件一区间极值的关系函数;
f(Sx/S)设置为Sx/S与条件二区间极值的关系函数;
33)遍历计算步骤32)中的每一个目标概率值;排序,选取概率值最大的目标,确定其为跟随目标。
6.如权利要求1所述的实现动态目标跟踪的方法,其特征是:在步骤(3)中,采用以下步骤实现目标动作的适应:
34)采用中值滤波算法实现对采集图像的处理;
35)采用膨胀算法对图像进行二次处理;
36)采用腐蚀算法对目标图像进行三次处理;
37)进行CAMSHIFT算法对目标进行迭代并根据迭代结果进行目标跟踪;
38)将跟踪目标区域进行R、G、B均值计算,每50帧进行一次卡尔曼加权滤波计算。
7.如权利要求6所述的动态目标跟随的方法,其特征是:在步骤34)中,按照下列步骤进行:
341)设th为门限:m为整个识别窗口的长度像素值,n为整个识别窗口的宽度像素值,
当m、n均为奇数时,
当m、n其中至少一个为偶数时,则
342)将检测到的目标窗口每一个像素值进行排序,建立窗口像素的直方图H,确定其中中值mnm,记下亮度小于等于mnm的像素个数nmn。
343)对于最左亮度的每个像素pgli,做:
H(pgli')=H(pgli)-1
nnmgli'=nnmgli-1
其中,H(pgli)为计算前的pgli像素灰度值;
H(pgli')为计算后的pgli像素灰度值;
nnmgli'为计算后的亮度小于等于mnm的像素个数;
nnmgli为计算前的亮度小于等于mnm的像素个数;
344)对于最右列亮度的每个像素pgri,做:
H(pgri')=H(pgri)+1
nnmgri'=nnmgri-1
其中,H(pgri)为计算前的pgri像素灰度值;
H(pgri')为计算后的pgri像素灰度值;
nnmgri'为计算后的亮度小于等于mnm的像素个数;
nnmgri为计算前的亮度小于等于mnm的像素个数;
345)如果nnmgri'=th则跳转至348);
346)如果nnmgri'>th则跳转至347);
如果nnmgri'<th,按照下列公式对mnm、nnm进行变换:
mnm'=mnm+1
nnm'=nnm+H[mnm]
以mnm'、nnm'值重复步骤341)至346);
347)当nnmgri'>th,按照下列公式对mnm、nnm进行变换:
mnm”=mnm+1
nnm”=nnm+H[mnm]
以mnm”、nnm”值重复步骤341)至346);
其中H[mnm]为mnm的灰度。
348)如果窗口的右侧不是图像的右边界,则跳转至344);
如果窗口的右侧不是图像的右边界,则跳转至349);
349)对于最上行亮度的每个像素pgai,做:
H(pgai')=H(pgai)-1
nnmgai'=nnmgai-1
其中,H(pgai)为计算前的pgai像素灰度值;
H(pgai')为计算后的pgai像素灰度值;
nnmgai'为计算后的亮度小于等于mnm的像素个数;
nnmgai为计算前的亮度小于等于mnm的像素个数;
3410)对于最下行亮度的每个像素pgri,做:
H(pgbi')=H(pgbi)-1
nnmgbi'=nnmgbi-1
其中,H(pgbi)为计算前的pgri像素灰度值;
H(pgbi')为计算后的pgri像素灰度值;
nnmgbi'为计算后的亮度小于等于mnm的像素个数;
nnmgbi为计算前的亮度小于等于mnm的像素个数;
3411)如果nnmgbi'=th则跳转至348);
3412)如果nnmgbi'>th则跳转至347);
如果nnmgbi'<th,按照下列公式对mnm、nnm进行变换:
mnm'=mnm+1
nnm'=nnm+H[mnm]
以mnm'、nnm'值重复步骤349)至3410);
3413)当nnmgbi'>th,按照下列公式对mnm、nnm进行变换:
mnm”=mnm+1
nnm”=nnm+H[mnm]
以mnm”、nnm”值重复步骤349)至3410);
如果窗口的底行不是图像的下边界,则跳转至341);
如果是,则结束。
8.如权利要求6所述的动态目标跟随的方法,其特征是:在步骤35)中,按照下列步骤进行图像的二次处理:
351)用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆盖的二值图像做“与”运算,如果都为0,结构图像的该像素为0,否则为1;
352)取所有值为1的像素作为二次处理完的图像结果。
9.如权利要求6所述的动态目标跟随的方法,其特征是:在步骤36)中,按照下列步骤进行图像的三次处理:
361)用3X3的结构元素,扫描二值图像的每一个像素,用结构元素与其覆盖的二值图像做“与”运算,如果都为1,结构图像的该像素为1,否则为0。
362)取所有值为1的像素作为二次处理完的图像结果。
10.如权利要求6所述的动态目标跟随的方法,其特征是:在步骤37)中,按照下列步骤进行图像的目标迭代:
371)按照下列步骤实现反向投影,
3711)首先将图像从RGB空间转换到HSV空间;
3712)对其中的H分量作直方图,取得颜色概率查找表;
3713)将图像中每个像素的值用其颜色出现的概率对替换,得到颜色概率分布图;
372)通过光流检测目标,找出目标窗口X;
373)根据下列步骤实现CAMSHIFT迭代,
3731)按照下列公式计算零阶距:
其中,rows为目标窗口的总行数;
clos为目标窗口的总列数;
(xi,yi)为目标图像X中的点I的坐标;
其中,x、y为每个图像中每个像素的坐标;
3732)计算一阶距:
3733)按照下列公式计算目标窗口X的质心C;
xc=M10/M00
yc=M01/M00
其中,(xc,yc)为质心C的坐标;
3734)移动目标窗口的中心M(xm,ym)到质心C(xc,yc),如果移动距离大于预设的固定阈值,则重复上面步骤计算质心C',直到目标窗口的中心M与质心C'间的移动距离小于预设的固定阈值;
当循环运算的次数达到最大值,停止计算,反馈出目前目标窗口中心M的坐标;
374)将视频的所有帧做步骤3731)至3734)的运算,并将上一帧的结果,即上一帧目标窗的大小和中心,作为下一帧目标窗的初始值,持续迭代;
所述步骤38)中,按照下列步骤实现将跟踪目标区域进行R、G、B均值计算,每50帧进行一次卡尔曼加权滤波计算:
381)每50帧记录跟随目标的RGB均值,并存储;
382)利用步骤381)计算的前5次记录,将每次记录分配权重,得到前5次记录的数值集和对应的权重集;
383)利用所述步骤382)中记录的前5次记录的数值集和对应的权重集根据卡尔曼滤波公式算法计算下一次的目标RGB均值,得到下一个50帧时的预测目标RGB值;
384)跟据步骤383)的预测目标RGB值,找到与预测目标RGB 值近似的目标,确定其为跟随目标;
所述步骤(4)中,按照下列步骤实现机器人的将图像坐标中的x,y转换成以图像中心为圆心o的坐标,并换算出第一、二、三、四象限:
41)追踪到目标以后,按照下列公式将目标中心点M作为目标在坐标系中的有效点,并换算坐标系;
xm0=round(xm-cols/2)
ym0=round(ym-cols/2)
其中(xm,ym)为换算前图像坐标系的目标窗口中心点M坐标值;
rows为图像的总行数;
cols为图像的总列数;
(xm0,ym0)为换算后的点M'坐标值;
42)然后通过目标点在坐标系中的位置(xm0,ym0),换算出机器人运动控制命令,驱动电机让机器人实现跟踪目标移动。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711476198.0A CN108133491A (zh) | 2017-12-29 | 2017-12-29 | 一种实现动态目标跟踪的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711476198.0A CN108133491A (zh) | 2017-12-29 | 2017-12-29 | 一种实现动态目标跟踪的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108133491A true CN108133491A (zh) | 2018-06-08 |
Family
ID=62393728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711476198.0A Pending CN108133491A (zh) | 2017-12-29 | 2017-12-29 | 一种实现动态目标跟踪的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108133491A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875683A (zh) * | 2018-06-30 | 2018-11-23 | 北京宙心科技有限公司 | 一种机器人视觉跟踪方法及其系统 |
CN110007601A (zh) * | 2019-05-06 | 2019-07-12 | 广东工业大学 | 一种双边遥操作系统的控制装置和设备 |
CN110472128A (zh) * | 2019-07-19 | 2019-11-19 | 平安科技(深圳)有限公司 | 基于图像识别的网页取证方法、装置、存储介质及服务器 |
CN110796073A (zh) * | 2019-10-28 | 2020-02-14 | 衢州学院 | 一种无纹理场景视频中对特定目标区域的侦测方法和装置 |
CN110827313A (zh) * | 2019-09-19 | 2020-02-21 | 深圳云天励飞技术有限公司 | 快速光流跟踪方法及相关设备 |
CN111775966A (zh) * | 2020-09-04 | 2020-10-16 | 成都唐源电气股份有限公司 | 基于线阵成像的列车车门定位方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004015516A (ja) * | 2002-06-07 | 2004-01-15 | Chuo Electronics Co Ltd | 動画像の自動追尾撮影方法および自動追尾撮影装置 |
CN104200485A (zh) * | 2014-07-10 | 2014-12-10 | 浙江工业大学 | 一种面向视频监控的人体跟踪方法 |
CN104867158A (zh) * | 2015-06-03 | 2015-08-26 | 武汉理工大学 | 基于单目视觉的室内水面船舶精确定位系统和方法 |
-
2017
- 2017-12-29 CN CN201711476198.0A patent/CN108133491A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004015516A (ja) * | 2002-06-07 | 2004-01-15 | Chuo Electronics Co Ltd | 動画像の自動追尾撮影方法および自動追尾撮影装置 |
CN104200485A (zh) * | 2014-07-10 | 2014-12-10 | 浙江工业大学 | 一种面向视频监控的人体跟踪方法 |
CN104867158A (zh) * | 2015-06-03 | 2015-08-26 | 武汉理工大学 | 基于单目视觉的室内水面船舶精确定位系统和方法 |
Non-Patent Citations (1)
Title |
---|
万科: "手势识别系统研究及应用", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875683A (zh) * | 2018-06-30 | 2018-11-23 | 北京宙心科技有限公司 | 一种机器人视觉跟踪方法及其系统 |
CN108875683B (zh) * | 2018-06-30 | 2022-05-13 | 北京宙心科技有限公司 | 一种机器人视觉跟踪方法及其系统 |
CN110007601A (zh) * | 2019-05-06 | 2019-07-12 | 广东工业大学 | 一种双边遥操作系统的控制装置和设备 |
CN110472128A (zh) * | 2019-07-19 | 2019-11-19 | 平安科技(深圳)有限公司 | 基于图像识别的网页取证方法、装置、存储介质及服务器 |
CN110472128B (zh) * | 2019-07-19 | 2022-09-02 | 平安科技(深圳)有限公司 | 基于图像识别的网页取证方法、装置、存储介质及服务器 |
CN110827313A (zh) * | 2019-09-19 | 2020-02-21 | 深圳云天励飞技术有限公司 | 快速光流跟踪方法及相关设备 |
CN110827313B (zh) * | 2019-09-19 | 2023-03-03 | 深圳云天励飞技术股份有限公司 | 快速光流跟踪方法及相关设备 |
CN110796073A (zh) * | 2019-10-28 | 2020-02-14 | 衢州学院 | 一种无纹理场景视频中对特定目标区域的侦测方法和装置 |
CN110796073B (zh) * | 2019-10-28 | 2021-05-25 | 衢州学院 | 一种无纹理场景视频中对特定目标区域的侦测方法和装置 |
CN111775966A (zh) * | 2020-09-04 | 2020-10-16 | 成都唐源电气股份有限公司 | 基于线阵成像的列车车门定位方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108133491A (zh) | 一种实现动态目标跟踪的方法 | |
Dong et al. | Infrared dim and small target detecting and tracking method inspired by human visual system | |
CN106951870B (zh) | 主动视觉注意的监控视频显著事件智能检测预警方法 | |
US7136524B1 (en) | Robust perceptual color identification | |
CN100544446C (zh) | 用于视频监控的实时运动检测方法 | |
CN107403175A (zh) | 一种运动背景下的视觉跟踪方法及视觉跟踪系统 | |
CN107633226B (zh) | 一种人体动作跟踪特征处理方法 | |
KR101912569B1 (ko) | 비디오 영상에서의 물체 추적시스템 | |
KR101414670B1 (ko) | 온라인 랜덤 포레스트 및 파티클 필터를 이용한 열 영상에서의 객체 추적 방법 | |
CN106204572A (zh) | 基于场景深度映射的道路目标深度估计方法 | |
CN103886325B (zh) | 一种分块的循环矩阵视频跟踪方法 | |
CN104823444A (zh) | 用于视频监控系统的图像稳定技术 | |
García et al. | Adaptive multi-cue 3D tracking of arbitrary objects | |
CN104574440A (zh) | 一种视频运动目标跟踪方法及装置 | |
CN112836640A (zh) | 一种单摄像头多目标行人跟踪方法 | |
CN111161313A (zh) | 一种视频流中的多目标追踪方法及装置 | |
CN105930794A (zh) | 一种基于云计算的室内场景识别方法 | |
CN108320306A (zh) | 融合tld和kcf的视频目标跟踪方法 | |
CN111161309A (zh) | 一种车载视频动态目标的搜索与定位方法 | |
CN103413312A (zh) | 基于邻里成分分析和尺度空间理论的视频目标跟踪方法 | |
US8428369B2 (en) | Information processing apparatus, information processing method, and program | |
CN102314591A (zh) | 静止前景物体的检测方法和设备 | |
CN113936023A (zh) | 一种强光条件下的粮仓走道板边沿直线检测方法 | |
CN108122013A (zh) | 一种跟随运动中排除非跟随目标的方法 | |
CN109493370A (zh) | 一种基于空间偏移学习的目标跟踪方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180608 |
|
RJ01 | Rejection of invention patent application after publication |