”
ガボール・フィルタ (Gabor Filter) による白線検出2”の続き。
前回は、カーネルサイズを 9 にしてガボール・フィルタをかけて、カーネルのパラメータをを取得した。今回は、取得したカーネルのパラメータを使って、Vivado HLS のHLS ビデオライブラリを使用して、ハードウェア化を試みた。
まずは、カーネルのパラメータを加工して、int で扱える形にする。
カーネルのパラメータを256倍して、四捨五入を行った。
左白線検出用パラメータを示す。

この値は256倍してあるので、カーネルを画像データにかけた後で、1/256倍する必要がある。
次に右白線検出用パラメータを示す。

このパラメータをカーネルとして、hls::Filter2D() で2次元フィルタをかけるわけなのだが、今回は、1/256 することもあり、少なくとも16ビットSingedで演算したい。
画像の型情報のHLS_8UC3 と HLS_8UC1 があるのはわかっているのだが、HLS_16UC3 と HLS_16UC1 があるのかどうかの情報が全くない。。。
試しに、HLS_16UC3 と HLS_16UC1 を使ってやってみたのだが、エラーになってしまう。

もうすこしやってみてダメだったら、自分で hls::LineBuffer と hls::Window を使用して、ガボール・フィルタを実装しようと思う。
- 2016年07月21日 05:25 |
- 白線検出
-
| トラックバック:0
-
| コメント:0