CN111242984B - 一种基于摇头摄像机的目标跟踪方法 - Google Patents
一种基于摇头摄像机的目标跟踪方法 Download PDFInfo
- Publication number
- CN111242984B CN111242984B CN202010091403.7A CN202010091403A CN111242984B CN 111242984 B CN111242984 B CN 111242984B CN 202010091403 A CN202010091403 A CN 202010091403A CN 111242984 B CN111242984 B CN 111242984B
- Authority
- CN
- China
- Prior art keywords
- target
- horizontal
- vertical
- machine
- vecx
- 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.)
- Active
Links
Images
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/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- 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/254—Analysis of motion involving subtraction of images
-
- 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/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/61—Control of cameras or camera modules based on recognised objects
- H04N23/611—Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/695—Control of camera direction for changing a field of view, e.g. pan, tilt or based on tracking of objects
-
- 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/10141—Special mode during image acquisition
-
- 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/20—Special algorithmic details
- G06T2207/20076—Probabilistic image processing
-
- 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/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20224—Image subtraction
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Geometry (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种基于摇头摄像机的目标跟踪方法,具体包括人形/人脸检测定位、人形/人脸位置预测与ID分配、确定跟踪的人形/人脸目标、计算目标在水平和垂直方向距离画面中心的距离、控制摇头机将目标转动到画面中心、判段摇头机是否需要回到home位置等步骤。本发明运用简单的数学计算和多帧滤波、卡尔曼预测与匈牙利匹配方法达到实时跟踪人形/人脸及运动目标块的目的,且在跟踪过程中,避免了因目标检测误检而导致摇头机乱晃的情况,解决了现有技术运算量大,模型复杂,跟踪不稳定摇头机乱晃的问题。
Description
技术领域
本发明涉及视觉跟踪技术领域,具体涉及一种基于摇头摄像机的目标跟踪方法。
背景技术
在计算机视觉领域中,目标跟踪是最具有挑战性的问题之一,涉及的方向主要是单目标跟踪和多目标跟踪,而安防领域运用最多的主要是多目标跟踪。多目标跟踪其主要跟踪流程有检测、特征提取/运动轨迹预测、相似度计算、ID分配。现有技术主要采用相关性滤波器与深度学习方法来进行跟踪,主要用来预测下一帧目标位置和对检测框区域进行特征提取,以获得更具判别性的特征表达。
现有技术中,一些传统的物体追踪算法运行速度快但追踪精度差,而许多新提出的物体追踪算法底层数学模型又很复杂,有些还需要联合深度学习方法进行视觉特征提取,从而导致目标追踪过程中产生巨大的运算量,达不到实时性;此外,当目标检测产生误检时,在使用运动摄像机跟踪目标会产生由于误检导致摄像机左右或上下摇摆,从而使得最终的跟踪效果很差。
公开号为:CN109040574A的中国专利申请公开了一种转动摇头机跟踪目标的方法及装置,用以识别视频中的目标并控制摇头机转动以跟踪目标,将目标保持在画面中心位置,便于用户观察。该方法包括:获取摇头机当前拍摄的一帧图像;从当前帧图像中确定出摇头机的跟踪目标;确定所述跟踪目标与图像中心的距离;根据所述跟踪目标与图像中心的距离,以及预先确定的摇头机的电机转动参数与图像距离之间的关系,确定转动摇头机跟踪目标所需电机转动参数;根据所述电机转动参数转动所述摇头机。该方法通过计算跟踪目标在移动过程中,在每一帧画面中产生的与图像中心位置的偏移,进一步计算出摇头机将跟踪目标保持在图像中心区域相应的电机转动参数,使得摇头机镜头能够跟踪目标并保持目标在画面中心区域,方便用户观察。但是该方法依旧存在目标追踪过程中产生巨大的运算量、实时性差,跟踪不稳定,摇头机乱晃的问题。
发明内容
针对现有技术的不足,本发明提出了一种基于摇头摄像机的目标跟踪方法,解决了现有技术运算量大,模型复杂,跟踪不稳定摇头机乱晃的问题。
为实现上述技术方案,针对人形/人脸目标,本发明提供了一种基于摇头摄像机的目标跟踪方法,具体包括如下步骤:
S1、人形/人脸检测定位:对于人形和人脸检测,通过设定检测模式以及人形和人脸的分数阈值来检测视频中的人形或者人脸;
S2、人形/人脸位置预测与ID分配:对于当前帧,利用卡尔曼滤波器预测出来的目标位置,联合步骤S1中检测出来的实际目标位置,通过计算预测位置与实际位置之间的IOU值作为权重,其中IOU值为卡尔曼滤波器预测出来的目标位置的矩形区域与步骤S1中检测出来的实际目标位置的矩形区域的交集与并集的比值,并使用匈牙利匹配算法来为当前帧分配ID,得到分配好ID的目标;
S3、确定跟踪的人形/人脸目标:根据上一帧跟踪目标的ID,在当前帧中找到相同ID的目标作为当前帧要跟踪的目标;若当前帧中没有同上一帧相同ID的目标,则要重新选择要跟踪的目标;
S4、计算目标在水平和垂直方向距离画面中心的距离:根据跟踪目标矩形区域左上顶点坐标和宽高,以及画面的宽高,计算出跟踪目标在水平方向距离画面中心的距离vecx和垂直方向距离画面中心的距离vecy;
S5、控制摇头机将目标转动到画面中心:
a.水平方向:当|vecx|>40且|vecx|>(obj_width/4),同时vecx<0,其中obj_width表示目标的宽;当满足上述条件时,调用驱动接口控制摇头机向右转动;反之,当vecx>0,调用驱动接口控制摇头机向左转动;实时计算目标水平方向距离vecx,当|vecx|<=40或者 |vecx|<(obj_width/4),则电机在水平方向停止转动;
b.垂直方向:当|vecy|>40且|vecy|>(obj_height/4),同时vecy<0,其中obj_height表示目标的高,当满足上述条件时,调用驱动接口控制摇头机向上转动;反之,当vecy>0,调用驱动接口控制摇头机向下转动;实时计算目标垂直方向距离vecy,当|vecy|<=40或者 |vecy|<(obj_height/4),则电机在垂直方向停止转动;
S6、判段摇头机是否需要回到home位置:
a.当连续15帧检测到静止的人时,将前后帧摇头机跟踪的目标记录下来,计算前后两帧跟踪目标的中心点在水平和垂直方向分别的距离差horizon_dis,vertical_dis,以及两个目标的面积差area_dis,若horizon_dis、vertical_dis以及area_dis连续15帧分别小于设定的阈值,则此时让摇头机回home位置;反之,继续追踪目标;
b.当摄像头停止转动,且在停止转动后的30s内没有检测到人形/人脸,则此时让摇头机回到home位置。
优选的,步骤S3中,重新选择要跟踪的目标的方法是,先计算步骤S2中所有目标距离画面的水平中心距离,然后按升序排列目标;然后将目标的面积按照不等式areai>4*areaj排列,其中,areai、areaj分别表示目标i、j的面积,最后将排列好的第一个目标作为最后要跟踪的目标对象。
针对前景运动块的目标跟踪,本发明还提供了一种基于摇头摄像机的目标跟踪方法,具体包括如下步骤:
S1、目标定位:对于运动块检测,使用背景差分法完成前景运动目标检测;
S2、确定跟踪目标块:过滤掉面积小于设定面积阈值的运动块;判断符合条件的运动块目标个数是否为零,若为零,则返回作下一帧处理;反之,对保留的运动块面积进行降序排列;在摇头电机静止情况下,对视频进行帧数计数;判断运动块个数,并对运动块中心点距离画面中心点的水平距离进行升序排列,得到面积较大者作为最终要跟踪的目标;
S3、计算单位像素对应的摇头机移动步长:让摇头机静止,记录下此时摇头机电机水平垂直位置坐标,同时选取此时镜头所对画面中的一点P,并记录这点的像素坐标;通过PTZ控制摇头机转动一段时间后停止,此时再记录P点移动到新位置后的像素坐标,同时再记录摇头机电机水平垂直位置坐标;计算P点在新旧位置的水平和垂直方向像素差,以及摇头机水平垂直方向分别的位置坐标差;最后用电机的位置坐标差除以像素差得到水平方向单位像素对应的步长step_hor和垂直方向单位像素对应的步长step_ver;
S4、计算摇头机转动的目标位置:根据所得到的最终目标块,计算目标运动块的中心点距离画面中心点在水平方向的距离vecx和垂直方向的距离vecy;根据步骤S23中记录的目标运动方向,以及vecx的正负值,计算得到的单位像素对应的摇头机水平移动步长step_hor和垂直移动步长step_ver,然后结合求得的像素距离值vecx,vecy,计算得到摄像机应该移动的步长vecx*step_hor,vecy*step_ver;通过驱动接口获得摄像头当前所处的水平和垂直位置 horizon_position,vertical_position,计算得到摄像头转动的目标位置;
S5、控制摇头机到达目标位置:不断的获取当前电机的位置,如果发现发生了命令但是电机又没有转动,需要再次调用驱动命令;当水平或垂直其中一个方向到达目标位置时,则在这个方向停止电机转动;当两个方向都停止时则这个目标跟踪完成;
S6、判定摇头机是否要回到home位置:当摄像头停止转动,且在停止转动后的30s内均没有检测到运动目标,此时要让摄像头回到home位置。
优选的,所述步骤S2具体采用如下步骤实现:
S21、对于用背景差分法检测到的运动块,过滤掉面积小于20像素的块;
S22、判断符合条件的运动块目标个数是否为零,若为零,则返回作下一帧处理;反之,对保留的运动块面积进行降序排列;
S23、在摇头电机静止情况下,对视频进行帧数计数;同时,对按面积排序后的运动块,首先判断面积最大的块obj_area是否为全屏运动块;若obj_area是全屏运动块,则令非全屏运动块个数moveCount为0;若不是全屏运动块时,则对moveCount加1;然后判断moveCount 值是否在0与10之间,包含0与10临界点,若在此范围之内,则将所有目标清零,不对任何块进行跟踪,同时使用卡尔曼滤波与匈牙利匹配法来为目标分配ID,得到各目标在水平方向的平均速度v;若v<-20,记录目标运动方向向左,若v>20,记录目标运动方向向右,若v在 [-20,20]范围之内,则认为目标运动幅度较小;若moveCount大于10,且计时的视频帧数大于 10帧时,则将按面积降序排列后的所有目标块送入下一步作处理;
S24、判断运动块个数,若运动块个数cnt满足1<cnt<=5,则对运动块中心点距离画面中心点的水平距离进行升序排列;若cnt>5,则按面积降序顺序选择前5个运动块进行中心点水平距离升序排列;最后选择出距离画面中心点水平距离最近的运动块obj_dis;
S25、将obj_area与obj_dis作面积比较,得到面积较大者作为最终要跟踪的目标。
优选的,所述步骤S4具体采用如下步骤实现:
S41、根据所得到的最终目标块,计算目标运动块的中心点距离画面中心点在水平方向的距离vecx和在垂直方向的距离vecy,同时为避免当目标块位于画面中心或附近时引起摇头机左右摇晃,此时对vecx与vecy的绝对值进行判断,当其值大于设定的阈值时,控制摇头机在满足条件的方向转动;否则不控制摇头机转动;
S42、根据步骤S23中记录的目标运动方向,以及vecx和vecy的正负值,判断出摇头机和目标运动方向相反还是同向,具体为:若同向,则让水平的单位像素步长step_hor及垂直的单位像素步长step_ver增加0.2,若反向,则让step_hor和step_ver减小0.2;若目标运动幅度较小,则让step_hor和step_ver保持原有值不变;
S43、根据步骤S42中计算得到的单位像素对应的摇头机水平移动步长step_hor和垂直移动步长step_ver,以及步骤S41中求得的目标运动块的中心点距离画面中心点在水平方向的距离vecx和在垂直方向的距离vecy,通过公式vecx*step_hor与vecy*step_ver分别计算出摄像头水平与垂直方向应该移动的步长;
S44、通过驱动接口获得摄像头当前所处的水平位置horizon_position和垂直位置vertical_position,结合步骤S43中计算得到的电机应该移动的步长vecx*step_hor和vecy*step_ver,利用公式horizon_target=horizon_position-vecx*step_hor与vertical_target=vertical_position-vecy*step_ver则分别计算出了摄像头转动的水平和垂直目标位置;
S45、对水平和垂直方向的目标位置进行水平垂直光耦约束;
S46、对水平和垂直方向的目标位置进行边界条件约束以求得最后摇头机要转动到的目标位置;
S47、将步骤S2中确定跟踪的前景运动块中S23步骤记录的帧数清零。
本发明提供的一种基于摇头摄像机的目标跟踪方法的有益效果在于:本发明运用简单的数学计算和多帧滤波、卡尔曼预测与匈牙利匹配方法达到实时跟踪人形/人脸及运动目标块的目的,且在跟踪过程中,避免了因目标检测误检而导致摇头机乱晃的情况,解决了现有技术运算量大,模型复杂,跟踪不稳定摇头机乱晃的问题。
附图说明
图1为实施例1的流程示意图。
图2为实施例2的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,均属于本发明的保护范围。
实施例1:一种基于摇头摄像机的目标跟踪方法。
参照图1,一种基于摇头摄像机的目标跟踪方法,具体包括如下步骤:
针对人形/人脸目标,本发明提供了一种基于摇头摄像机的目标跟踪方法,具体包括如下步骤:
S1、人形/人脸检测定位:对于人形和人脸检测,通过设定检测模式以及人形和人脸的分数阈值来检测视频中的人形或者人脸;
S2、人形/人脸位置预测与ID分配:对于当前帧,利用卡尔曼滤波器预测出来的目标位置,联合步骤S1中检测出来的实际目标位置,通过计算预测位置与实际位置之间的IOU值作为权重,其中IOU值为卡尔曼滤波器预测出来的目标位置的矩形区域与步骤S1中检测出来的实际目标位置的矩形区域的交集与并集的比值,并使用匈牙利匹配算法来为当前帧分配ID,得到分配好ID的目标;
S3、确定跟踪的人形/人脸目标:根据上一帧跟踪目标的ID,在当前帧中找到相同ID的目标作为当前帧要跟踪的目标;若当前帧中没有同上一帧相同ID的目标,则要重新选择要跟踪的目标;重新选择要跟踪的目标的方法是,先计算步骤S2中所有目标距离画面的水平中心距离,然后按升序排列目标;然后将目标的面积按照不等式areai>4*areaj排列,其中,areaj 表示目标面积,最后将排列好的第一个目标作为最后要跟踪的目标对象;
S4、计算目标在水平和垂直方向距离画面中心的距离:根据跟踪目标矩形区域左上顶点坐标和宽高,以及画面的宽高,计算出跟踪目标在水平方向距离画面中心的距离vecx和垂直方向距离画面中心的距离vecy;
S5、控制摇头机将目标转动到画面中心:
a.水平方向:当|vecx|>40且|vecx|>(obj_width/4),同时vecx<0,其中obj_width表示目标的宽;当满足上述条件时,调用驱动接口控制摇头机向右转动;反之,当vecx>0,调用驱动接口控制摇头机向左转动;实时计算目标水平方向距离vecx,当|vecx|<=40或者 |vecx|<(obj_width/4),则电机在水平方向停止转动;
b.垂直方向:当|vecy|>40且|vecy|>(obj_height/4),同时vecy<0,其中obj_height表示目标的高,当满足上述条件时,调用驱动接口控制摇头机向上转动;反之,当vecy>0,调用驱动接口控制摇头机向下转动;实时计算目标垂直方向距离vecy,当|vecy|<=40或者 |vecy|<(obj_height/4),则电机在垂直方向停止转动;
S6、判段摇头机是否需要回到home位置:
a.当连续15帧检测到静止的人时,将前后帧摇头机跟踪的目标记录下来,计算前后两帧跟踪目标的中心点在水平和垂直方向分别的距离差horizon_dis,vertical_dis,以及两个目标的面积差area_dis,若horizon_dis、vertical_dis以及area_dis连续15帧分别小于设定的阈值,则此时让摇头机回home位置;反之,继续追踪目标;
b.当摄像头停止转动,且在停止转动后的30s内没有检测到人形/人脸,则此时让摇头机回到home位置。
本方法运用简单的数学计算和多帧滤波、卡尔曼预测与匈牙利匹配方法达到实时跟踪人形 /人脸的目的,且在跟踪过程中,避免了因目标检测误检而导致摇头机乱晃的情况,解决了现有技术运算量大,模型复杂,跟踪不稳定摇头机乱晃的问题。
实施例2:一种基于摇头摄像机的目标跟踪方法。
参照图2所示,针对前景运动块的目标跟踪,一种基于摇头摄像机的目标跟踪方法,具体包括如下步骤:
S1、目标定位:对于运动块检测,使用背景差分法完成前景运动目标检测;
S2、确定跟踪目标块:
S21、对于用背景差分法检测到的运动块,过滤掉面积小于20像素的块;
S22、判断符合条件的运动块目标个数是否为零,若为零,则返回作下一帧处理;反之,对保留的运动块面积进行降序排列;
S23、在摇头电机静止情况下,对视频进行帧数计数;同时,对按面积排序后的运动块,首先判断面积最大的块obj_area是否为全屏运动块;若obj_area是全屏运动块,则令非全屏运动块个数moveCount为0;若不是全屏运动块时,则对moveCount加1;然后判断moveCount 值是否在0与10之间,包含0与10临界点,若在此范围之内,则将所有目标清零,不对任何块进行跟踪,同时使用卡尔曼滤波与匈牙利匹配法来为目标分配ID,得到各目标在水平方向的平均速度v;若v<-20,记录目标运动方向向左,若v>20,记录目标运动方向向右,若v在 [-20,20]范围之内,则认为目标运动幅度较小;若moveCount大于10,且计时的视频帧数大于 10帧时,则将按面积降序排列后的所有目标块送入下一步作处理;
S24、判断运动块个数,若运动块个数cnt满足1<cnt<=5,则对运动块中心点距离画面中心点的水平距离进行升序排列;若cnt>5,则按面积降序顺序选择前5个运动块进行中心点水平距离升序排列;最后选择出距离画面中心点水平距离最近的运动块obj_dis;
S25、将obj_area与obj_dis作面积比较,得到面积较大者作为最终要跟踪的目标;
S3、计算单位像素对应的摇头机移动步长:让摇头机静止,记录下此时摇头机电机水平垂直位置坐标,同时选取此时镜头所对画面中的一点P,并记录这点的像素坐标;通过PTZ控制摇头机转动一段时间后停止,此时再记录P点移动到新位置后的像素坐标,同时再记录摇头机电机水平垂直位置坐标;计算P点在新旧位置的水平和垂直方向像素差,以及摇头机水平垂直方向分别的位置坐标差;最后用电机的位置坐标差除以像素差得到水平方向单位像素对应的步长step_hor和垂直方向单位像素对应的步长step_ver;
S4、计算摇头机转动的目标位置:
S41、根据所得到的最终目标块,计算目标运动块的中心点距离画面中心点在水平方向的距离vecx和在垂直方向的距离vecy,同时为避免当目标块位于画面中心或附近时引起摇头机左右摇晃,此时对vecx与vecy的绝对值进行判断,当其值大于设定的阈值时,控制摇头机在满足条件的方向转动;否则不控制摇头机转动;
S42、根据步骤S23中记录的目标运动方向,以及vecx和vecy的正负值,判断出摇头机和目标运动方向相反还是同向,具体为:若同向,则让水平的单位像素步长step_hor及垂直的单位像素步长step_ver增加0.2,若反向,则让step_hor和step_ver减小0.2;若目标运动幅度较小,则让step_hor和step_ver保持原有值不变;
S43、根据步骤S42中计算得到的单位像素对应的摇头机水平移动步长step_hor和垂直移动步长step_ver,以及步骤S41中求得的目标运动块的中心点距离画面中心点在水平方向的距离vecx和在垂直方向的距离vecy,计算出摄像机水平方向上应该移动的步长vecx*step_hor 和垂直方向上应该移动的步长vecy*step_ver。
S44、通过驱动接口获得摄像头当前所处的水平位置horizon_position和垂直位置 vertical_position,结合步骤S43中计算得到的电机应该移动的步长vecx*step_hor和vecy*step_ver,利用公式horizon_target=horizon_position-vecx*step_hor与vertical_target=vertical_position-vecy*step_ver则分别计算出了摄像头转动的水平和垂直目标位置;
S45、对水平和垂直方向的目标位置进行水平垂直光耦约束;
S46、对水平和垂直方向的目标位置进行边界条件约束以求得最后摇头机要转动到的目标位置;
S47、将步骤S2中确定跟踪的前景运动块中S23步骤记录的帧数清零;
S5、控制摇头机到达目标位置:不断的获取当前电机的位置,如果发现发生了命令但是电机又没有转动,需要再次调用驱动命令;当水平或垂直其中一个方向到达目标位置时,则在这个方向停止电机转动;当两个方向都停止时则这个目标跟踪完成;
S6、判定摇头机是否要回到home位置:当摄像头停止转动,且在停止转动后的30s内均没有检测到运动目标,此时要让摄像头回到home位置。
本方法运用简单的数学计算和多帧滤波、卡尔曼预测与匈牙利匹配方法达到实时跟踪运动目标块的目的,且在跟踪过程中,避免了因目标检测误检而导致摇头机乱晃的情况,解决了现有技术运算量大,模型复杂,跟踪不稳定摇头机乱晃的问题。
以上所述为本发明的较佳实施例而已,但本发明不应局限于该实施例和附图所公开的内容,所以凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。
Claims (2)
1.一种基于摇头摄像机的目标跟踪方法,其特征在于具体包括如下步骤:
S1、目标定位:对于运动块检测,使用背景差分法完成前景运动目标检测;
S2、确定跟踪目标块:过滤掉面积小于设定面积阈值的运动块;判断符合条件的运动块目标个数是否为零,若为零,则返回作下一帧处理;反之,对保留的运动块面积进行降序排列;在摇头电机静止情况下,对视频进行帧数计数;判断运动块个数,并对运动块中心点距离画面中心点的水平距离进行升序排列,得到面积较大者作为最终要跟踪的目标;
S3、计算单位像素对应的摇头机移动步长:让摇头机静止,记录下此时摇头机电机水平垂直位置坐标,同时选取此时镜头所对画面中的一点P,并记录这点的像素坐标;通过PTZ控制摇头机转动一段时间后停止,此时再记录P点移动到新位置后的像素坐标,同时再记录摇头机电机水平垂直位置坐标;计算P点在新旧位置的水平和垂直方向像素差,以及摇头机水平垂直方向分别的位置坐标差;最后用电机的位置坐标差除以像素差得到水平方向单位像素对应的步长step_hor和垂直方向单位像素对应的步长step_ver;
S4、计算摇头机转动的目标位置:根据所得到的最终目标块,计算目标运动块的中心点距离画面中心点在水平方向的距离vecx和垂直方向的距离vecy;根据步骤S23中记录的目标运动方向,以及vecx的正负值,计算得到的单位像素对应的摇头机水平移动步长step_hor和垂直移动步长step_ver,然后结合求得的像素距离值vecx,vecy,计算得到摄像机应该移动的步长vecx*step_hor,vecy*step_ver;通过驱动接口获得摄像头当前所处的水平和垂直位置horizon_position,vertical_position,计算得到摄像头转动的目标位置;
S5、控制摇头机到达目标位置:不断的获取当前电机的位置,如果发现发生了命令但是电机又没有转动,需要再次调用驱动命令;当水平或垂直其中一个方向到达目标位置时,则在这个方向停止电机转动;当两个方向都停止时则这个目标跟踪完成;
S6、判定摇头机是否要回到home位置:当摄像头停止转动,且在停止转动后的30s内均没有检测到运动目标,此时要让摄像头回到home位置。
2.如权利要求1所述的基于摇头摄像机的目标跟踪方法,其特征在于:所述步骤S4具体采用如下步骤实现:
S41、根据所得到的最终目标块,计算目标运动块的中心点距离画面中心点在水平方向的距离vecx和在垂直方向的距离vecy,同时为避免当目标块位于画面中心或附近时引起摇头机左右摇晃,此时对vecx与vecy的绝对值进行判断,当其值大于设定的阈值时,控制摇头机在满足条件的方向转动;否则不控制摇头机转动;
S42、根据步骤S23中记录的目标运动方向,以及vecx和vecy的正负值,判断出摇头机和目标运动方向相反还是同向,具体为:若同向,则让水平的单位像素步长step_hor及垂直的单位像素步长step_ver增加0.2;若反向,则让step_hor和step_ver减小0.2;若目标运动幅度较小,则让step_hor和step_ver保持原有值不变;
S43、根据步骤S42中计算得到的单位像素对应的摇头机水平移动步长step_hor和垂直移动步长step_ver,以及步骤S41中求得的目标运动块的中心点距离画面中心点在水平方向的距离vecx和在垂直方向的距离vecy,通过公式vecx*step_hor与vecy*step_ver分别计算出摄像头水平与垂直方向应该移动的步长;
S44、通过驱动接口获得摄像头当前所处的水平位置horizon_position和垂直位置vertical_position,结合步骤S43中计算得到的电机应该移动的步长vecx*step_hor和vecy*step_ver,利用公式horizon_target=horizon_position-vecx*step_hor与vertical_target=vertical_position-vecy*step_ver则分别计算出了摄像头转动的水平和垂直目标位置;
S45、对水平和垂直方向的目标位置进行水平垂直光耦约束;
S46、对水平和垂直方向的目标位置进行边界条件约束以求得最后摇头机要转动到的目标位置;
S47、将步骤S2中确定跟踪的前景运动块中S23步骤记录的帧数清零。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010091403.7A CN111242984B (zh) | 2020-02-13 | 2020-02-13 | 一种基于摇头摄像机的目标跟踪方法 |
CN202010696298.XA CN111833382B (zh) | 2020-02-13 | 2020-02-13 | 一种基于摇头摄像机的目标跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010091403.7A CN111242984B (zh) | 2020-02-13 | 2020-02-13 | 一种基于摇头摄像机的目标跟踪方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010696298.XA Division CN111833382B (zh) | 2020-02-13 | 2020-02-13 | 一种基于摇头摄像机的目标跟踪方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111242984A CN111242984A (zh) | 2020-06-05 |
CN111242984B true CN111242984B (zh) | 2021-01-19 |
Family
ID=70870555
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010696298.XA Active CN111833382B (zh) | 2020-02-13 | 2020-02-13 | 一种基于摇头摄像机的目标跟踪方法 |
CN202010091403.7A Active CN111242984B (zh) | 2020-02-13 | 2020-02-13 | 一种基于摇头摄像机的目标跟踪方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010696298.XA Active CN111833382B (zh) | 2020-02-13 | 2020-02-13 | 一种基于摇头摄像机的目标跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN111833382B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112132047A (zh) * | 2020-09-24 | 2020-12-25 | 天津锋物科技有限公司 | 一种基于计算机视觉的小区巡更系统 |
CN112132041A (zh) * | 2020-09-24 | 2020-12-25 | 天津锋物科技有限公司 | 一种基于计算机视觉的社区巡更分析方法及其系统 |
CN115242958B (zh) * | 2021-04-22 | 2023-09-26 | 北京君正集成电路股份有限公司 | 一种支持复杂场景下的人形跟踪拍摄的控制方法及装置 |
CN115471546A (zh) * | 2021-06-11 | 2022-12-13 | 华为技术有限公司 | 目标跟踪方法、系统、设备及存储介质 |
CN113469025B (zh) * | 2021-06-29 | 2024-05-31 | 阿波罗智联(北京)科技有限公司 | 应用于车路协同的目标检测方法、装置、路侧设备和车辆 |
CN114245016A (zh) * | 2021-12-21 | 2022-03-25 | 睿魔智能科技(深圳)有限公司 | 视频拍摄的控制方法和系统、计算机设备及存储介质 |
CN115665553B (zh) * | 2022-09-29 | 2023-06-13 | 深圳市旗扬特种装备技术工程有限公司 | 一种无人机的自动跟踪方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105208343A (zh) * | 2015-09-25 | 2015-12-30 | 珠海安联锐视科技股份有限公司 | 可用于视频监控设备的智能监控系统和方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8593545B2 (en) * | 2010-06-09 | 2013-11-26 | Olympus Imaging Corp. | Imaging apparatus, imaging method, and computer-readable recording medium with switched image capturing mode |
CN102118611B (zh) * | 2011-04-15 | 2013-01-02 | 中国电信股份有限公司 | 运动目标的数字视频监控方法与系统、数字视频监控平台 |
US9652860B1 (en) * | 2013-03-15 | 2017-05-16 | Puretech Systems, Inc. | System and method for autonomous PTZ tracking of aerial targets |
US9973692B2 (en) * | 2013-10-03 | 2018-05-15 | Flir Systems, Inc. | Situational awareness by compressed display of panoramic views |
CN104796612B (zh) * | 2015-04-20 | 2017-12-19 | 河南弘金电子科技有限公司 | 高清雷达联动跟踪控制摄像系统及联动跟踪方法 |
CN204716578U (zh) * | 2015-06-12 | 2015-10-21 | 深圳市捷扬讯科电子有限公司 | 一种智能风扇 |
CN106373143A (zh) * | 2015-07-22 | 2017-02-01 | 中兴通讯股份有限公司 | 一种自适应跨摄像机多目标跟踪方法及系统 |
CN105812736A (zh) * | 2016-03-21 | 2016-07-27 | 北京工业大学 | 自调节式云台摄像头远程智能控制系统及其控制方法 |
CN106504274A (zh) * | 2016-10-10 | 2017-03-15 | 广东技术师范学院 | 一种基于红外摄像头下的视觉跟踪方法及系统 |
CN106650665B (zh) * | 2016-12-26 | 2021-02-12 | 北京旷视科技有限公司 | 人脸跟踪方法及装置 |
CN107273822B (zh) * | 2017-05-26 | 2021-06-04 | 西安电子科技大学 | 一种基于监控视频多目标跟踪和人脸识别的隐私保护方法 |
CN109040574A (zh) * | 2017-06-08 | 2018-12-18 | 北京君正集成电路股份有限公司 | 一种转动摇头机跟踪目标的方法及装置 |
CN109885099A (zh) * | 2017-12-06 | 2019-06-14 | 智飞智能装备科技东台有限公司 | 一种用于无人机跟踪锁定目标的视觉识别系统 |
CN107992099A (zh) * | 2017-12-13 | 2018-05-04 | 福州大学 | 一种基于改进帧差法的目标运动视频跟踪方法及系统 |
CN108377364B (zh) * | 2018-02-07 | 2020-09-01 | 深圳市亿联智能有限公司 | 一种高效率视频监控移动物体追踪方式 |
CN108921880B (zh) * | 2018-06-11 | 2022-05-03 | 西安电子科技大学 | 一种基于多个单跟踪器的视觉多目标跟踪方法 |
-
2020
- 2020-02-13 CN CN202010696298.XA patent/CN111833382B/zh active Active
- 2020-02-13 CN CN202010091403.7A patent/CN111242984B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105208343A (zh) * | 2015-09-25 | 2015-12-30 | 珠海安联锐视科技股份有限公司 | 可用于视频监控设备的智能监控系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111833382B (zh) | 2021-03-09 |
CN111833382A (zh) | 2020-10-27 |
CN111242984A (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111242984B (zh) | 一种基于摇头摄像机的目标跟踪方法 | |
US9767568B2 (en) | Image processor, image processing method, and computer program | |
Haritaoglu et al. | w 4 s: a real-time system for detecting and tracking people in 2 1/2 d | |
JP6158446B2 (ja) | 表示の区分およびビデオフレームのクラスタ化のためのオブジェクトの選択およびトラッキング | |
Senior et al. | Appearance models for occlusion handling | |
CN108875683A (zh) | 一种机器人视觉跟踪方法及其系统 | |
US20120026277A1 (en) | Video conference | |
US20120293486A1 (en) | Image processing apparatus and image processing method | |
KR20050066400A (ko) | 다시점 영상 및 깊이 정보를 이용한 3차원 객체 추적 장치및 그 방법 | |
CN102799883A (zh) | 一种从视频图像中提取运动目标的方法及装置 | |
CN106530328A (zh) | 一种基于视频图像对运动目标检测和平滑跟随的方法 | |
CN111314609B (zh) | 一种控制云台追踪摄像的方法及装置 | |
CN105760846A (zh) | 基于深度数据的目标检测与定位方法及系统 | |
CN107862713B (zh) | 针对轮询会场的摄像机偏转实时检测预警方法及模块 | |
WO2003098922A1 (en) | An imaging system and method for tracking the motion of an object | |
CN111696135A (zh) | 基于交并比的违禁停车检测方法 | |
JP2010057105A (ja) | オブジェクトの3次元追跡方法およびシステム | |
CN104504378A (zh) | 一种图像信息检测方法及装置 | |
CN116261742A (zh) | 信息处理装置及信息处理方法 | |
KR101542206B1 (ko) | 코아스-파인 기법을 이용한 객체 추출과 추적 장치 및 방법 | |
CN110728696A (zh) | 一种基于背景建模与光流法的录播系统学生起立检测方法 | |
Grest et al. | Realtime multi-camera person tracking for immersive environments | |
CN106447685B (zh) | 一种红外跟踪方法 | |
CN114827455A (zh) | 一种摄像头动态实时追踪方法 | |
Son et al. | Tiny drone tracking framework using multiple trackers and Kalman-based predictor |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |