Python生成标定板
时间: 2024-06-01 08:06:09 浏览: 19
生成标定板是为了进行相机标定而设计的,在Python中可以使用OpenCV库中的函数生成标定板。下面是一个示例代码:
```python
import numpy as np
import cv2
# 设置标定板的大小和格子数
board_w = 9
board_h = 6
square_size = 1.0
# 生成标定板角点的世界坐标系坐标
objp = np.zeros((board_h*board_w, 3), np.float32)
objp[:, :2] = np.mgrid[0:board_w, 0:board_h].T.reshape(-1, 2)
objp *= square_size
# 创建标定板图像
img_size = (640, 480)
img_shape = (board_h, board_w)
img_pts = []
images = []
for i in range(15):
img = np.zeros((img_size, img_size, 3), dtype=np.uint8)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 查找标定板角点
ret, corners = cv2.findChessboardCorners(gray, img_shape, None)
# 如果成功找到角点,则进行绘制和保存
if ret == True:
img_pts.append(corners)
cv2.drawChessboardCorners(img, img_shape, corners, ret)
images.append(img)
# 保存标定板图像
filename = "calib_board_{}.jpg".format(i)
cv2.imwrite(filename, img)
# 显示标定板图像
for img in images:
cv2.imshow("Calibration Board", img)
cv2.waitKey(500)
cv2.destroyAllWindows()
```
这段代码将生成一组大小为9x6,格子大小为1.0的标定板,总共生成15张图像,并保存到硬盘上。你可以根据需要更改标定板的大小和格子大小,并调整生成图像的数量。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)