OpenCV在计算机图形学领域有着广泛的应用,本文将详细介绍如何从编译安装到最终使用OpenCV。
- 首先:
- Mac OSX Yosemite 10.10(低版本也可以)
- Xcode
- Command Line Tools (This is done from inside Xcode)
- CMake
- 好的...那么开始!
-
- 一、编译OpenCV
- Step 1:
- 从官网下载OpenCV源代码并解压,在OpenCV目录下新建两个文件夹,StaticLibs,SharedLibs。
- Step 2a:
- 使用终端编译Static Libraries
- 打开CMake
- 点击Browse Source,并选择路径到OpenCV源文件的目录
- 点击Browse Build,并选择路径到StaticLibs
- 点击configure,你将会被询问如何generate,选择Unix-Makefile,并点击OK
- 之后需要从红色的框里取消或增加如下选项
- 取消:BUILD_SHARED_LIBS
- BUILD_TESTS
- WITH_1394
- WITH_FFMPEG
- 增加:增加一个SDK路径到CMake_OSX_SYSROOT, 类似于
- “/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk”
- 增加x86_64到CMAKE_OSX_ARCHITECTURES
- 然后configure一下,再generate一下
- generate完成之后,打开终端,依次执行
- cd StaticLibs目录
- make
- sudo make install
- Step 2b:
- 编译Shared Libraries
- 基本同Static Libraries,CMake选择路径时选择Shared Libs
- 还有就是增减的选项不同:
- 增加:BUILD_SHARED_LIBS
- SDK...
- X86_64...
- 取消:BUILD_TESTS
- WITH_1394
- WITH_FFMPEG
- configure, generate
- 终端
- cd SharedLibs目录
- make
- sudo make install
二、编译使用了OpenCV库的程序新建一个目录目录下新建CMakeLists.txt和BlurImage.cpp拷贝过来一张图片/* BlurImage.cpp */
/* CMakeLists.txt */#include "opencv2/imgproc/imgproc.hpp" #include "opencv2/highgui/highgui.hpp" using namespace std; using namespace cv; Mat src; Mat dst; char window_name1[] = "Unprocessed Image"; char window_name2[] = "Processed Image"; int main( int argc, char** argv ) { /// Load the source image src = imread( argv[1], 1 ); namedWindow( window_name1, WINDOW_AUTOSIZE ); imshow("Unprocessed Image",src); dst = src.clone(); GaussianBlur( src, dst, Size( 15, 15 ), 0, 0 ); namedWindow( window_name2, WINDOW_AUTOSIZE ); imshow("Processed Image",dst); waitKey(); return 0; }
cmake_minimum_required(VERSION 2.8) project( BlurImage ) find_package( OpenCV ) include_directories( ${OpenCV_INCLUDE_DIRS} ) add_executable( BlurImage BlurImage.cpp ) target_link_libraries( BlurImage ${OpenCV_LIBS} )
然后cd 到该目录下cmake .make./BlurImage test.jpg
更多详细例程请参阅openCV Tutorial Page
翻译自http://blogs.wcode.org/2014/10/howto-install-build-and-use-opencv-macosx-10-10/