沼津高専 電子制御工学科
MIRSMG3D 数字認識プログラム概要
MIRSMG3D-IMGP-0101
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2009.3.11 杉山 初版


目次






1.目的

本仕様書は、MG3標準機における数字認識プログラムの概要について記述したものである。


2.要求仕様

1mの距離にある数字を3秒以内に認識する。


3.ターゲットの仕様

数字ターゲットの仕様はファイルとしてまとめた。それをここに示す。


4.動作概要

  1. uvccaptureを用いてカメラから入力画像を取得し、ファイルに保存する。
  2. 保存した画像ファイルを読み込む。
  3. 画像に対して色による2値化処理、エッジ検出をそれぞれ行う。
  4. 3.の処理を施した画像を組み合わせることで、指定色の平面を検出する。
  5. 4.で得られた画像に対してラベリング処理を行う。
  6. ラベリング領域内を2値化処理する。
  7. 6.の画像よりターゲットかどうか識別する。
  8. ターゲットである場合6.の画像に対して周辺分布法を適用し、数字を識別する。


5.プログラム構成

プログラムの構成図をFig. 1に示す。


Fig. 1


6.フローチャート

数字認識プログラムに関するフローチャートをTable 1にまとめる。

Table 1
フローチャート ファイル名 関数名
メインルーチン m_num_detect.c main()
数字認識ルーチン num_detect.c num_detect()
画像キャプチャルーチン img_update.c img_update()
色による2値化処理ルーチン col_threshold.c col_threshold()
エッジ検出ルーチン num_detect.c num_detect()※1
ラベリングルーチン num_detect.c num_detect()※1
ラベル領域のトリミングルーチン num_detect.c labelTrim()
可変閾値処理ルーチン val_threshold.c val_threshold()
紙判別ルーチン isPaper isPaper()
数字識別ルーチン num_detect.c recognize()

※1 記載の関数内部に処理のみ記述。関数としては定義されていない。

 これらのフローチャートをファイルにまとめたものは
ここに示す。


7.限定事項

  • カメラの視野中に複数のターゲットがないものとする。
  • カメラの視野中にターゲットに良く似たものがないものとする。
  • ターゲット全体が見えているものとする。
  • ターゲットはカメラに対して正対し、回転していないものとする。
  • ターゲットとカメラとの距離が1m程度であるものとする。


8.既知の問題

  • 複数のターゲットの同時認識は不可。
  • 今回用いた数字以外の形は認識不可。
  • ターゲットの回転は考慮していない。
  • 背景の条件によっては認識できない場合もある。


関連文書