名称 MIRS1102 ソフトウェア詳細設計書_num_detect
番号 MIRS1102-SOFT-XXXX

最終更新・2013.2.6

版数 最終更新日 作成 承認 改訂記事
A01 2013.2.6 荻 貴大
中嶋 悠斗
Special thanks! 太田 航
初版

目次




1.はじめに

このドキュメントはMIRS1204独自開発した画像認識プログラムの詳細を示したものである.

2.内容

プログラムの開発概要、詳細、数字判断方法とプログラムの本体を以下に示す。

3.ソフトフェア詳細

目的
既存の数字認識プログラムでは関数の起動から数値を返すまでに時間がかかること、起動中にアポートすることがあった。
これらの問題が発生するとMIRS本体のプログラムが終了してしまい危険である。
したがって
・高速性
・安定性
・デバックの容易さ
を標準プログラムより向上させたプログラムが必要となった。

詳細
開発にはC言語とOpencvを利用した。
入力画像を二値化し、検出したエッジを囲う矩形を求める。
求めた矩形の中から"縦横比"、"大きさ"などがDBの数値に近いものを選別し数字として保存する。 保存した画像にROI操作を行い、左右の数字を判断する。
判断した結果を返り値として終了する。
これらの流れはいつでも確認できるように適宜画像を保存できる形にした。
プログラムを実行した際の画像の変化を以下に示す。

ここで検出した画像に7箇所のROI走査を行い、0〜5の判断を行う。

数値が7本の線で構成されていることを利用して上の7箇所でROI走査を行う。
この結果をもとに最終的な数値の判断をする。

動作を部分ごとに確認できるようにしたことでデバッグの容易さを実現した。
また検出の動作を一回のみにし、数値が判断できない場合には素直に申告させるようにしたことで、プログラムの動作を一回あたり約1秒以下とする高速性を実現した。
安定性に関してのみプログラムを強制終了させたあとにアポートするなど問題点がある。ただし、トラブルシューティングのみで対応可能。
以下に単体で動作させる試験用プログラムを載せる。
number_detect_lastversion.zip

4. 関連文書




沼津工業高等専門学校 電子制御工学科