双目视觉标定-4. 双目视觉标定与校正之OpenCV代码入门篇

这一篇就是集我们学到的东西大成者,没有看过这三篇文章的请点击下面的链接看这三篇文章

双目视觉标定-1.视觉成像理论知识-优快云博客

双目视觉标定-2.单目视觉标定opencv代码实战-优快云博客

双目视觉标定-3.Stereo Calibration双目视觉标定理论-优快云博客


目录

1. 采集棋盘格图片

2. 立体相机标定

Step1:创建棋盘格真实世界点与像平面点进行对应

Step2:通过棋盘格寻找相机的内参

Step3:标定立体摄像机

3. 立体相机校正

4. 立体相机标定以及校正流程

5. 总结


1. 采集棋盘格图片

首先同时打开左右摄像头,然后按s键采取两侧图片信息,并且保存到相应的文件夹,保持摄像机不动,棋盘格可以朝向各种方向和角度,采集至少五组照片

  calibration_images.py

# Take the images of chessboard and save these images

import cv2


cap = cv2.VideoCapture(0)
cap2 = cv2.VideoCapture(2)

num = 0


while cap.isOpened():

    succes1, img = cap.read()
    succes2, img2 = cap2.read()


    k = cv2.waitKey(5)

    if k == 27:
        break
    elif k == ord('s'): # wait for 's' key to save and exit
        cv2.imwrite('images/stereoLeft/imageL' + str(num) + '.png', img)
        cv2.imwrite('images/stereoright/imageR' + str(num) + '.png', img2)
        print("images saved!")
        num += 1

    cv2.imshow('Img 1',img)
    cv2.imshow('Img 2',img2)

2. 立体相机标定

这部分跟以前的单目视觉标定是一样的,我们需要对左右两侧相机分别进行相机标定,然后获取左右两侧相机的内参矩阵和畸变矩阵

Step1:创建棋盘格真实世界点与像平面点进行对应

world scaling 你可以换成你使用的chessboard每一格的真实大小,要注意之后的单位都和你使用的单位一致了, 我这里为了简单就只保留了1

  stereo_calibration.py

import numpy as np
import cv2 as cv
import glob



###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值