OpenCVで物体検出器を作成する① ~基礎知識~

img_opencv

こんにちは。新入社員のザキヤマです。最近は気温が上がってきて、夜も寝苦しくなってきましたね。。冬が待ち遠しいです!!

いきなりですが、OpenCVや物体検出の初心者向けに、
「OpenCVでカスケード分類器を作る際に、知っていると便利かもしれない基礎知識からカスケード分類器作成まで」を全7回に分けて簡単に説明していきます。

それでは、第1回目です。今回はOpenCVの物体検出について導入知識をサクッと説明します。

OpenCVで物体検出器を作成するシリーズ、記事一覧はこちら

OpenCVで物体検出?

OpenCVとは、有名な画像処理のライブラリです。その機能の一つに物体検出があります。

顔・眼・鼻・口・上半身などの検出器が用意されていますが、自分でカスケード分類器を作成すれば、好きな物体を検出させることができますよ!!

カスケード分類器とは

物体の検出器を作成するには、まずは「機械学習」を行います。機械学習では、学習したい物体の特徴を抽出して、抽出した「特徴量」を機械が学習し、学習データをまとめます。

この機械学習のまとまったデータはカスケード分類器と呼ばれます。

物体検出の流れ

物体を検出をする際は、まず入力された画像(カメラで撮影した画像などで)から、特徴量を抽出します。
そして、ものすごい計算をしながら学習済の特徴に合う部分がないか?を探していきます。

特徴で見分けるため、単純な物体は特徴が類似しているために見分けがつきにくく、特徴の少ない文字や記号などを認識することは不得意です。

文字を認識するには?

文字の認識をしたい場合は、物体検出より「OCR」か「パターンマッチング」が向いています。
ここでは、カスケード分類器による物体検出を説明しますので、文字認識を目指している方はOCRやパターンマッチングについて調べてみてください。

学習方法は2種類

現在、OpenCVでカスケード分類機を作成するには、下記の2つの方法があり、この2つは、”特徴の抽出方法”に違いがあります。

  • haartraining(ハールトレーニング)
    Haar-Like特徴によって機械学習を行います。
  • traincascade(トレインカスケード)
    haartrainingのあとに作られました。
    Haar-Like特徴LBP特徴HOG特徴から1つを選択できます。

「haartraining」が先に作られ、その後「traincascade」ができました。「traincascade」では、学習時に抽出する特徴量を3種類から選べるようになりました。

つづきます

この3つの特徴量、それぞれどのような仕組みなのでしょうか?
3回にわけて、それぞれを説明していきたいと思います。

次回、OpenCVで物体検出器を作成する②では、Haar-Like特徴量についての説明をしていきます。

⇒ OpenCVで物体検出器を作成する② ~Haar-Like特徴~

CONTACT US

株式会社プロフェッサはWEB制作会社です。
ウェブサイト制作やシステム開発など、ウェブに関するご相談は下記よりお気軽にどうぞ

2015年6月30日


Previous Post

Next Post