我的環(huán)境:OS X Yosemite 10.10.5
1. 安裝
打開官網(wǎng)的Linux安裝OpenCV的網(wǎng)頁,打開這個(gè)網(wǎng)頁的目的不是按照它所提供的步驟安裝OpenCV(因?yàn)槟銜?huì)遇到一個(gè)坑,下文會(huì)提到),而是為了安裝一些依賴的包或庫。

其中的pkg-config、cmake必須安裝,GCC G++就更不用說了,其他的能裝上就裝。
安裝方法,這里使用Homebrew。如果你電腦沒有安裝Homebrew,建議安裝,方法參考官網(wǎng)。
使用方法很簡單:比如要安裝cmake,先search一下:
sudo brew search cmake
根據(jù)反饋看看有沒有這個(gè)包,包名有沒有寫錯(cuò)。都沒有問題的話使用以下命令安裝:
sudo brew install cmake
好,以上能安裝的包都裝完之后。開始安裝opencv:
sudo brew tap homebrew/science
sudo brew install opencv
安裝完成之后,在目錄/usr/local/Cellar就會(huì)出現(xiàn)一個(gè)文件夾opencv?,F(xiàn)在配置環(huán)境變量,之前我們不是安裝了pkg-config,現(xiàn)在用到了:打開.bash_profile,加入:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/Cellar/opencv/2.4.12/lib/pkgconfig
export PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/usr/local/Cellar/opencv/2.4.12/bin:SLD_LIBRARY_PATH
export PATH=${PATH}:/usr/local/Cellar/opencv/2.4.12/lib
保存關(guān)閉,然后終端執(zhí)行命令【source .bash_profile】使之生效。
在打開另!一!個(gè)!終端窗口,輸入命令:
pkg-config --libs opencv
pkg-config --cflags opencv
如果結(jié)果如下圖所示,那么就配置成功了。

2. 測試
恩,寫個(gè)小例子測試一下。
新建文件夾test,文件夾內(nèi)創(chuàng)建文件test.cpp,代碼:
#include </usr/local/Cellar/opencv/2.4.12/include/opencv2/opencv.hpp>
#include </usr/local/Cellar/opencv/2.4.12/include/opencv2/highgui/highgui.hpp>
using namespace cv;
int main(int argc, char** argv)
{
// Load an image from file - change this based on your image name
Mat img = imread("image.jpg", CV_LOAD_IMAGE_UNCHANGED);
if(img.empty())
{
fprintf(stderr, "failed to load input image\n");
return -1;
}
// this is just to show, that you won't have to pre-alloc
// result-images with c++ any more..
Mat gray;
cvtColor(img,gray,CV_BGR2GRAY);
// Write the image to a file with a different name,
// using a different image format -- .png instead of .jpg
if( ! imwrite("image_copy.png", img) )
{
fprintf(stderr, "failed to write image file\n");
}
imshow("Display Image", img);
waitKey(0);
// no need to release anything with c++ !
return 0;
}
然后新建文件makefile,寫入:
test:test.cpp
g++ -o test test.cpp `pkg-config --libs opencv` `pkg-config --cflags opencv`
clean:
rm test
一定注意,第二行打頭是一個(gè)tab,空!格!不!行!
好,根據(jù)代碼中寫的拷一張圖片進(jìn)來,名字image.jpg。
然后終端執(zhí)行【make】,此時(shí)會(huì)生成一個(gè)文件test,然后終端再執(zhí)行【./test】。好,一張圖片的窗口就彈出來了:

這樣,opencv你就可以自由的使用了。
3. 所謂的坑
按照官網(wǎng)的執(zhí)行步驟:
git clone https://github.com/Itseez/opencv.git
cd ~/opencv
mkdir release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
到這,編譯過程中會(huì)下載一個(gè)文件叫ippicv_macosx_20141027.tgz,但是下載完畢之后報(bào)錯(cuò)說文件的HASH值與期望的不匹配,然后就編譯失敗了。見圖:

查了下,有人說可以自己下載然后替換,好,我也下載了一個(gè),分享出來吧(ippicv_macosx_20141027.tgz),然后我替換了,重新執(zhí)行命令進(jìn)行編譯,但是到這一步的時(shí)候,它還是自己去下載這個(gè)文件,根本不會(huì)檢測本地存不存在!至少在我這是這樣的,那還怎么替換???醉了。