”
Genasys ZU で Adam Taylor さんの”High Performance Imaging”をやってみる3(Vivado 2019.2 編その2)”の続き。
”
High Performance Imaging”の Vivado 2019.1 プロジェクトは 2019.2 に変換することができなかった。最初から構築して見る方法もあるが、とりあえずは 2019.1 のままで使用しよう。Vivado 2019.1 のプロジェクトに今までいろいろと実装してきたフィルタを実装したい。最初にラプラシアン・フィルタを実装してみよう。
ラプラシアン・フィルタを入れる場所だが、カメラからの MIPI 信号をを受信して、Sensor Demosaic IP に入ってベイヤパターンを RBG 信号に変換後にガンマ補正をする Gamma LUT IP に入るが、その出力にラプラシアン・フィルタを入れようと思う。下の図の Gamma LUT の m_axis_video の出力に入れよう。

さて、画像のフォーマットだが、Gamma LUT IP のパラメータを見ると、Sample per Clock が 1 クロックで、 Maximum Data Width が 10 ビットになっている。

”
Gamma LUT v1.0 LogiCORE IP Product Guide PG285 December 6, 2019”の 11 , 12 ページの”Video Data”を見ると画像データのフォーマットが分かる。
12 ページの Figure 2-2: Dual Pixels per Clock, 10 bits per Component Mapping for RGB を引用する。

これは Sample per Clock が 2 クロックで、 Maximum Data Width が 10 ビットの場合なので、Sample per Clock が 1 クロックで、 Maximum Data Width が 10 ビットの場合は、AXI4-Stream のデータ幅は 32 ビットでその内の [29:20] が Red , [19:10] が Blue, [9:0] が Green となる。 [31:30] は 0 パッディングだ。
”
Gamma LUT v1.0 LogiCORE IP Product Guide PG285 December 6, 2019”の 16 ページの VIDEO_FORMAT (0x0020) Register を引用する。
VIDEO_FORMAT (0x0020) Register
This register specifies the video format of the AXI4-Stream Video data.
• 0x0 RGB video format
• 0x1 YUV 4:4:4 video format
RGB と YUV の設定があるが、SDK の helloworld.c の XV_gamma_lut_Set_HwReg_video_format() で 0 を入れているので、RGB 確定だ。

AXI4-Stream の画像データは 32 ビットでその内の [29:20] が Red , [19:10] が Blue, [9:0] が Green となる。 [31:30] は 0 パッディングということがわかったので、このデータ構造に合わせて、ラプラシアン・フィルタのデータ構造を作っていく。
- 2020年08月25日 04:15 |
- Genesys_ZU
-
| トラックバック:0
-
| コメント:0