基于棋盘格标定板的单目相机标定

本文详细介绍了如何使用棋盘格标定板进行单目相机的标定,涵盖了标定过程中的关键步骤,包括图像采集、特征检测、标定矩阵计算等,结合OpenCV库和Python实现,为计算机视觉应用打下基础。
摘要由CSDN通过智能技术生成

三、

#张大可修改


#调用各种库文件
import cv2
import glob
import numpy as np
#设置使用的棋盘规格,cbraw为列数,cbcol为行数
cbraw = 11
cbcol = 8
# prepare object points, like (0,0,0), (1,0,0), (2,0,0) ....,(6,5,0)
#得到objp为cbraw*cbcol行,3列的0矩阵
objp = np.zeros((cbraw*cbcol,3), np.float32)
'''
设定世界坐标下点的坐标值,因为用的是棋盘可以直接按网格取;
假定棋盘正好在x-y平面上,这样z=0,简化初始化步骤。
mgrid把列向量[0:cbraw]复制了cbcol列,[0:cbcol]复制了cbraw行。
转置reshape后,每行都是8*11网格中的某个点的坐标。
'''
#得到objp[[ 0.,  0.,  0.],[ 6.,  0.,  0.],[ 12.,  0.,  0.]一共有cbraw*cbcol个,其中修改的是棋盘格的边长15
objp[:,:2] = np.mgrid[0:cbraw*15:15,0:cbcol*15:15].T.reshape(-1,2)
#print('objp',objp)
objpoints = [] # 3d point in real world space
imgpoints = [] # 2d points in image plane.
#glob是个文件名管理工具
images = glob.glob("E:\picture\last\liaoding2\*.bmp")
for fname in images:
#对每张图片,识别出角
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值