CN109584308B - 一种基于空间实景地图的位置标定方法 - Google Patents
一种基于空间实景地图的位置标定方法 Download PDFInfo
- Publication number
- CN109584308B CN109584308B CN201811326043.3A CN201811326043A CN109584308B CN 109584308 B CN109584308 B CN 109584308B CN 201811326043 A CN201811326043 A CN 201811326043A CN 109584308 B CN109584308 B CN 109584308B
- Authority
- CN
- China
- Prior art keywords
- point
- camera
- angle
- offset
- obtaining
- 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/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
本发明提供一种基于空间实景地图的位置标定方法,包括如下:步骤1)、画面显示:获取当前摄像头的分辨率;获取视频显示画面的宽高;步骤2)、标定过程:在视频画面上随机取得一点A;等等;当摄像头移动后,重新获取摄像头的上述值,根据摄像头的角度偏移量,求出此时图像中点对应的三维坐标O,用点A的dx,dy,dz与摄像头原点O连成直线,与视频画面的空间平面相交于M点,逆向推导求出标定点在视频画面上的点M,即可重新标定原来的A点在画面上的坐标。本发明不需要标定前的大量测量道具,节省了物力成本和时间成本。大大减少了标定工作的工作周期。根据每个摄像头的不同,只需要调节和优化误差系数,即可减少误差值。
Description
技术领域
本发明涉及大数据技术领域,具体涉及一种基于空间实景地图的位置标定方法。
背景技术
目前,摄像头因为存在误差,已存在多种标定方法,比如通过双摄像头进行标定,通过标定板计算误差后进行标定,工作量大,前期准备周期长,且不容易实施,尤其是当摄像头转动旋转后,标定位置偏移回更大。
发明内容
本发明的目的是提供一种基于空间实景地图的位置标定方法,不需要测量物体与摄像头的距离,在减少误差标定物体后,即使当摄像机旋转,标定点依然能够准确定位。
本发明提供一种基于空间实景地图的位置标定方法,包括如下步骤:
步骤1)、画面显示:
1.1、获取当前摄像头的分辨率,RATIO_HEIGHT*RATIO_WIDTH;
1.2、获取视频显示画面的宽高,SCREEN_H*SCREEN_W;
步骤2)、标定过程:
2.1、在视频画面上随机取得一点A,得到点A的(X,Y)坐标;
2.2、根据坐标,获得对应像素点的坐标(X,Y);
2.3、获取摄像头的水平夹角,HOR_ANGLE;
2.4、获取摄像头的垂直夹角,VER_ANGLE;
2.5、获取当前摄像头的水平偏移角,HOR_OFFSET_ANGLE;
2.6、获取当前摄像头的垂直偏移夹角,VER_OFFSET_ANGLE;
2.7、获取当前摄像头的缩放倍数,SCALE_RATIO;
2.8、所有的画面都在一个圆球面上,画面透过投影方式显示在视频中,计算穿过当前平面中心点的三维坐标,设焦距为1,定义三维坐标,y方向,向下为正;PI为三角函数中的估算值3.1415926;
2.9、求出当前视频中心点对应的垂直角度,pointCenterY=sin(VER_OFFSET_ANGLE*PI/180);
2.10、求出当前视频中心点对应的水平角度,pointCenterX=cos(HOR_OFFSET_ANGLE*PI/180);
2.11、使Z向量与X,Y轴垂直相交,求得标定点在Z方向的坐标,pointCenterZ=
fabs(pointCenterX*tan(fPanPos*PI/180));
2.12、使投影宽高:ShadowSCREEN_W=2*tan((HOR_ANGLE/2)*PI/180.0),ShadowSCREEN_H=2*tan((VER_ANGLE/2)*PI/180.0);
2.13、计算出该随机点距离中心点的相对坐标,pointX=X-SCREEN_W/2,pointY=Y-SCREEN_H/2;
2.14、计算出标定点在二维平面的估算坐标值:
realX=(1+m_factor*(pow(pointX,2)+pow(pointY,2)))*pointX;
realY=(1+m_factor*(pow(pointX,2)+pow(pointY,2)))*pointY;
其中m_factor为误差偏移系数,能够调节,m_factor越大,则偏移量越小;
2.15、根据估算值,获取该点距离中心点的距离;
2.16、scaleWitdh=realX/SCREEN_W;
2.17、scaleHeight=realY/SCREEN_H;
2.18、获取点对应的中心点的角度:
angleW=scaleWitdh*ShadowSCREEN_W;
angleH=scaleHeight*ShadowSCREEN_H;
2.19、设标记点相对于中心点坐标的偏移量为dx,dy,dz,能够得如下方程
tan(fPanPos*PI/180)=dx/dz;
dx*dx+dz*dz=angleW*angleW;
cos(fTiltPos*PI/180)=dy/angleH;
2.20、联立方程,根据象限判断,能够得出dx,dy,dz,则求出该点在三维空间中的估算坐标;
2.21、当摄像头移动后,重新获取摄像头的上述值,根据摄像头的角度偏移量,求出此时图像中点对应的三维坐标O(centerX,centerY,centerZ),用点A的dx,dy,dz与摄像头原点O(0,0,0)连成直线,与视频画面的空间平面相交于M点,逆向推导求出标定点在视频画面上的点M(X1,Y1,Z1),即可重新标定原来的A点在画面上的坐标。
其中,本发明中涉及到专业名词做如下解释说明:
1、分辨率:摄像头能支持到的最大图像大小的像素点,如640x480(普清),800x600,1280x720(高清),1920x1080(全高清或超清),是指横向以及纵向的像素点数。
2、帧率:摄像头在最大分辨率下能够支持的最高视频捕获能力,一般为15-25每秒(FPS)。
3、物距:物体距离摄像机的距离。
4、焦距:焦距是镜头和感光元件之间的距离,通过改变镜头的焦距,可以改变镜头的放大倍数,改变拍摄图像的大小。镜头的放大倍数≈焦距/物距。
5、视场角:反映画面的拍摄范围。焦距固定时,视场角越小,在感光元件上形成的画面范围越小;反之,视场角越大,在感光元件上形成的画面范围越大。水平和垂直视场角的角度大小可能不相同。
6、摄像头的水平夹角和摄像头的垂直夹角:摄像头视野的水平夹角,垂直夹角。
7、摄像头的水平偏移角:摄像头自身初始水平位置的夹角。
8、摄像头的垂直偏移夹角:摄像头安装方向的垂直的夹角,摄像头要求垂直安装。
9、fabs:fabs函数是一个求绝对值的函数。
10、pow:pow函数为幂指数的结果,pow(x,y)即x的y次幂。
11、SCREEN_W和SCREEN_H:SCREEN_W,SCREEN_H为显示的水平像素和垂直像素。
12、fPanPos和fTiltPos:fPanPos,fTiltPos分别为水平的倾斜角,垂直的倾斜角。
与现有技术相比,本发明的有益效果如下:
1、不需要标定前的大量测量道具,节省了物力成本和时间成本。即与现有技术相比,大大减少了标定工作的工作周期。
2、根据每个摄像头的不同,只需要调节和优化误差系数,即可减少误差值。
附图说明
图1为本发明一种基于空间实景地图的位置标定方法的功能流程示意图。
图2为本发明中一个实体的像素点与摄像头成像画面的关系示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1~2,本发明提供一种基于空间实景地图的位置标定方法,包括如下步骤:
步骤(1)、画面显示:
1.1、获取当前摄像头的分辨率,RATIO_HEIGHT*RATIO_WIDTH;
1.2、获取视频显示画面的宽高,SCREEN_HEIGHT*SCREEN_WIDTH;
步骤(2)、标定过程:
2.1、在视频画面上随机取得一点A,得到点A在画面上的(X,Y)坐标;
2.2、根据坐标,获得对应像素点的坐标(X,Y);
2.3、获取摄像头的水平夹角,HOR_ANGLE;
2.4、获取摄像头的垂直夹角,VER_ANGLE;
2.5、获取当前摄像头的水平偏移角,HOR_OFFSET_ANGLE;
2.6、获取当前摄像头的垂直偏移角,VER_OFFSET_ANGLE;
2.7、获取当前摄像头的缩放倍数,SCALE_RATIO,如图1;
2.8、所有的画面都在一个圆球面上,画面透过投影方式显示在视频中,计算穿过当前平面中心点的三维坐标,设焦距为1,定义三维坐标,y方向,向下为正;PI为三角函数中的估算值3.1415926;
2.9、求出当前视频中心点对应的垂直角度,pointCenterY=sin(VER_OFFSET_ANGLE*PI/180);
2.10、求出当前视频中心点对应的水平角度,pointCenterX=cos(HOR_OFFSET_ANGLE*PI/180);
2.11、使Z向量与X,Y轴垂直相交,求得标定点在Z方向的坐标,pointCenterZ=fabs(pointCenterX*tan(fPanPos*PI/180));
2.12、使投影宽高:ShadowSCREEN_W=2*tan((HOR_ANGLE/2)*PI/180.0),ShadowSCREEN_H=2*tan((VER_ANGLE/2)*PI/180.0);
2.13、计算出该随机点距离中心点的相对坐标,pointX=X-SCREEN_W/2,pointY=Y-SCREEN_H/2;
2.14、计算出标定点在二维平面的估算坐标值:
realX=(1+m_factor*(pow(pointX,2)+pow(pointY,2)))*pointX;
realY=(1+m_factor*(pow(pointX,2)+pow(pointY,2)))*pointY;
其中m_factor为误差偏移系数,能够调节,m_factor越大,则偏移量越小,能够根据实际标定后的结果进行优化。
2.15、根据估算值,获取该点距离中心点的距离;
2.16、scaleWitdh=realX/SCREEN_W;
2.17、scaleHeight=realY/SCREEN_H;
2.18、获取点对应的中心点的角度:
angleW=scaleWitdh*ShadowSCREEN_W;
angleH=scaleHeight*ShadowSCREEN_H;
2.19、设标记点相对于中心点坐标的偏移量为dx,dy,dz,能够得如下方程
tan(fPanPos*PI/180)=dx/dz;
dx*dx+dz*dz=angleW*angleW;
cos(fTiltPos*PI/180)=dy/angleH;
2.20、联立方程,根据象限判断,能够得出dx,dy,dz,则求出该点在三维空间中的估算坐标,如图1;
2.21、当摄像头移动后,重新获取摄像头的上述值,根据摄像头的角度偏移量,求出此时图像中点对应的三维坐标O(centerX,centerY,centerZ),用点A的dx,dy,dz与摄像头原点O(0,0,0)连成直线,与视频画面的空间平面相交于M点,逆向推导求出标定点在视频画面上的点M(X1,Y1,Z1),即可重新标定原来的A点在画面上的坐标,如图2。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (1)
1.一种基于空间实景地图的位置标定方法,其特征在于,包括如下步骤:
步骤(1)、画面显示:
1.1、获取当前摄像头的分辨率,RATIO_HEIGHT*RATIO_WIDTH;
1.2、获取视频显示画面的宽高,SCREEN_H*SCREEN_W;
步骤(2)、标定过程:
2.1、在视频画面上随机取得一点A,得到点A的(X,Y)坐标;
2.2、根据坐标,获得对应像素点的坐标(X,Y);
2.3、获取摄像头的水平夹角,HOR_ANGLE;
2.4、获取摄像头的垂直夹角,VER_ANGLE;
2.5、获取当前摄像头的水平偏移角,HOR_OFFSET_ANGLE;
2.6、获取当前摄像头的垂直偏移夹角,VER_OFFSET_ANGLE;
2.7、获取当前摄像头的缩放倍数,SCALE_RATIO;
2.8、所有的画面都在一个圆球面上,画面透过投影方式显示在视频中,计算穿过当前平面中心点的三维坐标,设焦距为1,定义三维坐标,y方向,向下为正;PI为三角函数中的估算值3.1415926;
2.9、求出当前视频中心点对应的垂直角度,pointCenterY=sin(VER_OFFSET_ANGLE*PI/180);
2.10、求出当前视频中心点对应的水平角度,pointCenterX=cos(HOR_OFFSET_ANGLE*PI/180);
2.11、使Z向量与X,Y轴垂直相交,求得标定点在Z方向的坐标,pointCenterZ=fabs(pointCenterX*tan(fPanPos*PI/180));
2.12、使投影宽高:ShadowSCREEN_W=2*tan((HOR_ANGLE/2)*PI/180.0)ShadowSCREEN_H=2*tan((VER_ANGLE/2)*PI/180.0);
2.13、计算出该随机点距离中心点的相对坐标,pointX=X-SCREEN_W/2,pointY=Y-SCREEN_H/2;
2.14、计算出标定点在二维平面的估算坐标值:
realX=(1+m_factor*(pow(pointX,2)+pow(pointY,2)))*pointX;
realY=(1+m_factor*(pow(pointX,2)+pow(pointY,2)))*pointY;
其中m_factor为误差偏移系数,能够调节,m_factor越大,则偏移量越小;
2.15、根据估算值,获取该点距离中心点的距离;
2.16、scaleWitdh=realX/SCREEN_W;
2.17、scaleHeight=realY/SCREEN_H;
2.18、获取点对应的中心点的角度:
angleW=scaleWitdh*ShadowSCREEN_W;
angleH=scaleHeight*ShadowSCREEN_H;
2.19、设标记点相对于中心点坐标的偏移量为dx,dy,dz,能够得如下方程
tan(fPanPos*PI/180)=dx/dz;
dx*dx+dz*dz=angleW*angleW;
cos(fTiltPos*PI/180)=dy/angleH;
2.20、联立方程,根据象限判断,能够得出dx,dy,dz,则求出该点在三维空间中的估算坐标;
2.21、当摄像头移动后,重新获取摄像头的上述值,根据摄像头的角度偏移量,用dx,dy,dz与摄像头原点连成直线,与视频画面的空间平面相交,逆向推导求出标定点在视频画面上的点M(X1,Y1,Z1),即可重新标定原来的A点在画面上的坐标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811326043.3A CN109584308B (zh) | 2018-11-08 | 2018-11-08 | 一种基于空间实景地图的位置标定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811326043.3A CN109584308B (zh) | 2018-11-08 | 2018-11-08 | 一种基于空间实景地图的位置标定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109584308A CN109584308A (zh) | 2019-04-05 |
CN109584308B true CN109584308B (zh) | 2023-04-28 |
Family
ID=65921909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811326043.3A Active CN109584308B (zh) | 2018-11-08 | 2018-11-08 | 一种基于空间实景地图的位置标定方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109584308B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110308741B (zh) * | 2019-07-16 | 2022-02-11 | 杭州叙简科技股份有限公司 | 一种多点无人机侦测防御***及多点无人机侦测打击方法 |
CN115375779B (zh) * | 2022-10-27 | 2023-01-10 | 智广海联(天津)大数据技术有限公司 | 相机ar实景标注的方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009048516A (ja) * | 2007-08-22 | 2009-03-05 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
CN105991929A (zh) * | 2016-06-21 | 2016-10-05 | 浩云科技股份有限公司 | 全空间摄像机外参标定及全空间视频拼接方法 |
CN107862703A (zh) * | 2017-10-31 | 2018-03-30 | 天津天地伟业信息***集成有限公司 | 一种多目联动ptz跟踪方法 |
-
2018
- 2018-11-08 CN CN201811326043.3A patent/CN109584308B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009048516A (ja) * | 2007-08-22 | 2009-03-05 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
CN105991929A (zh) * | 2016-06-21 | 2016-10-05 | 浩云科技股份有限公司 | 全空间摄像机外参标定及全空间视频拼接方法 |
CN107862703A (zh) * | 2017-10-31 | 2018-03-30 | 天津天地伟业信息***集成有限公司 | 一种多目联动ptz跟踪方法 |
Non-Patent Citations (1)
Title |
---|
摄像机非线性标定方法;王子亨等;《计算机工程与设计》;20100816(第15期);第194-197页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109584308A (zh) | 2019-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9195121B2 (en) | Markerless geometric registration of multiple projectors on extruded surfaces using an uncalibrated camera | |
US9600859B2 (en) | Image processing device, image processing method, and information processing device | |
CN102984453B (zh) | 利用单摄像机实时生成半球全景视频图像的方法及*** | |
US9172871B2 (en) | Method and device for multi-camera image correction | |
KR101521008B1 (ko) | 어안 렌즈를 사용하여 얻은 왜곡영상에 대한 보정방법 및 이를 구현하기 위한 영상 디스플레이 시스템 | |
US9946955B2 (en) | Image registration method | |
CN111461994A (zh) | 一种坐标转换矩阵的获取及监控画面中目标定位方法 | |
US10825249B2 (en) | Method and device for blurring a virtual object in a video | |
CN103839227B (zh) | 鱼眼图像校正方法和装置 | |
CN101132535A (zh) | 基于转台的多投影大屏拼接方法 | |
KR102550930B1 (ko) | 나안 3d 디스플레이의 이미지 오차 수정방법 및 장치 | |
CN110807803B (zh) | 一种摄像机定位方法、装置、设备及存储介质 | |
CN104168467A (zh) | 运用时间序列结构光技术实现投影显示几何校正的方法 | |
CN109584308B (zh) | 一种基于空间实景地图的位置标定方法 | |
CN113538587A (zh) | 一种相机坐标变换方法、终端以及存储介质 | |
Sagawa et al. | Calibration of lens distortion by structured-light scanning | |
CN114727081A (zh) | 投影仪投影校正方法、装置及投影仪 | |
KR20200003584A (ko) | 깊이 카메라를 이용한 실시간 프로젝터 영상 보정 방법 및 장치 | |
KR100690172B1 (ko) | 다수의 카메라를 구비한 이동통신 단말기를 이용한 3차원형상의 3차원 좌표정보 추출 방법 및 이를 이용한 단말기 | |
CN104807405A (zh) | 一种基于光线角度标定的三维坐标测量方法 | |
US10606149B2 (en) | Information processing device, information processing method, and program | |
JP2011155412A (ja) | 投影システムおよび投影システムにおける歪み修正方法 | |
JP6178127B2 (ja) | 建造物の計測装置および計測方法 | |
CN111131801B (zh) | 投影仪校正***、方法及投影仪 | |
CN104363421B (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 |