Opencv 去高光或镜面反射(illuminationChange)
https://blog.csdn.net/hello_yxc/article/details/60776315
如下图片中间存在高光,需要消除高光:
涉及的Opencv API为illuminationChange:
处理后的效果如下:(图片顺序对应src, mask, dst三个参数)
最后处理完的感觉类似拿一块玻璃挡住mask所在的区域。
alpha,beta两个参数共同决定消除高光后图像的模糊程度(范围0~2,0比较清晰,2比较模糊)。
import cv2
import numpy as npdef illum(img):# img = cv2.imread("test2.jpg")# img = img[532:768, 0:512]img_bw = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)thresh = cv2.threshold(img_bw, 180, 255, 0)[1]cnts = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)[1]img_zero = np.zeros(img.shape, dtype=np.uint8)# img[thresh == 255] = 150for cnt in cnts:x, y, w, h = cv2.boundingRect(cnt)img_zero[y:y+h, x:x+w] = 255# cv2.imshow("mask", mask)mask = img_zero# cv2.imshow("mask", mask)result = cv2.illuminationChange(img, mask, alpha=1, beta=2)# cv2.imshow("result", result)# cv2.waitKey(0)return result
Opencv 去高光或镜面反射(illuminationChange)相关推荐
- CVPR 2021 论文大盘点-去阴影、去反光、去高光、去伪影篇
本篇文章继续总结CVPR 2021 底层图像处理相关论文,方向包含去阴影.去反光.去高光.去伪影等.共计 11 篇. 大家可以在: https://openaccess.thecvf.com/CVPR ...
- Opencv去除高光的算法--Highlights Removal
http://hi.baidu.com/belial/item/9956917a0bb48038714423a2 这篇日志主要是根据文章"实时单幅图片高光去除算法"(篇一)和&qu ...
- iPhone图标去高光
iphone上一个个带有玻璃质感的小按钮,给了大家很好的体验.可是,有些时候,玻璃质感(高光效果)又会让我们的icon/logo看起来模糊,不清楚,不能让我们的icon独树一帜,那么现在我们要去高光( ...
- opencv祛除高光
代码是直接借鉴的Opencv去除高光_SkyrimDragonBorn的博客-CSDN博客 原博客是c++,我这边只是使用python进行翻译了一下 参考的论文应该是这个: (1) Real-Time ...
- PS人物脸部去高光简单之法
案例素材图: 方法原理步骤:得到高光面的选区,然后吸取高光面附近的颜色填充上去,这样就达到了去高光的效果. 得到高光选区的方法有很多种,要提取这种选区,通过阿尔法通道是最合适不过的了,本案例就通过阿尔 ...
- matlab 去高光,图像处理-去高光/直方图均衡
主要是根据文章"实时单幅图片高光去除算法"(篇一)和"Real-time Specular Highlight Removal Using a Single Image ...
- OpenCV图像高光
目录 实现原理 代码实现 结果 实现原理 1)读取识别图像的原图,并转灰度图,再归一化. // 生成灰度图 Mat gray = Mat::zeros(input.size(), CV_32FC1); ...
- python opencv去图片水印
本文转载自:http://blog.csdn.net/androidmylove/article/details/41960111 背景] 最近有一个需要为图片去水印的需求,于是各种折腾开始. [背景 ...
- Opencv去除高光
借鉴了yuyu[1]的代码,进行补全和小部分修改 #include<opencv2\opencv.hpp> #include<opencv2\highgui\highgui.hpp& ...
最新文章
- windows 7 64bit安装apche php
- 涨姿势 |你所不知道的5 个AR增强现实新趋势
- 验证码的编写——本质:图片目的:防止恶意表单注册
- 【mongodb环境】在ubuntu上搭建mongodb,并且开启远程连接
- Java Annotation详解
- 7-234 两个有序序列的中位数 (25 分)
- 全国计算机一级会考分类汇总吗,全国计算机一级考试分布
- vue+webapi 实现WebSocket 推送
- 服务器监控之 ping 监控
- OSEK网络管理入门
- SQLExpress数据库类型与AttachDbFilename用法
- 视频教程-2020年软考网络工程师基础知识历年真题详解软考视频教程-软考
- matlab编辑器背景颜色,matlab编辑器颜色风格设置
- SpaceSniffer(磁盘大小扫描分析) 彻底解决C盘爆满问题 清理C盘必备软件
- 4种工资条制作方法,总有一款适合你
- 云服务器哪家好?云服务器评测对比
- python爬虫 爬取清纯小姐姐图片
- C语言生成随机数的函数,为什么循环后随机数都一样?
- LCA问题(倍增法)
- 电视派显示服务器没给数据,创维\酷开电视一些常见问题解答
热门文章
- 无法对jar进行签名,Android jar signer问题
- Debian 新维护人员手册
- c mysql 索引_MySQL 多列索引的生效规则
- java环境变量用不用jre_为什么安装jdk时,会安装两个jre?不用配置jre的环境变量...
- css颜色rgba代码对照表_改善 CSS 的 10 个最佳实践
- linux下C code block环境,linux 使用 codeblocks
- 包 java中导入awt_Java 查找并高亮显示PDF文本
- 几条跟堆栈扯上关系的汇编指令
- 手下两个应届生,一个踏实喜欢加班,一个技术强挑活,怎么选?
- 一个接口是如何在Keycloak和Spring Security之间执行的