ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Visual Studio 2017용으로 OpenCV 4.0.1 빌드 하기 (opencv_contrib 포함)
    OpenCV/Windows개발 환경&라이브러리 빌드 2019. 1. 19. 21:58



    OpenCV's extra modules( opencv_contrib )을 포함하여 OpenCV 4.0.1 라이브러리를 Visual Studio 2017에서 사용하기 위해 컴파일한 과정을 다루고 있습니다.


    윈도우즈용으로 미리 빌드된 OpenCV 라이브러리에는 extra 모듈(opencv_contrib)이 빠져있습니다.

    SURF, SIFT(xfeatures2d) 등의 OpenCV 모듈을 사용하려면 https://github.com/opencv/opencv_contrib에 있는 소스 코드를  포함시켜서 다시 컴파일 해주어야 합니다.


    빌드 환경은 다음과 같습니다.


    • Windows 10 Pro 64bit

    • Visual Studio Community 2017

    • OpenCV 4.0.1



    오류나 잘못된 점이 발견되면 알려주세요..








    다음 같은 에러가 발생하는 경우 아래 경로를 시스템 변수의 path에 추가하면 해결됩니다.

    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin



    The CXX compiler identification is unknown

    The C compiler identification is unknown

    CMake Error at CMakeLists.txt:131 (project):

     No CMAKE_CXX_COMPILER could be found.




    CMake Error at CMakeLists.txt:131 (project):

     No CMAKE_C_COMPILER could be found.




    Configuring incomplete, errors occurred!

    See also "C:/opencv-source/build /CMakeFiles/CMakeOutput.log".

    See also "C:/opencv-source/build /CMakeFiles/CMakeError.log".






    빌드한 C++용 OpenCV 라이브러리 테스트는  다음 포스팅을 참고하여 진행하면 됩니다.


    Visual Studio 2017에서 OpenCV 4.0.1를 사용하는 방법

    http://webnautes.tistory.com/1132






    포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
    댓글로 알려주시면 빠른 시일내에 답변을 드리겠습니다.

    여러분의 응원으로 좋은 컨텐츠가 만들어집니다. 지금 본 내용이 도움이 되었다면 유튜브 구독 부탁드립니다. 감사합니다 : )

    유튜브 구독하기


    댓글 169

    • 이전 댓글 더보기
    • Jody 2019.02.28 22:16


      opencv was built successfully, however, when I tried to read a video from file (simple function), video is not showing properly due to below error.
      please advise me!

      "opencv_ffmpeg 401 _64.dll is either not designed to run on Windows or it contains an error"

    • Favicon of https://3dcv.tistory.com BlogIcon 무코포 2019.03.05 16:22 신고


      visual studio에서 debug모드로 정상적으로 빌드를 했습니다. 그런데 debug를 release로 바꾸고 빌드를 하니 에러가 나오네요 무슨 문제일까요 ㅠ

    • Favicon of https://3dcv.tistory.com BlogIcon 무코포 2019.03.05 17:48 신고


      빠른 답글 너무나 감사합니다. 프로젝트를 종료하고 다시 Open Project해서 Release로 빌드하니 잘 되네요. Debug로 빌드하고 바로 Release로 바꿔서 빌드하면 안되는것 같아요. 딱히 중요한 메시지는 없었는데...그냥 동작할 수 없다라는 메시지만 나왔던것 같아요

    • 무코포 2019.03.06 10:07


      CUDA를 사용하기 위해 WITH_CUDA, CUDA_FAST_MATH를 체크하고 CUDA 관련된 모든 항목은 체크를 하고 빌드를 했더니 MSB3073 VCEnd에러가 발생을 하네요. 혹시 원인을 알 수 있을까요?

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.03.06 11:30 신고


        해당 에러 MSB3073으로 구글에서 검색해보면 몇가지 해결방법이 나옵니다.
        CUDA를 위해 컴파일해본 적이 없어서 어느것이 정확한 방법인지는 모르겠네요.

        https://playground10.tistory.com/82

    • flipflop 2019.03.15 19:15


      opencv를 깔면서 xfeatures2d.hpp가 왜 없지 고민 많이 했는데 덕분에 해결됬습니다ㅠㅠ 감사합니다 ㅠㅠ

    • help 2019.03.31 01:05



      Visual Studio에서 INSTALL을 빌드하니 여러 오류가 발생했습니다.
      1. opencv_world에서 발생한 "__imp_H5T_NATIVE_USHORT_g 외부 기호를 확인할 수 없습니다." 라는 LINK2001
      2. opencv_world에서 발생한 LINK2019
      3. opencv_world401d.lib에서 발생한 "66개의 확인할 수 없는 외부참조입니다 " LINK1120
      4. opencv_python3 에서 발생한 LINK1104

      위의 에러들을 어떻게 해결해야할까요 ... 도와주세요 .. !

    • TH 2019.04.07 13:25


      visual studio 2019 community 에서 install 선택후 build 하니 프로젝트 하나가 실패했다고 나오고 message 는 다음과 같이 나왔습니다.
      도움 부탁 드립니다.

      >-- Install configuration: "Debug"
      1>CMake Error at cmake_install.cmake:36 (file):
      1> file cannot create directory: C:/opencv-4.0.1/build /etc/licenses. Maybe
      1> need administrative privileges.

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.07 15:50 신고


        비쥬얼 스튜디오를 관리자 권한으로 실행하여 진행해보세요.

      • TH 2019.04.07 18:09


        네 이미 관리자 권한으로 실행 해 봤는데도 같은 error 가 떴습니다. 다른 방법이 없을까요 ?

      • TH 2019.04.07 18:12


        error 발생한 화면 입니다.
        1>------ 빌드 시작: 프로젝트: INSTALL, 구성: Debug x64 ------
        1>-- Install configuration: "Debug"
        1>CMake Error at cmake_install.cmake:36 (file):
        1> file cannot create directory: C:/opencv-4.0.1/build /etc/licenses. Maybe
        1> need administrative privileges.
        1>
        1>
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: "setlocal
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: "C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=Debug -P cmake_install.cmake
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmEnd
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmErrorLevel
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: exit /b %1
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmDone
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd
        1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(138,5): error MSB3073: :VCEnd" 명령이 종료되었습니다(코드: 1).
        1>"INSTALL.vcxproj" 프로젝트를 빌드했습니다. - 실패
        ========== 빌드: 성공 0, 실패 1, 최신 26, 생략 0 ==========

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.07 18:17 신고


        원인을 찾기가 쉽지않네요. 가능하다면 visual studo 2017로 해보는게 좋을듯합니다.

      • TH 2019.04.08 22:59


        visual studio 2017 을 install 하고 다시 그대로 따라 했더니 error 없이 build 성공 했습니다. 죄송하지만 built 된 library 파일을 anaconda 에서 사용하려면 어떻게 해야 하는지 조언 부탁 드립니다. C++ 이 아니라 Python 에서 built 된 library 를 쓰고 싶은데 이전에는 visual studio code 를 사용했습니다. 감사합니다.

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.09 00:09 신고


        anaconda를 사용하지 않기때문에 검색해보니 C:\Users\~\Anaconda3\lib\site-packages\에 넣으면 된다고 합니다.

        import cv2해서 에러가 나지 않으면 라입러리가 인식하는 겁니다.

        참고로 Pycharm에서 python을 사용하는 경우에는 다음처럼 하면 OpenCV를 사용할 수 있습니다.
        https://webnautes.tistory.com/1269

      • TH 2019.04.09 09:30


        build 된 c:\opencv-4.0.1 folder 를 말씀 하신 folder 로 복사해도 안되고, c:\opencv-4.0.1\build\include folder 를 옮겨도 anaconda environment 에서 opencv 를 인식하지 못합니다. 죄송하지만 어떤 folder 를 옮겨야 하는지요 ?

        그리고 Pycharm 에서 opencv 를 사용하기 위해 말씀하신 post 대로 설치하면 opencv 의 extra module 도 사용 가능한지요 ? 저는 opencv 의 extra module 을 사용하고 싶습니다. 감사합니다.

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.09 10:05 신고


        PyCharm으로 opencv contrib를 사용하는 방법입니다.

        pip를 사용하면 되기때문에 현재 사용중인 환경에서도 될듯합니다

      • TH 2019.04.09 11:53


        말씀 하신대로 Pycharm 에서 Opencv 를 사용하면 OpenCV 의 SURF 기능을 사용할 수 있을까요 ?

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.09 11:54 신고


        사용할 수 있습니다

      • TH 2019.04.09 13:31


        포팅대로 Pycharm 을 install 하고 아래 예제를 실행 시켜 보았습니다.
        import cv2
        import numpy as np
        input_image = cv2.imread('image1.jpg')
        gray_image = cv2.cvtColor(input_image, cv2.COLOR_BGR2GRAY)
        # For version opencv < 3.0.0, use cv2.SURF()
        surf = cv2.xfeatures2d.SURF_create()
        # This threshold controls the number of keypoints
        surf.setHessianThreshold(15000)
        keypoints, descriptors = surf.detectAndCompute(gray_image, None)
        cv2.drawKeypoints(input_image, keypoints, input_image, color=(0,255,0), flags=cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)
        cv2.imshow('SURF features', input_image)
        cv2.waitKey()

        다음과 같은 error message 가 떴습니다.
        C:\Users\thkim\PycharmProjects\test1\venv\Scripts\python.exe C:/Users/thkim/PycharmProjects/test1/test1904091.py
        Traceback (most recent call last):
        File "C:/Users/thkim/PycharmProjects/test1/test1904091.py", line 6, in <module>
        surf = cv2.xfeatures2d.SURF_create()
        AttributeError: module 'cv2' has no attribute 'xfeatures2d'

        xfeatures2d 는 openCV 의 extra module 에 있는건데 이걸 제대로 부르지 못하는 것 같습니다. 어떻게 해야 할지 조언 부탁 드립니다.

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.09 15:04 신고


        잘못 알려드렸네요.. 아래 글을 참고하세요..

        https://webnautes.tistory.com/913

      • TH 2019.04.09 15:23


        같은 예제를 돌렸더니 이런 error 가 뜹니다.
        C:\Users\thkim\PycharmProjects\test2\venv\Scripts\python.exe C:/Users/thkim/PycharmProjects/test2/test2.py
        Traceback (most recent call last):
        File "C:/Users/thkim/PycharmProjects/test2/test2.py", line 6, in <module>
        surf = cv2.xfeatures2d.SURF_create()
        cv2.error: OpenCV(4.0.1) C:\projects\opencv-python\opencv_contrib\modules\xfeatures2d\src\surf.cpp:1029: error: (-213:The function/feature is not implemented) This algorithm is patented and is excluded in this configuration; Set OPENCV_ENABLE_NONFREE CMake option and rebuild the library in function 'cv::xfeatures2d::SURF::create'

        이번엔 CMake 를 사용하지 않았는데 다시 그걸 사용해서 또 build 를 하라는 의미인지....조언 부탁 드립니다.

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.09 16:08 신고


        opencv_contrib_python에는 NONFREE 부분이 포함되지 않나 봅니다..

        다음 글에 있는 3.1에 나온 위치에 빌드에서 얻은 확장자가 pyd인 파일을 복사해놓고 테스트해보세요.
        https://webnautes.tistory.com/1269

      • TH 2019.04.09 16:25


        visual studio 로 build 한 opencv-4.0.1 에는확장자가 pyd 파일은 없습니다.

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.09 16:29 신고


        opencv_contrib_python 모듈이 있다는 사실을 알고나서 파이썬 빌드 부분은 뺐어나보군요..

        NON FREE 코드들을 사용못하는 줄은 몰랐네요...;;;

        opencv 빌드시 python 빌드하는 옵션을 추가해야 합니다.

        cmake 실행 후 python으로 검색해보면 활성화시키는 옵션이 있습니다.

      • TH 2019.04.11 12:56


        다른 PC 에서 build 한 OpenCV library 를 c:\opencv-4.0.1 folder 를 복사해서 사용할 수 있는건가요 ?

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.11 18:25 신고


        빌드한 PC의 원도우가 64비트..
        사용하려는 PC의 윈도우가 64비트

        이렇게 같다면 가능합니다.

    • 김종혁 2019.04.11 11:20


      무슨 오류인지 알 수 있을까요
      CMake Error: Could not find CMAKE_ROOT !!!
      CMake has most likely not been installed correctly.
      Modules directory not found in

      CMake Error at cmake/OpenCVUtils.cmake:1 (include):
      include could not find load file:

      CMakeParseArguments
      Call Stack (most recent call first):
      CMakeLists.txt:111 (include)


      CMake Error at CMakeLists.txt:131 (project):
      Failed to run MSBuild command:

      C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe

      to get the value of VCTargetsPath:

      .NET Framework용 Microsoft (R) Build Engine 버전 15.9.21+g9802d43bc3

      Copyright (C) Microsoft Corporation. All rights reserved.



      빌드 시작: 2019-04-11 오전 11:19:28

      1 노드의 "C:\opencv-sources\build\CMakeFiles\3.14.1\VCTargetsPath.vcxproj" 프로젝트(기본 대상)입니다.

      C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.Cpp.WindowsSDK.targets(46,5): error MSB8036: Windows SDK 버전 8.1을(를) 찾을 수 없습니다. 필요한 버전의 Windows SDK를 설치하거나, 솔루션을 마우스 오른쪽 단추로 클릭하고 [솔루션 대상 변경]을 선택하거나 프로젝트 속성 페이지에서 SDK 버전을 변경하세요. [C:\opencv-sources\build\CMakeFiles\3.14.1\VCTargetsPath.vcxproj]

      "C:\opencv-sources\build\CMakeFiles\3.14.1\VCTargetsPath.vcxproj" 프로젝트를 빌드했습니다(기본 대상). - 실패



      빌드하지 못했습니다.



      "C:\opencv-sources\build\CMakeFiles\3.14.1\VCTargetsPath.vcxproj"(기본 대상)(1)->

      (_CheckWindowsSDKInstalled 대상) ->

      C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.Cpp.WindowsSDK.targets(46,5): error MSB8036: Windows SDK 버전 8.1을(를) 찾을 수 없습니다. 필요한 버전의 Windows SDK를 설치하거나, 솔루션을 마우스 오른쪽 단추로 클릭하고 [솔루션 대상 변경]을 선택하거나 프로젝트 속성 페이지에서 SDK 버전을 변경하세요. [C:\opencv-sources\build\CMakeFiles\3.14.1\VCTargetsPath.vcxproj]



      경고 0개

      오류 1개



      경과 시간: 00:00:00.46



      Exit code: 1



      Configuring incomplete, errors occurred!


      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.11 18:30 신고


        첫번째 오류를 해결하려면 CMake를 다시 설치해보세요.

        두번째 오류를 해결하려면 다음 링크에서 Windows SDK 버전 8.1를 설치하세요.

        https://developer.microsoft.com/ko-kr/windows/downloads/sdk-archive

    • ㅇㅇ 2019.04.20 21:09


      20>LINK : fatal error LNK1104: '..\..\lib\Debug\opencv_world401d.lib' 파일을 열 수 없습니다.

      유튜브 영상을 그대로 따라했는데 이렇게 뜨더라구요 원인을 모르겠습니다;;;

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.20 21:19 신고


        다음 링크의 13번대로 되있나 확인해보세요.. 에러 메시지를 보니 라이브러리 파일을 지정한 곳에서 찾아야 하는데 엉뚱한데서 찾고 있네요.

        https://webnautes.tistory.com/1132

      • ㅇㅇ 2019.04.21 01:10


        다른 방법으로 쓰던거에서 바로 이 글로 넘어왔었는데 그러면 안됬나 보군요

        저 글 부터 한번 해보겠습니다

      • ㅇㅇ 2019.04.21 02:20


        올려주신 링크대로 다시 깔고 유튜브 영상 따라 했는데

        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: "setlocal
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: "C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=Debug -P cmake_install.cmake
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmEnd
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmErrorLevel
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: exit /b %1
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmDone
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd
        29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :VCEnd" 명령이 종료되었습니다(코드: 1).

        이렇게 나오더라구요;;;

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.21 05:51 신고


        CMAKE_INSTALL_PREFIX를 어디로 했나요?

        그리고..

        유튜브 영상대로 빌드후
        링크에 나온대로 프로젝트를 생성하는 겁니다

      • ㅇㅇ 2019.04.22 18:47


        cmake 설치 위치 말씀하시는 건가요?

        C:\Program Files\CMake

        여기에 깔았습니다

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.04.22 20:09 신고


        CMAKE_INSTALL_PREFIX는 cmake시 설정하는 옵션중 하나로 최종적으로 빌드된 OpenCV 라이브러리 파일과 헤더파일, DLL 파일등이 복사되는 위치입니다.

        error MSB3073 에러는 관리자 권한이 없어서 발생한다고 합니다.

        그래서 복사되는 위치가 혹시 관리자 권한이 필요한 위치가 아닌가 생각됩니다..


    • 박인용 2019.05.13 10:38


      안녕하세요 우선 이런 좋은 포스팅 올려주신것에 감사합니다.
      제가 SURF를 이용해야되는데 이것말고 http://webnautes.tistory.com/1132
      에서 포스팅하신 방식으로 openCV를 설치하였습니다.
      그래서 이걸로 다시 하려고 위에서 언급하신 방법대로 하고 있는데 CMake에 configure을 눌르고 build파일 생성하시겠습니까 에서 확이버튼을 누르면
      CMake Error: The source directory "C:/opencv-sources/opencv-4.1.0" does not appear to contain CMakeLists.txt.
      Specify --help for usage, or press the help button on the CMake GUI.
      이런 오류가 뜨게 됩니다. 무엇이 문제일까요 ?ㅠㅠ

    • Friday 2019.05.14 10:58


      동영상대로 따라했더니 아래와 같은 오류가 나옵니다.

      calib3d
      core
      > cudaarithm
      > cudabgsegm
      > cudacodec
      > cudafeatures2d
      > cudafilters
      > cudaimgproc
      > cudalegacy
      > cudaobjdetect
      > cudaoptflow
      > cudastereo
      > cudawarping
      > cudev
      dnn
      features2d
      flann
      highgui
      imgcodecs
      imgproc
      java
      js
      ml
      objdetect
      photo
      python
      > shape
      stitching
      > superres
      ts
      video
      videoio
      > videostab
      > viz
      world
      aruco
      bgsegm
      bioinspired
      ccalib
      cnn_3dobj
      > cudaarithm
      > cudabgsegm
      > cudacodec
      > cudafeatures2d
      > cudafilters
      > cudaimgproc
      > cudalegacy
      > cudaobjdetect
      > cudaoptflow
      > cudastereo
      > cudawarping
      > cudev
      cvv
      datasets
      dnn_objdetect
      dpm
      face
      freetype
      fuzzy
      hdf
      hfs
      img_hash
      line_descriptor
      matlab
      optflow
      ovis
      phase_unwrapping
      plot
      quality
      reg
      rgbd
      saliency
      sfm
      > shape
      stereo
      structured_light
      > superres
      surface_matching
      text
      tracking
      > videostab
      > viz
      xfeatures2d
      ximgproc
      xobjdetect
      xphoto
      CMake Error at cmake/OpenCVModule.cmake:354 (message):
      Duplicated modules NAMES has been found
      Call Stack (most recent call first):
      cmake/OpenCVModule.cmake:372 (_assert_uniqueness)
      modules/CMakeLists.txt:7 (ocv_glob_modules)


      Configuring incomplete, errors occurred!
      See also "C:/opencv_source/build/CMakeFiles/CMakeOutput.log".
      See also "C:/opencv_source/build/CMakeFiles/CMakeError.log".

      어떻게 해결해야할지 모르겠네요 ㅠㅠ

      opencv source module 경로에 opencv contrib module의 내용을 집어 넣어도 되나요?
      아니면 opencv contrib module에서 중복되는 내용을 삭제해야하나요?

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.14 11:09 신고


        opencv extra module path에 contrib의 module 폴더를 지정했나요?

        먼가 설정이 꼬인듯합니다.

        build 폴더를 지우고 다시해보세요

      • Friday 2019.05.14 11:13


        네 ... ㅠ 몇번을 지우고 다시 해봤는데 안되네요 ㅠㅠ

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.14 13:36 신고


        혹시 다운로드 받은 2 개의 파일의 버전이 일치하나 보세요..

        찾아보니 다르면 이런 에러가 날 수 있다네요.

    • Friday 2019.05.14 13:37


      같은 에러가 계속 떠서
      opencv source module 경로에 opencv contrib module의 내용을 집어 넣고
      extra module 경로 설정을 안했더니 이런 에러가 뜨네요

      CMake Error at cmake/OpenCVUtils.cmake:742 (pkg_check_modules):
      Unknown CMake command "pkg_check_modules".
      Call Stack (most recent call first):
      modules/freetype/CMakeLists.txt:6 (ocv_check_modules)


      Configuring incomplete, errors occurred!
      See also "C:/opencv_source/build/CMakeFiles/CMakeOutput.log".
      See also "C:/opencv_source/build/CMakeFiles/CMakeError.log".

      이건 어떻게 해결할수 있을까요? ㅜㅜ

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.14 13:38 신고


        처음 시작시 opencv의 경로를 입력하고

        중간에 extra module path에 contrib 경로를 입력해야 합니다..

        다르게하면 에러 해결할 수 없습니다.

      • Friday 2019.05.14 13:43


        흠 넵 ㅠ
        그럼 일단 기존 방법대로 해결방안을 찾아보겠습니다.

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.14 13:54 신고


        혹시 다운로드 받은 2 개의 파일의 버전이 일치하나 보세요..

        찾아보니 다르면 이런 에러가 날 수 있다네요.

    • Iris 2019.05.15 14:23


      빌드를 했는데 contrib에 있는 모듈이 전부 빌드가 되는거 같지 않네요 ㅠㅠ
      SFM 모듈이 contrib에는 있는데 install 후에는 sample 안에 생성되지 않는군요.

      이런 경우는 빌드된 라이브러리 넣어서 contrib에 있는 모듈을 빌드시키면 되는건가요?
      혹시 인스톨이 잘못된건가요? ㅠㅠ

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.15 15:24 신고


        cmake에서 configure 클릭후 보이는 로그에서 아래 부분을 확인해보세요..

        To be built에 있다면 사용가능한 모듈이고

        Unavailable 또는 Disabled에 있으면 사용할 수 없는 모듈입니다.


        -- OpenCV modules:
        -- To be built: aruco bgsegm bioinspired calib3d ccalib core datasets dnn dnn_objdetect dpm face features2d flann fuzzy gapi hfs highgui img_hash imgcodecs imgproc java_bindings_generator line_descriptor ml objdetect optflow phase_unwrapping photo plot python2 python3 python_bindings_generator reg rgbd saliency shape stereo stitching structured_light superres surface_matching text tracking video videoio videostab xfeatures2d ximgproc xobjdetect xphoto
        -- Disabled: world
        -- Disabled by dependency: -
        -- Unavailable: cnn_3dobj cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect cudaoptflow cudastereo cudawarping cudev cvv freetype hdf java js matlab ovis sfm ts viz

    • 김동현 2019.05.22 16:49


      안녕하세요
      cmake이후 pycharm을 실행하여 import cv2를 하면
      인텔리센스가 안 뜨더라구요
      bootstrap()이런 것만 뜨구
      혹시 이건 어디쪽 문제일 수 알 수 있을까요?
      코드는 정상작동합니다

    • HH 2019.05.28 16:16


      cmake 설치 후
      https://webnautes.tistory.com/776 를 따라 surf 코드를 돌려볼려고 하는데
      처음 어디에다 코드를 쓰는건지 모르겠어요

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.28 16:50 신고


        아래 포스트따라 진행 후.. cpp 파일의 코드만 바꿔치기하면됩니다.

        Visual Studio 2017에서 OpenCV 4.0.1를 사용하는 방법
        http://webnautes.tistory.com/1132

    • jung 2019.05.30 20:52


      안녕하세요, 자세한 설명 덕분에 많이 알아갑니다.
      저 같은 경우 visual studio 2015 community, 2017 professional 두개 모두 설치가 되어 있고,
      작성자님처럼 opencv-sorces 폴더를 만들고 그 안에 eigen, opencv_contrib-4.1.0, opencv-4.1.0-source 폴더를 넣어놓았습니다. 당연히 이 폴더들은 작성자님이 말씀해주신 싸이트에서 다운을 받은 파일을 압축해제하여 opencv-sources 로 붙여넣은 것입니다.
      그리고 cmake 3.13.5 버전을 깔고 실행시켜 source code 경로는 C:/opencv-sources/opencv-4.1.0-source 로 설정하고, binaries 경로는 C:/opencv-sources/build 로 설정하였습니다.
      그리고나서 Configure을 눌러서 Visual Studio 14 2015 win64 로 설정을하고 Finish를 눌렀는데 한 5개정도 생성이 되더니 Error in configuration process, project files may be invalid 라고 오류문구가 뜨면서 잘 안되는 것 같습니다...

      Visual Studio 15 2017로 빌드를 하면 잘 빌드가 되는 것 같습니다만 2015로 하면 왜 빌드가 5개정도 되다가 에러메세지가 뜨는지 모르겠네요...visual studio 2015에 대한 환경변수 path를 설정을 해주어야 하는 것인가요...감이안오네요ㅠ혹시라도 해결책을 아신다면 답변 부탁드립니다ㅜㅜ

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.31 14:32 신고


        Visual Studio 2015관련해서 에러 발생했다는 글이 찾아봐도 안보이네요..

        빌드시 에러난 메시지를 보고 해결방법을 찾아야 할듯합니다.

    • 우우 2019.06.30 21:55


      install 빌드 속도가 현저히 느린 현상은 왜그런건가요..? ㅠㅠ

    • 궁금 2019.07.18 14:39


      혹시 3.4.6 cmake빌드하는데 아래 처럼 똑같은 메시지가 몇시간쨰 계속 반복되는데 왜그런걸까요 7시간쨰입니다.



      3>c:\program files\nvidia gpu computing toolkit\cuda\v10.0\include\sm_20_intrinsics.h : warning C4819: ?꾩옱 肄붾뱶 ?섏씠吏€(949)?먯꽌 ?쒖떆?????녿뒗 臾몄옄媛€ ?뚯씪???ㅼ뼱 ?덉뒿?덈떎. ?곗씠?곌? ?먯떎?섏? ?딄쾶 ?섎젮硫??대떦 ?뚯씪???좊땲肄붾뱶 ?뺤떇?쇰줈 ?€?ν븯??떆??
      3>c:\program files\nvidia gpu computing toolkit\cuda\v10.0\include\sm_20_intrinsics.h(925): warning C4819: ?꾩옱 肄붾뱶 ?섏씠吏€(949)?먯꽌 ?쒖떆?????녿뒗 臾몄옄媛€ ?뚯씪???ㅼ뼱 ?덉뒿?덈떎. ?곗씠?곌? ?먯떎?섏? ?딄쾶 ?섎젮硫??대떦 ?뚯씪???좊땲肄붾뱶 ?뺤떇?쇰줈 ?€?ν븯??떆??
      3>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\include\cuda_fp16.h : warning C4819: ?꾩옱 肄붾뱶 ?섏씠吏€(949)?먯꽌 ?쒖떆?????녿뒗 臾몄옄媛€ ?뚯씪???ㅼ뼱 ?덉뒿?덈떎. ?곗씠?곌? ?먯떎?섏? ?딄쾶 ?섎젮硫??대떦 ?뚯씪???좊땲肄붾뱶 ?뺤떇?쇰줈 ?€?ν븯??떆??
      3>C:\opencv-3.4.6\opencv-3.4.6\modules\core\include\opencv2/core/types.hpp(524): warning : field of class type without a DLL interface used in a class with a DLL interface
      3>
      3>C:\opencv-3.4.6\opencv-3.4.6\modules\core\include\opencv2/core/types.hpp(526): warning : field of class type without a DLL interface used in a class with a DLL interface

      • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.07.18 15:06 신고


        warning 는 에러가 아니기 때문에 무시해도 됩니다.

        구글에서 cuda를 사용한 경우(cuda 때문에 에러난거 같기도 합니다.)에 대한 글을 찾아보세요.

    • 궁금 2019.07.19 09:57


      matchtemplate 함수만 사용하려고하는데요,

      속도를 많이 개선하고싶은데, eigen 을 사용하면 더 빨라질지 문의드려요.

    • sudi 2019.08.08 17:56


      opencv2/plot.hpp가 없었는데....따로 설치를 진행해야 되는군요.
      덕분에 알아갑니다. 정말 감사합니다.

Designed by Tistory.