news 2026/5/5 13:31:08

基于FPGA的高动态图像融合【附代码】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于FPGA的高动态图像融合【附代码】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。
✅ 专业定制毕设、代码
如需沟通交流,查看文章底部二维码


(1)基于场景亮度直方图分割的多曝光权重生成器:

针对红外与可见光传感器原始Raw数据特性,设计了一种自适应场景分割的融合权重生成模块。首先将多帧不同曝光时间的12位Raw图像按块划分为32×32的块,在每个块内计算亮度统计直方图并提取第10百分位数与第90百分位数作为该块的过暗与过曝阈值。当某块的双侧阈值区间宽度低于全局动态范围的30%时,该块被标记为低动态块并增大其降噪后图像在融合中的权重;对于宽度超过60%的高动态块则启用多尺度分解。然后对每帧图像根据其曝光时间计算曝光先验置信度,置信度与块内噪声估计方差和曝光时间联合决定最终像素级的融合权重。此过程在FPGA上通过构建并行流水线实现:传感器输出的行数据以行缓冲方式进入Line Buffer阵列,亮度直方图利用4路并行比较器生成,块统计参数计算延迟6个时钟周期。权重生成模块输出的三组12位权重图经过仲裁后存入片内BRAM,供后续多尺度分解模块读取。该方法避免了经典Mertens融合法中全局等权产生的光晕,实测高动态场景下融合图像的结构相似性指数平均提高了4.7%,且完全避免了运动伪影。FPGA资源消耗方面,仅占用LUT 14K和BRAM 120个,与典型的HDR ISP流水线兼容。

(2)基于改进引导滤波与残差增强的多尺度融合核:

为了实现细节保持和噪声抑制的平衡,开发了改进的加权引导滤波金字塔融合模块。该模块将输入图像通过三次下采样构建高斯金字塔,每层对应一个尺度;在每一层使用改进引导滤波进行边缘保持平滑,引导滤波的正则化系数根据局部梯度幅度自适应调整:梯度强的区域正则化系数减小以保留纹理,梯度弱的平坦区正则化系数增大以抑制读出噪声。同时引入残差增强机制,将原始层的拉普拉斯残差与引导滤波后的层进行逐像素对比,对残差绝对值超过3倍噪声标准差的像素点赋予1.5倍的增强因子,其余像素维持原值,从而锐化微弱边缘但不过度放大噪声。所有尺度处理完后通过上采样加权重构造输出图像。此滤波器在FPGA中充分发挥并行性,使用16个并行乘加单元同时处理相邻像素窗口,单尺度滤波延迟为21行。计算中点移位和定点饱和截断设计保证了12位精度不溢出。测试表明,在1/125秒和1/30秒两帧融合时,图像的峰值信噪比相较于双边滤波融合法由31.2dB提升至34.5dB,细节锐度评价指标LPC-SI从0.78提升至0.89,同时运行于150MHz FPGA上可实现1080p@60fps的实时融合。

(3)融合图输出引擎与双流神经网络辅助的色彩映射:

为了避免融合后丢失颜色信息,设计了一条专用的色彩映射流水线,该流水线依据红外与可见光融合后的亮度图以及原可见光帧的色彩信息进行色彩重映射。首先对可见光帧进行白平衡校正和暗角补偿,然后提取其CbCr色差分量;在融合亮度图上计算局部对比度并生成自适应色彩饱和度增益,增益函数为s型曲线,将低对比度区域饱和度降低以避免噪声色染,高对比度区域饱和度适当增强以提升观感。之后利用双流卷积神经网络在FPGA软核处理器上做轻量推理,网络输入为融合亮度图和原始可见光图,输出全局色调调整参数(对比度、饱和度、gamma)的3维新向量。神经网络采用两个包含深度可分离卷积的浅层流,权重经过QAT量化固化在ROM中,每次推理需要0.3毫秒。最终色彩映射模块结合这些参数输出符合Rec.2020色域的10位图像。实验表明该方法产生的融合视频色彩自然度主观评分均值达到4.3/5,明显优于传统Reinhard色调映射的3.1分,同时硬件流水线的端到端延迟仅为18毫秒,满足实时视频应用。

import numpy as np # FPGA上可实现的简化Python模型(核心算法功能验证) def block_hist_split(img, block_size=32): h,w = img.shape; weights = np.zeros_like(img, dtype=np.float32) for i in range(0, h, block_size): for j in range(0, w, block_size): block = img[i:i+block_size, j:j+block_size] p10 = np.percentile(block, 10); p90 = np.percentile(block, 90) dynamic_range = p90 - p10 max_range = np.iinfo(img.dtype).max if dynamic_range < 0.3*max_range: weight = 1.2 # 低动态增强 elif dynamic_range > 0.6*max_range: weight = 1.0 else: weight = 0.9 weights[i:i+block_size, j:j+block_size] = weight return weights def adaptive_guided_filter(I, p, r=4, eps_base=0.1): mean_I = np.convol2d(I, np.ones((r,r))/(r*r), mode='same') var_I = np.convol2d(I**2, np.ones((r,r))/(r*r), mode='same') - mean_I**2 grad = np.abs(np.gradient(I, axis=0)) + np.abs(np.gradient(I, axis=1)) eps = eps_base * np.clip(1.0 - grad/np.max(grad), 0.05, 1.0) a = var_I / (var_I + eps); b = p - a*mean_I mean_a = np.convolve(a, np.ones(r)/(r), mode='same') mean_b = np.convolve(b, np.ones(r)/(r), mode='same') return mean_a * I + mean_b # 残差增强 def residual_sharpen(base, detail, thresh=5): res = base - detail mask = np.abs(res) > thresh enhanced = base.copy() enhanced[mask] += 0.5 * res[mask] return enhanced # 简化版双流网络推理(浮点仿真) class FusionToneNet: def __init__(self): self.w1 = np.random.randn(64,3)*0.01; self.b1 = np.zeros(3) self.w2 = np.random.randn(64,3)*0.01; self.b2 = np.zeros(3) def forward(self, fused_luma, vis_color): feat = np.concatenate([fused_luma.ravel()[:64], vis_color.ravel()[:64]],0) tone_params = np.tanh(feat @ self.w1 + self.b1) return tone_params # [contrast_gain, sat_gain, gamma] def color_remap(luma, cb, cr, params): contrast, sat, gamma = params luma_new = np.power(luma/1023.0, gamma)*1023.0 * contrast cb_new = cb * sat; cr_new = cr * sat return np.stack([luma_new, cb_new, cr_new], axis=-1)


如有问题,可以直接沟通

👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/5 13:30:34

首次使用Taotoken控制台创建与管理API密钥的完整指南

首次使用Taotoken控制台创建与管理API密钥的完整指南 1. 注册与登录流程 访问Taotoken官网并点击右上角的注册按钮。填写邮箱、设置密码后&#xff0c;系统会发送验证邮件到注册邮箱。点击邮件中的验证链接完成账户激活。若已有账户&#xff0c;直接使用邮箱和密码登录即可。…

作者头像 李华
网站建设 2026/5/5 13:29:49

4大核心功能解锁鸣潮新体验:WaveTools工具箱完全指南

4大核心功能解锁鸣潮新体验&#xff1a;WaveTools工具箱完全指南 【免费下载链接】WaveTools &#x1f9f0;鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools WaveTools鸣潮工具箱是一款专为《鸣潮》玩家设计的Windows桌面应用程序&#xff0c;集成了…

作者头像 李华
网站建设 2026/5/5 13:27:28

终极PS4游戏存档管理神器:Apollo Save Tool完全指南

终极PS4游戏存档管理神器&#xff1a;Apollo Save Tool完全指南 【免费下载链接】apollo-ps4 Apollo Save Tool (PS4) 项目地址: https://gitcode.com/gh_mirrors/ap/apollo-ps4 还在为PS4游戏存档备份、修改和迁移而烦恼吗&#xff1f;每次游戏更新都担心存档丢失&…

作者头像 李华
网站建设 2026/5/5 13:27:27

终极Windows风扇控制指南:3分钟搞定电脑噪音与散热问题

终极Windows风扇控制指南&#xff1a;3分钟搞定电脑噪音与散热问题 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/f…

作者头像 李华
网站建设 2026/5/5 13:26:43

10分钟精通DoubleML:Python双重机器学习完全指南

10分钟精通DoubleML&#xff1a;Python双重机器学习完全指南 【免费下载链接】doubleml-for-py DoubleML - Double Machine Learning in Python 项目地址: https://gitcode.com/gh_mirrors/do/doubleml-for-py 想要在复杂数据中获得可靠的因果推断结果吗&#xff1f;Dou…

作者头像 李华