【OpenCV2.2】ライブラリ構成(*.lib,*.hなど)

OpenCV2.2からはライブラリの構成が再構築されています。
旧バージョンと、OpenCV2.2の構成の概略は以下の通りとなっています。

 

OpenCV2.2 旧バージョン ヘッダファイル ライブラリファイル 概要
opencv_core CXCORE core_c.h (C言語用)
core.hpp (C++用)
opencv_core220.lib
opencv_core220d.lib
メモリ確保/解放、行列、
演算、描画など
opencv_imgproc CV imgproc_c.h (C言語用)
imgproc.hpp (C++用)
opencv_imgproc220.lib
opencv_imgproc220d.lib
画像処理
一般的なフィルタ処理など
opencv_highgui HighGUI highgui_c.h (C言語用)
highgui.hpp (C++用)
opencv_highgui220.lib
opencv_highgui220d.lib
ウィンドウなどのGUI、
ファイル読込/保存、
ビデオファイル、カメラなど
opencv_ml ml ml.hpp opencv_ml220.lib
opencv_ml220d.lib
サポートベクタマシン、
ブースティングなどの
機械学習
opencv_features2d features2d.hpp opencv_features2d220.lib
opencv_features2d220d.lib
SURF、FASTなどの
特徴抽出
opencv_video background_segm.hpp opencv_video220.lib
opencv_video220d.lib
前景/背景分離
tracking.hpp トラッキング
opencv_objdetect objdetect.hpp opencv_objdetect220.lib
opencv_objdetect220d.lib
Haar、LBP、HOGなどの
オブジェクト検出器
opencv_calib3d calib3d.hpp opencv_calib3d220.lib
opencv_calib3d220d.lib
カメラキャリブレーション、
ステレオカメラなど
opencv_flann flann.hpp opencv_flann220.lib
opencv_flann220d.lib
高速最近傍処理(FLANN)
など
opencv_contrib contrib.hpp opencv_contrib220.lib
opencv_contrib220d.lib
肌検出、MeanShiftなど
完全な状態ではない
opencv_legacy legacy.hpp opencv_legacy220.lib
opencv_legacy220d.lib
旧関数との互換用
opencv_gpu gpu.hpp opencv_gpu220.lib
opencv_gpu220d.lib
GPU(CUDA)による行列演算、
画像処理など。(β版の扱い)

 

ライブラリファイル(*.lib)はReleaseモードの場合、『d』のつかないlibファイルを、Debugモードの場合、『d』の付いたlibファイルを、参照設定して下さい。

 

ヘッダファイルはopencv.hppにまとめてインクルードされているので、このファイル(opencv.hpp)一つをインクルードすると、すべてインクルードされます。

 

また、OpenCV-2.2.0-win32-vs2010.exeを使ってデフォルト状態でOpenCV2.2をインストールした時の主なファイルのフォルダ構成は以下の通りです。

 

C:\OpenCV2.2
┣ bin
┃  ┣ opencv_core220.dll
┃  ┣ opencv_core220d.dll
┃  ┣ opencv_imgproc220.dll
┃  ┣ opencv_imgproc220d.dll
┃  ┣ opencv_highgui220.dll
┃  ┣ opencv_highgui220d.dll
┃  ┣ opencv_ml220.dll
┃  ┣ opencv_ml220d.dll
┃  ┣ opencv_features2d220.dll
┃  ┣ opencv_features2d220d.dll
┃  ┣ opencv_video220.dll
┃  ┣ opencv_video220d.dll
┃  ┣ opencv_objdetect220.dll
┃  ┣ opencv_objdetect220d.dll
┃  ┣ opencv_calib3d220.dll
┃  ┣ opencv_calib3d220d.dll
┃  ┣ opencv_flann220.dll
┃  ┣ opencv_flann220d.dll
┃  ┣ opencv_contrib220.dll
┃  ┣ opencv_contrib220d.dll
┃  ┣ opencv_legacy220.dll
┃  ┣ opencv_legacy220d.dll
┃  ┣ opencv_gpu220.dll
┃  ┗ opencv_gpu220d.dll
┣ include
┃  ┣ opencv
┃  ┃ ┣ cv.h
┃  ┃ ┣ cv.hpp
┃  ┃ ┣ cxcore.h
┃  ┃ ┣ cxcore.hpp
┃  ┃ ┣ highgui.h
┃  ┃ ┗ ml.h
┃  ┣ opencv2
┃  ┃ ┣ opencv.hpp
┃  ┃ ┣ core
┃  ┃  ┃ ┣ core_c.h
┃  ┃  ┃ ┗ core.hpp
┃  ┃ ┣ imgproc
┃  ┃  ┃ ┣ imgproc_c.h
┃  ┃  ┃ ┗ imgproc.hpp
┃  ┃ ┣ highgui
┃  ┃  ┃ ┣ highgui_c.h
┃  ┃  ┃ ┗ highgui.hpp
┃  ┃ ┣ ml
┃  ┃  ┃ ┗ ml.hpp
┃  ┃ ┣ features2d
┃  ┃  ┃ ┗ features2d.hpp
┃  ┃ ┣ video
┃  ┃  ┃ ┣ background_segm.hpp
┃  ┃  ┃ ┗ tracking.hpp
┃  ┃ ┣ objdetect
┃  ┃  ┃ ┗ objdetect.hpp
┃  ┃ ┣ calib3d
┃  ┃  ┃ ┗ calib3d.hpp
┃  ┃ ┣ flann
┃  ┃  ┃ ┗ flann.hpp
┃  ┃ ┣ contrib
┃  ┃  ┃ ┗ contrib.hpp
┃  ┃ ┣ legacy
┃  ┃  ┃ ┗ legacy.hpp
┃  ┃ ┗ gpu
┃  ┃      ┗ gpu.hpp
┗ lib
┣ opencv_core220.lib
┣ opencv_core220d.lib
┣ opencv_imgproc220.lib
┣ opencv_imgproc220d.lib
┣ opencv_highgui220.lib
┣ opencv_highgui220d.lib
┣ opencv_ml220.lib
┣ opencv_ml220d.lib
┣ opencv_features2d220.lib
┣ opencv_features2d220d.lib
┣ opencv_video220.lib
┣ opencv_video220d.lib
┣ opencv_objdetect220.lib
┣ opencv_objdetect220d.lib
┣ opencv_calib3d220.lib
┣ opencv_calib3d220d.lib
┣ opencv_flann220.lib
┣ opencv_flann220d.lib
┣ opencv_contrib220.lib
┣ opencv_contrib220d.lib
┣ opencv_legacy220.lib
┣ opencv_legacy220d.lib
┣ opencv_gpu220.lib
┗ opencv_gpu220d.lib

 

C:\OpenCV2.2\include\opencv内のcv.hなどのファイルは使用可能ですが、
C:\OpenCV2.2\include\opencv2内のimgproc.hppなどを使うのを推奨とされています。

 

OpenCVへ戻る

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください