首页 > 其他 > 详细

照相机模型与增强现实

时间:2019-04-07 23:25:50      阅读:185      评论:0      收藏:0      [点我收藏+]

一.以平面和标志物进行姿态估计

首先,本次实验需要下载(1)openGL:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyopengl;(2)pygame:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame(具体步骤参考网络)

1.实验代码如下:

技术分享图片

技术分享图片

技术分享图片

技术分享图片

实验结果如下图:

技术分享图片

技术分享图片

 

 

 

技术分享图片

     使用平面物体作为标记物,来计算用于新视图投影矩阵的例子。将图像的特征和对齐后的标记匹配,计算出单应性矩阵,然后用于计算照相机的姿态。第一张图是一个带有蓝色正方形区域的模板图像(书本正面照)。第二张图是从某个角度拍摄的另一张书本图像,其中的蓝色正方形区域对应了第一张图的区域。第三张图是使用计算出的照相机矩阵变换立方体的结果。

二.综合集成

实验代码如下所示:

技术分享图片

技术分享图片

技术分享图片

技术分享图片

实验结果如下:

技术分享图片

增强现实,使用由特征匹配计算出的照相机参数,将一个计算机图形学模型放置在场景中的书本:将茶壶按照和坐标轴对齐的方式显示出来,进行合理性验证,查看原点的位置。

 

三.实验遇到的问题

问题1:OpenGL.error.NullFunctionError: Attempt to call an undefined function glutInitDisplayMode…

解决方法:该问题的主要原因是我们的机器大部分都是64位的,但是通过pip install opengl 安装的版本默认为32位的,所以需要下载64位

 

问题2:freeglut ERROR: Function called without first calling ‘glutInit’.

解决方法:这个错误是freeglut和glut共存的缘故,它们俩定义了相同的方法,这个是动态链接库的重叠问题,将Anaconda2\Lib\site-packages\OpenGL\DLLS文件夹里面的freeglut64.vc9.dll删掉就行了。

 



 

照相机模型与增强现实

原文:https://www.cnblogs.com/silencexiaoyou/p/10667911.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!