OpenCV (Open Source Computer Vision Library) 是跨平台電腦視覺函式庫。CentOS 6.5 官方倉庫版本較舊,若需特定版本 (如 2.3.1) 或最新功能,需自行編譯安裝。本文記錄完整流程:依賴套件安裝、cmake 配置、編譯安裝、動態連結庫路徑配置、環境變數設定、樣本程式測試驗證。
CentOS 6.5 x86_64
OpenCV 2.3.1 原始碼包
yum install cmake gcc gcc-c++ gtk2-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig python-devel libtool nasm
關鍵套件:cmake (建構系統)、gtk2-devel (GUI 高階模組)、ffmpeg 相關 (視訊 I/O)、jasper (JPEG-2000)、swig (Python 綁定)。
cd opencv-2.3.1
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_NEW_PYTHON_SUPPORT=OFF ..
# 注意:OFF 後需有空格再接 .. (來源目錄)
CMakeLists.txt:44 錯誤:編輯 CMakeLists.txt 將第 44 行註解 (#)yum install 缺少套件-devel
# 編譯 (多核心加速,-j 參數指定並行數)
make -j$(nproc)
# 安裝 (需 root)
sudo make install
編譯時間視 CPU 核心數而定,通常 10-30 分鐘。
# 建立 ld.so.conf.d 配置檔
echo "/usr/local/lib" | sudo tee /etc/ld.so.conf.d/opencv.conf
# 更新動態連結庫快取
sudo ldconfig
# 編輯 /etc/bashrc (全域) 或 ~/.bashrc (用戶級)
echo 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig' | sudo tee -a /etc/bashrc
# 立即生效
source /etc/bashrc
cd ~/opencv-2.3.1/samples/c
chmod +x build_all.sh
./build_all.sh
# 執行人臉偵測測試
./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg
成功時 lena.jpg 臉部應出現藍色框標記。

| 類型 | 路徑 |
|---|---|
| 函式庫 | /usr/local/lib/libopencv_*.so |
| 標頭檔 | /usr/local/include/opencv/ |
| pkg-config | /usr/local/lib/pkgconfig/opencv.pc |
| 範例程式 | /usr/local/share/OpenCV/samples/ |
| Haar 分類器 | /usr/local/share/OpenCV/haarcascades/ |
| 問題 | 解決 |
|---|---|
import cv2 失敗 | 確認 BUILD_NEW_PYTHON_SUPPORT=ON 且 PYTHON_INCLUDE_PATH 正確 |
執行檔報錯 libopencv_core.so.2.3: cannot open shared object file | 未執行 ldconfig 或 /etc/ld.so.conf.d/opencv.conf 缺失 |
| cmake 找不到套件 | 安裝對應 -devel 套件,重新 cmake 前刪除 build/ 目錄 |
OpenCV 2.3.1 屬舊版 (2011 年釋出)。新專案建議使用 OpenCV 4.x (現代 C++ API、DNN 模組、更好效能)。編譯流程類似,cmake 參數調整為 -DOPENCV_GENERATE_PKGCONFIG=ON 等新選項。
CentOS 編譯安裝 OpenCV 關鍵五步:依賴套件 → cmake 配置 → make 安裝 → ldconfig → PKG_CONFIG_PATH。缺少任一步驟皆會導致執行階段找不到函式庫或標頭檔。測試以人臉偵測樣本驗證完整功能鏈路。