Matlab 单双目相机标定+畸变校正
2019年1月14日 2019年1月19日
Matlab 单双目相机标定+畸变校正
不管单目双目标定第1第2步都是必须的
第3步为单目标定,第4步为双目标定
1. 标定板
您使用的棋盘图案不得为方形。一侧必须包含偶数个正方形,另一侧必须包含奇数个正方形。此条件使应用程序可以确定模式的方向。校准器将长边指定为x方向。
直接用python生成国际象棋盘格图片再打印到A4纸上做为标定板,生成图片代码如下:
Python
import cv2
import numpy as np
#A4纸的标准大小为210*297mm,这里大小设为A4的三倍,格子边长为90
width = 630
height = 891
length = 90
image = np.zeros((height,width),dtype = np.uint8)
print(image.shape[0],image.shape[1])
for j in range(height):
for i in range(width):
if((int)(i/length) + (int)(j/length))%2:
image[j,i] = 255;
cv2.imwrite("chess.jpg",image)
cv2.imshow("chess",image)
cv2.waitKey(0)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
importcv2
importnumpyasnp
#A4纸的标准大小为210*297mm,这里大小设为A4的三倍,格子边长为90
width=630
height=891
length=90
image=np.zeros((height,width),dtype=np.uint8)
print(image.shape[0],image.shape[1])
forjinrange(height):
foriinrange(width):
if((int)(i/length)+(int)(j/length))%2:
image[j,i]=255;
cv2.imwrite("chess.jpg",image)
cv2.imshow("chess",image)
cv2.waitKey(0)
2. 拍照
拍摄图片至少10张,我拍了35张,
如果你标定的是单摄像头直接拍照就好了,<