• ベストアンサー

画像認識について

最近CCDカメラなどを用いて、「画像による認識」などという言葉を 良く聞くようになったのですが、そもそも認識とは一体どういうこと なんでしょうか。 例えば三次元的なデータ・ベースのようなものをあらかじめ持ってい て、それと撮像した対象物のパターン認識なんていうこともあるみた いなんですが、私には興味はあっても知識がないため、この『認識』 という言葉がどうもピンと来ません。 ロボットの世界でも画像認識という言葉が出で来るようなのですが、 誰か分かりやすく説明してくださる方いないでしょうか。参考URLな んかがありましたら、そちらを教えていただけるだけでも大変たすか ります。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.5

No.3のymmasayanです。 補足にお答えします。 >認識と計測は違うのでしょうか。 >素人的に考えてしまうと、認識するにも計測を行わなくてはいけないような気がするんですが。 認識と計測は違います。例えば入院した場合、看護婦さんが患者の体温や脈拍、尿量や食欲や体重や睡眠時間などのデータを集めます。ここまでは計測です。 そのデータを総合的に判断して医師が患者の状態を「認識」し、治療方針を立てるのです。更に確信がもてない場合、追加の検査を指示します。 看護婦は「計測」、医師は「認識」なのです。 >以前知り合いに、三次元計測などはボトムアップで、認 >識はトップダウンだと言われたのですが、結局その具体 >的な意味が分からずじまいでした・・・。 先ほどの医師と看護婦の例を見れば判るように、計測はあくまでも計測です。 その結果から何を読み取り、何を主張するか、これが認識なのです。 言い方は悪いかも知れませんが、看護婦さんの計測は医師に報告する「ボトムアップ」、 医師は総合的に判断し(認識)更にいろんな指示を出す「トップダウン」ということではないでしょうか。 >また、図形の類似度を計算するとありますが、ここでは >学習みたいなものを取り入れているのでしょうか。 学習を取り入れると最初に作るロジックが少なくて済みます。 簡単な認識なら学習の効果は少ないですが、高度な認識になればなるほど 学習を取り入れたほうがいいと思います。 >「認識とは学習してなんぼだ」と言う知り合いもいたの >ですが、この考えは間違っているのでしょうか。 間違ってはいないと思います。でも認識と学習はイコールではありません。 一つだけ、重要な点を指摘しておきたいと思います。 人間の「学習」とコンピュータ(ソフト)の「学習」は同次元ではありません。 人間は自分が学習したら、自分の行動規範すら書き換えます。 コンピュータ(ソフト)は学習しても、おおもとのプログラムを書き換える ところまではさかのぼらないのです。コンピュータにとって学習が全てでない 事がお判りになると思います。あくまでもバックに人間がついているのです。

その他の回答 (4)

  • Pesuko
  • ベストアンサー率30% (2017/6702)
回答No.4

>最近の計算機速度の向上にともなってカバーされ得るんでしょうか. アルゴリズムとCPUの向上によります。 まず方法として粗サーチ>中間サーチ>詳細サーチの数段階に分解してサーチ量を減らします。 またコグネックス社が出しているマッチングサーチ等は理論としてかなり昔からあったそうですが実用的な速度で実現できなかった。 あるときIntelがMMXを実装したCPUをだしたら、その理論が使用に耐えれる速度で実用的になったそうです。 最近の小型画像処理は概ねSH-4が良く使われています。 昔68000を使っていた2値化ウインドウ処理の100倍ぐらいの速度が出ます。 3次元サーチ?パターンマッチングのイメージはコップです。 テンプレート=コップとして、コップの高さが輝度です。 貴方は目隠しをしてある領域にコップがあるか、無いか探すとき座標を1mmずらして上からコップをかぶせてぴったりするかどうか探すのです。 探すときコップの深さ(輝度)はたぶんそんなに関係ないのでは?。 粗サーチ>面積が10倍のコップを持ってどこにあるか探します。大まかな場所がわかり徐々にコップを小さくしていきます。 物体が長方形のタッパウエァーならあたりがあったらそこで0.1度単位で回転してぴったり合うかどうかサーチします。 膨大な量の計算が発生しますのでCPUの発展に依存しています。

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.3

「認識」と言う言葉は(学問的な妥当性は別として)確かになじみにくいですね。 むしろ、「判別」「識別」「特定」のほうが判りやすいでしょう。 まず手始めに「図形認識」を考えて見ましょう。 扱う図形を○△□☆の4種類とします。コンピュータにはこの4種類の図形の 特徴をあらかじめ教えておきます。 (CCD)カメラで、1つの図形を画像としてコンピュータに取り込みます。 この画像とあらかじめ覚えている4種類の図形の特徴を比べながら図形を判別 していきます。図形が特定できた時、「図形認識」したことになるのです。 認識には、形状、文字、大きさ、距離、立体感、色彩、質感などありとあらゆる ものが考えられます。カメラで写して、コンピュータで処理してそれが「何」 なのか「特定」「決定」する。それが「画像認識」なのです。 図形認識の初歩的なやり方を紹介しましょう。 扱う図形を先ほどの○△□☆の4種類とします。 カメラで写したある図形の高さをコンピュータで測ります。次に一定の高さになる よう図形の拡大または縮小を行ないます。 次にまずコンピュータの覚えている○に重ねて見ます。そして図形の類似度(重なり具合)を計算します。必要なら回転させて、一致度の高いところを探します。 これを4つの図形に対して行ないます。 最後にもっとも類似度の高かった図形を選び出し、これを「図形認識」結果とします。

starground
質問者

補足

ありがとうございます。 確かに認識というより、判別、識別などの言い方の方が 分かりやすいですね。 質問を投稿してからふと思ったことなんですが、認識と 計測は違うのでしょうか。 素人てきに考えてしまうと、認識するにも計測を行わな くてはいけないような気がするんですが。 以前知り合いに、三次元計測などはボトムアップで、認 識はトップダウンだと言われたのですが、結局その具体 的な意味が分からずじまいでした・・・。 また、図形の類似度を計算するとありますが、ここでは 学習みたいなものを取り入れているのでしょうか。 「認識とは学習してなんぼだ」と言う知り合いもいたの ですが、この考えは間違っているのでしょうか。 よろしければ教えていただきたいのですが。

  • assamtea
  • ベストアンサー率57% (203/353)
回答No.2

こんにちは。 簡単に言うと、目的を持って画像を処理することだと思って下さい。 例えば、CCD自体はデジカメやテレビカメラで用いられる素子で、 映像を電子データに変換するもので、人間で言えば目です。 しかし、人間は脳があり、その目が捕えた風景から、動く物を発見 してそれが友人であるとか、車であるとか認識しています。 この、認識するという行為を持たせたものが画像認識です。 例えば、高速道路の通行券には不正防止用に自車のナンバーの 下2桁が印刷されています。 これは、直前にあるCCDカメラが車を捕らえて、その画像の中から ナンバープレートを判断して、単なる映像の中から、数字の情報を 認識しています。(大きさも判断して、取り易い高さに券が出てきま すよね) 他にも、アイボのようなロボットでは、動く物とか特定の色の物を判別 して反応しますし、工場では基板等のチェックをするのにCCDカメラ によるパターン照合をして不良品を発見しています。 これらは、主にプログラムなど処理的なものですが、この様に単なる 画像情報ではなく、その中から特定の情報を取り出したりすることが 画像認識と理解すればいいです。

starground
質問者

補足

御回答ありがとうございます。 用途に合わせて画像処理を行い、処理画像から特定の情報を 取り出すことが画像認識・・・、私の能力が足りないせいか イメージがなかなか湧きません・・・すみません・・・。 assamteaさんがおっしゃるようにナンバープレートや基板な どの二次元的な物に対する認識は、なんとなく理解できるの ですが、では、箱などの三次元的な物の認識となると、一体 どうなってしまうのでしょうか。 例えば、データ・ベースを持っていても、距離や角度が変わ ってしまうと、画像上での見え方も変わってしまいますよね。 そうすると認識はできなくなってしまうのでしょうか。

  • Pesuko
  • ベストアンサー率30% (2017/6702)
回答No.1

多分画像処理や正規化相関やパターンマッチングの事でしょう。 >三次元的なデータ・ベースのようなもの パターンマッチングでは、基本形=テンプレートに画像を覚えさせ、サーチエリア内にある映像と1ピクセル単位でシフト・サーチを実行し、何処にあるか探します。 このときテンプレートの映像情報で輝度(明るさ)がZ軸(高さ)に相当します。 全体像の説明ではアメリカのコグネックス社が細かく説明しているので見てください。 http://www.cognex.co.jp/vision/vision.asp

参考URL:
http://www.cognex.co.jp/vision/vision.asp
starground
質問者

補足

1ピクセル単位でシフト・サーチを繰り返すと、 認識するのに相当な時間がかかりそうなのですが、 そのへんに関しては、最近の計算機速度の向上に ともなってカバーされ得るんでしょうか。