以前は、OpenCV のHoughLine 変換を使って、道路の白線の検出をしていたが、今回はガボール・フィルタ (Gabor Filter) を使用して白線を検出してみようと思う。
ガボール・フィルタは
このサイトによるとガウス関数と正弦波の積だそうだ。
画像処理 (2) ガボール・フィルタに詳しく書いてある。
ガボール・フィルタのサンプルコードは
このサイトに載っていたので、そっくりそのままVivado HLS のテストベンチとして動作させたら動いた。
画像は自分で撮影した道路の写真にガボール・フィルタをかけてみた。
まずはVivado HLS のプロジェクトを示す。現在、C シミュレーションを行っている最中だ。

ガボール・フィルタを使うと左側の白線と右側の白線の区別ができる。
Theta を47度くらいにして左側の白線だけ浮き上がらせている。

次は、Theta を143度くらいにして、右側の白線だけを浮き上がらせている。

車のカメラから見たときに白線は決まった角度にあると思うので、ガボール・フィルタで白線の角度でフィルタを行うと、目的の白線だけ抽出できるという目論見である。教えてくれたT先生ありがとうございます。
大体白線がありそうな場所、角度のガボール・フィルタでサーチして白線の位置を検出することになると思う。画像の縦2点で検出して角度を検出できそうだ。
道路がどっちに曲がっているのか?を検出できそうなところが良いと思う。
- 2016年07月17日 05:22 |
- 白線検出
-
| トラックバック:0
-
| コメント:0