概要

 

OpenCVはコンピュータビジョンに関する様々な関数を持ったライブラリであり、大学、企業、個人で広く使われている。この実験では、OpenCVに関する基礎を学び、実際にOpenCVを使ってプログラムを作成してカメラで画像を撮りながら実時間処理を行う。

OpenCVはパターン認識、画像処理、ロボットの視覚、機械学習、拡張現実(AR)など、応用範囲は広い。C/C++, Java, Pythonによる利用が可能であるが、今回はC++を用いる。5回の内容は次のものを予定している。

1.  C++言語の基礎(1)

2.  C++言語の基礎(2)

3. C++におけるOpenCV

4. 特定の色の検出

5. 顔検知システムの作成

 

C++言語の基礎

C++は、C言語の拡張版であり、オブジェクト指向言語である。また、Javaのような中間コードを使わないので、処理速度が速く、速さが必要な、ハードウェア周りのソフトには最適である。

C++の処理系で、C言語のプログラムはそのまま使える。そのため、とかく、C++を使っているといいながら、ほとんどC言語のプログラムを作りがちである。

しかし、C++特有の機能を学ばなければ、既存のC++のコードが読めないし、オブジェクト指向言語の特長を生かすことができない。

まず、約2回にわたってC++特有の機能を学び、C++らしいプログラムが組めるようにする。

また、次に、本実験の主目的である、OpenCVについて説明をし、C++により簡単なプログラムを組み、コンピュータビジョンシステムを体験する。