ISP图像处理——紫边Purple Fringing检测
之前写过文章记紫边的形成原因,以下小结改善方法
图像紫边存在数码相机、监控摄像头等数字成像图像,使用设备在逆光、大光圈条件下拍摄图像的高反差区域容易出现紫边,解决图像自编问题有助设备得到完美图像。
紫边成因分析和确定有助与紫边消除的图像处理算法研究和摄像设备工程改进,能够改善自编的硬件成本更高,非常需要研究去除紫边的图像处理算法。
紫边
通过取色器中对“紫边”的色彩分析,可以发现,大部分紫边的主要构成就是洋红,这些紫边是由于高反差大背光静物边缘,产生光学衍射,加上DC/DV的CCD在色彩插值导致。
因为人对红、绿、蓝三种颜色的中绿分量比较敏感,大多sensor的bayer排列大多采样绿分量比较多,例如RGGB排列。
绿色采样结果比较多,相比红色和蓝色通道来说不容易发生混叠,而红蓝分量组合后表现为洋红色,与取色器的表现接近。
硬件改善紫边(镜头、sensor)
尽量选择低色差的镜头,验证色差曲线。sensor选择像元面积较大,保证光入射角度较大,亦可以规避shading问题。
算法改善
在RGB域检测紫边
高亮区域检测
首先对R、G、B分别设置固定的亮度阈值,把图像分为很多块,精确一点可以选择5*5大小的邻域,粗糙一点可以选13*13,判断邻域内每一个像素点的R、G、B值是否超过R、G、B初设亮度阈值(可能不同),邻域内超过R、G、B初设亮度阈值的像素记录数目分别为RNum、GNum、BNum,,当RNum、GNum、BNum同时满足>设定的高亮区域像素数阈值(R、G、B三通道可能不同)时,判定该区域为高亮区域。边缘区域检测
既可以使用常用的边缘检测算子Roberts 梯度算子、拉普拉斯梯度算子等,也可以分析像素区域方差趋势来判断是否属于边缘。统计区域内像素方差,判断方差值与初设方差阈值的大小,只有大于该阈值的区域才被认为是边缘。
满足以上高亮和边缘区域多个条件的像素可以认为是紫边。
矫正紫边
紫边区域紫色饱和度淡化,具体措施不晓得,再看看文献好了
我的个人博客主页,欢迎访问
我的CSDN主页,欢迎访问
我的GitHub主页,欢迎访问
ISP图像处理——紫边Purple Fringing检测的更多相关文章
- Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结
Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结 1.1. 五中滤镜的分别效果..1 1.2. 基于肤色的图片分类1 1.3. 性能提升2 1.4. --co ...
- ISP图像处理&&相机系统
如何理解 ISO.快门.光圈.曝光这几个概念? 摄影基础篇——彻底弄清光圈.快门与ISO 理解这三个参数各自都是如何控制进入的光线量: 快门速度一般的表示方法是1/100s.1/30s.2s: 小的“ ...
- 【图像处理】Haar Adaboost 检测自定义目标(视频车辆检测算法代码)
阅读须知 本博客涉及到的资源: 正样本:http://download.csdn.net/detail/zhuangxiaobin/7326197 负样本:http://download.csdn.n ...
- ISP图像处理算法之---Demosaic
目前市场上主流传感器为Coms传感器,sensor出来的的数据格式为bayer数据格式,这种格式,每个像素点只有三个颜色通道中的一个,如图1所示 ...
- Halcon编程-基于纹理的mara检测
表面瑕疵检测是机器视觉领域非常重要的一个应用.机器视觉是集光学.机电和计算机三个领域的一门不算新的技术.但目前表面瑕疵检测在学界主要是计算机专业或者控制专业瞄准图像处理方向在做,而视觉光学系统这一块主 ...
- OpenCV 学习笔记03 直线和圆检测
检测边缘和轮廓不仅重要,还经常用到,它们也是构成其他复杂操作的基础. 直线和形状检测与边缘和轮廓检测有密切的关系. 霍夫hough 变换是直线和形状检测背后的理论基础.霍夫变化是基于极坐标和向量开展的 ...
- 人脸检测学习笔记(数据集-DLIB人脸检测原理-DLIB&OpenCV人脸检测方法及对比)
1.Easily Create High Quality Object Detectors with Deep Learning 2016/10/11 http://blog.dlib.net/201 ...
- 夜晚场景图像ISP增强算法
夜晚场景图像ISP增强算法 输入输出接口 Input: (1)图像视频分辨率(整型int) (2)图像视频格式(RGB,YUV,MP4等) (3)摄像头标定参数(中心位置(x,y)和5个畸变 系数(2 ...
- (四)HXDZ-30102-ACC检测心率血氧数据并通过串口助手显示
主要参考模块说明书 写在前面的话 硬件原理我是真的搞不明白,所以心率血氧传感器数据检测就是模块卖家自带的代码... 我使用HXDZ-30102-ACC传感器也是偶然在网上检索到的,集成心率血氧和三轴加 ...
- PPP协议
PPP协议PPP协议是二层(数据链路层)协议,常用于拨号上网时客户端向服务器获取IP地址.PPP支持在各种物理类型的点对点串行线路上传输上层协议报文.它具有很多特性,比如支持多协议.提供可选的身份认证 ...
随机推荐
- YII2.0的文件上传, 并把文件名称重新编译
/** *@Action 文件上传示例 *@这里我们演示的是一个YII2.0的文件上传, 并把文件名称重新编译 *@我们上传的是一个叫 photo 的jpg和png格式的文件 */ Controlle ...
- Simulation-计算统计——Monte Carlo
Monte Carlo Integration 找到原函数,再计算 无法找到原函数,MC积分 Assume that we can generate \(U_1, . . . , U_n \sim U ...
- [Pytorch框架] 1.3、张量
文章目录 PyTorch是什么? Tensors(张量) NumPy 转换 CUDA 张量 PyTorch是什么? 基于Python的科学计算包,服务于以下两种场景: 作为NumPy的替代品,可以使用 ...
- Grafana 系列-统一展示-2-Prometheus 数据源
系列文章 Grafana 系列文章 Grafana Prometheus 数据源 Grafana 提供了对 Prometheus 的内置支持.本文会介绍 Grafana Prometheus(也包括 ...
- BugKu_never_give_up
if(!$_GET['id']) { header('Location: hello.php?id=1'); exit(); } $id=$_GET['id']; $a=$_GET['a']; $b= ...
- Centos7安装JDK1.8详细步骤
JDK 解压JDK安装文件.在终端中,进入你下载的JDK安装文件所在的目录,然后执行以下命令: tar -zxvf jdk-<版本号>-linux-x64.tar.gz 其中,<版本 ...
- Python网页开发神器fac 0.2.8、fuc 0.1.28新版本更新内容介绍
fac项目地址:https://github.com/CNFeffery/feffery-antd-components fuc项目地址:https://github.com/CNFeffery/fe ...
- 2022-09-27:给定一个棵树, 树上每个节点都有自己的值,记录在数组nums里, 比如nums[4] = 10,表示4号点的值是10, 给定树上的每一条边,记录在二维数组edges里, 比如ed
2022-09-27:给定一个棵树, 树上每个节点都有自己的值,记录在数组nums里, 比如nums[4] = 10,表示4号点的值是10, 给定树上的每一条边,记录在二维数组edges里, 比如ed ...
- Selenium - 元素操作(4) - alert弹窗处理
Selenium - 元素操作 alert弹窗 Alert弹出框由于不是html的页面元素,而是JavaScript的控件:所以不能右键检查,用传统的方法去操作. 例如这种弹窗: # 获取告警弹框的文 ...
- 狂神说ngnix笔记
Nginx 一.什么是Nginx 二.Nginx的作用 三.Nginx的安装 1. Windows下安装 2.Linux下安装 3.Nginx目录结构 4.Nginx常用命令 5.Nginx配置文件结 ...