AI/Depth Camera

[Depth Camera] Luxonis OAK-D Pro W 뎁스AI카메라 FOV 테스트 결과(Depthai Viewer)

코집사 2024. 7. 1. 19:44
반응형

지금 진행하고 있는 프로젝트에서 이미지 인식을 하기 위해 Depth AI 카메라를 사용한다. 지금까지 Intel RealSense D455와 스테레오랩스 ZED2I를 사용했는데, FOV가 좋지 않아 이미지 인식을 하는데 있어 큰 어려움이 있었다. 그러다가 서치하는 도중에 Luxonis 사의 OAK-D Pro W라는 Depth AI 카메라가 있어 이 제품을 구매했다.

 

이 제품을 구매하고, Windows 10에서 해당 카메라를 사용하기 위한 Depthai Viewer 설치부터 연동까지 진행했고, 이에 따라 FOV가 제대로 나오는지에 대한 테스트를 진행했다.

 

2024.06.27 - [IT/기타] - Windows 10에서 OAK-D Pro W 설치 및 연동하는 방법(Depthai Viewer)

 

Windows 10에서 OAK-D Pro W 설치 및 연동하는 방법(Depthai Viewer)

카메라로 이미지 인식을 위해 뎁스 카메라인 Intel RealSense D455와 스테레오랩스 ZED2i를 썼는데 원하는 FOV가 나오지를 않아 이번에는 OAK-D Pro W를 구매하여 연동하려고 한다.목차1. OAK-D Pro W Depthai View

yongku.tistory.com

 

먼저, 공식 홈페이지의 OAK-D Pro W FOV를 검색했다.

 

 

공식 홈페이지를 봤을 때, OAK-D Pro W에는 IMX378과 OV9782 총 2가지의 센서 타입이 있는데, 우리는 FOV가 어느 정도 나오는 IMX378 센서 타입으로 구매를 했다.

 

OAK-D Pro W의 IMX378 센서 타입은 FOV(DFOV/HFOV/VFOV)가 120/108/93이었다.

우리는 이 카메라를 가로가 아닌 세로 형태로 사용할 것이기 때문에 VFOV가 중요했기에 OV9782가 아닌 IMX378 센서 타입을 선택했다.

 

 

VFOV가 93도면 정말 큰 범위이기 때문에, 바로 Depthai Viewer를 설치하여 테스트를 했었는데, RGBColor카메라보다 Mono카메라가 더 화각이 잘 나왔다. 그래서, 뭔가 이상함을 느끼고 테스트를 진행했다. 해당 OAK-D Pro W 카메라는 렌즈가 왼쪽과 오른쪽(모노카메라) 그리고 가운데에 컬러카메라가 있다.

 

 

 

테스트 방법은 위의 사진과 같이 카메라를 중심으로 스티커를 좌우로 대칭으로 부착하여 FOV 화각 테스트를 진행했다.

 

실질적으로, 위의 Depthai Viewer를 보게 되면 RGB 컬러 카메라가 아닌 모노카메라에서 스티커가 보이는 것을 확인할 수 있었고, 모노카메라의 화각이 RGB 카메라보다 훨씬 더 크다는 것을 확인할 수 있었다. 이 케이스를 가지고 절대로 RGB 카메라의 VFOV가 93이 나올 수 없다는 것으로 보고 해당 본사 기술팀에 연락을 했다.

 

본사 기술팀에 문의를 한 결과, 해당 해상도가 여러 종류가 있는데, 그 중에서도 full Resolution이 아닌 full Resolution의 50%나 약 30%로 두면 화각 문제가 해결될 수 있다고 답변이 왔다. 그래서, 바로 소스 코드를 봤다.

 

import depthai as dai

# Create pipeline
pipeline = dai.Pipeline()

camRgb = pipeline.createColorCamera()
camRgb.setBoardSocket(dai.CameraBoardSocket.RGB)
camRgb.setResolution(dai.ColorCameraProperties.SensorResolution.THE_1080_P)

 

 

위의 코드는 파이프라인을 생성하여 RGB 컬러 카메라를 연결하는 소스인데, 맨 아래 코드인 setResolution을 통해 해상도를 컨트롤 할 수 있다.

 

 

 

해당 코드의 맨 뒤에 자동 완성을 기능을 켜면 12MP부터 다양한 해상도를 선택할 수 있다. 여기서, 해상도를 임의의 값으로 설정할 수는 없고, 자동 완성에 있는 해상도 중에서만 선택할 수 있다.

 

그래서, 기술팀이 제시한 2024 X 1520(full resolution / 2), 1352 X 1012( (full resolution / 3) 둘 다 테스트를 진행했는데, 조금이나마 VFOV가 개선이 됐지만 93도에는 미치지 못했다.

 

VFOV의 테스트 및 우리가 원하는 환경을 셋팅하기 위해 아래의 방법들을 시도했다.

 

1. 줌 기능을 통한 렌즈 확대 및 축소 테스트
2. RGB 카메라보다 Mono 카메라 화각이 더 커서, Mono 카메라로 촬영 후 RGB 입혀보기
3. 해상도 줄이기

 

1번의 경우에는 해상도 줄이는 방법과 결과가 거의 비슷했다. 하지만, 해상도 줄이는 방법과 렌즈 확대 및 축소 테스트는 우리가 원하는 FOV에 대한 정답을 주진 못했다. 2번의 경우에는 현재 해당 카메라가 RGB 카메라와 Mono 카메라를 통해 모노 카메라 이미지를 촬영하여 RGB 카메라 만큼만 잘라서 색을 입히고 Depth값을 추출하는 방법을 사용하다 보니, 역으로 해봤지만 RGB를 완벽하게 구현할 수 없었다.

 

그래서 결국엔 RGB 카메라보다 모노 카메라의 화각이 더 크니 모노 카메라로 이미지 촬영을 하여 데이터 수집을 하였고, 현재는 RGB 카메라에 해상도를 낮춰 이미지 수집을 시도해보고 있다.

 

역시 새로운 것에 있어서는 다양한 기능들을 찾아보는 것이 정말 재밌고, Document를 꼭 읽어봐야 한다. 아직 세세하게 읽어보진 못했지만 위의 방법으로 시도를 했는데도 못찾으면 다시 Document를 파야겠다.

반응형