새소식

기타

opencv python rgb camera calibration

  • -

opencv 라이브러리를 이용한 카메라 캘리브레이션 방법입니다.

기존에 EasyMocap에서 가이드한 소스를 참고했는데 이 부분과 charuco board를 사용한 방식을 같이 정리합니다.

 

1. EasyMocap

https://github.com/zju3dv/EasyMocap/tree/master/apps/calibration

위 URL 참조

 

export data2=/../data/intri_data
python3 apps/calibration/detect_chessboard.py ${data2} --out ${data2}/output/calibration --pattern 9,6 --grid 0.072
python apps/annotation/annot_calib.py $data2 --mode chessboard --pattern 9,6 --annot chessboard
python3 apps/calibration/calib_intri.py ${data2}

export data=/../data/extri_data
python3 apps/calibration/detect_chessboard.py ${data} --out ${data}/output/calibration --pattern 9,6 --grid 0.07
python apps/annotation/annot_calib.py $data --mode chessboard --pattern 9,6 --annot chessboard
python3 apps/calibration/calib_extri.py ${data} --intri ${data2}/output/intri.yml

내부 파라미터 폴더(intri_data), 외부 파라미터 폴더(extri_data) 안에 "images" 폴더 만들고, 카메라 수가 3대면, "images/01", "images/02", "images/03" 폴더 만들어서 그 안에 이미지 파일 넣으면 됩니다. 물론 파일명은 다른 카메라와 동일하게 해주세요.

 

결과 확인

출처 : EasyMocap

python3 apps/calibration/check_calib.py ${data} --out ${data}/output --mode cube --write

output 폴더 아래에 cube 폴더가 생깁니다. 거기서 결과 파일 확인할 수 있습니다.

 

 

2. charuco board

가이드 소스가 모두 옛날 버전으로 되어있어 최신 버전으로 고친 코드입니다.

해봤는데 잘 못잡네요

 

웹캠 뜨면 space 버튼 눌러서 10개 내외로 저장 후 ESC 누르면 됩니다.

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.