2016/10/07

Build OpenCV 3.1 with VTK 7.0 in Visual Studio 2015

Build OpenCV 3.1 with VTK 7.0 in Visual Studio 2015

Visual Stuido 2015 버전에서 OpenCV 3.1과 VTK 7.0을 빌드해 보았다.

주인공인 OpenCV 3.1와 VTK 7.0 가 준비가 되어야 겠고 빌드 구성을 위해 CMake가 필요하다.
CMake 는 3.6.2 버전을 사용하였다.

우선 VTK를 OpenCV 빌드에 사용할 수 있도록 빌드를 해야 한다. 빌드를 신속하게 하기위해 필요 없는 것으 빌드하지 않도록 하였다. 그리고 이때 주의 할 사항은 OpenGL설정이다. VTK 7.0에서는 Rendering Backend가 OpenGL2 로 새롭게 작성이 되었고 이 것이 기본값으로 되어있다.
하지만 OpenCV 에서는 이를 지원하지 않고 이전 버전의 OpenGL을 사용해야 한다. 그래서 Rendering Backend 설정과 OpenGL 설정을 변경해 주어야 한다. 아래는 VTK를 빌드할 때 구성한 내용이다.

Srouce: E:/DevWork/OpenCV/VTK-7.0.0_x64
Build:  E:/DevWork/OpenCV/VTK-7.0.0_x64/VS2015_x64

Configuration options
  BUILD_EXAMPLES                   uncheck
  BUILD_SHARED_LIBS                uncheck
  BUILD_TESTING                    uncheck
  Module_vtkRenderingOpenGL        check
  Module_vtkRenderingContextOpenGL check
  Module_vtkRenderingVolumeOpenGL  check
  VTK_RENDERING_BACKEND            OpenGL
  CMAKE_INSTALL_PREFIX             BuildPath/install

Build projects
  ALL_BUILD with debug configuration
  INSTALL with release configuration

VTK 를 아무 문제없이 빌드를 했다면 이제 OpenCV를 빌드할 차례이다.
빠른 빌드를 위해 필요없는 항목은 제거를 했지만 간단한 테스트를 위해 Test 프로젝트를 빌드를 수행하였다.

Source: E:/DevWork/OpenCV/opencv_v3.1.0/sources
Build:  E:/DevWork/OpenCV/opencv_v3.1.0/VS2015_x64_vtk

Configuration options
  BUILD_DOCS            uncheck
  BUILD_EXAMPLES        uncheck
  BUILD_TESTS           check
  VTK_DIR               E:/DevWork/OpenCV/VTK-7.0.0_x64/VS2015_x64
  WITH_OPENGL           check
  WITH_OPENMP           check
 
  BUILD_opencv_python2  uncheck
  BUILD_opencv_python3  uncheck
  BUILD_opencv_viz      check

Build projects
  ALL_BUILD with debug configuration
  INSTALL with release configuration

위 설정으로 Configure를 마치면 로그화면에서 아래와 같이 VTK가 포함이 된 것을 확인 할 수 있다.
VTK support:                 YES (ver 7.0.0)

구성 완료후 빌드를 하여 bin 폴더의 test 파일들 중 opencv_text_viz.exe를 실행시켜 정상 동작을 확인 하였다.
마지막으로 opencv_world를 만들기 위해서 아래 설정을 변경하고 다시 빌드하였다.
viz와 world를 함께 빌드하면 문제가 발생을 하여 우선 viz를 제거하고 빌드하였다.
이 라이브러리를 정상적으로 사용이 가능한지는 추후 테스트를 해 봐야 알 수 있을 것 같다.

Configuration options
  BUILD_opencv_viz      uncheck
  BUILD_opencv_world    check
 
Build projects
  ALL_BUILD with debug & release configuration

Build 경로 아래의 install 폴더에 라이브러리를 사용하기 위한 파일들이 있다. 디버그용이 필요한 경우 Build 경로의 bin 폴더와 lib 폴더의 파일들을 이용하면 된다. 헤더파일은 install 폴더에 포함되어 있는 include 파일을 이용하면 된다.

라이브러리는 빌드 하였고 이제 테스트를 해 볼 차례이다.

No comments :

Post a Comment