더북(TheBook)

대부분의 컴퓨터 비전 프로그램에서는 core, imgcodecs, imgproc, highgui 등 모듈을 항상 필요로 하며, 경우에 따라서는 더 많은 모듈을 프로젝트에 포함시켜야 하는 상황이 발생합니다. 이처럼 새로운 프로젝트를 만들 때마다 다수의 모듈을 프로젝트에 포함하는 것이 번거롭기 때문에 OpenCV는 여러 개의 모듈을 통합하는 world 모듈을 제공합니다. world 모듈은 개별적으로 나뉘어 있는 OpenCV 모듈을 모두 합쳐서 하나의 모듈로 재구성한 것입니다. 즉, world 모듈 하나만 프로젝트에 추가하면 OpenCV에서 제공하는 모든 기능을 사용할 수 있습니다. OpenCV 4.0.0에서 world 모듈은 opencv_world400.lib 파일과 opencv_world400.dll 파일로 만들어집니다.

OpenCV 라이브러리는 현재에도 지속적으로 업데이트되고 있으며, 최신의 컴퓨터 비전 알고리즘은 OpenCV 추가 모듈(extra module) 형태로 함께 개발되고 있습니다. 추가 모듈에는 주로 아직 안정화가 되지 않은 최신 알고리즘 구현이 포함됩니다. 이외에도 소스 코드는 공개되었지만 알고리즘에 특허가 걸려 있어서 무료로 사용할 수 없는 기능과 CUDA 관련 기능도 추가 모듈로 배포됩니다. 추가 모듈은 OpenCV 소스 코드가 배포되는 GitHub 웹 사이트에서 opencv_contrib라는 이름의 저장소를 통해 따로 배포되고 있습니다.1 예를 들어 추가 모듈 중에서 tracker 모듈은 동영상에서 객체를 안정적으로 추적하는 기능이 구현되어 있고, face 모듈은 얼굴 인식과 관련된 기능이 포함되어 있습니다. OpenCV 4.0 버전부터는 CUDA 관련 모듈도 모두 opencv_contrib 저장소로 옮겨졌습니다. OpenCV 추가 모듈은 opencv_contrib 저장소의 소스 코드를 내려받은 후 사용자가 직접 빌드하여 사용할 수 있습니다.

 

1 opencv_contrib 저장소 주소는 https://github.com/opencv/opencv_contrib/입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.