さて、”
CMOSカメラから画像を入力してディスプレイへ出力15(できた!!!)”でCMOSカメラからの映像をディスプレイに映すことができたので、今度はそのデータを使って、ハードウェアでエッジの検出をしてみようと思う。
YUVを受け取ってRGBに変換してみると言うのも面白いし、考えてみれば、Spartan3Eの掛け算器を一度も使ったことがなかった。エッジ検出の後で一度使ってみたい。
さて、画像のエッジ検出となると、2X2ピクセルを切り取って、縦横斜めを引き算して、一定のスレッショルド値を決めてそれを超えていたらそのドットを明るくする。それ以外のドットは暗くする。このようなアルゴリズムで大丈夫かな?
まず、最初は1ライン分のY(輝度)データを取りながら、横方向の演算をする。2回目以降は横方向の演算もしながら、縦方向、斜め方向の演算も一緒にする。複数の方向からそのビットがエッジだという演算結果が出ても、同様にそのドットを明るくする。つまりORということ。
1ライン分のYデータはBRAMを1ライン分用意して、そこに格納することにする。
この、ボードには切り替えようのスイッチがないので、3秒ごとに正常の白黒画像、エッジ検出画像を切り替えることにする。
- 2009年10月27日 05:26 |
- 画像処理
-
| トラックバック:0
-
| コメント:2
ヨコ差分だけでも、らしい結果になるかも知れませんね。
1フレーム前の画像と引き算して、ピークホールドすると、動きが検出できて面白いですよ。
昔ゴルフの弾道解析やっていたことがあります。
真っ黒な空を白いボールの奇跡が残るんです。雲なんかがノイズになりますけど。
- 2009/10/28(水) 06:49:21 |
- URL |
- shirou #-
- [ 編集 ]
shirouさん、コメントありがとうございます。
>ヨコ差分だけでも、らしい結果になるかも知れませんね。
そうですか。仕事との関係で1ラインバッファリングしたいので、縦横、斜めでやろうと思っています。
>1フレーム前の画像と引き算して、ピークホールドすると、動きが検出できて面白いですよ。
これも面白そうですね。画像関係は目に見えるのでデモするにもよさそうです。DDR2 SDRAMでは、どうやっても一般受けしません。
- 2009/10/28(水) 09:42:55 |
- URL |
- marsee #f1oWVgn2
- [ 編集 ]