반응형



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






반응형

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

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

유튜브 구독하기


제가 쓴 책도 한번 검토해보세요.

  1. 이전 댓글 더보기
  2. 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비트

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

  3. 김종혁 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

  4. ㅇㅇ 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 에러는 관리자 권한이 없어서 발생한다고 합니다.

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


  5. 박인용 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.
    이런 오류가 뜨게 됩니다. 무엇이 문제일까요 ?ㅠㅠ

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.13 11:04 신고

      opencv-4.1.0 안에 파일과 폴더가 보여야 합니다. 다시 위치를 확인해보세요...

  6. 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 개의 파일의 버전이 일치하나 보세요..

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

  7. 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 개의 파일의 버전이 일치하나 보세요..

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

  8. 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

  9. 김동현 2019.05.22 16:49

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

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.05.22 18:35 신고

      파이참 오류인지 원인은 모르지만.. 사용하다보면 될때가 있습니다.;;;

  10. 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

  11. 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관련해서 에러 발생했다는 글이 찾아봐도 안보이네요..

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

  12. 우우 2019.06.30 21:55

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

  13. 궁금 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 때문에 에러난거 같기도 합니다.)에 대한 글을 찾아보세요.

  14. 궁금 2019.07.19 09:57

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

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

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2019.07.19 10:30 신고

      속도 개선을 하려면 opencl이나 cuda를 사용해야 합니다.

  15. sudi 2019.08.08 17:56

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

  16. gg 2020.03.30 17:41

    안녕하세요, 좋은 자료 덕분에 큰 도움 되고있습니다 감사합니다!!

    위에 올려주신 내용대로 진행하였는데 문제가 발생하여 글 남깁니다.

    마지막 부분에서 OPENCV 프로젝트에서 debug, release로 설정하여 INSTALL을 빌드하는 과정에서 문제가 생겼습니다

    release는 오류 없이 빌드가 성공했는데 debug로 설정했을때 'python36_d.lib 파일을 열 수 없습니다'라는 에러가 생겼습니다
    해결하고자 여러 방법을 시도해보았지만 해결이 되지 않았습니다. 혹시 방법이 있을까요??

    )환경은 글쓴이분과 같은 visual studio 2017이고 opencv-4.0.1, opencv_contrib-4.0.1, eigen-3.3.7 입니다


    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.03.30 17:47 신고

      파이썬용 디버그 라이브러리는 에러나는 것이 정상입니다. C++용 라이브러리는 문제없이 생성됩니다. 혹 파이썬 디버그용이 필요하면 파이썬 홈페이지에서 제공하는 디버그 관련 파일을 사용해야하는 거 같은데 해보지는 않았습니다.

  17. gg 2020.03.30 18:11

    답변 감사드립니다!

    이후에 opencv 프로젝트 설정하는 영상을 참고하여 설정을 진행하던 도중 문제가 생겼습니다.
    (이 영상과 동일하게 폴더 구성으로 진행을 하였습니다)

    프로젝트 속성에서 C/C++
    추가 포함 디렉토리 : 설정 완료
    프로젝트 속성에서 링커
    추가 라이브러리 디렉토리 : ...build/x64/vc15/lib 경로로 지정하셨는데
    제 폴더에서는 x64 폴더 안에 debug와 release 단 두개의 폴더만 존재합니다

    프로젝트 속성에서 디버깅
    환경 : 이부분도 마찬가지로 제 pc환경에서 dll파일 위치를 찾지 못하였습니다

    혹시 답을 얻을 수 있을까요?

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

      사용한 OpenCV 버전이 어떻게 되나요?

      혹시 debug와 release 폴더에 각각 포함되어 있나 확인해보세요.

      lib와 dll 파일이 각각 포함되어 있다면 설정에서 사용하는 폴더로 복사해서 진행해보세요.

  18. gg 2020.03.30 20:25

    사용한 OpenCV 버전이 어떻게 되나요?
    -> 4.0.1입니다

    혹시 debug와 release 폴더에 각각 포함되어 있나 확인해보세요.
    -> 확인 결과 Debug, Release 디렉토리에는 ALL_BUILD, INSTALL, ZERO_CHECK 폴더만 존재합니다

    lib와 dll 파일이 각각 포함되어 있다면 설정에서 사용하는 폴더로 복사해서 진행해보세요.
    -> (opencv-4.0.1\x64\vc15\bin)폴더에 있는 bin 폴더와 lib폴더 전체를 사용하는 폴더로 복사해서 진행 해보았는데 빌드에 실패하였습니다.

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.03.30 20:30 신고

      빌드에 성공을 했다면..

      다음 과정을 다시 해보세요.


      비주얼 스튜디오에서 INSTALL을 선택후 마우스 오른쪽 버튼을 눌러 빌드를 선택해보세요.

  19. 끈질기게 따라가자.. 2020.06.02 17:16

    안녕하세요? 동영상 잘 봤습니다.
    따라하는 동안 몇가지 이상해서 질문드립니다.

    우선 CMake에서 Configure시 다음의 오류가 납니다.
    CMake Warning at cmake/OpenCVGenSetupVars.cmake:54 (message):
    CONFIGURATION IS NOT SUPPORTED: validate setupvars script in install
    directory
    Call Stack (most recent call first):
    CMakeLists.txt:1062 (include)

    무시하고 VS2017에서 Debug 빌드시 다음과 같이 결과가 나옵니다.
    29>CMake Error at modules/python3/cmake_install.cmake:44 (file):
    29> file INSTALL cannot copy file
    29> "C:/opencv-sources/opencv-4.0.1/modules/python/package/cv2/__init__.py" to
    29> "C:/Program Files (x86)/Microsoft Visual
    29> Studio/Shared/Python36_64/Lib/site-packages/cv2/__init__.py".
    29>Call Stack (most recent call first):
    29> modules/cmake_install.cmake:115 (include)
    29> cmake_install.cmake:133 (include)
    29>
    29>
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: "setlocal
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\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\Enterprise\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\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmEnd
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\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\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmErrorLevel
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: exit /b %1
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmDone
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\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\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :VCEnd" 명령이 종료되었습니다(코드: 1).
    29>"INSTALL.vcxproj" 프로젝트를 빌드했습니다. - 실패
    ========== 빌드: 성공 27, 실패 2, 최신 0, 생략 0 ==========

    Release 입니다..
    29>CMake Error at modules/python3/cmake_install.cmake:44 (file):
    29> file INSTALL cannot copy file
    29> "C:/opencv-sources/opencv-4.0.1/modules/python/package/cv2/__init__.py" to
    29> "C:/Program Files (x86)/Microsoft Visual
    29> Studio/Shared/Python36_64/Lib/site-packages/cv2/__init__.py".
    29>Call Stack (most recent call first):
    29> modules/cmake_install.cmake:115 (include)
    29> cmake_install.cmake:133 (include)
    29>
    29>
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: "setlocal
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: "C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=Release -P cmake_install.cmake
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\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\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmEnd
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\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\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmErrorLevel
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: exit /b %1
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :cmDone
    29>C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\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\Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(138,5): error MSB3073: :VCEnd" 명령이 종료되었습니다(코드: 1).
    29>"INSTALL.vcxproj" 프로젝트를 빌드했습니다. - 실패
    ========== 모두 다시 빌드: 성공 28, 실패 1, 생략 0 ==========

    실패하지 않게 할 수는 없을까요? 불안해서...

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.06.02 18:29 신고

      혹시 소스코드 경로 또는 빌드 경로에 공백이나 한글이 있나요? 있으면 안됩니다

  20. 끈질기게 따라가자 2020.06.04 23:51

    한글이나 공백은 없는데.. C에서는 일단 동작되니 진행해야될 것 같습니다.

    조언 감사합니다.^^

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.06.04 23:54 신고

      파이썬용은 다음처럼 설치할수 있습니다

      pip install opencv-contrib-python

  21. dhdh 2020.06.27 17:25

    영상 잘 봤습니다!
    cmake 까진 이상없이 진행 했습니다.
    opencv4.3.0과 contribute4.3.0을 이용하여 visualstudio2015 professional에서 진행을 했습니다.
    x64 전용으로도 설정을 한 상태에서 빌드를 진행했는데 코드를 돌리자 마자 에러가 다음과 같이 뜹니다:

    프로시저 시작 지점
    ?create@SURF@xfeatures2d@cv@SA?AU?$Ptr@VSURF@xfeatures2d@cv@@@3@NHH_N0을(를) DLL
    C:\VSworkSpace\FeaturePoint_Matching\x64\Debug\FeaturePoint_Matching.exe에서 찾을 수 없습니다.

    어느 부분에서 문제가 발생했는지 알 수 있을까요?
    감사합니다.

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.06.27 20:00 신고

      OpenCV 빌드에는 성공한건가요?

      LIB 또는 DLL 파일을 못찾아서 발생한 에러로 보입니다.

    • dhdh 2020.06.28 17:24

      lib dll파일을 찾아주려면 어떻게 해야하나요?

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.06.28 17:35 신고

      빌드 결과물에 확장자가 dll 인 파일과 확장자가 lib인 파일이 OpenCV 설정시 사용하는 world 이름 붙은 것만 있나요?

    • 2020.07.03 14:22

      비밀댓글입니다

    • Favicon of https://jdobbang0321.tistory.com BlogIcon jdobbang 2020.11.21 18:19 신고

      안녕하세요, 저도 dhdh님과 동일한 문제가 발생하여 구글링을 해보았는데 도저히 해결방법을 못 찾아 여쭤봅니다. 혹시 해결 하셨나요??
      (저는 visual studio 2019, opencv 4.4.0, contribute 4.4.0 환경에서 cmake 및 빌드 진행하였습니다.)

    • Favicon of https://webnautes.tistory.com BlogIcon webnautes 2020.11.22 16:49 신고

      cmake 옵션 설정시 features2d를 검색하여 체크되었나 확인해보세요. 정확하게 동작하는 방법은 다음주에 테스트해봐야 정리될듯합니다.

    • Favicon of https://jdobbang0321.tistory.com BlogIcon jdobbang 2020.12.02 04:26 신고

      지금 확인하였습니다ㅠㅠ
      cmake 확인 결과 features2d는 체크되어있었습니다. 혹시 테스트 진행한 결과 어떠셨는지 궁금합니다.

+ Recent posts