php去除图片水印源代码,基于python的图片修复程序(实现水印去除)
这篇文章主要给大家介绍了关于python图片修复程序的相关资料,可以用于实现图片中水印去除,主要利用的是OpenCV这个框架实现的,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧
图片修复程序-可用于水印去除
在现实的生活中,我们可能会遇到一些美好的或是珍贵的图片被噪声干扰,比如旧照片的折痕,比如镜头上的灰尘或污渍,更或者是某些我们想为我所用但有讨厌水印,那么有没有一种办法可以消除这些噪声呢?
答案是肯定的,依然是被我们用了无数次的OpenCV这款优秀的框架。
OpenCV
目前,OpenCV逐步成为一个通用的基础研究和产品开发平台。OpenCV这一名称包含了Open和 Computer Vision两者的意思。实际上,Open指Open Source(开源,即开放源代码),Computer Vision则指计算机视觉。OpenCV的发展对软件的开发具有重要影响。想要了解更多的话大家可以参考这篇文章:http://www.jb51.net/article/127911.htm
效果预览
图片修复原理
那OpenCV究竟是怎么实现的,简单的来说就是开发者标定噪声的特征,在使用噪声周围的颜色特征推理出应该修复的图片的颜色,从而实现图片修复的。
程序实现解析标定噪声的特征,使用cv2.inRange二值化标识噪声对图片进行二值化处理,具体代码:cv2.inRange(img, np.array([240, 240, 240]), np.array([255, 255, 255])),把[240, 240, 240]~[255, 255, 255]以外的颜色处理为0;
使用OpenCV的dilate方法,扩展特征的区域,优化图片处理效果;
使用inpaint方法,把噪声的mask作为参数,推理并修复图片;
完整代码
#coding=utf-8
#图片修复
import cv2
import numpy as np
path = "img/inpaint.png"
img = cv2.imread(path)
hight, width, depth = img.shape[0:3]
#图片二值化处理,把[240, 240, 240]~[255, 255, 255]以外的颜色变成0
thresh = cv2.inRange(img, np.array([240, 240, 240]), np.array([255, 255, 255]))
#创建形状和尺寸的结构元素
kernel = np.ones((3, 3), np.uint8)
#扩张待修复区域
hi_mask = cv2.dilate(thresh, kernel, iterations=1)
specular = cv2.inpaint(img, hi_mask, 5, flags=cv2.INPAINT_TELEA)
cv2.namedWindow("Image", 0)
cv2.resizeWindow("Image", int(width / 2), int(hight / 2))
cv2.imshow("Image", img)
cv2.namedWindow("newImage", 0)
cv2.resizeWindow("newImage", int(width / 2), int(hight / 2))
cv2.imshow("newImage", specular)
cv2.waitKey(0)
cv2.destroyAllWindows()
相关推荐:
php去除图片水印源代码,基于python的图片修复程序(实现水印去除)相关推荐
- 【Python+图片切割+图片合并】基于Python的图片批量切割与合并(保持原像素不变,不会出现像素大小不匹配、填充黑边的问题)
基于Python的图片批量切割与合并(保持原像素不变,不会出现像素大小不匹配.填充黑边的问题) 前言 效果图 1.批量读取文件 2.清空目标目录方法(配合切割图片方法使用) 3.批量切割图片(像素不足 ...
- python 去除水印_基于python的图片修复程序(实现水印去除)
图片修复程序-可用于水印去除 在现实的生活中,我们可能会遇到一些美好的或是珍贵的图片被噪声干扰,比如旧照片的折痕,比如镜头上的灰尘或污渍,更或者是某些我们想为我所用但有讨厌水印,那么有没有一种办法可以 ...
- python如何获取图片的尺寸_如何基于Python获取图片的物理尺寸
如何基于Python获取图片的物理尺寸 这篇文章主要介绍了如何基于Python获取图片的物理尺寸,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 问题 ...
- 基于Python实现图片格式转换的小程序
基于Python实现图片格式转换的小程序 特点: 批量处理图片 转换常见的4种图片格式 运行窗口 运行窗口-1 选择图片(可批量选择)-2 假设选中4张JEPG格式的图片 格式选择窗口-3 假设选择目 ...
- python 放射 水平_基于Python的放射性核素大气扩散程序初步开发与验证
龙源期刊网 http://www.qikan.com.cn 基于 Python 的放射性核素大气扩散程序初 步开发与验证 作者:刘朋杰,张旖旎,刘天元 来源:<科学与财富> 2018 年第 ...
- 基于python的图片修复程序-可用于水印去除
图片修复程序-可用于水印去除 在现实的生活中,我们可能会遇到一些美好的或是珍贵的图片被噪声干扰,比如旧照片的折痕,比如镜头上的灰尘或污渍,更或者是某些我们想为我所用但有讨厌水印,那么有没有一种办法可以 ...
- python如何爬取图片到指定文件夹论文_基于Python的图片爬虫程序设计
互联网中包含大量有价值的 数据,网络爬虫通过既定规则可 以自动地抓取互联网数据并下载 至本地存储.研究网络爬虫的工 作原理和基于 Python 网络信息爬 取技术模块功能,基于 Requests- B ...
- 基于python的图片序列转gif
继续接着上一篇的思路:基于Python和OpenCV的图片序列转视频 我的主要诉求是想让图片动起来,用opencv转为视频在电脑上看看倒还行,保存成文件就太大了. 诶,保存成gif不也可以看动图吗? ...
- 基于Python改变图片像素大小
用python改变图片像素大小非常快速,编辑好代码运行程序不到1秒就产生结果. 有的网站上传照片时,限定了照片像素大小,这时候小小一份代码就可以快速解决我们的需求. 下面代码需要修改main函数中的f ...
- 基于Python实现 图片的Base64加密与解密
看到以iBV开头的乱码99.99%的情况下是图片的Baes64加密,例如 图片转Base64 import base64 # 对图片进行二进制B64加密 # 看到iBV 99%的情况下是png经过ba ...
最新文章
- DAS、SAN和NAS三种服务器存储方式
- 判断单链表是否带环?若带环,求环的长度?求环的入口点?(C语言)
- python整体设计目标_Python 入門語法和類型(学习)
- 计算机基础知识整理大全_知识大全 | 物理选修35quot;波粒二象性quot;
- C#.NET学习笔记1---C#.NET简介
- bcp: 给boost瘦身
- Atitit 融合战略的艺术 目录 1.1. Os方向 uwp ms。。	1 1.2. Sdk 方向 。ms netcore	1 2. Netcore优点	1 2.1. .NET应用程序可以
- 2.Windows 界面技术发展现状
- weblogic部署静态资源文件html,weblogic部署静态html
- 2020数学建模国赛A题 炉温曲线 心得
- 安川机器人外部急停信号点不开_安川机器人示教器常见故障维修方法
- python主成分分析_Python主成分分析-经典案例分析
- 蓝桥杯练习题(三):Python组之算法训练提高综合五十题
- 自动修改文章的软件-自动修改文案原创软件
- [Luogu] 逆序数P5149 会议座位
- Python画各种樱花
- 若依系统v-hasPermi
- JIRA 如何连接到云平台的 bitbucket
- android空指针异常Attempt to invoke virtual method
- xmind转Excel测试用例
热门文章
- springboot中如何graceful关闭服务器
- JavaScript删除节点
- python zipfile 压缩文件夹的方法
- 鸿蒙双系统怎么切换,苹果 Mac双系统如何切换?用Option键切换双系统的步骤分享...
- 超低插损的新材料射频开关(PCM RF switch)的新进展
- python将pvr格式转换成pvr.ccz的代码
- vue 开发的微信公众号网页 添加背景音乐,以及音乐图标旋转动画
- IOI2022 D2T1 数字电路(计数概率/组合数学+线段树区间翻转)
- OSChina 周五乱弹 ——电影里有在线/离线,递归,循环,矩阵等概念?
- Wallpaper Engine壁纸推荐,让程序猿的桌面优美起来