OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理
OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理
目录
OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理
前言
分析
核心代码
颜色美白前后对比·20个单位
颜色美白前后对比·40个单位
颜色美白前后对比·80个单位
示例源码
前言
计算机视觉市场巨大而且持续增长,且这方面没有标准API,如今的计算机视觉软件大概有以下三种:
1、研究代码(慢,不稳定,独立并与其他库不兼容)
2、耗费很高的商业化工具(比如Halcon, MATLAB+Simulink)
3、依赖硬件的一些特别的解决方案(比如视频监控,制造控制系统,医疗设备)这是如今的现状,而标准的API将简化计算机视觉程序和解决方案的开发,OpenCV致力于成为这样的标准API。
OpenCV致力于真实世界的实时应用,通过优化的C代码的编写对其执行速度带来了可观的提升,并且可以通过购买Intel的IPP高性能多媒体函数库(Integrated Performance Primitives)得到更快的处理速度。
故而我们选择学习OpenCV,我们来一步步的学习OpenCV。
很多图片光线不是很好,所以我们需要单独去美白一下。
我们先用一张图片来看一下效果:
黑色图片
分析
我们这里分为(r,g,b)来进行分析,它们的色值范围都是255,也就可以理解成(255,255,255),那么我们都知道#ffffff是【白色】,那么越趋近于这个数值也就越接近白色,我们在原来颜色的基础上都加上一定的数值,例如20~50,但是这个值一定要小于255,那么对应每个像素点的颜色就会相对应的增白,接下来我们进行具体测试。
核心代码
就是遍历的过程中每个点都增强一下颜色。
value = 50 # 增强20个单位
for i in range(w):for j in range(h):(b, g, r) = img[i, j]b = min(255, b + value)g = min(255, g + value)r = min(255, r + value)img[i, j] = (b, g, r)
颜色美白前后对比·20个单位
增白强度不足,我们更换成40来试一试。
颜色美白前后对比·40个单位
相对来数白的就很多了,我们再次加大强度试一试。
颜色美白前后对比·80个单位
80个单位,这回就更白了。
示例源码
import cv2img = cv2.imread("black.png")
# 显示老图片用于对比
cv2.imshow('old', img)
w, h, d = img.shape
value = 80 # 增强20个单位
for i in range(w):for j in range(h):(b, g, r) = img[i, j]b = min(255, b + value)g = min(255, g + value)r = min(255, r + value)img[i, j] = (b, g, r)
# 显示新图片
cv2.imshow('show', img)
cv2.waitKey(0)
我给的示例很直接,希望能直接给予到你帮助。
OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理相关推荐
- OpenCV这么简单为啥不学——1.10、addWeighted设置图片透明度
OpenCV这么简单为啥不学--1.10.addWeighted设置图片透明度 目录 OpenCV这么简单为啥不学--1.10.addWeighted设置图片透明度 前言 cv2.addWeighte ...
- OpenCV这么简单为啥不学——1.2、图片截取(数组截取)
OpenCV这么简单为啥不学--1.2.图片截取(数组截取) 目录 OpenCV这么简单为啥不学--1.2.图片截取(数组截取) 前言 图片截取 总结 前言 计算机视觉市场巨大而且持续增长,且这方面没 ...
- OpenCV这么简单为啥不学——1.5、解决putText中文乱码问题
OpenCV这么简单为啥不学--1.5.解决putText中文乱码问题 目录 OpenCV这么简单为啥不学--1.5.解决putText中文乱码问题 前言 putText中文乱码问题 putText中 ...
- OpenCV这么简单为啥不学——1.12、使用ssim函数对两张照片进行相似度分析
OpenCV这么简单为啥不学--1.12.使用ssim函数对两张照片进行相似度分析 目录 OpenCV这么简单为啥不学--1.12.使用ssim函数对两张照片进行相似度分析 前言 ssim函数 图像相 ...
- OpenCV这么简单为啥不学——1.4、基础标识绘制(绘制线line函数、rectangle函数绘制四边形、circle函数绘制圆形、putText函数绘制文字、putText绘制中文文字)
OpenCV这么简单为啥不学--1.4.基础标识绘制(绘制线line函数.rectangle函数绘制四边形.circle函数绘制圆形.putText函数绘制文字.putText绘制中文文字) 目录 O ...
- OpenCV这么简单为啥不学——1.11、蓝背景证件照替换白色或红色
OpenCV这么简单为啥不学--1.11.蓝背景证件照替换白色或红色 目录 OpenCV这么简单为啥不学--1.11.蓝背景证件照替换白色或红色 前言 蓝背景证件照替换白色 蓝背景证件照替换红色 总结 ...
- python人像和图片比对_python 使用OpenCV进行简单的人像分割与合成
实现思路 通过背景建模的方法,对源图像中的动态人物前景进行分割,再将目标图像作为背景,进行合成操作,获得一个可用的合成影像. 实现步骤如下. 使用BackgroundSubtractorMOG2进行背 ...
- opencv学习—简单车牌识别操作(python)
opencv学习-简单车牌识别操作(python) 目录 opencv学习-简单车牌识别操作(python) 利用opencv进行车牌识别的详细流程如下: 1.车牌检测 2.分割车牌号并进行识别 3. ...
- OpenCV+SVM简单应用-------路面箭头分类
OpenCV+SVM简单应用-------路面箭头分类 博客分类: openCV C++ 机器学习 openCV,图像处理 问题内容:路面箭头检测与识别(该部分主要介绍基于SVM的分类,也就是识别,检 ...
最新文章
- dataframe python格式_python3.6 pandas,Series和DataFrame基础格式与用法,附代码实例
- 数字雕刻中“节奏”的作用
- java面试题三十一
- 常见浏览器兼容性问题及解决方案
- python装饰器用法_深入浅出分析Python装饰器用法
- 3 个月如何从小白到 Python 高手?清华博士带你入门带你飞!
- 特斯拉推出通用钥匙带 官方售价145元
- win10定时关机c语言,win10 定时关机命令怎么设置_win10怎么设置定时关机指令-win7之家...
- mysql tar 卸载_mysql linux 安装卸载
- 正大期货新闻:印度调高了棕榈油以及豆油的进口基础价格
- das dsadsa
- h264基础知识梳理
- 测试用例的思路---矿泉水瓶
- Java字符串格式化详解
- 蓝牙核心协议学习 -- 基带协议(Baseband)
- 遗传算法求解TSP旅行商问题
- Windows orb-slam2 单目测试工程
- 微信小程序傻瓜制作_不会编程,如何傻瓜式一键制作一个微信小程序?
- Pygame飞机大战(四)——创建己方飞机的类,并添加子弹吧
- Android opengrok
热门文章
- 2014广西大学计算机和信息工程学院调剂,这7所高效公布大量调剂专业信息 有热门专业吗?...
- 快速创建软件安装包-ClickOnce
- 【生活思考】恋爱与工作
- 滑动窗口算法(思想)
- 闲鱼公布十大转卖理由:“老婆不让”3 年高居榜首,“老公不让”首进前十
- Mac OS上PHP环境配置
- mysql停止某个用户的连接_如何查看mysql当前的连接数,如何停止某个连接
- 系统学习机器学习之总结(二)--样本不平衡问题处理
- 详解RPC框架核心原理
- 转:愿景可以简单、平凡,但必须有效、可行