計測自動制御学会東北支部 第 231 回研究集会 (2006.10.31)
資料番号 231-4

視覚センサを用いた自律移動ロボットの行動決定
Decision making for an autonomous mobile robot using a visionsensor○山口智充 ∗ ，及川一美 ∗ , 大久保重範 ∗ , 高橋達也 ∗Tomomitsu Yamaguchi∗ , Kazumi Oikawa∗ , Sigenori Okubo∗ , Tatsuya Takahashi∗*山形大学*Yamagata University
キーワード : 自律移動 (autnomous mobile robot)，画像処理 (image processing), 視覚センサ (vision sensor)
連絡先 : 〒 992-8510 山形県米沢市城南 4-3-16 山形大学 工学部 機械システム工学科 大久保研究室
大久保重範，Tel.: (0238)26-3245, E-mail: sokubo@yz.yamagata-u.ac.jp

1.

2.

緒言

使用したPC,およびカメラの概略を,Table1,Table2

本研究ではカメラから画像を取り込み, ホストコンピュータで画像処理を行う事で, 黄色いボールを仕様に示す。

抜き出し, そのデータをロボットに転送すること

Table 1 : Host computer

でロボットにボールを追従, 把持させる研究を行っている。しかし, コストダウンが重視されている現在では,PC のスペックは安価なことが重要である。

CPUDuron 750MHzOS

Linux kernel 2.4.31-Ovl1.8

コンパイラ

gcc version 3.32

そのため本研究では, 比較的性能の低い PC でも動Table 2 : Camera

作する自律移動ロボットの開発を目的としている。
社名クリエイティブメディア株式会社

型番Video BLASTER WEBCAM Plus

ことはロボットを円滑に動かすために必要である。

解像度

320 × 240

そこで今回は 4 近傍ラベリング処理, ラインブロッ

焦点距離15cm〜∞

PC の性能が低い場合, 画像処理の処理速度が早い

クを用いたラベリング処理,ヒストグラムを用いた推定位置算出法の 3 つの処理速度の検定を行い, 今後用いていく手法の選定を行う。

ホストコンピュータとカメラは USB により接続し, カメラより得られた画像はホストコンピュータを用いて画像処理を行い, 目標物の重心位置計算などを行うことができる。今回の目標物は黄色いボールを対象としている。

–1–

3.

Fig.2 のように注目画素が値 1(目標物の色) を持つ

画像処理の流れとき, 注目画素の 4 つの隣接画素 f(m-1,n),f(m-1,n画像処理は Fig.1 に示すように, 画像取得,2 値化,ラベリング, 重心計算の処理を行う。

1),f(m,n-1),f(m+1,n-1)を検索し,ラベルの貼られた画素が存在しないときは, 新しいラベルをつける。
ラベルの貼られた画素が見つかった時は, 連結している画素と見なし, 同じラベルをつける。Fig.3 のように隣接関係にある画素が異なるラベルを付与された場合 (ラベルの衝突), 同じ塊としてラベルを書き換える。またこの時, ラベルの付け替えは補助テーブルを用いて処理速度を向上している。最終的に,最大面積を持つラベルの貼られた塊を抜き出し,重心を求める事でボールの重心を求めることができる。

Fig. 1

4.

Flow chart of image processing

ラベリング

ラベリング処理とは,2 値化された画像内の連結している画素に同じラベル (札) を付与することで複数の領域をグループとして分類する処理のことである。各グループに貼られた「0,1,2・・・」というラベルにより目的とするオブジェクトを識別し, 抽

Fig. 2

Labeling 1出することができる。ラベリング処理にはいくつかの方法があり, 今回は 4 近傍ラベリング手法, ラインブロックを用いたラベリング手法, ヒストグラ
ムを利用した連結成分検出法の 3 つをあげ, 処理速度の比較を行っていく。

4.1

4 近傍ラベリング

4近傍ラベリングは左上から右下に向けて画像をラスター走査 (左上のマス目から次々とその右隣のマス目を見ていく走査) を行って, 注目画素の隣接画素を調べることで,逐次的に画素の塊を調べていく手法である。2 値画像を f, 横方向画素数を m, 縦方向画素数を n とし, 一番左上の画素を f(1,1) とする。

–2–

Fig. 3Collision of label

4.2

ラインブロックを用いたラベリング
手法

この手法は横の画素の塊をブロックとして捉え,上下のブロックの最大値, 最小値の位置関係で繋がりを調べる手法である。
まず, ラインブロックの作成方法について述べる。

2 値画像を f, 横方向画素数を m, 縦方向画素数を n とし,4 近傍と同様に左上の画素 f(1,1) からラスタ走査によって 1 画素を探す。Fig.4 のように注目画素

Fig. 5f(m,n)に1を発見した時,f(m-1,n)を調べ0ならf(m,n)=minLineblock Labeling 2とする。また注目画素が 0 のときは f(m-1,n) を調べ

1 なら f(m-1,n)=max としてラインブロックを作成

4.3

していく。
次に上下のブロックの繋がりの判定法を述べる。
注目ブロックの上にブロックが存在し,Fig.5 のように min1 < max2 かつ max1 > min2 の時, この二つのヒストグラムを用いた連結成分検出法

この手法は 2 値化後の, 黄色の部分だけが抜き出された画像に対して,横方向に黄色の画素がどのくらい含まれているかを調べる。2 値画像を f, 横方向ブロックは連結画素であるとしてラベルをつけて画素数を m, 縦方向画素数を n とする。まず横方向いく。注目ブロックの上に連結していると判定さに 1,2,3・・・n と 1 行ごとに含まれる黄色の画素がいれるブロックが二つある場合 (ラベルの衝突)4 近傍と同様に補助テーブルを用いてラベルを付け替えている。

くつ含まれているかを走査し,Fig.6のようなヒストグラムを作る。縦方向にも同様の走査を行い, 最後にそれぞれの最大画素数の座標を目標物の推定位置と見なす手法である。しかし, この手法は最大画素数を読み取っているだけなので,Fig.7に示すようにノイズに影響されやすいという欠点がある。

Fig. 4

Lineblock Labeling 1

Fig. 6–3–

Histogram 1

Table 3 : Results

Fig. 7

Histogram 25.

処理時間の検定

5.1

サンプル

今回は PC にかかる負荷も考慮し,AM11 時,PM1時,PM3 時,PM5 時,PM7 時の 5 回毎に処理速度を計測しデータを取得した。これはホストコンピュータに用いている PC は本研究室内でサーバーとして用いられており, サーバーの利用が集中する (負1 回目

平均 [msec]

標準偏差A

18.60.756

B

9.76

0.476

C

8.860.351

2 回目

平均 [msec]

標準偏差A

18.60.884

B9.660.479

C

9.100.365

3 回目

平均 [msec]

標準偏差

A

19.2

1.81

B

9.880.746

C

8.860.640

4 回目

平均 [msec]

標準偏差A

19.1

1.11

B

10.00.808

C

9.140.405

5 回目

平均 [msec]

標準偏差A

18.10.544

B

9.56

1.59

C

9.06

0.314

荷のかかる)11時〜の間で処理速度が変わるのではないかということ。また, 日光の量によって取得し5.3

考察た画面内の, 閾値内に入る画素の量が変化すること

t-検定の結果, ヒストグラムを用いた手法とライで, ラベリングを行う量に変化が起こり, 処理速度に変化が現れるのではないかということ,以上二つの仮説から, 日没後 7 時まで 2 時間ごとにデータを取得することにした。また, サンプルは 50 個ずつ取り, 同時間帯のデータ同士で検定を行うことで有意差を求める。計測結果をグラフにしたものを裏面に示す。また,グラフは横軸に回数,縦軸に処理速度

ンブロックラベリング手法は 4 近傍ラベリング手法に比べて平均値に有意な差があることが証明された。また,5 回の計測に渡って, 処理速度の早さの順位に変化はなく,4 近傍ラベリング手法, ラインブロックラベリング手法, ヒストグラムを用いた手法の順に処理速度が早くなっている。このことか
ら時間帯による処理速度の大きな変化は見られなを取っている。

かった。しかしヒストグラムを用いた手法は先に5.2

検定結果述べたように,ノイズに影響されやすい欠点がある

4 近傍ラベリング手法を A, ラインブロックラベことから, ラインブロックが優れていると考えらリング手法を B, ヒストグラムを用いた連結成分検れるため, ラインブロックを用いたラベリング手法

出法を C とし, それぞれの検定結果を Table 3 に示を今後採用していくことにする。

す。

–4–

6.

結言

今回は3つの推定位置算出法の検定を行うことで効率の良い画像処理方法を求めることができた。
今後はカメラの画像から,カメラから見たボールの位置を求め, そこにロボットを追従させるプログラムの改良を行いたいと思っている。現在ロボット
はボールがカメラから斜めの方向にあるとき,ボールが画面の真ん中に来るように旋回し,画面の中央に来た時に前進を行い, 中央からそれると, また中央に来るように旋回を行い,前進旋回を繰り返してボールに向かうプログラムになっているので, 曲線を描く軌跡で一度にボールに向かえるようにしたい。またボールを見失った時の動作が, 旋回によってボールを探すようになっており効率が悪いので,ロボットに乗せられたカメラ自体を回転させることも試みたい。

参考文献
1) 井上誠喜:C 言語で学ぶ実践画像処理, オーム社
雑誌局 (1999)

2) 飯尾淳:Linux による画像処理プログラミング,
オーム社雑誌局 (2000）3) 洒 井 幸 市:デ ジ タ ル 画 像 処 理 入 門,CQ 出 版 社(2002)
4) 内田智史:C 言語によるプログラミング, オーム社雑誌局 (2001)5) 藏前智映:視覚センサを用いた自律移動ロボットの開発,2006 年度山形大学機械システム工学
専攻修士論文 (2006)

6) 若生大輔:視覚による自律移動ロボットのボール把持タスクの実現,2006 年度山形大学工学部卒業論文 (2006)–5–計測結果

Fig. 8Fig. 9Fig. 10

Third experimentFig. 11

Fourth experimentFig. 12Fifth experimentFirst experiment

Second experiment–6–