名称 MIRS1403 画像処理モジュール詳細設計書
番号 MIRS1403-SOFT-0007

最終更新日:2015.2.20

版数 最終更新日 作成 承認 改訂記事
A01 2014.12.22 野澤 初版
A02 2014.12.24 野澤 大林教員 誤植の修正
A03 2015.2.4 野澤 仕様変更についての追記を行った。
B01 2015.2.20 堀部 競技会に使用したプログラムの仕様に変更した。

目次

  1. はじめに
  2. モジュール概要
  3. モジュール仕様
  4. 試験仕様
  5. プログラム

  1. はじめに

    本ドキュメントは、MIRS1403の画像処理モジュールの詳細設計書である。
    また、画像処理プログラムは風船認識と数字認識の2つのモジュールに別れる。

  2. モジュール概略

    本モジュールは、画像処理によりDBの数字認識及び風船の位置認識を行う機能を持つ。
    以下に、DBの数値認識及び怪盗機の位置認識についてのフローチャートを示す。

  3. モジュール仕様

    1. ソースファイル構成

      画像処理のファイル構成は風船認識はImageディレクトリ内、数字認識はNumberディレクトリ内のファイルとする。また、各ファイルに含まれる関数は下記の関数・関数型マクロにて説明する。
      風船認識
      ファイル名 含まれる関数
      cv_ColorExtraction cv_ColorExtraction
      Image color_detect
      labelling labelling2
      数字認識のプログラムは標準プログラムを使用するカメラの指定ができるよう変更したものとした。

    2. 構造体・列挙体

      このプログラムに構造体および列挙体は用いていない。 laballingファイルに含まれる変数は標準プログラムから変更されていないためここには記述しない。

    3. 関数・関数型マクロ

      画像認識関連の関数
      修飾子・戻値 名称・引数 概要 修飾子・戻値の詳細 引数の詳細 備考
      void cv_ColorExtraction
      (IplImage* src_img, IplImage* dst_img,int code,int ch1_lower, int ch1_upper,int ch2_lower, int ch2_upper,int ch3_lower, int ch3_upper)
      引数で与えたHSV値の範囲内を抽出して2値化する src_img:入力画像
      dst_img:出力画像
      code:色空間の指定
      ch:HSV値(lower:下限、upper:上限)
      次のウェブページを参考にした画像処理ソリューション
      int color_detect(char *DeviceNumber,int *ret) 指定されたカメラで画像認識を行う。 風船が認識できた場合に1、できなければ-1をかえす。 DeviceNumber:デバイス番号
      ret:要素数3の配列(デバイス番号、風船までの距離、正面から風船までの角度)
      MG3S 標準プログラム 関数レファレンスの関数 number_detect(int dist) を参考にして実装する。
      数字認識関連の関数は標準プログラムnumber_detectの使用とほぼ同一のため、ここでは説明しない。また、下に標準プログラムの関数レファレンスのリンクを貼る。
      MG3S 標準プログラム 関数レファレンス

  4. 試験仕様

    1. 試験用プログラム

    2. 試験用プログラムの詳細を以下に示す。
      試験用プログラム
      ファイル名 試験内容 合格基準 不合格時の対処法 備考
      TestImage カメラが正常に動作し、画像認識が正常に行われているかを確認する。
      風船が画像内にあった場合に距離と角度が返ってくるかを確認する。
      正常な返り値がかえってきた場合に合格。 プログラムの修正を行い、再度試験を行う。

    3. デバッグ処理

    4. コーディング及び全モジュールについてのドキュメントの承認を得た後、必要と思われるデバッグ処理の詳細を追記する。

  5. プログラム

    プログラムについては、以下を参照。
    MIRS1403 ソフトウェア開発報告書

▲上へ

MIRS1403ドキュメント管理台帳