ISP去噪(1)

news2024/12/28 3:04:30

#灵感# 因为理解的2DNR、3DNR 和当前调试平台标注的2DNR、3DNR 作用有很大差异,所以在网上广撒网,搜集知识。

目前收集出来一个这样的文章,有点像大学生的论文“取其精华,合成糟粕”。------权当一个记录册

目录

运动阈值,拖尾:

空域和时域降噪区别:

空域时域降噪(STNR)

高频和低频噪声:

中值滤波和双边滤波:

降噪位置:

运动阈值,拖尾:

动作阈值就是你判断你画面中大概有百分之多少的像素,来判断出我们大概使用多少范围的运动。超出这个阈值的像素是运动的,低于这个阈值的像素是静态的。

当前平台: 

运动阈值越大越容易(画面更多)被判断为静止(理解为小于阈值判断为静止,)副作用为拖尾,

理解---------【判断为静止,则使用3d 时域降噪,时域降噪过大,运动物体就拖尾明显。

阈值越小则越容易(画面更多)被判断为运动(副作用3D降噪效果弱,噪声大)

理解---------【运动区域用2D 降噪,2D空域降噪不考虑帧与帧之间关系,会发生一些噪点的抖动】

空域和时域降噪区别:

空域降噪 是针对单帧画面进行处理 ;空域降噪是一种2D降噪方法,它只处理一帧图像内部的噪声。降噪算法根据实现原理不同可以分成很多种类型,比如线性/非线性、空域/频域,频域又包括小波变换、傅里叶变换或其他变换。2D降噪缺点是会造成画面模糊,特别是物体边缘部分 因此对这种算法的改进主要是进行边缘检测,边缘部分的像素不用来进行模糊。 -------当前平台 2D 降噪会导致运动模糊

时域降噪 是结合前后帧进行计算处理的出来的 。时域降噪是一种3D降噪方法,它的主要思想是利用多帧图像在时间上的相关性实现降噪, 即考虑帧与帧之间的时域关系。----(有人称为2dnr,怪不得我老是搞混,因为用在静态区域,2DNR理解的出发点是在2D图像上做NR)。

一种最简单的实现方法是时域均值滤波,即将相邻几帧图像在时域上做加权平均。由于累加后噪声的增长速度(根号关系)小于信号的增长速度(线性关系),所以图像的信噪比会提高。这种方法的主要问题在于只适合处理静态图像,如果画面中存在运动的物体则会出现伪影ghost effect-------------和当前平台 说的静态区域用3DNR 相符合。

一般来说,降噪我们都会在最前面的节点对原始素材进行降噪。------raw?

如果我们只用空域降噪的话,假如我们连续播放的话,由于它的算法都是基于当前帧,不考虑前后帧,所以这样很有可能会发生一些噪点的抖动。------这个抖动在运动区域应该不明显,所以运动用2D空域降噪。

时域降噪会把整个时间段的噪点统一进行处理,消除帧与帧之间的噪点抖动。-----所以在静止区域用3D 时域去噪。使画面更安静。

一般都是先利用空域降噪对单帧进行一个基础的降噪,(比如在raw 域?),然后在利用时域降噪把与帧之间的噪点抖动消除,这样的效果可能会比较好。(比如在YUV域?)

空域时域降噪(STNR)

此段来自Understanding ISP Pipeline - Noise Reduction - 知乎 (zhihu.com),作者刘斯宁

STNR是一种2D+3D降噪方法,它通过一套算法判别一个像素是属于前景还是背景,被判决为背景的像素将会参与时域平滑,被判决为前景的像素将会参与空域平滑,而判决条件则每一帧都在动态更新,以尽可能保证判决准确性。-------有人称STNR 为3DNR, 应该是理解为3D图像上做NR。此处和 “当前平台” 描述的算法作用机制一样。

运动检测,运动的物体认为是前景,不动的是背景。但是由于噪声影响会有很多失效的时候,把背景误判为运动,或者由于运动物体存在大面积单色,被误判为没动。至今尚没有特别有效的方法。使用ai技术能表现好一些。

在手机端的调试经验: 为避免拖影,可以加大YNR去噪,使用较小的3DNR 去噪。

“当前平台”经验:

运动模糊,减小2DNR。适当调整2DNR中的 对运动区域NR的值。

静止平坦区噪声,检查运动阈值是否正确,若是,则(静止平坦区不会有跳动噪声)。

灯的位置(高亮处)噪声跳动,修改校准的NP 参数。

高频和低频噪声:

此段来自 Understanding ISP Pipeline - Noise Reduction - 知乎 (zhihu.com)

噪声的空间频率高低会影响关于图像质量的主观感受,而且这种影响与人的直觉不一定相符。在下图的例子中,右图主要包含高频噪声,在人眼看来其图像质量比左图要好很多,其实右图的方差是12.5,大于左图的方差11.7,左图感觉噪声更大的主要原因是噪声的频率更低一些。

因此,关于噪声的一般规律是,幅度小的高频噪声对主观图像质量影响较小,而幅度大的低频噪声对主观图像质量影响较大。

中值滤波和双边滤波:

中值滤波适用于去除椒盐噪声等随机噪声,而双边滤波在平滑图像的同时保留边缘信息。

中值滤波在一定的条件下可以克服常见线性滤波器如方框滤波器、均值滤波等带来的图像细节模糊,而且对滤除脉冲干扰及图像扫描噪声非常有效,也常用于保护边缘信息, 保存边缘的特性使它在不希望出现边缘模糊的场合也很有用,是非常经典的平滑噪声处理方法。

但是中值滤波的缺点也很明显,因为要进行排序操作,所以处理的时间长,是均值滤波的5倍以上。

图片来自:Understanding ISP Pipeline - 知乎 (zhihu.com)

 

双边滤波器的好处是可以做边缘保存edge preserving),一般用高斯滤波去降噪,会较明显地模糊边缘,对于高频细节的保护效果并不明显。双边滤波器顾名思义比高斯滤波多了一个高斯方差sigmad,它是基于空间分布的高斯滤波函数,所以在边缘附近,离的较远的像素不会太多影响到边缘上的像素值,这样就保证了边缘附近像素值的保存。但是由于保存了过多的高频信息,对于彩色图像里的高频噪声,双边滤波器不能够干净的滤掉,只能够对于低频信息进行较好的滤波。

在双边滤波器中,输出像素的值依赖于邻域像素值的加权值组合。

高斯滤波的实现方式有时域方式和频域方式两种,一种是时域高斯低通滤波,一种是频域高斯低通滤波。

时域高斯低通滤波的实质是定义一个奇数大小的模板(3 X 3 5 X 5 7 X 7 ……),然后让该模板遍历整副图像,模板中的加权平均值就是模板中心的值。

当领域窗口固定时,标准差越大,去除高斯噪声能力越强,图像越模糊,当标准差为2以上时,去噪能力几乎不再增加,只有当增加领域的大小时,去噪能力才会进一步增强。

频域高通滤波器:

降噪位置:

raw域的好处是接近噪声的源头,rgb域和yuv域的好处是可以抑制在isp处理中间引入的噪声,如果不考虑成本,降噪处理理论上是多多益善的,实际也确实是这样,越高端的isp降噪节点越多(比如高通、MTK 平台),有些codec在编码之前也会做一次降噪,因为isp噪声对codec码率影响非常大。

降噪:目前主流的ISP产品中一般会选择在RAW域、RGB域、YUV域等多个环节设置降噪模块以控制不同类型和特性的噪声。在YUV域降噪的方法已经得到了广泛的研究并且出现了很多非常有效的算法,但是在RAW域进行降噪则因为RAW数据本身的一些特点而受到不少限制。主要的限制是RAW图像中相邻的像素点分别隶属于不同的颜色通道,所以相邻像素之间的相关性较弱,不具备传统意义上的像素平滑性,所以很多基于灰度图像的降噪算法都不能直接使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1306870.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

创建第一个Vue2项目-----HelloWorld

创建第一个Vue项目 第一步先去安装Vue&#xff0c;一共有两种安装方式&#xff0c;这里使用 点击这里下载&#xff1a;Vue.js 添加到自己的项目中 在使用的页面引入<script src"../js/vue.js"></script> 2. 准备好一个容器 <div id"root&qu…

迪拜义乌中国小商品城,开启中东区域展贸新商机

迪拜义乌中国小商品城&#xff0c;一颗璀璨的批发市场新星&#xff0c;正在迪拜杰贝阿里自贸区内冉冉升起。      在全球格局巨变的背景下&#xff0c;阿联酋与欧美货币深度绑定&#xff0c;同时又积极加入金砖国家集团&#xff0c;与发展中国家的经济不断融合。而作为国际…

微信小程序---wxs脚本

WXS&#xff08;WeiXin Script&#xff09;是小程序的一套脚本语言&#xff0c;结合 WXML&#xff0c;可以构建出页面的结构。 WXS 与 JavaScript 是不同的语言&#xff0c;有自己的语法&#xff0c;并不和 JavaScript 一致。 1.wxs和JavaScript的区别 2.wxs脚本基础语法 &a…

uniapp+vite+ts+express踩坑总结

1 关于引入express包报 import express from "express"; ^^^^^^ SyntaxError: Cannot use import statement outside a module的问题。 解决方案&#xff1a; 在package.json中添加type&#xff1a;“module”选项 2 Response is a type and must be imported …

崩坏:星穹铁道【V1.5攻略】五星(金)-遗器主、副词条成长数值参考

星穹铁道中五星遗器词条成长数值攻略&#xff1a; 温馨提示&#xff1a;以下数据会可能会出现一点一点误差&#xff0c;见谅... --------------------------- 一、如图&#xff1a; ----->>细节补充<<----- ①实际数值可能与游戏中不一&#xff0c;若数据出现无法忽…

【BigDecimal类—常用API系列】解决java浮点计算精度损失问题

文章目录 Java浮点计算精度损失问题BigDecimal进行精确运算的解决方案 Java浮点计算精度损失问题 BigDecimal它是干什么用的呢&#xff1f;什么是java浮点计算精度损失问题&#xff1f;我们先看一段代码&#xff0c;看这个代码有什么问题&#xff1f;再说BigDeimal这个类是干什…

Leetcode—113.路径总和II【中等】

2023每日刷题&#xff08;五十七&#xff09; Leetcode—113.路径总和II 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* …

Javac编译原理

文章目录 1. Javac是什么2. Javac编译器的基本结构3. Javac工作原理分析 1. Javac是什么 Javac是一种编译器&#xff0c;能将一种语言规范转成另一种语言规范&#xff0c;javac编译器将Java编译器对所有机器都非常友好的一种语言。注意这种语言不是针对某个机器的&#xff0c;…

leetcode对称二叉树(每日一题)

https://leetcode.cn/problems/symmetric-tree/description/ 今天我们在来个题目&#xff0c;对称二叉树&#xff0c;其实这道题的思路我觉得和那到判断两棵树是不是相同的题目很相似&#xff0c;写这个题目的思路还是递归&#xff0c;但是我们看这个题目的时候需要注意的一个…

智能优化算法应用:基于猫群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于猫群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于猫群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.猫群算法4.实验参数设定5.算法结果6.参考文献7.MA…

python-爬取壁纸

代理池的&#xff0c;防止IP 被封 找到图片真实地址 现在看到的只是图片的预览地址 (previews) 1.检查&#xff1a; 2.鼠标变为箭头时查看网页源代码 关于怎样在源代码中找到图片的真实地址 ??? 为什么在源代码界面 ctrl f 时候搜索的是 .png ??? 首先图片地址是以 .j…

死锁(面试常问)

1.什么是死锁 简单来说就是一个线程加锁后解锁不了 一个线程&#xff0c;一把锁&#xff0c;线程连续加锁两次。如果这个锁是不可重入锁&#xff0c;会死锁。两个线程&#xff0c;两把锁。 举几个例子&#xff0c;1.钥匙锁车里了&#xff0c;车钥匙锁家里了。2. 现在有一本书…

MySQL低版本中:字符串中的数字、英文字符、汉字提取

我们如何提醒一个字段中的汉字和数字呢 高版本指mysql8.0以上 使用sql语句 SELECT REGEXP_REPLACE(column_name, [^\\p{Han}], ) AS chinese_characters FROM table_name;其中 column_name指名称列&#xff0c;table_name是表名 2.低版本使用 需要新建函数 DELIMITER $$DR…

phpstudy搭建WordPress教程

一、phpstudy新建配置WordPress 打开phpstudy&#xff0c;启动Apache&#xff08;或者Nginx&#xff09;和MySQL服务 来到数据库部分&#xff0c;点击[创建数据库]&#xff0c;填写新建数据库的名称&#xff0c;用户名以及密码&#xff0c;完成后点击确认 来到网站部分&#x…

vue3 使用 Element-plus 的 el-pagination 分页组件时无法显示中文

使用element-puss框架&#xff0c;分页显示英文 解决方法 在main.ts element-puss,2.3.8版本后的&#xff0c; import zhCn from "element-plus/es/locale/lang/zh-cn"; element-puss,2.3.8版本以前的&#xff0c; import zhCn from "element-plus/lib/loc…

山西电力市场日前价格预测【2023-12-11】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2023-12-11&#xff09;山西电力市场全天平均日前电价为535.55元/MWh。其中&#xff0c;最高日前电价为689.29元/MWh&#xff0c;预计出现在09:00。最低日前电价为422.38元/MWh&#xff0c;预计…

Vue2学习笔记(组件嵌套)

示例 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>数据绑定</title><script type"…

lwIP 细节之六:connected、sent、poll 回调函数是何时调用的

使用 lwIP 协议栈进行 TCP 裸机编程&#xff0c;其本质就是编写协议栈指定的各种回调函数。将你的应用逻辑封装成函数&#xff0c;注册到协议栈&#xff0c;在适当的时候&#xff0c;由协议栈自动调用&#xff0c;所以称为回调。 注&#xff1a;除非特别说明&#xff0c;以下内…

大数据湖体系规划与建设方案:PPT全文51页,附下载

关键词&#xff1a;大数据解决方案&#xff0c;数据湖解决方案&#xff0c;数据数仓建设方案&#xff0c;大数据湖建设规划&#xff0c;大数据湖发展趋势 一、大数据湖体系规划与建设背景 在传统的企业信息化建设中&#xff0c;各个业务系统通常是独立建设的&#xff0c;导致…