照相机模型与增强现实

这篇博客介绍了使用Python进行照相机模型和增强现实的实践过程,包括安装pygame和openGL库,解决动态链接库冲突,进行平面和标记物姿态估计,以及调整图像分辨率以改善增强现实效果。通过实例展示了在不同分辨率和拍摄角度下如何优化结果。
摘要由CSDN通过智能技术生成

照相机模型与增强现实

1. 使用增强现实之前的准备

在学习计算机视觉中的照相机模型和增强现实时,若是使用python,则需要先安装两个库。
1、pygame:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame
2、openGL:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyopengl
根据自己的python版本下载相应的文件,例如:我的python是3.7.2版本,我的系统是64位,所以我需要下载文件名里有cp37m-win amd64的文件。

在这里插入图片描述
在这里插入图片描述
下载好了以后,在两个文件所在的目录下安装。在文件所在目录,利用shift+鼠标右键,打开powershell窗口,输入pip install 文件名。
例如安装pygame:pip install pygame-1.9.4-cp37-cp37m-win_amd64.whl
openGL类似。
在这里插入图片描述
在运行第二端代码的
在这里插入图片描述
遇到这个问题,说明freeglut和glut定义了相同的方法,使得动态链接库重叠。所以在这里的解决方法。就是删掉freeglut就行了。
文件位置如下:D:\Python37\Lib\site-packages\OpenGL\DLLS
在该位置删掉freeglut64.vc9.dll文件
在这里插入图片描述

2、进行试验

1、对平面和标记物进行姿态估计

如果图像中包含了平面状的标记物体,并且已经对照相机进行了标定,那么我们就可以加算出照相机的姿态。首先我们要限拍两张图片,并提取两张图像的SIFT特征,然后使用RANSAC算法稳健地估计单应性矩阵。
得到单应性矩阵。该单应性矩阵将一幅图像中标记物上的点映射到另一幅图像的对应点。然后定义相应的三维坐标系。
先拍摄两张图像。将名字改掉,在代码中实现。

from pylab import *
from PIL import Image

# If you have PCV installed, these imports should work
from PCV.geometry import homography, camera
from PCV.localdescriptors import sift

"""
This is the augmented reality and pose estimation cube example from Section 4.3.
"""


def cube_points(c, wid):
    """ Creates a list of points for plotting
        a cube with plot. (the first 5 points are
        the bottom square, some sides repeated). """
    p = []
    # bottom
    p.append([c[0]-wid, c[1]-wid, c[2]-wid])
    p.append([c[0]-wid, c[1]+wid, c[2]-wid])
    p.append([c[0]+wid, c[1]+wid, c[2]-wid])
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值