環境デザイン学(福田知弘 担当回)で実施する,Visual Studio 2019 (以前は2018, 2015) 上でOpenCVを使用するためのセットアップ方法,並びに,サンプルコードを示します.
OpenCV(Open Source Computer Vision Library)は,画像処理(image processing),画像認識(image recognition),画像理解(image understanding)のためのオープンソースライブラリである.マルチプラットフォームに対応している.
OpenCVの実装分野は以下の通り.入力データとして,主に静止画像,動画像が用いられ,それらの媒体はファイル(静止画像,動画像)やwebカメラ(リアルタイム動画)となる.
画像処理(Image Processing)
- 勾配,エッジ,コーナー(Gradients, Edges and Corners)
- サンプリング,補間,幾何変換(Sampling, Interpolation and Geometrical Transforms)
- モルフォロジー演算(Morphological Operations)
- フィルタと色変換(Filters and Color Conversion)
- ピラミッドとその応用(Pyramids and the Applications)
- 画像分割,領域結合,輪郭検出(Image Segmentation, Connected Components and Contour Retrieval)
- 画像と形状のモーメント(Image and Contour Moments)
- 特殊な画像変換(Special Image Transforms)
- ヒストグラム(Histograms)
- マッチング(Matching)
構造解析(Structural Analysis)
- 輪郭処理(Contour Processing)
- 計算幾何(Computational Geometry)
- 平面再分割(Planar Subdivisions)
モーション解析と物体追跡(Motion Analysis and Object Tracking)
- 背景統計量の累積(Accumulation of Background Statistics)
- モーションテンプレート(Motion Templates)
- 物体追跡(Object Tracking)
- オプティカルフロー(Optical Flow)
- 推定器(Estimators)
パターン認識(Pattern Recognition)
カメラキャリブレーションと3次元再構成(Camera Calibration and 3D Reconstruction)
- カメラキャリブレーション(Camera Calibration)
- 姿勢推定(Pose Estimation)
- エピポーラ幾何(Epipolar Geometry)
機械学習
- 単純ベイズ分類器 (Naive Bayes Classifier)
- k近傍法 (K Nearest Neighbors)
- サポートベクターマシン (SVM)
- 決定木 (Decision Trees)
- ブースティング (Boosting)
- ランダムツリー (Random Trees)
- EMアルゴリズム (Expectation-Maximization)
- ニューラルネットワーク (Neural Networks)
ユーザーインターフェイス
- シンプルGUI(Simple GUI)
- 画像の読み込みと保存(Loading and Saving Images)
- ビデオ入出力(Video I/O)