NV21 to IYUV (xFnv212iyuv)

xFnv212iyuv 関数は、NV21 画像フォーマットを IYUV 画像フォーマットに変換します。入力はインターリーブされた VU プレーンのみであり、出力は U および V プレーンです。Y プレーンはどちらのフォーマットでも同じなので、Y プレーンを処理する必要はありません。U 値および V 値は、ピクセル インターリーブからプレーン インターリーブに変換されます。

API 構文

template<int SRC_T, int UV_T, int ROWS, int COLS, int NPC=1,int NPC_UV=1>
void xFnv212iyuv(xF::Mat<SRC_T, ROWS, COLS, NPC> & src_y, xF::Mat<UV_T, ROWS/2, COLS/2, NPC_UV> & src_uv,xF::Mat<SRC_T, ROWS, COLS, NPC> & _y_image, xF::Mat<SRC_T, ROWS/4, COLS, NPC> & _u_image,xF::Mat<SRC_T, ROWS/4, COLS, NPC> & _v_image)

パラメーターの説明

次の表に、テンプレートと関数パラメーターを説明します。

表 1. xFnv212iyuv 関数パラメーターの説明
パラメーター 説明
SRC_T 入力ピクセル タイプ。8 ビット、符号なし、1 チャネル (XF_8UC1) のみサポート。
UV_T 入力ピクセル タイプ。8 ビット、符号なし、2 チャネル (XF_8UC2) のみサポート。
ROWS 入力および出力画像の最大高さ (8 の倍数で指定)
COLS 入力および出力画像の最大幅 (8 の倍数で指定)
NPC サイクルごとに処理されるピクセル数。1 ピクセルの場合は XF_NPPC1、8 ピクセルの場合は XF_NPPC8。
NPC_UV サイクルごとに処理される UV 画像ピクセル数。1 ピクセルの操作の場合は XF_NPPC1、4 ピクセルの操作の場合は XF_NPPC4。
src_y サイズ (ROWS, COLS) の入力 Y プレーン。
src_uv サイズ (ROWS/2, COLS/2) の入力 UV プレーン。
_y_image サイズ (ROWS, COLS) 出力 Y プレーン。
_u_image サイズ (ROWS/4, COLS) の出力 U プレーン。
_v_image サイズ (ROWS/4, COLS) の出力 V プレーン。

リソース使用量

次の表に、Xilinx Xczu9eg-ffvb1156-1-i-es1 FPGA で HD (1080x1920) 画像を処理するために、Vivado HLS 2017.1 ツールを使用して生成された異なる設定での NV21 to IYUV のリソース使用量を示します。

表 2. xFnv212iyuv 関数のリソース使用量のサマリ
動作モード

動作周波数

(MHz)

使用量の見積もり
BRAM_18K DSP_48E FF LUT CLB
1 ピクセル 300 0 1 1377 730 219
8 ピクセル 150 0 1 1975 1012 279

パフォーマンス見積もり

次の表に、Xilinx Xczu9eg-ffvb1156-1-i-es1 でグレースケール HD (1080x1920) 画像を処理するために、Vivado HLS 2017.1 ツールで生成された異なる設定での NV21 to RGBA のパフォーマンス見積もりを示します。

表 3. xFnv212iyuv 関数のパフォーマンス見積もりのサマリ
動作モード レイテンシ見積もり
最大レイテンシ (ms)
1 ピクセル動作 (300 MHz) 6.9
8 ピクセル動作 (150 MHz) 1.7