2.13.5. V4L2_META_FMT_RPI_BE_CFG

2.13.5.1. Raspberry Pi PiSP 後端配置格式

Raspberry Pi PiSP 後端記憶體到記憶體影像訊號處理器透過使用者空間配置,透過使用 v4l2_meta_format 介面,向 pispbe-config 輸出影片裝置節點提供配置引數緩衝區。

PiSP 後端以瓦片方式處理影像,其配置需要透過填充 pisp_be_config.h 標頭檔案中定義的 pisp_be_tiles_config 的成員來指定兩組不同的引數。

Raspberry Pi PiSP 技術規範 提供了 ISP 後端配置和程式設計模型的詳細描述。

2.13.5.1.1. 全域性配置資料

全域性配置資料描述了特定影像中的畫素如何被處理,因此在影像的所有瓦片中共享。 例如,LSC(鏡頭陰影校正)或降噪引數在同一幀的所有瓦片中都是相同的。

全域性配置資料透過填充 pisp_be_config 的成員傳遞到 ISP。

2.13.5.1.2. 瓦片引數

由於 ISP 以瓦片方式處理影像,因此每組瓦片引數描述了影像中的單個瓦片將如何被處理。 單個瓦片引數集由 160 位元組的資料組成,並且要處理一批瓦片,需要幾組瓦片引數。

瓦片引數透過填充 pisp_tile 的成員和 pisp_be_tiles_confignum_tiles 欄位傳遞到 ISP。

2.13.5.2. Raspberry Pi PiSP 後端 uAPI 資料型別

本節介紹 Raspberry Pi PiSP 後端暴露給使用者空間的資料型別。 本節僅供參考,有關每個欄位的詳細描述,請參閱Raspberry Pi PiSP 技術規範

struct pisp_be_global_config

PiSP 全域性啟用點陣圖

定義:

struct pisp_be_global_config {
    __u32 bayer_enables;
    __u32 rgb_enables;
    __u8 bayer_order;
    __u8 pad[3];
};

成員

bayer_enables

Bayer 輸入啟用標誌

rgb_enables

RGB 輸出啟用標誌

bayer_order

Bayer 輸入格式排序

pad

填充位元組

struct pisp_be_input_buffer_config

PiSP 後端輸入緩衝區

定義:

struct pisp_be_input_buffer_config {
    __u32 addr[3][2];
};

成員

addr

輸入緩衝區地址

struct pisp_be_dpc_config

PiSP 後端 DPC 配置

定義:

struct pisp_be_dpc_config {
    __u8 coeff_level;
    __u8 coeff_range;
    __u8 pad;
#define PISP_BE_DPC_FLAG_FOLDBACK 1;
    __u8 flags;
};

成員

coeff_level

最暗相鄰畫素值的係數

coeff_range

此 Bayer 通道的畫素範圍的係數

pad

填充位元組

flags

DPC 配置標誌

描述

缺陷畫素校正配置

struct pisp_be_geq_config

PiSP 後端 GEQ 配置

定義:

struct pisp_be_geq_config {
    __u16 offset;
#define PISP_BE_GEQ_SHARPER (1U << 15);
#define PISP_BE_GEQ_SLOPE ((1 << 10) - 1);
    __u16 slope_sharper;
    __u16 min;
    __u16 max;
};

成員

offset

閾值計算的偏移值

slope_sharper

斜率/銳化器配置

min

閾值可能具有的最小值

max

閾值可能具有的最大值

描述

綠色均衡配置

struct pisp_be_tdn_input_buffer_config

PiSP 後端 TDN 輸入緩衝區

定義:

struct pisp_be_tdn_input_buffer_config {
    __u32 addr[2];
};

成員

addr

TDN 輸入緩衝區地址

struct pisp_be_tdn_config

PiSP 後端 TDN 配置

定義:

struct pisp_be_tdn_config {
    __u16 black_level;
    __u16 ratio;
    __u16 noise_constant;
    __u16 noise_slope;
    __u16 threshold;
    __u8 reset;
    __u8 pad;
};

成員

black_level

從畫素中減去的黑電平值

ratio

LTA 輸入幀的乘數

noise_constant

噪聲估計中使用的恆定偏移值

noise_slope

噪聲估計乘數

threshold

TDN 操作的閾值

reset

停用 TDN 操作

pad

填充位元組

描述

時間降噪配置

struct pisp_be_tdn_output_buffer_config

PiSP 後端 TDN 輸出緩衝區

定義:

struct pisp_be_tdn_output_buffer_config {
    __u32 addr[2];
};

成員

addr

TDN 輸出緩衝區地址

struct pisp_be_sdn_config

PiSP 後端 SDN 配置

定義:

struct pisp_be_sdn_config {
    __u16 black_level;
    __u8 leakage;
    __u8 pad;
    __u16 noise_constant;
    __u16 noise_slope;
    __u16 noise_constant2;
    __u16 noise_slope2;
};

成員

black_level

Black level subtracted from pixel for noise estimation

leakage

Proportion of the original undenoised value to mix in denoised output

pad

填充位元組

noise_constant

Noise constant used for noise estimation

noise_slope

Noise slope value used for noise estimation

noise_constant2

Second noise constant used for noise estimation

noise_slope2

Second slope value used for noise estimation

描述

空間降噪配置

struct pisp_be_stitch_input_buffer_config

PiSP 後端 Stitch 輸入

定義:

struct pisp_be_stitch_input_buffer_config {
    __u32 addr[2];
};

成員

addr

Stitch 輸入緩衝區地址

struct pisp_be_stitch_config

PiSP 後端 Stitch 配置

定義:

struct pisp_be_stitch_config {
    __u16 threshold_lo;
    __u8 threshold_diff_power;
    __u8 pad;
    __u16 exposure_ratio;
    __u8 motion_threshold_256;
    __u8 motion_threshold_recip;
};

成員

threshold_lo

低閾值

threshold_diff_power

高低閾值差

pad

填充位元組

exposure_ratio

將長曝光畫素轉換為短曝光畫素的乘數

motion_threshold_256

高於該運動閾值時使用短曝光畫素

motion_threshold_recip

motion_threshold_256 值的倒數

描述

拼接塊配置

struct pisp_be_stitch_output_buffer_config

PiSP 後端 Stitch 輸出

定義:

struct pisp_be_stitch_output_buffer_config {
    __u32 addr[2];
};

成員

addr

Stitch 輸入緩衝區地址

struct pisp_be_cdn_config

PiSP 後端 CDN 配置

定義:

struct pisp_be_cdn_config {
    __u16 thresh;
    __u8 iir_strength;
    __u8 g_adjust;
};

成員

thresh

用於噪聲估計的常數

iir_strength

濾波器 IIR 部分的相對強度

g_adjust

分配給 G 通道的更改比例

描述

彩色降噪配置

struct pisp_be_lsc_config

PiSP 後端 LSC 配置

定義:

struct pisp_be_lsc_config {
    __u16 grid_step_x;
    __u16 grid_step_y;
#define PISP_BE_LSC_LUT_SIZE    (PISP_BE_LSC_GRID_SIZE + 1);
    __u32 lut_packed[PISP_BE_LSC_LUT_SIZE][PISP_BE_LSC_LUT_SIZE];
};

成員

grid_step_x

單元格寬度大小的倒數

grid_step_y

單元格高度大小的倒數

lut_packed

每個 LSC 網格聯合編碼的 RGB 增益

描述

鏡頭陰影校正配置

struct pisp_be_lsc_extra

PiSP 後端 LSC 額外配置

定義:

struct pisp_be_lsc_extra {
    __u16 offset_x;
    __u16 offset_y;
};

成員

offset_x

此瓦片在 LSC 表中的水平偏移

offset_y

此瓦片在 LSC 表中的垂直偏移

struct pisp_be_cac_config

PiSP 後端 CAC 配置

定義:

struct pisp_be_cac_config {
    __u16 grid_step_x;
    __u16 grid_step_y;
#define PISP_BE_CAC_LUT_SIZE            (PISP_BE_CAC_GRID_SIZE + 1);
    __s8 lut[PISP_BE_CAC_LUT_SIZE][PISP_BE_CAC_LUT_SIZE][2][2];
};

成員

grid_step_x

單元格寬度大小的倒數

grid_step_y

單元格高度大小的倒數

lut

CAC 網格的畫素偏移

描述

色差校正配置

struct pisp_be_cac_extra

PiSP 後端 CAC 額外配置

定義:

struct pisp_be_cac_extra {
    __u16 offset_x;
    __u16 offset_y;
};

成員

offset_x

此瓦片在 CAC 表中的水平偏移

offset_y

此瓦片在 CAC 表中的水平偏移

struct pisp_be_debin_config

PiSP 後端 Debin 配置

定義:

struct pisp_be_debin_config {
    __s8 coeffs[PISP_BE_DEBIN_NUM_COEFFS];
    __s8 h_enable;
    __s8 v_enable;
    __s8 pad[2];
};

成員

coeffs

反分箱的濾波器係數

h_enable

啟用水平反分箱

v_enable

啟用垂直反分箱

pad

填充位元組

描述

反分箱配置

struct pisp_be_tonemap_config

PiSP 後端 Tonemap 配置

定義:

struct pisp_be_tonemap_config {
    __u16 detail_constant;
    __u16 detail_slope;
    __u16 iir_strength;
    __u16 strength;
    __u32 lut[PISP_BE_TONEMAP_LUT_SIZE];
};

成員

detail_constant

閾值計算的常量值

detail_slope

閾值計算的斜率值

iir_strength

濾波器 IIR 部分的相對強度

strength

強度因子

lut

色調對映曲線的查詢表

描述

色調對映配置

struct pisp_be_demosaic_config

PiSP 後端 Demosaic 配置

定義:

struct pisp_be_demosaic_config {
    __u8 sharper;
    __u8 fc_mode;
    __u8 pad[2];
};

成員

sharper

使用其他 Bayer 通道來提高銳度

fc_mode

內建偽色抑制模式

pad

填充位元組

描述

去馬賽克配置

struct pisp_be_ccm_config

PiSP 後端 CCM 配置

定義:

struct pisp_be_ccm_config {
    __s16 coeffs[9];
    __u8 pad[2];
    __s32 offsets[3];
};

成員

coeffs

矩陣係數

pad

填充位元組

offsets

偏移量三元組

描述

顏色校正矩陣配置

struct pisp_be_sat_control_config

PiSP 後端 SAT 配置

定義:

struct pisp_be_sat_control_config {
    __u8 shift_r;
    __u8 shift_g;
    __u8 shift_b;
    __u8 pad;
};

成員

shift_r

紅色通道的左移

shift_g

綠色通道的左移

shift_b

藍色通道的左移

pad

填充位元組

描述

飽和度控制配置

struct pisp_be_false_colour_config

PiSP 後端 False Colour 配置

定義:

struct pisp_be_false_colour_config {
    __u8 distance;
    __u8 pad[3];
};

成員

distance

相鄰畫素的距離,為 1 或 2

pad

填充位元組

描述

偽色配置

struct pisp_be_sharpen_config

PiSP 後端銳化配置

定義:

struct pisp_be_sharpen_config {
    __s8 kernel0[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
    __s8 pad0[3];
    __s8 kernel1[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
    __s8 pad1[3];
    __s8 kernel2[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
    __s8 pad2[3];
    __s8 kernel3[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
    __s8 pad3[3];
    __s8 kernel4[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
    __s8 pad4[3];
    __u16 threshold_offset0;
    __u16 threshold_slope0;
    __u16 scale0;
    __u16 pad5;
    __u16 threshold_offset1;
    __u16 threshold_slope1;
    __u16 scale1;
    __u16 pad6;
    __u16 threshold_offset2;
    __u16 threshold_slope2;
    __u16 scale2;
    __u16 pad7;
    __u16 threshold_offset3;
    __u16 threshold_slope3;
    __u16 scale3;
    __u16 pad8;
    __u16 threshold_offset4;
    __u16 threshold_slope4;
    __u16 scale4;
    __u16 pad9;
    __u16 positive_strength;
    __u16 positive_pre_limit;
    __u16 positive_func[PISP_BE_SHARPEN_FUNC_NUM_POINTS];
    __u16 positive_limit;
    __u16 negative_strength;
    __u16 negative_pre_limit;
    __u16 negative_func[PISP_BE_SHARPEN_FUNC_NUM_POINTS];
    __u16 negative_limit;
    __u8 enables;
    __u8 white;
    __u8 black;
    __u8 grey;
};

成員

kernel0

濾波器 0 的係數

pad0

填充位元組

kernel1

濾波器 1 的係數

pad1

填充位元組

kernel2

濾波器 2 的係數

pad2

填充位元組

kernel3

濾波器 3 的係數

pad3

填充位元組

kernel4

濾波器 4 的係數

pad4

填充位元組

threshold_offset0

濾波器 0 響應計算的偏移量

threshold_slope0

濾波器 0 響應計算的斜率乘數

scale0

濾波器 0 響應計算的比例因子

pad5

填充位元組

threshold_offset1

濾波器 0 響應計算的偏移量

threshold_slope1

濾波器 0 響應計算的斜率乘數

scale1

濾波器 0 響應計算的比例因子

pad6

填充位元組

threshold_offset2

濾波器 0 響應計算的偏移量

threshold_slope2

濾波器 0 響應計算的斜率乘數

scale2

濾波器 0 響應計算的比例因子

pad7

填充位元組

threshold_offset3

濾波器 0 響應計算的偏移量

threshold_slope3

濾波器 0 響應計算的斜率乘數

scale3

濾波器 0 響應計算的比例因子

pad8

填充位元組

threshold_offset4

濾波器 0 響應計算的偏移量

threshold_slope4

濾波器 0 響應計算的斜率乘數

scale4

濾波器 0 響應計算的比例因子

pad9

填充位元組

positive_strength

縮放正銳化強度的因子

positive_pre_limit

允許的最大正銳化值

positive_func

應用於正銳化響應的增益因子

positive_limit

應用於正銳化的最終增益因子

negative_strength

縮放負銳化強度的因子

negative_pre_limit

允許的最大負銳化值

negative_func

應用於負銳化響應的增益因子

negative_limit

應用於負銳化的最終增益因子

enables

濾波器啟用掩碼

white

白色輸出畫素濾波器掩碼

black

黑色輸出畫素濾波器掩碼

grey

灰色輸出畫素濾波器掩碼

描述

銳化配置

struct pisp_be_sh_fc_combine_config

PiSP 後端銳化和偽色配置

定義:

struct pisp_be_sh_fc_combine_config {
    __u8 y_factor;
    __u8 c1_factor;
    __u8 c2_factor;
    __u8 pad;
};

成員

y_factor

控制變暗畫素的去飽和度量

c1_factor

控制 Cb 通道畫素的亮度量

c2_factor

控制 Cr 通道畫素的亮度量

pad

填充位元組

描述

銳化和偽色配置

struct pisp_be_gamma_config

PiSP 後端 Gamma 配置

定義:

struct pisp_be_gamma_config {
    __u32 lut[PISP_BE_GAMMA_LUT_SIZE];
};

成員

lut

Gamma 曲線查詢表

struct pisp_be_crop_config

PiSP 後端裁剪配置

定義:

struct pisp_be_crop_config {
    __u16 offset_x, offset_y;
    __u16 width, height;
};

成員

offset_x

從瓦片左側裁剪的畫素數

offset_y

從瓦片頂部裁剪的畫素數

width

裁剪的瓦片輸出的寬度

height

裁剪的瓦片輸出的高度

描述

裁剪配置

struct pisp_be_resample_config

PiSP 後端重取樣配置

定義:

struct pisp_be_resample_config {
    __u16 scale_factor_h, scale_factor_v;
    __s16 coef[PISP_BE_RESAMPLE_FILTER_SIZE];
};

成員

scale_factor_h

水平縮放因子

scale_factor_v

垂直縮放因子

coef

重取樣係數

描述

重取樣配置

struct pisp_be_resample_extra

PiSP 後端重取樣配置

定義:

struct pisp_be_resample_extra {
    __u16 scaled_width;
    __u16 scaled_height;
    __s16 initial_phase_h[3];
    __s16 initial_phase_v[3];
};

成員

scaled_width

縮放後輸出的寬度(畫素)

scaled_height

縮放後輸出的高度(畫素)

initial_phase_h

初始水平相位

initial_phase_v

初始垂直相位

描述

重取樣配置

struct pisp_be_downscale_config

PiSP 後端降取樣配置

定義:

struct pisp_be_downscale_config {
    __u16 scale_factor_h;
    __u16 scale_factor_v;
    __u16 scale_recip_h;
    __u16 scale_recip_v;
};

成員

scale_factor_h

水平縮放因子

scale_factor_v

垂直縮放因子

scale_recip_h

水平倒數因子

scale_recip_v

垂直倒數因子

描述

降取樣配置

struct pisp_be_downscale_extra

PiSP 後端降取樣額外配置

定義:

struct pisp_be_downscale_extra {
    __u16 scaled_width;
    __u16 scaled_height;
};

成員

scaled_width

Scaled image width

scaled_height

Scaled image height

struct pisp_be_hog_config

PiSP 後端 HOG 配置

定義:

struct pisp_be_hog_config {
    __u8 compute_signed;
    __u8 channel_mix[3];
    __u32 stride;
};

成員

compute_signed

設定為 0 表示無符號梯度,1 表示有符號梯度

channel_mix

要使用的通道比例

stride

正下方塊之間的步幅(位元組)

描述

方向梯度直方圖配置

enum pisp_be_transform

PiSP 後端變換標誌

常量

PISP_BE_TRANSFORM_NONE

無變換

PISP_BE_TRANSFORM_HFLIP

水平翻轉

PISP_BE_TRANSFORM_VFLIP

垂直翻轉

PISP_BE_TRANSFORM_ROT180

180 度旋轉

struct pisp_be_output_buffer_config

PiSP 後端輸出緩衝區

定義:

struct pisp_be_output_buffer_config {
    __u32 addr[3][2];
};

成員

addr

輸出緩衝區地址

struct pisp_be_hog_buffer_config

PiSP 後端 HOG 緩衝區

定義:

struct pisp_be_hog_buffer_config {
    __u32 addr[2];
};

成員

addr

HOG 緩衝區地址

struct pisp_be_config

RaspberryPi PiSP 後端處理配置

定義:

struct pisp_be_config {
    struct pisp_be_input_buffer_config input_buffer;
    struct pisp_be_tdn_input_buffer_config tdn_input_buffer;
    struct pisp_be_stitch_input_buffer_config stitch_input_buffer;
    struct pisp_be_tdn_output_buffer_config tdn_output_buffer;
    struct pisp_be_stitch_output_buffer_config stitch_output_buffer;
    struct pisp_be_output_buffer_config output_buffer[PISP_BACK_END_NUM_OUTPUTS];
    struct pisp_be_hog_buffer_config hog_buffer;
    struct pisp_be_global_config global;
    struct pisp_image_format_config input_format;
    struct pisp_decompress_config decompress;
    struct pisp_be_dpc_config dpc;
    struct pisp_be_geq_config geq;
    struct pisp_image_format_config tdn_input_format;
    struct pisp_decompress_config tdn_decompress;
    struct pisp_be_tdn_config tdn;
    struct pisp_compress_config tdn_compress;
    struct pisp_image_format_config tdn_output_format;
    struct pisp_be_sdn_config sdn;
    struct pisp_bla_config blc;
    struct pisp_compress_config stitch_compress;
    struct pisp_image_format_config stitch_output_format;
    struct pisp_image_format_config stitch_input_format;
    struct pisp_decompress_config stitch_decompress;
    struct pisp_be_stitch_config stitch;
    struct pisp_be_lsc_config lsc;
    struct pisp_wbg_config wbg;
    struct pisp_be_cdn_config cdn;
    struct pisp_be_cac_config cac;
    struct pisp_be_debin_config debin;
    struct pisp_be_tonemap_config tonemap;
    struct pisp_be_demosaic_config demosaic;
    struct pisp_be_ccm_config ccm;
    struct pisp_be_sat_control_config sat_control;
    struct pisp_be_ccm_config ycbcr;
    struct pisp_be_sharpen_config sharpen;
    struct pisp_be_false_colour_config false_colour;
    struct pisp_be_sh_fc_combine_config sh_fc_combine;
    struct pisp_be_ccm_config ycbcr_inverse;
    struct pisp_be_gamma_config gamma;
    struct pisp_be_ccm_config csc[PISP_BACK_END_NUM_OUTPUTS];
    struct pisp_be_downscale_config downscale[PISP_BACK_END_NUM_OUTPUTS];
    struct pisp_be_resample_config resample[PISP_BACK_END_NUM_OUTPUTS];
    struct pisp_be_output_format_config output_format[PISP_BACK_END_NUM_OUTPUTS];
    struct pisp_be_hog_config hog;
    struct pisp_be_axi_config axi;
    struct pisp_be_lsc_extra lsc_extra;
    struct pisp_be_cac_extra cac_extra;
    struct pisp_be_downscale_extra downscale_extra[PISP_BACK_END_NUM_OUTPUTS];
    struct pisp_be_resample_extra resample_extra[PISP_BACK_END_NUM_OUTPUTS];
    struct pisp_be_crop_config crop;
    struct pisp_image_format_config hog_format;
    __u32 dirty_flags_bayer;
    __u32 dirty_flags_rgb;
    __u32 dirty_flags_extra;
};

成員

input_buffer

輸入緩衝區地址

tdn_input_buffer

TDN 輸入緩衝區地址

stitch_input_buffer

拼接輸入緩衝區地址

tdn_output_buffer

TDN 輸出緩衝區地址

stitch_output_buffer

拼接輸出緩衝區地址

output_buffer

輸出緩衝區地址

hog_buffer

HOG 緩衝區地址

global

全域性 PiSP 配置

input_format

輸入影像格式

decompress

解壓縮配置

dpc

缺陷畫素校正配置

geq

綠色均衡配置

tdn_input_format

時域降噪輸入格式

tdn_decompress

時域降噪解壓縮配置

tdn

時間降噪配置

tdn_compress

時域降噪壓縮配置

tdn_output_format

時域降噪輸出格式

sdn

空間降噪配置

blc

黑電平校正配置

stitch_compress

拼接壓縮配置

stitch_output_format

拼接輸出格式

stitch_input_format

拼接輸入格式

stitch_decompress

拼接解壓縮配置

stitch

拼接配置

lsc

鏡頭陰影校正配置

wbg

白平衡增益配置

cdn

彩色降噪配置

cac

色差校正配置

debin

反分箱配置

tonemap

色調對映配置

demosaic

去馬賽克配置

ccm

顏色校正矩陣配置

sat_control

飽和度控制配置

ycbcr

YCbCr 色彩校正配置

sharpen

銳化配置

false_colour

偽色彩校正

sh_fc_combine

銳化和偽色彩校正

ycbcr_inverse

逆 YCbCr 色彩校正

gamma

伽馬曲線配置

csc

色彩空間轉換配置

downscale

降取樣配置

resample

重取樣配置

output_format

輸出格式配置

hog

HOG 配置

axi

AXI 匯流排配置

lsc_extra

LSC 額外資訊

cac_extra

CAC 額外資訊

downscale_extra

降取樣器額外資訊

resample_extra

重取樣額外資訊

crop

裁剪配置

hog_format

HOG 格式資訊

dirty_flags_bayer

Bayer 啟用髒標記 (pisp_be_bayer_enable)

dirty_flags_rgb

RGB 啟用髒標記 (pisp_be_rgb_enable)

dirty_flags_extra

額外髒標記

enum pisp_tile_edge

PiSP 後端圖塊位置

常量

PISP_LEFT_EDGE

左邊緣圖塊

PISP_RIGHT_EDGE

右邊緣圖塊

PISP_TOP_EDGE

頂部邊緣圖塊

PISP_BOTTOM_EDGE

底部邊緣圖塊

struct pisp_tile

Raspberry Pi PiSP 後端圖塊配置

定義:

struct pisp_tile {
    __u8 edge;
    __u8 pad0[3];
    __u32 input_addr_offset;
    __u32 input_addr_offset2;
    __u16 input_offset_x;
    __u16 input_offset_y;
    __u16 input_width;
    __u16 input_height;
    __u32 tdn_input_addr_offset;
    __u32 tdn_output_addr_offset;
    __u32 stitch_input_addr_offset;
    __u32 stitch_output_addr_offset;
    __u32 lsc_grid_offset_x;
    __u32 lsc_grid_offset_y;
    __u32 cac_grid_offset_x;
    __u32 cac_grid_offset_y;
    __u16 crop_x_start[PISP_BACK_END_NUM_OUTPUTS];
    __u16 crop_x_end[PISP_BACK_END_NUM_OUTPUTS];
    __u16 crop_y_start[PISP_BACK_END_NUM_OUTPUTS];
    __u16 crop_y_end[PISP_BACK_END_NUM_OUTPUTS];
    __u16 downscale_phase_x[3 * PISP_BACK_END_NUM_OUTPUTS];
    __u16 downscale_phase_y[3 * PISP_BACK_END_NUM_OUTPUTS];
    __u16 resample_in_width[PISP_BACK_END_NUM_OUTPUTS];
    __u16 resample_in_height[PISP_BACK_END_NUM_OUTPUTS];
    __u16 resample_phase_x[3 * PISP_BACK_END_NUM_OUTPUTS];
    __u16 resample_phase_y[3 * PISP_BACK_END_NUM_OUTPUTS];
    __u16 output_offset_x[PISP_BACK_END_NUM_OUTPUTS];
    __u16 output_offset_y[PISP_BACK_END_NUM_OUTPUTS];
    __u16 output_width[PISP_BACK_END_NUM_OUTPUTS];
    __u16 output_height[PISP_BACK_END_NUM_OUTPUTS];
    __u32 output_addr_offset[PISP_BACK_END_NUM_OUTPUTS];
    __u32 output_addr_offset2[PISP_BACK_END_NUM_OUTPUTS];
    __u32 output_hog_addr_offset;
};

成員

edge

邊緣圖塊標誌

pad0

填充位元組

input_addr_offset

左上角畫素偏移量(位元組)

input_addr_offset2

第二個/第三個影像平面的左上角畫素偏移量(位元組)

input_offset_x

此圖塊在輸入影像中的水平偏移(畫素)

input_offset_y

此圖塊在輸入影像中的垂直偏移(畫素)

input_width

此圖塊的寬度(畫素)

input_height

此圖塊的高度(畫素)

tdn_input_addr_offset

TDN 輸入影像偏移量(位元組)

tdn_output_addr_offset

TDN 輸出影像偏移量(位元組)

stitch_input_addr_offset

拼接輸入影像偏移量(位元組)

stitch_output_addr_offset

拼接輸出影像偏移量(位元組)

lsc_grid_offset_x

此圖塊在 LSC 表格中的水平偏移

lsc_grid_offset_y

此圖塊在 LSC 表格中的垂直偏移

cac_grid_offset_x

此圖塊在 CAC 表格中的水平偏移

cac_grid_offset_y

此圖塊在 CAC 表格中的水平偏移

crop_x_start

從瓦片左側裁剪的畫素數

crop_x_end

從圖塊右側裁剪的畫素數

crop_y_start

從瓦片頂部裁剪的畫素數

crop_y_end

從圖塊底部裁剪的畫素數

downscale_phase_x

初始水平相位(畫素)

downscale_phase_y

初始垂直相位(畫素)

resample_in_width

進入重取樣塊的圖塊的寬度(畫素)

resample_in_height

進入重取樣塊的圖塊的高度(畫素)

resample_phase_x

重取樣塊的初始水平相位

resample_phase_y

重取樣塊的初始垂直相位

output_offset_x

圖塊將寫入輸出影像的水平偏移(畫素)

output_offset_y

圖塊將寫入輸出影像的垂直偏移(畫素)

output_width

此圖塊在輸出影像中的寬度(畫素)

output_height

此圖塊在輸出影像中的高度(畫素)

output_addr_offset

輸出緩衝區中的偏移量(位元組)

output_addr_offset2

第二個和第三個平面的輸出緩衝區中的偏移量(位元組)

output_hog_addr_offset

HOG 緩衝區中的偏移量(位元組),用於寫入此圖塊的結果

描述

圖塊引數:每組圖塊引數是一個 160 位元組的資料塊,其中包含圖塊處理引數。

struct pisp_be_tiles_config

Raspberry Pi PiSP 後端配置

定義:

struct pisp_be_tiles_config {
    struct pisp_be_config config;
    struct pisp_tile tiles[PISP_BACK_END_NUM_TILES];
    __u32 num_tiles;
};

成員

config

PiSP 後端配置

tiles

圖塊描述符

num_tiles

圖塊數量