12 FPN 校正应用
本章节介绍 GK7206 的 FPN(Fixed Pattern Noise,固定模式噪声)校正应用示例 —— sample_fpn。该应用演示了 FPN 校正功能,用于消除传感器图像中的固定模式噪声。
应用源码位于 SDK 目录 sample/fpn/,是开发图像质量优化相关应用的参考模板。
1 应用概述
1.1 功能特性
- FPN 校正:消除传感器图像中的固定模式噪声
- 交互式校准:支持自定义校准帧数(1-256,2的幂次)
- 离线校准:VI offline 模式下的 FPN 校准
1.2 技术参数
| 参数 | 值 |
|---|---|
work_mode | 0(vi offline fpn calibrate) |
依赖 | sensor |
1.3 目录结构
sample/fpn/
├── Makefile # 构建脚本
└── sample_fpn.c # 主程序2 编译与部署
2.1 前置条件
在编译本应用之前,请确保已完成以下准备工作:
- SDK 环境已搭建:参照 SDK 编译 完成交叉编译工具链和 SDK 配置
- Sensor 已连接:需连接 SC465SL 或兼容的图像传感器
2.2 编译应用
# 进入 sample 目录
cd <SDK_PATH>/sample
# 编译 fpn 示例
make -C fpn clean && make -C fpn2.3 部署到板端
# 挂载 SD 卡(推荐)
mkdir -p /sd_card
mount -t vfat /dev/mmcblk1p1 /sd_card
# 使用 SCP 传输到开发板
scp sample/fpn/sample_fpn root@<板端IP>:/sd_card/2.4 运行应用
# 添加执行权限
chmod +x /sd_card/sample_fpn
# 进入 SD 卡目录
cd /sd_card
# 运行(work_mode 0)
./sample_fpn 0
# 交互输入校准帧数
按提示输入校准帧数(1-256,必须是2的幂次)
# 退出
Ctrl+C2.5 预期输出
成功运行后,终端会输出类似以下信息:
sample_fpn running
input number to set calibrate frame and press enter to confirm!
calibrate frame:输入校准帧数后,会进行FPN校准并输出校准结果。
3 内部执行逻辑详解
3.1 应用架构
本应用采用以下架构:
Sensor → VI → FPN 校准 → 校准结果保存3.2 FPN 初始化流程
// 步骤 1:系统初始化
sample_comm_sys_init(&sys_config);
// 步骤 2:ISP 初始化
sample_comm_isp_init();
// 步骤 3:VI 启动
sample_comm_vi_start(...);
// 步骤 4:VPSS 启动
sample_comm_vpss_start(...);
// 步骤 5:FPN 初始化
xmedia_fpn_init();
// 步骤 6:配置 FPN
xmedia_fpn_config_t fpn_config;
fpn_config.enable = XMEDIA_TRUE;
fpn_config.strength = 50; // 校正强度
xmedia_fpn_set_config(&fpn_config);
// 步骤 7:VENC 启动
sample_comm_venc_start(...);
// 步骤 8:绑定模块
xmedia_bind_vpss_to_venc(...);4 关键编程要点
4.1 FPN 配置
xmedia_fpn_config_t fpn_config;
fpn_config.enable = XMEDIA_TRUE;
fpn_config.strength = 50; // 校正强度(0~100)
fpn_config.mode = XMEDIA_FPN_MODE_AUTO; // 自动模式
xmedia_fpn_set_config(&fpn_config);4.2 FPN 启用/禁用
// 启用 FPN
xmedia_fpn_enable(XMEDIA_TRUE);
// 禁用 FPN
xmedia_fpn_enable(XMEDIA_FALSE);5 常见问题排查
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| FPN 效果不明显 | 校正强度设置过低 | 调整 strength 参数到 50~80 |
| 画面过暗或过亮 | FPN 配置错误 | 检查 FPN 配置参数 |
| 初始化失败 | Sensor 不支持 FPN | 检查 Sensor 型号 |
