ROS에 기본으로 깔린 opencv4.2.0을 쓰다보니 SIFT 등등 여러 모듈이 opencv_contrib라는 별도의 패키지로 빠져있어서 사용에 어려움이 있음..
저걸 링크하려면 opencv를 다시 빌드해야하는데 ros 연결된거는 손댈 수 없어서 opencv4.2.0 소스를 다시 받아와서 빌드를 하려고 했는데 빌드 실패
(opencv_contrib 릴리즈 중 정확히 opencv와 일치하는 4.2.0을 써야하는듯- 나는 그렇게 안해서 실패한거같다)
근데 opencv4.4부터는 SIFT가 다시 기본 모듈로 들어와있다고 해서 소스빌드 하기로함
소스 받아와서 압축풀고
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=OFF -D WITH_IPP=OFF -D WITH_1394=OFF -D BUILD_WITH_DEBUG_INFO=OFF -D BUILD_DOCS=OFF -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=OFF -D BUILD_PACKAGE=OFF -D BUILD_TESTS=OFF -D BUILD_PERF_TESTS=OFF -D WITH_QT=OFF -D WITH_GTK=ON -D WITH_OPENGL=ON -D BUILD_opencv_python3=ON -D WITH_V4L=ON -D WITH_FFMPEG=ON -D WITH_XINE=ON -D BUILD_NEW_PYTHON_SUPPORT=OFF -D OPENCV_SKIP_PYTHON_LOADER=ON -D OPENCV_GENERATE_PKGCONFIG=ON ../
$ time make -j$(nproc)
$ sudo make install
$ cat /etc/ld.so.conf.d/*
# 여기 출력된거에 /usr/local/lib 있는지 확인
$ sudo ldconfig