FC2カウンター FPGAの部屋 白線追従走行用畳み込みニューラルネットワークの製作1(概要)

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

白線追従走行用畳み込みニューラルネットワークの製作1(概要)

MNIST手書き数字認識用ニューラルネットワークが完成したので、今度は本命のミニ・ロボットカーを白線間を走らせるための白線追従走行用畳み込みニューラルネットワーク(白線追従走行用CNN)を製作しよう。

白線追従走行用CNNを作るにあたって、最初は直線の白線間を追従走行するための畳み込みニューラルネットワーク(CNN)を作ろうと思う。具体的には、多少外れた位置にいても、直線の白線間に戻れるCNNを学習させようと思っている。まずは小手調べとして、直線を走行するためだけのCNNを学習させてみよう。とは言っても外れた場合も戻ってくるように異常状態を考えるといくらでもありそうだ。しかし、ある程度のシチュエーションで白線間に戻れるようにすれば良いかと思うので、そうしようと思う。白線が全く見えない状況で探索する必要は無いということだ。

具体的には、Zybot のカメラで撮影した写真を使って、どの程度の画像サイズでやってみるかを検討してみよう。
カメラで撮影した白線の様子を示す。サムネイルを示すが、真っ直ぐ、右旋回が必要、左旋回が必要な画像に分けてある。
wlt_cnn_5_170723.jpg

画像サイズは 800 x 600 ピクセルだ。なお、白線は塗装コンパネの上に白線を引いてある。すぐに撤去できるようにするためのアイデアなのだが、黄色は結構明るい色なので、心配だ。
これをPaint.net を使用して、試しに加工してみることにした。
wlt_cnn_1_170723.jpg

まずは、20分の1 に縮小してみた。サイズは、40 x 30 だ。
wlt_cnn_2_170723.jpg

白線の引かれている下 1/3 を切り取ってみよう。(画像サイズは 40 x 10 ピクセル)
wlt_cnn_3_170723.jpg

そして、これを白黒画像にする。
wlt_cnn_4_170723.jpg

これで 40 x 10 ピクセルの白線の画像ができた。これでデータセットを作って、学習させてみよう。とりあえず、30枚しかないので、状況を見て、1~数ピクセルを x または y 方向にずらした画像を追加してみよう。あまり画像を回転をすると、曲がらなければならない画像と一致してしまうかもしれない?なかなか難しそうだ。。。
  1. 2017年07月23日 11:19 |
  2. DNN
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog19.fc2.com/tb.php/3862-af73ea71
この記事にトラックバックする(FC2ブログユーザー)