CN110381257B - 映射的目标定位云台控制方法 - Google Patents
映射的目标定位云台控制方法 Download PDFInfo
- Publication number
- CN110381257B CN110381257B CN201910704062.3A CN201910704062A CN110381257B CN 110381257 B CN110381257 B CN 110381257B CN 201910704062 A CN201910704062 A CN 201910704062A CN 110381257 B CN110381257 B CN 110381257B
- Authority
- CN
- China
- Prior art keywords
- holder
- angle
- point
- calculating
- image
- 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
-
- 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/64—Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image
-
- 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
Abstract
本发明公开了一种映射的目标定位云台控制方法。本发明一种映射的目标定位云台控制方法,包括:确定图像上的一点;获取该点的像素坐标;获取云台的位置角度;开始转动云台;再在图像中找到同一个点;获取当前云台的位置角度;通过参数计算云台角度和像素点对应的关系;等待控制云台;输入新的图像中的坐标点;计算出云台控制的角度。本发明的有益效果:本发明提高了控制云台到目标的角度的计算精确度。
Description
技术领域
本发明涉及云台领域,具体涉及一种映射的目标定位云台控制方法。
背景技术
随着人工智能理念越来越普及,仪表识别,运动跟踪,目标定位,都需要云台的精准控制。
目前云台控制算法基本采用镜头光学计算方法。
镜头光学计算方法:
则:
相机镜头焦距:f(mm)、探测器像元尺寸r(um)、目标距离镜头距离d(m),人体目标高度为h(m),则人体成像在竖直方向所占像素个数x为:
推导出:
当前摄像头在一倍变倍系数下的焦距为4.5mm,Z为摄像头的变倍系数,得出不同变倍系数下,摄像头的焦距f为:
f=4.5*Z⑶
把公式⑶带入公式⑵中可得:
根据弧长公式:
把公式⑸带入公式⑷中可得:
传统技术存在以下技术问题:
镜头光学计算方法缺点是计算精确度不够,误差大。产生误差的原因是:
1.焦距精度。由于变倍系数不精确、在不同焦距下所呈现出来的像的大小不同,造成,用30倍变焦的像素去算1倍变焦的像素,导致计算不精确。
2.物距和成像大小不是线性关系。物体在不同的距离下,所呈现出来物体的像大小也是不同的,而且呈现出来的像大小也不是线性的关系,导致计算不准确。
3.变倍和成像大小不是线性关系。
4.用像大小计算物大小会产生误差放大。
经过一系列的研究,想要排除不同焦距和不同物体距离对计算精度的影响,最终发明了像素点到角度的映射关系,通过此方法可以准确的计算得到图像中某个点的像素点坐标所对应旋转的角度,使误差降低,计算的更加准确。
发明内容
本发明要解决的技术问题是提供一种映射的目标定位云台控制方法。
为了解决上述技术问题,本发明提供了一种映射的目标定位云台控制方法,包括:
确定图像上的一点;
获取该点的像素坐标;
获取云台的位置角度;
开始转动云台;
再在图像中找到同一个点;
获取当前云台的位置角度;
通过参数计算云台角度和像素点对应的关系;
等待控制云台;
输入新的图像中的坐标点;
计算出云台控制的角度。
在其中一个实施例中,计算云台控制角度具体包括:
输入目标像素点的坐标X、Y;
计算相对的角度;
计算绝对的角度;
输出云台的位置角度。
在其中一个实施例中,计算云台控制角度所使用参数具体包括:输入两次图像中获取的像素坐标和云台位置角度;
判断图像中两次取的坐标X是否相同;
如果相同重新取点;
如果不同判断两次取点的坐标Y是否相同;
如果相同重新取点;
如果不同判断两次的变倍参数是否相同;
如果相同重新取点;
如果不同计算图像中单位度数所对象的像素点;
计算图像中心对应的云台角度。
在其中一个实施例中,还包括:转动云台;
判断是否退出;
退出。
一种云台,其特征在于,使用任一项所述方法。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任一项所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现任一项所述方法的步骤。
一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任一项所述的方法。
本发明的有益效果:
本发明提高了控制云台到目标的角度的计算精确度。传统的镜头光学计算方法误差比较大在20%左右,一次云台的调节只能保证目标比未调节之前接近中心,当调节变倍放大拉近目标时,目标会偏离到画面外。为了不至于使目标偏离到画面外,一般需要经过5次以上的云台调节。而本算法做到一次计算精准定位,一次云台调节就能保证目标位于画面中心,无论怎样调节变倍放大拉近目标,目标都不会偏离到画面外,基本保持目标在画面中心。本发明的关键点是:通过计算获得从像素坐标到云台角度坐标的映射,从而根据目标在图像上的坐标计算出转动云台使目标准确到达摄像头光轴的角度,精准定位云台使目标位于图像中心。这也是保护点。
附图说明
图1是本发明映射的目标定位云台控制方法中的目标成像大小与相机参数及目标距离的关系。
图2是本发明映射的目标定位云台控制方法中的计算云台控制角度的原理示意图。
图3是本发明映射的目标定位云台控制方法中的像素点坐边所对应的云台角度计算描述示意图之一。
图4是本发明映射的目标定位云台控制方法中的像素点坐边所对应的云台角度计算描述示意图之二。
图5是本发明映射的目标定位云台控制方法中的像素点坐边所对应的云台角度计算描述示意图之三。
图6是本发明映射的目标定位云台控制方法中的像素点坐边所对应的云台角度计算描述示意图之四。
图7是本发明映射的目标定位云台控制方法中的目标定位云台控制流程示意图。
图8是本发明映射的目标定位云台控制方法中的计算云台控制角度流程示意图。
图9是本发明映射的目标定位云台控制方法中的计算云台控制角度所使用参数的计算流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明涉及图像处理、运动跟踪,计算机视觉、云台控制、镜头光学等领域,更具体的说,涉及基于单镜头图像静态和动态识别的摄像机自动跟踪系统。利用计算机程序对视频监控云台坐标定位。解决了云台不能准却跟踪目标,定位不准的问题。
例如:激光清障,电力巡检,机器人拍仪表时,云台会经过多次的转动才能把仪表移动到图像的中心,很难一次性的直接移动到图像的中心,这就会浪费很多的时间。
在公安监控系统中,当发现可疑人物时,公安人员会通过多次的手动矫正,才能把人物移动到图像的中心。
本专利可以准确迅速的把图像中的某一点移动到图像的中心,更加方便快捷。
本发明公开了一种通过目标像素坐标计算云台角度坐标的算法。通过计算获得从像素坐标到云台角度坐标的映射。从而根据目标在图像上的坐标计算出,使目标准确到达摄像头光轴的转动云台角度。只需一次控制,精准定位云台使目标位于图像中心。
本发明的目的是更加准确的找到图像中像素点坐标所对应的云台角度。
一、计算云台控制角度的原理
如图2所示,摄像头拍摄的图像是一个球体,及AB的弧长,当∠AO1B足够小的时候,AB的弦长近似等于AB的弧长,及图像中显示的像素点坐标,然后根据AB的弦长和云台转动的角度形成映射关系。
要计算云台转动的角度,一般用弧长公式:弧长AB=R*∠AO1B。
所以∠AO1B=弧长AB/R。而当∠AO1B足够小的时候,弦长AB近似等于弧长AB。所以∠AO1B=AB/R。这里∠AO1B是云台转动的角度,AB是图像中目标的像素距离。
设A点的云台控制坐标是p1,t1,B点的云台控制坐标是p2,t2。A点在图像中的像素坐标是x1,y1,B点在图像中的像素坐标是x2,y2。
在三角形O1O2B中sin(∠AO1B/2)=O2B/O1B=AB/2/R。
所以∠AO1B=2asin(AB/2R)
因为A和B两点在一个画面里,AB相对于物距R非常小,所以近似∠AO1B=AB/2R。考虑x轴,∠AO1B=P1-P2,AB=x1-x2,代入上式得(P1-P2)/(x1-x2)=1/2R。领取一点x3,得(P2-P3)/(x2-x3)=1/2R。得到(P1-P2)/(x1-x2)=(P2-P3)/(x2-x3)得P3=P2-(P1-P2)*(x2-x3)/(x1-x2)。
上式对于y和T同样适用。这说明再同一画面中,只要确定两点的云台控制坐标和像素坐标,就可以得到画面中所以点的云台控制坐标和像素坐标的映射关系。也就是给出像素坐标就能计算出云台控制坐标。
像素点坐边所对应的云台角度计算描述。
云台的控制是基于目标点和云台角度的映射关系。
原理:
如图3,取当前点的云台位置P=179.1、T=1.8、Z=26.2,待测的黑点距中心点的像素距离X=384、Y=-300。
如图4,根据当前云台的Z值和距中心点X、Y坐标的值,让云台水平移动480个像素,竖直移动270个像素,套入粗略计算移动角度的公式float d=(float)(offset*180*2.75/M_PI/1000/4.5/z)得到云台位置为P=179.7、T=2.2、Z=26.2,转动后,得到图4的图像,此时黑点距中心点的距离X=85,Y=-105。
通过计算函数,带入两个的云台位置值和距中心点的X、Y坐标值
void ComputeParameter(PTZPOS_C ptz1,POINT point1,PTZPOS_C ptz2,POINTpoint2)
{
if((point1.x-point2.x)==0||(point1.y-point2.y)==0)
{
CContent::ShowDebug("(point1.x-point2.x)==0||(point1.y-point2.y)==0");
return;
}
float tempP=(ptz2.fP-(((ptz1.fP-ptz2.fP)*point2.x)/(point1.x-point2.x)));
float tempT=(ptz2.fT-(((ptz1.fT-ptz2.fT)*point2.y)/(point1.y-point2.y)));
if(ptz1.fZ!=ptz2.fZ)
{
CContent::ShowDebug("两次z值不一样");
return;
}
PTZPOS_C Correct_PTZ;
Correct_PTZ.fP=tempP;
Correct_PTZ.fT=tempT;
Correct_PTZ.fZ=ptz1.fZ;
m_cenTrePixel.cenTrePosi=Correct_PTZ;
m_cenTrePixel.degWithpixelP=abs(point1.x-point2.x)/fabsf(ptz1.fP-ptz2.fP);
m_cenTrePixel.degWithpixelT=abs(point1.y-point2.y)/fabsf(ptz1.fT-ptz2.fT);
}
计算得出黑点在中心点的PTZ值P=179.8、T=2.4、Z=26.2,转动云台,得到图5的图像,计算得出黑点距离中心点的距离X=20、Y=25,
由于云台机械误差,云台转动的不是非常精准,但25像素在图像中的比例可以忽略不计。
拉伸云台的Z值,得到图6的图像,可以看出,黑点还是处于图像的中心位置,说明通过这个方法计算是相当准确的。
三、目标定位云台控制流程
如图7所示:
确定图像上的一点
获取该点的像素坐标
获取云台的位置角度
开始转动云台
再在图像中找到同一个点
获取当前云台的位置角度
通过参数计算云台角度和像素点对应的关系
等待控制云台
输入新的图像中的坐标点
计算出云台控制的角度
转动云台
判断是否退出
退出
四、计算云台控制角度流程
如图8所示:
开始
输入目标像素点的坐标X、Y
计算相对的角度
计算绝对的角度
输出云台的位置角度
结束
五、计算云台控制角度所使用参数的计算流程
如图9所示:
开始
输入两次图像中获取的像素坐标和云台位置角度
判断图像中两次取的坐标X是否相同
如果相同重新取点
如果不同判断两次取点的坐标Y是否相同
如果是重新取点
如果不是判断两次的变倍参数是否相同
如果相同重新取点
如果不同计算图像中单位度数所对象的像素点
计算图像中心对应的云台角度
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
Claims (4)
1.一种映射的目标定位云台控制方法,其特征在于,包括:
确定图像上的一点;
获取该点的像素坐标;
获取云台的位置角度;
开始转动云台;
再在图像中找到同一个点;
获取当前云台的位置角度;
通过参数计算云台角度和像素点对应的关系;
等待控制云台;
输入新的图像中的坐标点;
计算出云台控制的角度;
其中,计算云台控制角度具体包括:
输入目标像素点的坐标X、Y;
计算相对的角度;
计算绝对的角度;
输出云台的位置角度;
其中,计算云台控制角度所使用参数具体包括:输入两次图像中获取的像素坐标和云台位置角度;
判断图像中两次取的坐标X是否相同;
如果相同重新取点;
如果不同判断两次取点的坐标Y是否相同;
如果不同重新取点;
如果相同判断两次的变倍参数是否相同;
如果相同重新取点;
如果不同计算图像中单位度数所对应像素点;
计算图像中心对应的云台角度。
2.如权利要求1所述的映射的目标定位云台控制方法,其特征在于,还包括:转动云台;
判断是否退出;
退出。
3.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1到2任一项所述方法的步骤。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1到2任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910704062.3A CN110381257B (zh) | 2019-07-31 | 2019-07-31 | 映射的目标定位云台控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910704062.3A CN110381257B (zh) | 2019-07-31 | 2019-07-31 | 映射的目标定位云台控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110381257A CN110381257A (zh) | 2019-10-25 |
CN110381257B true CN110381257B (zh) | 2021-06-18 |
Family
ID=68257489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910704062.3A Active CN110381257B (zh) | 2019-07-31 | 2019-07-31 | 映射的目标定位云台控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110381257B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111654677B (zh) * | 2020-06-17 | 2021-12-17 | 浙江大华技术股份有限公司 | 确定云台失步的方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902884A (zh) * | 2012-09-24 | 2013-01-30 | 天津市亚安科技股份有限公司 | 云台摄像机自动定位角度计算方法 |
CN104853104B (zh) * | 2015-06-01 | 2018-08-28 | 深圳市微队信息技术有限公司 | 一种自动跟踪拍摄运动目标的方法以及系统 |
JP6782895B2 (ja) * | 2017-03-09 | 2020-11-11 | 国立研究開発法人農業・食品産業技術総合研究機構 | 車載カメラの取付方向パラメータ算出装置および取付方向パラメータ算出方法 |
CN108574825B (zh) * | 2017-03-10 | 2020-02-21 | 华为技术有限公司 | 一种云台摄像机的调整方法和装置 |
CN108803683B (zh) * | 2018-05-18 | 2021-09-10 | 南京邮电大学 | 基于ZigBee无线传感网络的多摄像头追踪拍摄系统和方法 |
CN110749311B (zh) * | 2019-09-12 | 2021-08-31 | 浙江大华技术股份有限公司 | 定位方法、装置以及存储介质 |
-
2019
- 2019-07-31 CN CN201910704062.3A patent/CN110381257B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110381257A (zh) | 2019-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6663040B2 (ja) | 奥行き情報取得方法および装置、ならびに画像取得デバイス | |
JP6011548B2 (ja) | カメラ校正装置、カメラ校正方法およびカメラ校正用プログラム | |
US10116860B2 (en) | Imaging operation guidance device and imaging operation guidance method | |
EP3421930B1 (en) | Three-dimensional shape data and texture information generation system, photographing control program, and three-dimensional shape data and texture information generation method | |
CN107113376A (zh) | 一种图像处理方法、装置及摄像机 | |
CN111242988B (zh) | 一种广角相机与长焦相机联动双云台跟踪目标的方法 | |
WO2018077218A1 (zh) | 一种深度测量方法及系统 | |
CN112949478A (zh) | 基于云台相机的目标检测方法 | |
JP4974765B2 (ja) | 画像処理方法及び装置 | |
CN104939793A (zh) | 基于液体透镜的可调焦3-d胶囊内窥镜系统 | |
JP5183152B2 (ja) | 画像処理装置 | |
CN116030099B (zh) | 一种基于ptz相机的多目标跟踪方法及装置 | |
CN112399033A (zh) | 摄像机组件和监控摄像机 | |
JP2010074730A (ja) | 放送用バーチャルスタジオのズームレンズ搭載カメラのカメラキャリブレーション装置、その方法およびそのプログラム | |
CN110381257B (zh) | 映射的目标定位云台控制方法 | |
JP2004239791A (ja) | ズームによる位置計測方法 | |
JP2007134845A (ja) | カメラ制御装置およびカメラ制御プログラム | |
JP4198536B2 (ja) | 物体撮影装置、物体撮影方法及び物体撮影プログラム | |
JP6789899B2 (ja) | 計測装置および計測装置の作動方法 | |
JP2005031044A (ja) | 三次元誤差測定装置 | |
CN112702513B (zh) | 一种双光云台协同控制方法、装置、设备及存储介质 | |
JP2004020398A (ja) | 空間情報獲得方法、空間情報獲得装置、空間情報獲得プログラム、及びそれを記録した記録媒体 | |
JP4536428B2 (ja) | ズームレンズのキャリブレーション装置及びキャリブレーション方法、撮影装置 | |
Kudinov et al. | The algorithm for a video panorama construction and its software implementation using CUDA technology | |
CN107067440B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |