ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • checkerboard corner detector
    영상처리/Camera Calibration 2022. 12. 1. 19:10
    728x90

    camera calibration의 첫 단계는 corner detection이다.

    import cv2
    
    image_stack = []
    image_stack =image_stack+ [cv2.imread('test/20221125_210056.jpg')]
    image_stack =image_stack+ [cv2.imread('test/20221125_210103.jpg')]
    image_stack =image_stack+ [cv2.imread('test/20221125_210107.jpg')]
    
    
    for image in image_stack:
        gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
    
        ret, corners = cv2.findChessboardCorners(gray, (10, 7), None)
    
        ## termination criteria
        criteria = (cv2.TERM_CRITERIA_EPS + cv2.TERM_CRITERIA_MAX_ITER, 30, 0.001)
        corners2 = cv2.cornerSubPix(gray,corners, (11,11),(-1,-1),criteria)
        # print(corners2)
    
        for dots in corners2:
            image=cv2.circle(image,(int(dots[0][0]),int(dots[0][1])),5,(0,0,255),-1)
    
        im_resized=cv2.resize(image,(1000,1000))
        cv2.imshow('im1_dot',im_resized)
        cv2.waitKey(0)

    sample image들을 불러와서, 위와 같이 corner detection을 구현하였다. (opencv의 findChessboardCorners 함수)

    다음엔 이를 통해 calibration을 해볼까 한다.

    코너가 잘 감지된다. (printer의 토너가 부족해보인다..)
    놓치는 경우도 있긴하다. scene을 잘 꾸미는게 중요하다.

    728x90

    '영상처리 > Camera Calibration' 카테고리의 다른 글

    reprojection error (camera calibration)  (0) 2023.03.03
    camera calibration  (0) 2022.12.10
    camera calibration pattern 생성  (0) 2022.11.25
Designed by Tistory.