太田研 公開用Wiki 

はじめに

研究背景

 「つくばチャレンジ」という,公開実験がある.これは,2007 年から毎年実施されている,つくば市内の市街地で移動ロボットが自律走行する技術チャレンジであり,人々が普段使っている実環境における,自律走行技術の進歩を目的としている.この「つくばチャレンジ」では,例年課題コースの自律走行の必須課題に加えて, 選択課題が課されており,太田研究室では毎年参加している.

 2020 年度は新型コロナウイルス感染症の影響により,実験走行および本走行は中止となった.そのため全チームに対する共通の課題等は設定されなかった.以下からは 2019 年度のコースや課題内容をもとに説明を行う.

 2019 年度では,課題コースが約 2.5km となっており,コースは図 1 のようになっている. 選択課題として事前データ取得なし走行,信号認識横断,チェックポイント通過 + 経路封鎖迂回,探索対象発見が出題されている.

corse.png
図1:2019年度の課題コースの地図

研究目的

 選択課題の信号認識横断はロボットが歩行者用信号と自動車の状況を認識して横断開始する必要がある.そのため, ロボットは歩行者用信号が赤であるのか緑であるのか,また横断歩道は渡れる状態になっているのかを認識しなければならない.今回はその中の歩行者用信号の状態変化の検出を目的とし研究を行った.

本研究では,信号機の状態の変化を,異なる時刻での撮影画像から生成した差分画像をもとに検出を行った.また,共通のテンプレート画像を用い,テンプレートマッチングにより検出を行うため,機械学習などに比べて,低い計算コストで実装が可能である.

提案手法

先行研究について

 本研究は防衛大学校の冨沢哲雄氏による”Using Difference Images to Detect Pedestrian Signal Changes” という先行研究を参考にしている.この先行研究では,差分画像とテンプレートマッチングを用いて LED 式歩行者用信号機の状態変化の検出を行っている.本研究では,同様の手法で複数の異なる交差点に対して共通のテンプレート画像を用い,電球式歩行者用信号機での状態変化の検出を行う.

信号機の状態変化の検出方法

提案手法では,異なる時刻に同位置にて撮影した 2 枚の画像を用いて差分画像を生成し,その画像から,信号機の状態変化を検出する.提案手法の大まかな流れを以下に示す.

  1. 検出に用いる差分画像を生成する
  2. テンプレート画像の生成
  3. テンプレートマッチング
  4. 結果出力

以下で処理の詳細と用いたアルゴリズムについて述べる.

検出に用いる差分画像

本研究では,信号機の状態変化の検出を行う際に差分画像を用いる.ここで用いる差分画像とは,2 枚の画像の対応する画素に以下の式を適用して生成した画像のことである.

f.png

Rcは現在の画像のR値,Rpは過去の画像のR値である.どちらも0から255までの値を持つ8ビットの数値でG,Bも同様である.式により,導出された差分画像は,次のような特徴をもつ.

1.変化のない画素は灰色になる

d1.png
図2: 変化のない画像から生成した差分画像

2.信号変化前後の差分画像には表示灯の位置に特徴的なパターンが出現する

d2.png
図3: 信号変化の際に現れる特徴的なパターンの一例

3.移動する物体によって生じる差分は信号表示の変化による差分のパターンとは異なる

d3.png
図4: 自動車が通過した例

これら 3 つの特徴を活かして信号機の状態変化の検出を行う.

歩行者用信号機の状態変化とその際に生成される差分画像

日本の歩行者用信号機は,赤・緑・消灯の3つの状態を組み合わせた図6のようなA~Fの6つの状態変化をもつ.赤から緑の状態変化はA,緑から赤の状態変化はBとなる.緑の点滅状態はCとDの繰り返しとなり,その後信号機によって異なるが,消灯から赤の状態変化Eまたは緑から赤の状態変化Bを経由し,赤信号へ変化する.なお日本の歩行者用信号機では赤から消灯の状態変化Fは基本的に発生しないが,便宜上記載している.

sgc.png
図5: 歩行者用信号機の状態変化

図5のようなA~Fの状態変化が起きている2枚の画像に対し,上で紹介した式(1)~(3)を適用すると,図5のA~Fに対応した特徴的なパターンが生成される.図6に図5のそれぞれA~Fに対応する特徴的なパターンを示した.

sdp.png
図6: A~F の状態変化の際に差分画像に現れる特徴的なパターン

つまり,信号機の状態変化を検出するには,図7で示したような特徴的なパターンが差分画像内に現れたかどうかを検出すれば良い.そこで,検出の手法として本研究では,テンプレートマッチングを用いた.

テンプレート画像の生成

テンプレートマッチングに用いるテンプレート画像の生成について説明する.まず,状態変化A(赤→緑)の前後の歩行者用信号機をあらかじめ撮影し,その2枚の画像から上で紹介した式(1)~(3)を適用し,差分画像を生成する.実際の画像とその画像から生成された差分画像を図7に示す.

t1.png
図7: 状態変化A(赤→緑)の前後の画像と生成された差分画像

生成された差分画像内に図6の状態変化Aと同じような特徴的なパターンが出現していることがわかる.この特徴的なパターンの周囲を矩形で切り取ったものを,状態変化Aを検出するためのテンプレート画像Aとして利用する.

このテンプレート画像Aに対し,画像処理を行うことで,他の状態変化に対応するテンプレート画像を作成することができる.

まず,状態変化D(消灯→緑)のテンプレート画像Dは,テンプレート画像Aの上半分を灰色で塗りつぶすことで生成する.状態変化F(赤→消灯)のテンプレート画像Fは,テンプレート画像Aの下半分を同様に灰色で塗りつぶすことで生成する.そして,テンプレート画像A・D・Fのネガポジ変換により状態変化B・C・Eに対応したテンプレート画像B・C・Eを生成することができる.テンプレート画像Aから他の状態遷移に対応するテンプレート画像を生成するステップを図8に示す.

t2.png
図8: テンプレート画像A から他の状態遷移に対応するテンプレート画像を生成するステップ

テンプレートマッチング

まず,テンプレートマッチングとはテンプレート画像と入力画像を用意し,入力画像内にテンプレート画像と似た領域があるのか,または似た領域がないのかを調べる手法である.ここでの入力画像とは上で紹介した手法で生成した差分画像のことである.

撮影された画像から生成した差分画像に対し,生成したテンプレート画像を用いて,テンプレートマッチングを行う.テンプレートマッチングはスコアの算出方法にいくつかの種類があるが,ここでは明るさの変化に堅牢なZNCC(Zero-mean Normalized Cross Correlation)という計算手法を用いている.

そのため,正の相関があるときは+1に近く,負の相関があるときは−1に近い値を持つ.上で説明したように,テンプレート画像Aとテンプレート画像B,テンプレート画像Cとテンプレート画像D,テンプレート画像Eとテンプレート画像Fはそれぞれのネガポジ変換で作成されている.よってこれらの状態変化が発生した際のスコアは以下の表の傾向になる.

表1: 状態変化とスコア
発生した状態変化テンプレート画像相関係数
AA+1へ近づく
BA-1へ近づく
CD-1へ近づく
DD+1へ近づく
EF-1へ近づく
FF+1へ近づく

よって,A~Fの状態変化を検出するために,6つのテンプレート画像全てでテンプレートマッチングを行う必要はなく,テンプレート画像A・テンプレート画像D・テンプレート画像Fの3つを用いてテンプレートマッチングの最大値・最小値を求めることで6つの状態変化すべてを検出することができる.

評価実験

本章では,提案手法に基づいて行った実験に関してデータセット,実験結果,検出結果について述べる.

データセット

本実験では,群馬大学桐生キャンパス周辺の交差点で撮影した1150枚の歩行者用信号機の画像を用いて実験を行う.画像は露出とホワイトバランスを信号機ごとに固定し,約1秒間隔で撮影した.これらの撮影画像1150枚から,差分画像を生成し,テンプレートマッチングを行っていく.

実験画像群に含まれる状態変化の内訳を以下の表に示す.

表2: 実験画像群内に含まれる状態変化の内訳
状態変化枚数
A(赤→緑)36
B(緑→赤)16
C(緑→消灯)13
D(消灯→緑)5
E(消灯→赤)7
F(赤→消灯)0

実験方法

テンプレート画像としきい値

まず,差分画像を生成し,信号機を検出するためのテンプレート画像を作成する.

テンプレートマッチングに用いるテンプレート画像は,信号機周辺を切り抜いたものを使用した.具体的には,歩行者用信号機が状態変化A(赤→緑)が発生した際の差分画像を用い,27pix×48pixに調節したもの1枚を使用した.

また,交差点によってカメラから信号機の位置が大きく異なり,画像内に写る信号機の大きさに差が出る.そこで同様のテンプレート画像でサイズ違いのものを3種類用意した.テンプレート画像のサイズは,38pix×67pix,27pix×48pix,14pix×24pixの3種類である.ここで用意したテンプレート画像のサイズは,実験画像群内に写る信号機の最大のサイズ・平均のサイズ・最小のサイズをもとに設定した.サイズ違いのテンプレート画像やテンプレート画像D,Fは状態変化A(赤→緑)が発生した際の差分画像から作成した27pix×48pixの1枚を加工し生成している.そして,この3種類のサイズ全てでテンプレートマッチングを行い,いずれかでしきい値を超えた場合,信号の状態変化が起きたと判定している.

今回の実験では,以下の条件で信号機の状態変化を判定した.

検出結果はわかりやすいように,状態変化ごとに色分けした矩形を差分画像内に表示させている.以下が状態変化と矩形の色分けの対応表である.

表3: 状態変化と矩形の色
状態変化
A(赤→緑)
B(緑→赤)
C(緑→消灯)シアン
D(消灯→緑)
E(消灯→赤)マゼンタ
F(赤→消灯)イエロー

テンプレートマッチングを行う差分画像

今回の実験ではテンプレートマッチングを行う差分画像を2種類用意した.

一つは撮影された画像から生成された差分画像の信号機周辺を切り抜いたもの,もう一つは撮影された画像から生成された差分画像に対し,何も加工を行わないものである.

cutimg.jpg
図9: 信号機周辺を切り抜いた差分画像
img.jpg
図10: 加工を行わない差分画像

差分画像の信号機周辺を切り抜いたものは,しきい値0.00~0.70までを0.10刻みずつ,0.70~1.00まで0.05刻みずつで変化させ,検出率等の計測を行った.差分画像に何も加工を行わないものは,しきい値0.70,0.80,0.90の3種類で検出率等の計測を行った.テンプレート画像は2つとも同じものを用いた.

これらの実験データは検出位置の座標,スコアの値,検出した状態変化等をまとめ,CSVファイルに出力した.

実験結果

集計方法

今回は表3で示した矩形,出力されたCSVファイル,実際の撮影画像のこれらを見比べて,実際に信号機の状態変化が起きた際に正しく検出できているのかを確認した.正しい状態変化を検出ができている例を以下の図11に示す.

TPex1.jpg
図11: 正しい状態変化の検出ができている例

上記の図では信号が赤から緑に変化する際の特徴的なパターンを正しく検出できていることがわかる.次に誤った状態変化を検出した例を以下の図12に示す.

FPex1.jpg
図12: 誤った状態変化を検出した例

上記の図では歩行者を信号状態変化と誤って検出してしまった.次に信号機の状態変化を検出できなかった例を以下の図13に示す.

FNex1.jpg
図13: 信号機の状態変化を検出できなかった例

画像内に赤から緑に変化する際の特徴的なパターンが写っているのがわかるが,矩形が表示されず,検出できなかった.

実験の結果として差分画像上で,信号機の正しい状態変化が検出されたものをTP,何も変化していない状態で何も検出しなかった場合をTN,信号機以外の要因による状態変化の検出や信号機の誤った状態変化を検出してしまったものをFP,信号機の状態変化そのものを検出できなかった場合をFNとして扱う.TP,FPの捉え方として信号機の正しい状態変化そのものを検出できているかどうかでカウントを行う.そのため,TPとFPが混在する場合がある.

以下の図が実際にTPとFPが混在する例である.信号機の正しい状態変化B(緑色の矩形)を検出できているが,その他の信号機とは関係のない部分(シアンの矩形)で誤った判定が行われている.このような結果ではTPとFPを重複してカウントを行った.

TFex1.jpg
図14: TPとFPが混在する結果例

信号機周辺を切り抜いた差分画像での結果

この実験では,しきい値0.00~0.70までを0.10刻みずつ,0.70~1.00まで0.05刻みずつで変化させ,計測を行った.各しきい値でのTP・TN・FP・FNの結果を以下の表に示す.なお,以下の結果は状態変化A~Fすべてを合算した結果である.

表4: 各しきい値でのTP・TN・FP・FNとTPR・FPR
しきい値TPTNFPFNTPR(検出率)[%]FPR(誤検出率)[%]
0.0076011310100.00100.00
0.1076011310100.00100.00
0.2076011310100.00100.00
0.30761911120100.0098.32
0.40762748570100.0075.77
0.50766434880100.0043.15
0.60768692600100.0023.03
0.7075100570198.686.51
0.7570104513692.111.23
0.806910541790.790.09
0.8551105502567.110.00
0.9019105505725.000.00
0.95210550742.630.00
1.00010550760.000.00

加工を行わない差分画像での結果

この実験では,しきい値0.70,0.80,0.90の3種類で計測を行った.各しきい値でのTP・TN・FP・FNの結果を以下の表に示す.なお,以下の結果は状態変化A~Fすべてを合算した結果である.

表4: 各しきい値でのTP・TN・FP・FNとTPR・FPR
しきい値TPTNFPFNTPR(検出率)[%]FPR(誤検出率)[%]
0.7073512587198.6553.41
0.805890922789.232.36
0.901292905318.460.00

考察

本章では, 提案手法に基づいて行った実験に関しての考察述べる.


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS