2017年5月27日土曜日

Udacity自動運転コースのすゝめ

Term1終わったので感想をまとめます。

はじめに


大体のことはこちらに書いてありますので、各プロジェクトの難しいところだけまとめます。

Project 1&4: レーン検知もろすぎる問題


  • Project 1ではハフ変換やキャニーエッジ検知
  • Project 4ではSobelやwarp変換や曲線近似

などなど実装しましたが、上記動画の通りです。
白線以外のエッジを見てしまったり、
林道ではRegion of interest (注目領域)の決定が難しかったり、
この作り込みは相当大変(というかやりたくn...)

Project 3: ジグザグしすぎ問題


冒頭の動画はかなり極端な例ですが、どれだけdata augmentationをしても層を増やしてもこのジグザグはなくなりません。これは時系列処理をせず入力画像をCNNに投げてる構造が原因です。どうやってジグザグなくそうか、という課題は未だ未解決です。

Project 2 (標識認識): 画像暗いと認識できない問題


LeNetという割と古いCNN使っても91.3%とか高精度出ちゃいますが、暗い画像が難しいです。
が、優秀な学生は99%とか出してるので解決策はありそうです(要勉強)
alt text


Project 5 (車検知): 検知だけでは精度低い問題

冒頭動画の通り、SVMの検知だけだと半分も捉えられていない、というイメージです。
Trackingとかシコシコ実装しても良いんですけど、
YOLOv2で下記動画の通りなので、これで良いじゃん!と思ってしまうこの頃。

おわりに

以上、Term1の大まかな感想でした。
Project 2と5の問題は世間的に解決済みですが、

  • レーン検知の精度をどう上げるか (Project 1&4)
  • End-to-end learningのジグザグ解消 (Project 3)

の二つは個人的にかなりムズいと思いますし、
だからこそこの課題をudacityは提供したのかな、とか感じました。

Term 2ではレーダー、ライダーの扱い方やってますので、またいずれ。
おわり。