C++, Python, Android에서 OpenCV의 Extra 모듈과 nonfree 모듈 사용하는 방법을 정리해보았습니다.
추가할 내용이나 틀린 점이 있으면 댓글로 알려주시면 감사하겠습니다.
현재 다음 두 개의 깃허브에서 OpenCV가 배포되고 있습니다.
OpenCV는 다수의 모듈로 구성되어 있는데 지속적으로 관리가 되고 있는 모듈들은 [1]에서 배포하고
상대적으로 덜 관리되고 있는 모듈은 [2]에서 배포되고 있는 듯합니다.
[2]에는 nonfree 알고리즘인 SIFT, SURF가 포함되어 있으며 [2]에서 안정화 된 모듈은 [1]로 이동되기도 합니다.
[1] https://github.com/opencv/opencv
[2] https://github.com/opencv/opencv_contrib
C++
윈도우의 경우 [1]에서 Visual Studio 2015, 2017을 위해 빌드된 OpenCV 64비트용이 배포됩니다. 여기에는 Extra 모듈이 포함되어 있지 않습니다.
Visual Studio 2019를 위해 미리 배포되는 공식 OpenCV는 없지만 [1]에서 배포되는 OpenCV도 사용가능합니다.
동작은 하지만 나중에 문제가 생길 수도 있을 듯합니다.
Extra 모듈을 포함시키려면 CMake를 사용하여 설정 후, 사용하려는 Visual Studio를 사용하여 빌드해야 합니다.
이때 C++ / Python을 위한 OpenCV를 얻을 수 있습니다.
Visual Studio 2019용으로 OpenCV 4.1.0 빌드 하기 (Extra 모듈 contrib 포함)
참고로 MinGW에서 사용하려는 경우에도 따로 빌드해야 합니다.
MinGW + Sublime Text 3에서 OpenCV 사용하는 방법
우분투의 경우에는 apt-get를 사용하여 설치할 수도 있지만 최신 버전을 설치하기 위해 보통 소스코드를 [1]에서 다운로드 받아 빌드하여 설치합니다.
이때 Extra 모듈을 포함시키기 위해 [2]에서도 소스코드를 다운로드 받습니다.
C++ / Python을 위한 OpenCV를 얻을 수 있습니다.
Ubuntu 18.04에 opencv_contrib 포함하여 OpenCV 4.0.1 설치하는 방법
Python
윈도우와 우분투 모두 pip를 사용하여 설치 가능합니다.
opencv-python 패키지에는 [1]에서 배포되는 모듈만 포함되어 있습니다.
opencv-contrib-python 패키지에는 [1]과 [2]에서 배포되는 모듈이 포함되나 nonfree 알고리즘인 SIFT, SURF 등은 빠져있습니다.
nonfree 알고리즘을 포함시키려면 C++ 항목에서 언급한 것처럼 해당 플랫폼을 위해 빌드시켜야 합니다.
Android
[1]에서 미리 빌드된 Android용 OpenCV가 배포됩니다. Extra 모듈이 빠져있습니다.
Extra 모듈을 포함시키려면 [1]과 [2]에서 소스코드를 다운로드 받아 빌드해야 합니다.
Android 용으로 OpenCV 4.1.1 빌드하는 방법 (Build OpenCV 4.1.1 for android )
'OpenCV > Windows개발 환경&라이브러리 빌드' 카테고리의 다른 글
윈도우 환경에서 OpenCV의 VideoCapture가 웹캠 오픈이 늦은 경우 해결 방법 (0) | 2021.06.10 |
---|---|
Visual Studio 2019에서 CUDA를 적용한 OpenCV 빌드하기 (0) | 2020.07.06 |
MinGW + Sublime Text 3에서 OpenCV 사용하는 방법 (3) | 2019.04.22 |
Visual Studio 2019용으로 OpenCV 4.1.0 빌드 하기 (Extra 모듈 contrib 포함) (102) | 2019.04.19 |
Visual Studio 2017용으로 OpenCV 4.0.1 빌드 하기 (opencv_contrib 포함) (189) | 2019.01.19 |
시간날때마다 틈틈이 이것저것 해보며 블로그에 글을 남깁니다.
블로그의 문서는 종종 최신 버전으로 업데이트됩니다.
여유 시간이 날때 진행하는 거라 언제 진행될지는 알 수 없습니다.
영화,책, 생각등을 올리는 블로그도 운영하고 있습니다.
https://freewriting2024.tistory.com
제가 쓴 책도 한번 검토해보세요 ^^
그렇게 천천히 걸으면서도 그렇게 빨리 앞으로 나갈 수 있다는 건.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!