原理

图像白化(whitening)可用于对过度曝光或低曝光的图片进行处理,处理的方式就是改变图像的平均像素值为 0 ,改变图像的方差为单位方差 1。我们需要先计算原图像的均值和方差,然后对原图像的每个像素值做变换。假设图像 P 有 I 行 J 列,每个像素的值为 pij, 均值和方差的计算公式如下。

变换后新图像的每个像素值 xij

OpenCV 实现

用 OpenCV 的内置函数计算均值和方差,然后对遍历每个像素值并对每个像素做变换。这里需要注意的是变换后的像素值肯定是有一部分会是负值(小于均值的那部分),我们需要把变换后的像素值重新映射到 [0, 255] 的范围内。因为 OpenCV 中的 normalize 函数无法实现这种任意范围内的映射,我们需要自己去实现这类映射。我们需要找出变换后图像中的最小 min 和最大像素值 max, 假设需要映射的范围为 [a, b]。 该映射可用函数(b-a)*(xij-min)/(m

OpenCV 图像处理:白化(whitening)相关推荐

  1. 免费送书啦!《 OpenCV图像处理入门与实践》一本全搞定

    OpenCV 的基础图像操作都只是针对图像中的像素点,并不是直接对图像整体进行的操作.而很多时候并不能仅通过改变像素点来进行图像的操作,为此我们需要学习关于图像的算术操作. 1.图像加法 对于两张相同 ...

  2. 《OpenCV图像处理》——1.7 用户交互工具

    本节书摘来自华章计算机<OpenCV图像处理>一书中的第1章,第1.7节,作者:[西]葛罗瑞亚·布埃诺·加西亚(Gloria Bueno García)著,更多章节内容可以访问云栖社区&q ...

  3. opencv图像处理总结

    opencv图像处理基本操作 1. 矩阵数据类型 通用矩阵数据类型: CV_<bit_depth>(S|U|F)C<number_of_channels> 其中,S表示带符号整 ...

  4. python数字图像处理、色彩空间类型转换_Python+OpenCV图像处理—— 色彩空间转换...

    一.色彩空间的转换 代码如下: #色彩空间转换 import cv2 as cv def color_space_demo(img): gray = cv.cvtColor(img, cv.COLOR ...

  5. 深度学习入门教程UFLDL学习实验笔记三:主成分分析PCA与白化whitening

     深度学习入门教程UFLDL学习实验笔记三:主成分分析PCA与白化whitening 主成分分析与白化是在做深度学习训练时最常见的两种预处理的方法,主成分分析是一种我们用的很多的降维的一种手段,通 ...

  6. [Python图像处理] 三十五.OpenCV图像处理入门、算数逻辑运算与图像融合(推荐)

    该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门.OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子.图像增强技术.图像分割等,后期结合深度学习研究图像识别 ...

  7. 210322阶段三QT事件循环及opencv图像处理

    目录 一.学习的知识点 1.QT事件循环机制 1.1QT是事件驱动的.QT将系统产生的信号(软件中断)转换成QT事件,并且将事件封装成类,所有的事件类都是QEvent派生的,事件的产生和处理就是QT程 ...

  8. 7.4.10 白化 whitening

    7.4.10 白化 whitening 回顾PCA,Y=UTAY = U^TAY=UTA 即对数据矩阵 AAA 进行旋转变换 UTU^TUT 得到主成分 YYY ,矩阵 YYY 的每列数据为每个学生新 ...

  9. OpenCV图像处理(Python)学习笔记

    OpenCV图像处理 OpenCV图像处理 第1章 OpenCV入门 第2章 图像处理基础 2.1 基本表示方法 2.2 感兴趣区域(ROI) 第3章 图像运算 3.1 加法运算 3.2 图像加权和 ...

  10. python 检测直线 交点_Python+OpenCV图像处理——实现直线检测

    简介: 1.霍夫变换(Hough Transform) 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法.主要用来从图像中分离出具有某种相同特征的几何形状(如,直线 ...

最新文章

  1. 四个使用this的典型应用
  2. 【练习】c++单向链表求交集
  3. 《江南百景图》,解谜经营背后的逻辑
  4. ConcurrentLinkedHashMap v 1.0.1发布
  5. 万博智云上云 单机软件升级多并发SaaS平台
  6. java converter转换器_在SpringMVC中设置自定义类型转换器Converter
  7. 在deepin中安装docker
  8. 团队开发——个人工作总结01
  9. 疫情期间我们与你同在:关爱障碍群体刚需,坚持做无障碍的倡议书
  10. TP-LINK WR841N V8刷OpenWRT
  11. python flask将读取的图片返回给web前端
  12. SQL在线格式化工具
  13. 利用纯m文件生成ui(二)
  14. 2020 CSP-S第二轮认证一等奖获奖名单
  15. adb和夜神模拟器安装
  16. Sci-Hub丨科研文献实时更新
  17. Win10切换到了Users用户怎么切换回来
  18. 五面阿里拿下飞猪事业部offer,先睹为快
  19. 计算机毕业设计Java传统文化知识竞赛系统(源码+系统+mysql数据库+lw文档
  20. 小程序与php 实现微信支付

热门文章

  1. MySQL 5.7 安装教程(全步骤图解教程)
  2. 布尔运算(boolean)
  3. PUPANVR-一个开源的嵌入式NVR系统(1)
  4. 输入输出电阻的个人理解
  5. 按照标签号某行读出所有数据,并且按照签号作为文件名重新写入文件。文件格式等同源文件。
  6. 计算机陕西工业职业技术学院,2019年度陕西省中等职业学校教师省级培训计算机动漫与游戏制作开班典礼在我院举行...
  7. 压缩包资源解压时需要密码
  8. SQL函数 LTRIM和RTRIM的用法
  9. python数组相减_对Python 中矩阵或者数组相减的法则详解
  10. 传个参数都有坑,我蚌埠了!