SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Javaで学ぶグラフィックス処理

交通標識の認識を目的とした赤の抽出とノイズの除去

抽出範囲をHSVダイヤグラムで確認する


  • X ポスト
  • このエントリーをはてなブックマークに追加

プログラムの使い方

 アプレットを起動すると、上方に原画像を選択するための選択ボックスが現れ、その下に、原画像(左上)、赤を抽出した画像(右上)、それを収縮処理した画像(左下)、それをさらに膨張処理した画像(右下)が表示されます。いろいろな原画像を用いて、交通標識を認識した結果を確認してください。

プログラムの実行結果

 下の図は、実行結果の一例を示します。画像選択のための選択ボックスは省略されています。左上は、交通標識に陰影のある原画像で、右上は「赤」の部分を抽出した二値画像、左下は、それを収縮(erosion)した画像、右下は収縮処理した結果をさらに膨張(dilation)した画像です。収縮により小さなノイズが除去され、膨張によって、少しやせ細った交通標識がはっきりしています。ただし、完全にはノイズが除去されていませんので、さらに形状による最終的な認識が必要になります。

図2 プログラムの実行結果の一例
図2 プログラムの実行結果の一例

まとめ

 交通標識の認識は、世界中の自動車メーカーや大学、研究所において鋭意研究中で、Intelligent Vehicle(知能を持った車)の領域として、学会発表が多数あります。これらのすべてを知ることはできませんが、公開されているウエブサイトから、一部を垣間見ることができます。

 赤の抽出とノイズの除去は、昼間の交通標識の場合には、RGB成分の比率を用いる方法が最も良好な結果が得られました。夜間には、照明のスペクトラムにバラツキが大きかったり、反射光が強すぎて彩度の低い(白っぽい)状態になったりして、十分な結果が得られませんでした。

 昼間の抽出結果のノイズを減らすには、抽出するhueの範囲を狭くするのが効果的です。しかし、夜間の交通標識の抽出は一層困難になります。夜間には、交通標識の強い反射のためにノイズが相対的に減少しますので、昼間はhueの範囲を狭く、夜間はhueの範囲を広くするなど、昼間と夜間で抽出条件を切り替える必要があります。

参考資料

 この記事は、筆者のウエブサイト『Visual c++ 6.0を用いた易しい画像処理(14)-原画像から赤色を抽出し、一旦拡張して縮小する-(ただし、現在はVisual C++ 2005 Express Edition版に改定)』を一部変更(交通標識の抽出結果の欠如を重視して、クロージング処理を行なっていたのを、今回は、ノイズ除去に重点を移してオープニング処理にしました)してJava言語に書き直し、分かりやすく加筆したものです。

 ウエブ上には多数の優れた資料があり、赤の抽出については本文中で紹介しました。二値画像の膨張(dilation)、収縮(erosion)などを含む一般的な画像処理については、下記があります。

  1. C言語による画像処理入門』 阿居院猛・長尾智晴 著、昭晃堂、2000年11月
  2. コンピュータ画像処理』 田村秀行 著、オーム社、2002年12月
  3. ディジタル画像処理の基礎と応用-基本概念から顔画像認識まで-』 酒井幸市 著、CQ出版、2003年8月
修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Javaで学ぶグラフィックス処理連載記事一覧

もっと読む

この記事の著者

石立 喬(イシダテ タカシ)

1955年東京工大卒。同年、NECへ入社し、NEC初のコンピュータの開発に参画。磁気メモリ、半導体メモリの開発、LSI設計などを経て、1989年帝京大学理工学部教授。情報、通信、電子関係の教育を担当。2002年定年により退職し現在に至る。2000年より、Webサイト「Visual C++の勉強部屋」を公開。...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/352 2008/03/16 10:40

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング