基于计算机视觉定位的增强现实实现方法技术

技术编号:20970796 阅读:21 留言:0更新日期:2019-04-29 17:34
本发明专利技术公开了一种基于计算机视觉定位的增强现实实现方法,该方法针对单目相机,其实现过程包括:首先,对所用相机进行离线标定;然后在相机拍摄图像上提取特征点,计算描述子,对提取到的特征点进行图像畸变矫正处理;再者,围绕图像特征点计算相机位姿;最后,将相机位姿输入三维引擎模块,在现实图像背景上叠加虚拟三维模型,实现了增强现实效果。本发明专利技术通过单目相机获取图像信息,围绕图像特征点计算相机位姿,降低了增强现实实现的复杂性,拓展了增强现实的应用范围。

Realization of Augmented Reality Based on Computer Vision Location

【技术实现步骤摘要】
基于计算机视觉定位的增强现实实现方法
本专利技术属于计算机
,更进一步涉及图像处理
中的一种基于计算机视觉空间定位的增强现实实现方法。本专利技术可以用于对单目相机获取的图像实现增强现实效果。
技术介绍
增强现实是一种实时地计算摄影机影像的位置及角度并叠加相应图像、视频、三维模型的技术,其目标是在屏幕上把虚拟世界叠加在现实世界上并进行互动。增强现实不仅展现了真实世界的信息,而且将虚拟的信息同时显示出来,两种信息相互补充、叠加。真实与虚拟的相结合作为增强现实的优点之一,使得它在医疗,教育,军事,工业,游戏,媒体等领域均有广泛的应用与发展前景。目前,增强现实技术的实现方法受限于硬件平台,特定的视觉传感器组合限制了增强现实应用的应用场景,不利于增强现实的广泛应用。同济大学在其申请的专利文献“一种互动区域可调的增强现实实现方法”(申请号:201610717548.7,公开号:CN106371586.B)中公开一种互动区域可调的增强现实实现方法。该实现方法构建一套云台系统,云台系统上面固定的三维扫描设备与投影显示设备之间的相对位置可调,由配套操作与算法实现两者的快速空间匹配,获得一个新的互动区域。该方法存在的不足之处是,过于依赖特定的云台系统,多传感器信息融合操作复杂,增强现实应用的可适用范围小。深圳奥比中光科技有限公司在其申请的专利文献“一种增强现实的实现方法”(申请号:201610988804.6,公开号:CN106600638A)中公开一种增强现实的实现方法。该方法的步骤是,利用深度相机获取场景图像,根据场景图像中物体的边缘轮廓,将增强现实内容与现实场景中的物体精准定位。该方法存在的不足之处是,深度相机获取原始深度信息时易受环境光照因素影响,导致后续处理中过多噪声参与计算,增强现实难以应用于室外场景,应用场景受限。
技术实现思路
本专利技术的目的在于针对上述现有技术的不足,提出了一种仅借助单目相机获取图像信息基于计算机视觉的定位技术,用于增强现实的实现,可适用范围较广。实现本专利技术目的的思路是,通过单目相机获取的图像信息,围绕图像特征点展开计算,基于对极约束关系初始化相机位姿,通过二维图像点与三维空间点的映射关系,实时获取相机的位置与姿态,以现实相机的实时位姿为依据,调整三维引擎模块中虚拟相机的位姿,在现实图像背景上叠加虚拟三维模型,实现增强现实效果。本专利技术的具体实现步骤如下:(1)标定相机:采用基于移动平面模板的相机标定方法,标定摄像机内参数矩阵,三个径向畸变参数,二个切向畸变参数;(2)提取图像特征点:采用加速段测试的特征FAST检测方法,从标定后相机拍摄的图像中提取特征点;(3)计算特征点描述子:(3a)用方差为2,9×9个像素点的高斯窗口,对提取特征点后的图像进行高斯滤波,得到滤波后的图像;(3b)从滤波后的图像中任意选取一个图像特征点,作为当前图像特征点;(3c)以当前图像特征点为中心,将其31×31个像素点邻域范围内的所有像素点组成一个图像邻域块;(3d)在每个图像邻域块中随机选取一对5×5像素点大小的图像子块;(3e)利用比特位计算公式,计算描述子中的每个比特位:(3f)判断是否选取完图像邻域块中的所有图像子块,若是,则执行步骤(3g),否则,执行步骤(3c);(3g)判断是否选取完滤波后的图像中所有图像特征点,若是,则执行步骤(4),否则,执行步骤(3b);(4)矫正图像畸变:(4a)对提取到的每一个图像特征点,进行图像特征点的坐标归一化处理;(4b)利用径向畸变矫正公式,对归一化后的图像特征点坐标进行径向畸变矫正;(4c)利用切向畸变矫正公式,对径向畸变矫正后图像坐标进行切向畸变矫正;(5)判断当前处理的相机拍摄图像帧数是否为相机拍摄图像的第一帧,若是,执行步骤(6);若当前处理图像为相机拍摄图像的第二帧,执行步骤(7),若当前处理图像帧数大于等于三,执行步骤(9);(6)初始化三维引擎模块:(6a)以当前相机坐标系为基准,建立世界坐标系,用单位矩阵表征相机位姿;(6b)将三维引擎模块中的虚拟相机内参数矩阵设置为标定相机的内参数矩阵,将三维引擎模块中虚拟相机的位姿设置为单位矩阵;(6c)三维引擎模块读取由三维动画软件制作的三维模型后执行步骤(2);(7)初始化相机位姿:(7a)选取相机拍摄的最初的两个图像帧,对两组二维图像特征点描述子进行匹配,用汉明距离表征图像特征点描述子匹配程度;(7b)对于满足对极约束关系的所有图像特征点匹配对中的任意一对图像特征点,计算相机位姿的本征矩阵:PiTEQj=0其中,Pi表示选取的第一帧图像的第i个图像特征点的齐次坐标,T表示转置操作,E表示相机位姿的本征矩阵,Qj表示选取的第二帧图像中与Pi满足对极约束关系的第j个图像特征点的齐次坐标;(7c)分别计算相机位姿的旋转矩阵和平移向量,公式如下:E=cRRRT=I其中,c表示相机位姿的平移向量的反对称矩阵,R表示相机位姿的旋转矩阵,I表示单位矩阵;(7d)利用变换矩阵计算公式,计算相机位姿的变换矩阵:O=[R|t]其中,O表示相机位姿的变换矩阵,t表示相机位姿的平移向量;(7e)基于当前相机位姿的变换矩阵,建立当前相机坐标系后执行步骤(8);(8)映射三维空间点:(8a)在当前相机位姿对应的相机坐标系中,按照下式,计算当前图像帧中二维图像特征点对应的三维空间坐标:Ba=KDa其中,Ba表示当前图像帧的第a个图像特征点的齐次坐标,Da表示与Ba对应的当前相机位姿对应的相机坐标系中的三维空间点坐标;(8b)将当前相机坐标系变换到世界坐标系,将当前相机坐标系中的三维空间点添加到世界坐标系三维空间点集合后执行步骤(10);(9)获取相机实时位姿:(9a)将当前三维空间点集合中的三维空间点与当前图像帧提取到的二维图像点匹配,用欧氏距离和汉明距离表征匹配程度;(9b)采用基于点特征的定位PnP方法,得到准确的当前相机位姿的变换矩阵;(9c)基于当前相机位姿的变换矩阵,建立当前相机坐标系后执行步骤(8);(10)渲染增强现实效果:(10a)三维引擎模块将当前图像帧放入帧缓冲区,作为增强现实的现实部分;(10b)根据当前现实相机的位姿信息,调整三维引擎模块中的虚拟相机位姿,使得虚拟相机位姿与当前现实相机的位姿一致;(10c)基于虚拟相机的当前位姿,将世界坐标系中的的三维模型变换到当前图像帧对应的相机坐标系中;(10d)基于虚拟相机的内参数矩阵,将当前相机坐标系中的三维模型投影至二维平面,投影结果放入帧缓冲区,叠加在当前图像帧之上,作为增强现实的虚拟部分;(10e)将帧缓冲区映射到屏幕上,呈现出现实与虚拟相融合的虚拟现实效果。本专利技术与现有的相比,具有以下优点:第一,由于本专利技术采用加速段测试的特征FAST检测方法,从标定后相机拍摄的图像中提取特征点,对于满足对极约束关系的所有图像特征点匹配对中的任意一对图像特征点,计算相机位姿的变换矩阵,克服了现有技术存在的难以应用于室外场景的不足,使得本专利技术具有可应用于室外场景的优点;第二,由于本专利技术的三维引擎模块将当前图像帧作为背景渲染到屏幕上,作为增强现实的现实部分,克服了现有技术存在的多传感器信息融合操作复杂的不足,使得本专利技术具有操作简洁,易于实现的优点;第三,由于本专利技术将当前相本文档来自技高网
...

【技术保护点】
1.一种基于计算机视觉定位的增强现实实现方法,其特征在于,初始化相机位姿,渲染增强现实效果,该方法的步骤包括如下:(1)标定相机:采用基于移动平面模板的相机标定方法,标定摄像机内参数矩阵,三个径向畸变参数,二个切向畸变参数;(2)提取图像特征点:采用加速段测试的特征FAST检测方法,从标定后相机拍摄的图像中提取特征点;(3)计算特征点描述子:(3a)用方差为2,9×9个像素点的高斯窗口,对提取特征点后的图像进行高斯滤波,得到滤波后的图像;(3b)从滤波后的图像中任意选取一个图像特征点,作为当前图像特征点;(3c)以当前图像特征点为中心,将其31×31个像素点邻域范围内的所有像素点组成一个图像邻域块;(3d)在每个图像邻域块中随机选取一对5×5像素点大小的图像子块;(3e)利用比特位计算公式,计算描述子中的每个比特位:(3f)判断是否选取完图像邻域块中的所有图像子块,若是,则执行步骤(3g),否则,执行步骤(3c);(3g)判断是否选取完滤波后的图像中所有图像特征点,若是,则执行步骤(4),否则,执行步骤(3b);(4)矫正图像畸变:(4a)对提取到的每一个图像特征点,进行图像特征点的坐标归一化处理;(4b)利用径向畸变矫正公式,对归一化后的图像特征点坐标进行径向畸变矫正;(4c)利用切向畸变矫正公式,对径向畸变矫正后图像坐标进行切向畸变矫正;(5)判断当前处理的相机拍摄图像帧数是否为相机拍摄图像的第一帧,若是,执行步骤(6);若当前处理图像为相机拍摄图像的第二帧,执行步骤(7),若当前处理图像帧数大于等于三,执行步骤(9);(6)初始化三维引擎模块:(6a)以当前相机坐标系为基准,建立世界坐标系,用单位矩阵表征相机位姿;(6b)将三维引擎模块中的虚拟相机内参数矩阵设置为标定相机的内参数矩阵,将三维引擎模块中虚拟相机的位姿设置为单位矩阵;(6c)三维引擎模块读取由三维动画软件制作的三维模型后执行步骤(2);(7)初始化相机位姿:(7a)选取相机拍摄的最初的两个图像帧,对两组二维图像特征点描述子进行匹配,用汉明距离表征图像特征点描述子匹配程度;(7b)对于满足对极约束关系的所有图像特征点匹配对中的任意一对图像特征点,计算相机位姿的本征矩阵:Pi...

【技术特征摘要】
1.一种基于计算机视觉定位的增强现实实现方法,其特征在于,初始化相机位姿,渲染增强现实效果,该方法的步骤包括如下:(1)标定相机:采用基于移动平面模板的相机标定方法,标定摄像机内参数矩阵,三个径向畸变参数,二个切向畸变参数;(2)提取图像特征点:采用加速段测试的特征FAST检测方法,从标定后相机拍摄的图像中提取特征点;(3)计算特征点描述子:(3a)用方差为2,9×9个像素点的高斯窗口,对提取特征点后的图像进行高斯滤波,得到滤波后的图像;(3b)从滤波后的图像中任意选取一个图像特征点,作为当前图像特征点;(3c)以当前图像特征点为中心,将其31×31个像素点邻域范围内的所有像素点组成一个图像邻域块;(3d)在每个图像邻域块中随机选取一对5×5像素点大小的图像子块;(3e)利用比特位计算公式,计算描述子中的每个比特位:(3f)判断是否选取完图像邻域块中的所有图像子块,若是,则执行步骤(3g),否则,执行步骤(3c);(3g)判断是否选取完滤波后的图像中所有图像特征点,若是,则执行步骤(4),否则,执行步骤(3b);(4)矫正图像畸变:(4a)对提取到的每一个图像特征点,进行图像特征点的坐标归一化处理;(4b)利用径向畸变矫正公式,对归一化后的图像特征点坐标进行径向畸变矫正;(4c)利用切向畸变矫正公式,对径向畸变矫正后图像坐标进行切向畸变矫正;(5)判断当前处理的相机拍摄图像帧数是否为相机拍摄图像的第一帧,若是,执行步骤(6);若当前处理图像为相机拍摄图像的第二帧,执行步骤(7),若当前处理图像帧数大于等于三,执行步骤(9);(6)初始化三维引擎模块:(6a)以当前相机坐标系为基准,建立世界坐标系,用单位矩阵表征相机位姿;(6b)将三维引擎模块中的虚拟相机内参数矩阵设置为标定相机的内参数矩阵,将三维引擎模块中虚拟相机的位姿设置为单位矩阵;(6c)三维引擎模块读取由三维动画软件制作的三维模型后执行步骤(2);(7)初始化相机位姿:(7a)选取相机拍摄的最初的两个图像帧,对两组二维图像特征点描述子进行匹配,用汉明距离表征图像特征点描述子匹配程度;(7b)对于满足对极约束关系的所有图像特征点匹配对中的任意一对图像特征点,计算相机位姿的本征矩阵:PiTEQj=0其中,Pi表示选取的第一帧图像的第i个图像特征点的齐次坐标,T表示转置操作,E表示相机位姿的本征矩阵,Qj表示选取的第二帧图像中与Pi满足对极约束关系的第j个图像特征点的齐次坐标;(7c)按照下式,分别计算相机位姿的旋转矩阵和平移向量:E=cRRRT=I其中,c表示相机位姿的平移向量的反对称矩阵,R表示相机位姿的旋转矩阵,I表示单位矩阵;(7d)利用变换矩阵计算公式,计算相机位姿的变换矩阵:O=[R|t]其中,O表示相机位姿的变换矩阵,t表示相机位姿的平移向量;(7e)基于当前相机位姿的变换矩阵,建立当前相机坐标系后执行步骤(8);(8)映射三维空间点:(8a)在当前相机位姿对应的相机坐标系中,按照下式,计算当前图像帧中二维图像特征点对应的三维空间坐标:Ba=KDa其中,Ba表示当前图像帧的第a个图像特征点的齐次坐标,Da表示与Ba对应的当前相机位姿对应的相机坐标系中的三维空间点坐标;(8b)将当前相机坐标系变换到世界坐标系,将当前相机坐标系中的三维空间点添加到世界坐标系三维空间点集合后执行步骤(10);(9)获取相机实时位姿:(9a)将当前三维空间点集合中的三维空间点与当前图像帧提取到的二维图像点匹配,用欧氏距离和汉明距离表征匹配程度;(9b)采用基于点特征的定位PnP方法,得到准确的当前相机位姿的变换矩阵;(9c)基于当前相机位姿的变换矩阵,建立当前相机坐标系后执行步骤(8);(10)渲染增强现实效果:(10a)三维引擎模块将当前图像帧放入帧缓冲区,作为增强现实的现实部分;(10b)根据当前现实相机的位姿信息,调整三维引擎模块中的虚拟相机位姿,...

【专利技术属性】
技术研发人员:韩红高鑫磊范迎春陈军如张照宇李阳岳欣唐裕亮
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1