FC2カウンター FPGAの部屋 RGB 24 ビットの AXI4-Stream データ入出力対応のメディアン・フィルタを Vitis HLS 2023.1 で作成する1
fc2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

RGB 24 ビットの AXI4-Stream データ入出力対応のメディアン・フィルタを Vitis HLS 2023.1 で作成する1

メディアン・フィルタを ZUBoard 1CG の PYNQ v3.0.1 で使用するために Vitis HLS 2023.1 で RGB 24 ビットの AXI4-Stream データ入出力対応のメディアン・フィルタを Vitis HLS 2023.1 で作成した。

Vitis HLS 2023.1 で median_axis_RGB24 プロジェクトを作成した。
part は xczu1cg-sbva484-1-e を指定した。
zub1cg_pynq_138_230812.png

ソースコードとテストベンチ・コードは、”RGB 24 ビット・データ入出力対応のメディアン・フィルタを Vitis HLS 2021.2 で作成する1”のファイルを使用した。

今回のテストベンチ・コードでは OpenCV ライブラリを使用している。
Vitis HLS 2021.1 には内蔵された OpenCV は無いので、別にインストールした OpenCV を指定する。
Vitis HLS の Project メニューから Project Settings... を選択して、Project Settings ダイアログを開いた。
Simulation タブを開いて、median_axis_RGB24_tb.cpp の CFLAGS に

-I/usr/local/include

を設定した。
Linker Flags に

-L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_imgproc

を設定した。
zub1cg_pynq_139_230812.png

更に、 Synthesis をクリックして、 Top Function に median_axis_RGB24 を指定した。
zub1cg_pynq_140_230812.png

C シミュレーションを行った。結果を示す。
zub1cg_pynq_141_230812.png

median_axis_RGB24/solution1/csim/build ディレクトリを示す。
median.jpg と org.jpg が生成されている。
zub1cg_pynq_142_230812.png

org.jpg は median_axis_RGB24 の col_size 変数に ORG_IMGwAxiDma を指定した時の出力となる。つまり元画像と同じ画像ファイルであるはずだ。
org.jpg を示す。ノイズが拡散されているのが分かると思う。
zub1cg_pynq_143_230812.jpg

ノイズが拡散された元画像に 3 x 3 のメディアン・フィルタをかけた画像が median.jpg となる。
median.jpg を示す。拡散されたノイズが取れて、綺麗な画像になっていることが分かる。
zub1cg_pynq_144_230812.jpg
  1. 2023年08月12日 11:17 |
  2. ZUBoard
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/6011-b33d6678
この記事にトラックバックする(FC2ブログユーザー)