近年のロボット技術の向上に伴い, 私たちの生活の中でロボットを目にする機会 が増加した. このことにより家庭用ロボットなどの研究が進められ, 適切に行動可 能であることが必要不可欠となった. そのなかで実環境下でロボットを自立走行させる技術チャレンジである「つく ばチャレンジ」が毎年茨城県つくば市で開催されている. この技術チャレンジに参 加するために, 移動ロボットのための自立走行システムを開発する. つくばチャレンジは 2007 年からつくば市で開催されている. 遊歩道がある市街 地や公園など人々が生活する空間を用いた実環境の中で, 移動ロボットを自立走行 させる技術チャレンジである. 参加者それぞれが開発や実験を行い, 結果や経験を 共有することで, 現在のロボット技術について一般の人々に理解してもらうことを 目標としている. 例年, つくばチャレンジでは全参加チームが取り組むこととなっている必須課題 と, 参加チームそれぞれが任意で選択して取り組む選択課題が用意されており, 昨 年行われたつくばチャレンジ 2021 でも同様に必須課題と選択課題が用意された. 必須課題では以下図 1 内に示されている約 2.5km の自律走行である. この必須課 題は参加全チームが必須となっている. 選択課題は様々な物が有り, つくば市役所 ないを事前データを持ちいらずに走行させる「事前データなし」走行, 公園内に用 意されたチェックポイントを通過し, 公園内に用意された看板を迂回して走行を行 う「チェックポイント通過と経路封鎖迂回」, 公園内に設置されているマネキンを 検出する「探索対象発見」, 最後が本研究の課題としているコース内の交差点にお いて信号機の確認を行い, 横断する「信号認識横断」である. 本研究では最後の選 択課題「信号認識横断」課題の達成を目標としている. この信号認識横断は以下に示すつくばチャレンジのコースの図 1 内にある信号 のマークがある箇所で用いられる.
例年つくばチャレンジで物体認識課題に取り組んでいるチームの多くが深層学 習を用いた手法で取り組んでいる. この深層学習を用いた手法ではより高精度で物体認識を行う事が出来る一面, よ り多くの計算コストがかかってしまう.また,深層学習を用いる際には高性能なGPU を搭載したコンピュータを必要とする. 今後様々なロボットに搭載する際に汎用性 が低くなり, 今後のロボット技術の発展への繋がりも低下してしまう. また, 深層学 習には多くの画像を必要とし, 多くの労力が必要となる. また, つくばチャレンジで は実験走行を行う回数が指定されており, 研究に用いる画像の収集は実験走行内で 行うため, できるだけ少ない画像枚数での検出を行いたい. そこで本研究では, 深層学習を用いず, 単純な画像処理のみを用いて物体認識を 行うことで計算コストの低下と様々なロボットへの汎用性を高くすることを目的 としている. また, つくばチャレンジ内においてリアルタイム検出が可能とし, 選 択課題である「信号認識横断」の達成を目標としている.
本研究では信号の最も大きな特徴であると言うことが出来る色の情報を用いた 信号機の検出を行う. この色情報を用いる上でつくばチャレンジの選択課題である 信号認識横断の課題達成を目標としているため, 屋外での信号検出が必要となる. この際, 太陽光などといった環境光による色変換の影響を受けやすいため, 環境光 による影響を受けにくい HSV 表色系を用いる. この HSV 表色系の中でも環境光の 影響を受けにくい色相を用いる. ここで本研究では色相を用いたヒストグラムに よって検出することにした. 本手法では信号機の青, 赤といった色を信号機から抽出し, 抽出した領域の画像 に対してそれぞれ色相ヒストグラムを作成し, 比較対象としたヒストグラムとの差 分を用いて信号の判定を行う.
今回色抽出に用いるのはHSV表色系である.このHSV表色系とは色相(Hue),彩度(Saturation),明度(Value)の3つの組み合わせにより色を表現する手法である.
Hue | Saturation | Value | |
青信号 | 80~100 | 110~255 | 0~255 |
赤信号 | 170~179 | 110~255 | 0~255 |
まず最初に本実験で用いる画像はつくばチャレンジ2021の実験走行内で撮影された画像である.この用いる画像内で歩行者用信号機は画像内の上部1/3,左部2/3に表示されているため,実行範囲をこの範囲に狭めることで多少ではあるが,実行時間の短縮を図ることが出来るため,範囲の縮小を行う.
ラベリング処理とは2値画像において連結してる領域に番号を付与する作業のことである.このラベルによって2値画像における白の領域の分類を行うことが出来る.
処理の手順について大まかに説明を行う.実行画像全体の全ての画素にラベル番号0を付与し,画像全体の初期化を行う.その後,画像の左上から右下へ向けてラスタスキャンを行い,白の画素を発見し次第ラベル番号を0から1へ変更する.スキャンを続け,再度白の画素が出現した際にその画素から見て上, 左, 左上, 右上の 4 つの画素を確認し, 4 つの画素の中に「0」以外のラベルが付与され ていない場合, そこまでにに付与していたラベル番号に 1 を足した値を付与する. 4 つの画素に「0」以外のラベル番号がある場合, そのラベル番号を付与する. この際, 4 つの画素の中に複数のラベル番号が存在していた場合, 一番小さいラベル番号を 付与する. また, この際にラベル番号が大きい値をラベル番号が小さい値と統合す 処理を記憶する.ラベリング最中にラベル番号が大きい値をラベル番号が小さい値と統合する処理を記憶していたため, ラ ベル番号の書き換えを行う. 図 9 にある青枠内のラベル番号「3」を領域内で一番 小さいラベル番号である「1」に書き換える.
ラベリング処理を行った後に歩行者用信号の候補領域の絞り込みを行う.先ほど行ったラベリング処理の後にある一定以上の大きさ以上の物を信号の候補領域であると見なした. 信号の候補領域の選定を行った後の2値画像を以下に示す.
#ref(): File not found: "zikkougazou.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
#ref(): File not found: "afterlabeling.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
今回信号の判定に色相ヒストグラムを用いた.この色相ヒストグラムはHSV表色系における色相(Hue)を用いて作成したヒストグラムのことである.この色相(Hue)はHSV表色系の中でも環境光の影響を受けにくいという点で本研究での使用を決定した.
作成手順について以下で説明を行う. 以下に示す信号候補領域の例に対して色相ヒストグラムの作成を行う.
色相ヒストグラムの作成手順は以下の通りである. 1. 画像全体を RGB 表色系から HSV 表色系に変換する 2. 画像に対して左上から右下にラスタスキャンする 3. スキャンした際に色相 (Hue) の値を確認し, カウントしていく. 4. カウントした数に応じてヒストグラムを作成する.
以上の手順を用いて作成した色相ヒストグラムの例を以下に示す.
#ref(): File not found: "huehistgram_red.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
この色相ヒストグラム内で横軸は色相(Hue),縦軸は出現頻度(回)である.
灯火状態の判定を行う際に,比較対象となる信号の画像を赤信号,青信号それぞれ午前5枚,午後5枚,計10枚の信号機画像のヒストグラムを平均し,比較対象のヒストグラムとした. この作成した比較対象とするヒストグラムを以下に示す.
#ref(): File not found: "averagehistgram_red.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
#ref(): File not found: "averagehistgram_blue.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
このヒストグラムと実行したいヒストグラムの比較を行う. 方法は2つのヒストグラムの色相に対しての出現回数について差を取り,この差を全て足した後の値が一定の閾値以下で信号であると判定する. 閾値を以下に示す.
閾値(θ) | |
青信号 | 3.5 |
赤信号 | 3.5 |
以下に示すようなつくばチャレンジ2021の実験走行内にて撮影された信号が含まれている画像を赤信号587枚,青信号144枚の計731枚に対して実験を行った.
#ref(): File not found: "dataset.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
また,以下に示すようなつくばチャレンジ2021の実験走行にて撮影された画像からランダムに信号機を含まない画像を切り取り,誤検出判定の実験に用いた.この誤検出判定に用いた画像は赤信号,青信号共に443枚に対して実験を行った.
#ref(): File not found: "notsignaldataset.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
実験結果は以下の通りである.
実行枚数 | 検出枚数 | 未検出枚数 | 検出率 | 誤検出率 | 実行時間 | |
青信号 | 144枚 | 137枚 | 7枚 | 95.139% | 0.00% | 10.586ms |
赤信号 | 587枚 | 557枚 | 21枚 | 94.889% | 0.451% | 9.933ms |
本研究いおいて未検出及び,誤検出と判定されたパターンの紹介と今後の課題について述べる.
未検出になった例として2つのパターンに分けることができた.
1つめの例は信号機に相応している車や停止線を越えて呈ししてしまった車が重なってしまった場合などに未検出となった.
2つめの例は太陽光が信号機に当たってしまい,日明飛びしてしまっていることによる未検出である.ある程度の明るさまでであれば信号機であると判定することが出来たが,ほぼ白に近い色になってしまっている信号機については未検出となってしまった.この光飛びしてしまった画像については実験走行内の午後3時頃に撮影された画像であり,西日が当たった事による光飛びであると考えられる.つくばチャレンジの本走行の時間内において西日が当たってしまうことはないと考えられるため,本走行内でこのような未検出は発生しにくいと考えられる. 未検出画像について以下に示す.
#ref(): File not found: "mikennsyutu.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
誤検出となった例を紹介する.なお,本研究内で誤検出判定してしまったのは赤信号のみであったため,赤信号の誤検出例のみを紹介する.
赤信号と誤検出した画像は実行した全443枚中2枚であった.この2枚はどちらも車のテールランプに反応した物である.
#ref(): File not found: "gokennsyutu.png" at page "つくばチャレンジに向けた色相ヒストグラムを用いた歩行者用信号認識手法の提案"
本研究では色の情報を用いた信号機の認識を行っているため,このような車のテールランプは赤信号の色ととても類似していることから誤検出につながったと考えられる.. こ の交差点は駅にも近く, 車通りが多い交差点がコース内の選択課題箇所となってい るため, 車の横断は必ず発生する.
このような誤検出はロボットを走行させる上で事故につながるあってはならな い誤検出である. この誤検出においても比較対象となるヒストグラムの枚数を増 やし, 精度をあげることで誤検出の減少につながるのではないかと考えている.
本研究ではつくばチャレンジに向けた色相ヒストグラム, 単純な画像処理や計算 のみを用いて歩行者用信号機を認識する手法の提案を行った. 古典的な色画像処理のみを用いることでロボットへ高精度 GPU の搭載の必要が 無く, また学習時間の短縮や画像収集の時間短縮へとつながる. 色抽出を用いて画 像内の信号領域の候補の選定を行い, 選定した候補に対して色相ヒストグラムの作 成を行い, 色相ヒストグラム同士で比較し検出した. 実験結果として赤信号, 青信 号共に実行速度は満足できる物であったが, 検出率がどちらも 95%前後となってし まった. 今後の課題として検出率の向上を挙げることが出来る. 比較対象として作成した ヒストグラムは信号機の画像 10 枚のヒストグラムを平均して作成した. この画像 枚数を増加させ, 検出率の向上に努めたい. また, 本研究の目的でもあるつくばチャ レンジにおける「信号認識横断」課題の達成にも努めたい.