一种将实时视频中的场景自动定位坐标的方法与流程

文档序号:16256454发布日期:2018-12-12 00:30阅读:1173来源:国知局
一种将实时视频中的场景自动定位坐标的方法与流程

本发明属于信息技术、自动化技术领域,具体涉及一种将实时视频中的场景自动定位坐标的方法。

背景技术

视频目标定位包括基于对比度分析的目标定位、基于匹配的目标定位和基于运动检测的目标定位。

基于对比度分析的目标定位:主要利用目标和背景的对比度差异实现目标的检测与定位。

基于匹配的目标定位:主要通过前后帧之间的特征匹配实现目标的定位。特征是目标可区别与其他事物的属性,具有可区分性、可靠性、独立性和稀疏性。基于匹配的目标定位算法需要提取目标的特征,并在每一帧中寻找该特征。寻找的过程就是特征匹配的过程。目标定位中用到的特征主要有几何形状、子空间特征、外形轮廓和特征点等,其中特征点是匹配算法中常用的特征。

基于运动检测的目标定位:主要根据目标运动和背景运动之间的差异实现目标的检测和定位。基于运动检测的目标定位算法通过检测序列图像中目标和背景的不同运动来发现目标存在的区域,实现定位。这类算法不需要帧间的模式匹配,不需要在帧间传递目标的运动参数,只需要突出目标和非目标在时域或空域的区别即可。这类算法具有检测多个目标的能力,可用于多目标检测和定位,这类运动目标检测方法主要有帧间图像差分法,背景估计法,能量积累法,运动场估计法等。

缺陷:以上算法主要是对每一侦图进行处理,然后定位,对图像质量、光照条件、图像处理硬件配置要求高,目前城市监理视频路数大,特别是成百上千路视频,硬件投资特别高。



技术实现要素:

为了解决现有技术存在的上述问题,本发明目的在于提供一种将实时视频中的场景自动定位坐标的方法。

本发明所采用的技术方案为:

一种将实时视频中的场景自动定位坐标的方法,包括如下步骤;

s1、获得ptz参数;

s2、确定视频显示区域坐标,将所需获取的场景作为参照物并手动对其进行标定,得到参照物坐标;

s3、根据获取的ptz参数,同时进行步骤a和b:

a、计算对球机或者云台摄像机进行ptz操作与屏幕中场景坐标匹配关系,确定屏幕视频中场景坐标并标注存储;

b、计算对球机或者云台摄像机进行ptz操作与屏幕坐标匹配关系,确定屏幕实时视频显示区域;

s4、对屏幕视频中场景坐标标注和显示。

所述ptz参数的获取方式为:从球机或者云台摄像机中sdk获取。

或者,所述ptz参数的获取方式为:球机或者云台摄像机每一次重启时,为球机或者云台摄像机设定一个初始状态的ptz并保存,获取该ptz参数。

具体地,所述当球机或者云台摄像机水平旋转、垂直旋转、镜头变倍和镜头变焦时,同步更新ptz,并记录为当前ptz值。

具体地,所述步骤s2的具体实现方式为:

s1、将显示屏划分坐标,并手动取值,获得屏幕范围四角定位,四角坐标分别为z0(xn,ym)、z1(xm,ym)、z2(xn,yn)、z3(xm,yn);

s2、将所需获取的场景作为参照物并手动对其标定,得到参照物坐标a(x4,yi)。

所述步骤a的具体实现方法为:

s31、得到当前初始ptz参数如下:

ptz(x0):云台水平方位;

ptz(y0):云台垂直方位;

ptz(p0):镜头倍数;

ptz(t0):镜头变焦系数;

s32、对球机或者云台摄像机进行如下操作:

a、水平旋转操作,再次得到当前ptz参数如下:

ptz(x0+α)、ptz(y0)、ptz(p0)、ptz(t0);

计算球机或者云台摄像机水平旋转角度α与屏幕坐标的关系:f(x)=(xi-x4)/α,x取α;

b、垂直旋转,再次得到当前ptz参数如下:

ptz(x0)、ptz(y0+β)、ptz(p0)、ptz(t0);

计算球机或者云台摄像机垂直旋转角度β与屏幕坐标的关系:f(y)=(yi-ym)/β,y取β;

c、变倍,再次得到当前ptz参数如下:

ptz(x0)、ptz(y0)、ptz(p0+μ)、ptz(t0);

计算球机或者云台摄像机变倍倍数μ与屏幕坐标的关系:

匹配屏幕水平坐标:f(px)=(xj-x4)/μ,px取μ;

匹配屏幕垂直坐标:f(py)=(yi-ym)/μ,py取μ;

d、聚焦,再次得到当前ptz参数如下:

ptz(x0)、ptz(y0)、ptz(p0)、ptz(t0+ε);

计算球机或者云台摄像机聚焦倍数ε与屏幕坐标的关系:

匹配屏幕水平坐标:f(tx)=(xj-x4)/ε,px取ε;

匹配屏幕垂直坐标:f(ty)=(yi-ym)/ε,py取ε。

所述步骤b的具体实现方法为:

由水平旋转角度α与屏幕坐标的关系、垂直旋转角度β与屏幕坐标的关系、变倍倍数μ与屏幕坐标的关系和聚焦倍数ε与屏幕坐标的关系对球机或者云台摄像机进行如下操作:

a1、水平旋转k1,屏幕坐标变化为:

z0(xn+f(x)*k1,ym);

z1(xm+f(x)*k1,ym);

z2(xn+f(x)*k1,yn);

z3(xm+f(x)*k1,ym);

b1、垂直旋转k2,屏幕坐标变化为:

z0(xn,ym+f(y)*k2);

z1(xm,ym+f(y)*k2);

z2(xn,yn+f(y)*k2);

z3(xm,ym+f(y)*k2);

c1、变倍k3,屏幕坐标变化为:

z0(xn+f(px)*k3,ym+f(py)*k3);

z1(xm+f(px)*k3,ym+f(py)*k3);

z2(xn+f(px)*k3,yn+f(py)*k3);

z3(xm+f(px)*k3,ym+f(py)*k3)

d1、聚焦k4,屏幕坐标变化为:

z0(xn+f(tx)*k4,ym+f(ty)*k4);

z1(xm+f(tx)*k4,ym+f(ty)*k4);

z2(xn+f(tx)*k4,yn+f(ty)*k4);

z3(xm+f(tx)*k4,ym+f(ty)*k4)。

进一步地,所述步骤s4的具体实现方式为:

s41、对球机或者云台摄像机进行水平旋转、垂直旋转、变倍、聚焦操作后,屏幕中图像将发生变化,场景在屏幕中坐标位置同样发生变化,调用计算出的对球机或者云台摄像机进行ptz操作与屏幕坐标匹配关系;

s42、确定目标场景的坐标是否在z0、z1、z2、z3范围以内,若是,则执行步骤s43;若不是,则执行步骤s44;

s43、调用计算出的对球机或者云台摄像机进行ptz操作与屏幕中场景坐标匹配关系,确定目标场景坐标,并定位显示标注;

s44、说明需要的定位的场景不在摄像机监控范围之内,屏幕中不显示标注。

本发明的有益效果为:

(1)本发明实现了实时视频中场景位置的视频结构化。

(2)本发明便于在海量视频中对场景位置的快速检索。

(3)本发明对场景的坐标定位和标注,丰富了视频内容,便于监控人员熟悉监控环境。

(4)本发明对坐标的自动定位,实现监控区域位置信息的可视化。

(5)本发明只是对坐标数据处理,与图像处理定位方式相比,占用硬件资源少,便于海量视频处理。

(6)本发明只是对坐标数据处理,不受图像质量、光照条件影响,准确性高。

附图说明

图1是本发明-实施例控制球机或云台摄像机对应的ptz曲线图。

图2是本发明-实施例屏幕范围四角坐标的示意图。

图3是本发明-实施例球机或者云台摄像机水平旋角度α与屏幕坐标的关系图。

图4是本发明-实施例球机或者云台摄像机垂直旋角度β与屏幕坐标的关系图。

图5是本发明-实施例球机或者云台摄像机变倍倍数μ与屏幕坐标的关系图。

图6是本发明-实施例屏幕视频中场景坐标标注和显示示意图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步阐述。

实施例:

本实施例的一种将实时视频中的场景自动定位坐标的方法,包括如下步骤:

第一步、获得ptz参数,如图1所示。

ptz代表云台全方位坐标,ptz参数中,ptz(x):云台水平方位;ptz(y):云台垂直方位;ptz(p):镜头倍数;ptz(t):镜头变焦系数,可实现对球机或者云台摄像机的水平旋转、垂直旋转、镜头变倍和镜头变焦控制。

ptz参数的一种获得方式是:从球机或者云台摄像机中sdk获得。

ptz参数的另一种获得方式是:球机或者云台摄像机每一次重启时,为球机或者云台摄像机设定一个初始状态的ptz并保存,获得该ptz参数,当球机或者云台摄像机水平旋转、垂直旋转、镜头变倍和镜头变焦时,同步更新ptz,并记录为当前ptz值。

第二步、确定视频显示区域坐标,如图2所示。

(1)将显示屏划分坐标,并手动取值,获得屏幕范围四角定位,四角坐标分别为z0(xn,ym)、z1(xm,ym)、z2(xn,yn)、z3(xm,yn);

(2)将所需获取的场景作为参照物并手动对其标定,得到参照物坐标a(x4,yi);

第三步、根据获取的ptz参数,计算对球机或者云台摄像机进行ptz操作与屏幕中场景坐标匹配关系,确定屏幕视频中场景坐标并标注存储。

(1)得到当前初始ptz参数如下:

ptz(x0):云台水平方位;

ptz(y0):云台垂直方位;

ptz(p0):镜头倍数;

ptz(t0):镜头变焦系数;

(2)对球机或者云台摄像机进行如下操作:

a、水平旋转,再次得到当前ptz参数如下:

ptz(x0+α)、ptz(y0)、ptz(p0)、ptz(t0);

如图3所示,计算球机或者云台摄像机水平旋转角度α与屏幕坐标的关系:f(x)=(xi-x4)/α,x取α;

b、垂直旋转,再次得到当前ptz参数如下:

ptz(x0)、ptz(y0+β)、ptz(p0)、ptz(t0);

如图4所示,计算球机或者云台摄像机垂直旋转角度β与屏幕坐标的关系:f(y)=(yi-ym)/β,y取β;

c、变倍,再次得到当前ptz参数如下:

ptz(x0)、ptz(y0)、ptz(p0+μ)、ptz(t0);

如图5所示,计算球机或者云台摄像机变倍倍数μ与屏幕坐标的关系:

匹配屏幕水平坐标:f(px)=(xj-x4)/μ,px取μ;

匹配屏幕垂直坐标:f(py)=(yi-ym)/μ,py取μ。

若变倍操作是放大,那么f(px)为正,f(py)为负;反之,f(px)为负,f(py)为正;

d、聚焦,再次得到当前ptz参数如下:

ptz(x0)、ptz(y0)、ptz(p0)、ptz(t0+ε);

计算球机或者云台摄像机聚焦倍数ε与屏幕坐标的关系:

匹配屏幕水平坐标:f(tx)=(xj-x4)/ε,px取ε;

匹配屏幕垂直坐标:f(ty)=(yi-ym)/ε,py取ε;

若聚焦操作是放大,那么f(tx)为正,f(ty)为负;反之f(tx)为负,f(ty)为正。

屏幕显示最大尺寸:水平=xn-x0;垂直yn-y0。

第四步、计算对球机或者云台摄像机进行ptz操作与屏幕中场景坐标匹配关系,确定屏幕实时视频显示区域。

由如下关系对球机或者云台摄像机进行如下操作:

球机或者云台摄像机水平旋转角度α与屏幕坐标的关系:f(x)=(xi-x4)/α,x取α;

球机或者云台摄像机垂直旋转角度β与屏幕坐标的关系:f(y)=(yi-ym)/β,y取β;

球机或者云台摄像机变倍倍数μ与屏幕坐标的关系:

匹配屏幕水平坐标:f(px)=(xj-x4)/μ,px取μ;

匹配屏幕垂直坐标:f(py)=(yi-ym)/μ,py取μ;

球机或者云台摄像机聚焦倍数ε与屏幕坐标的关系:

匹配屏幕水平坐标:f(tx)=(xj-x4)/ε,px取ε;

匹配屏幕垂直坐标:f(ty)=(yi-ym)/ε,py取ε;

a1、水平旋转k1,屏幕坐标变化为:

z0(xn+f(x)*k1,ym);

z1(xm+f(x)*k1,ym);

z2(xn+f(x)*k1,yn);

z3(xm+f(x)*k1,ym);

b1、垂直旋转k2,屏幕坐标变化为:

z0(xn,ym+f(y)*k2);

z1(xm,ym+f(y)*k2);

z2(xn,yn+f(y)*k2);

z3(xm,ym+f(y)*k2);

c1、变倍k3,屏幕坐标变化为:

z0(xn+f(px)*k3,ym+f(py)*k3);

z1(xm+f(px)*k3,ym+f(py)*k3);

z2(xn+f(px)*k3,yn+f(py)*k3);

z3(xm+f(px)*k3,ym+f(py)*k3)

d1、聚焦k4,屏幕坐标变化为:

z0(xn+f(tx)*k4,ym+f(ty)*k4);

z1(xm+f(tx)*k4,ym+f(ty)*k4);

z2(xn+f(tx)*k4,yn+f(ty)*k4);

z3(xm+f(tx)*k4,ym+f(ty)*k4)。

第五步、对屏幕视频中场景坐标标注和显示。如图6所示。

对球机或者云台摄像机进行水平旋转、垂直旋转、变倍、聚焦操作后,屏幕中图像将发生变化,场景在屏幕中坐标位置同样发生变化,调用计算出的对球机或者云台摄像机进行ptz操作与屏幕坐标匹配关系,确定目标场景b(x,y)的坐标是否在z0、z1、z2、z3范围以内,若在z0、z1、z2、z3范围内,则再调用计算出的对球机或者云台摄像机进行ptz操作与屏幕中场景坐标匹配关系,确定目标场景坐标,并定位显示标注;若不在z0、z1、z2、z3范围以内,则说明需要的定位的场景不在摄像机监控范围之内,屏幕中不显示标注。

本发明创立了球机或者云台摄像机的ptz与屏幕视频显示区域坐标关系,ptz操作将对屏幕视频显示区域产生变化,通过公式获得屏幕视频显示区域坐标,便于判定需要定位的场景是否在视频显示区域范围内,能够实现自动判定。

本发明创立了球机或者云台摄像机的ptz与屏幕视频中场景坐标的对应关系,ptz操作将对屏幕视频中场景产生改变,通过公式获得新的屏幕视频中场景的坐标,便于自动定对场景重新定位。

本发明对于无法获得球机或者云台摄像机中的ptz值情况,通过对后端设定ptz值与球机或者云台摄像机对应,初设一个ptz,并对球机或者云台摄像机水平旋转、垂直旋转、变倍、聚焦操作过程进行记录,随时更新ptz,从而获取ptz单位变量,用于视频显示区域坐标对应关系公式和ptz与屏幕视频中场景坐标匹配对应关系公式计算,获得相应结果。

本发明不局限于上述可选实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是落入本发明权利要求界定范围内的技术方案,均落在本发明的保护范围之内。

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