最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python批量圖片去水印的方法

 更新時間:2021年05月26日 10:40:38   作者:chingho  
​平常工作中,有時為了采用網(wǎng)絡(luò)的一些素材,但這些素材往往被打了水印,如果我們不懂PS就無法去掉水印,或者無法批量去掉水印。本文就介紹了Python批量圖片去水印的方法,感興趣的可以了解一下

​平常工作中,有時為了采用網(wǎng)絡(luò)的一些素材,但這些素材往往被打了水印,如果我們不懂PS就無法去掉水印,或者無法批量去掉水印。這些就很影響我們的工作效率。

今天我們就一起來,用Python + OpenCV三步去除水印,去水印需要使用的庫:cv2、numpy。cv2是基于OpenCV的圖像處理庫,可以對圖像進(jìn)行腐蝕,膨脹等操作;numpy這是一個強(qiáng)大的處理矩陣和維度運(yùn)算的庫。

圖片去水印原理

1、標(biāo)定噪聲的特征,使用cv2.inRange二值化標(biāo)識噪聲對圖片進(jìn)行二值化處理,具體代碼:cv2.inRange(img, np.array([200, 200, 240]), np.array([255, 255, 255])),把[200, 200, 200]~[255, 255, 255]以外的顏色處理為0;

2、使用OpenCV的dilate方法,擴(kuò)展特征的區(qū)域,優(yōu)化圖片處理效果;

3、使用inpaint方法,把噪聲的mask作為參數(shù),推理并修復(fù)圖片。

去掉右下角的水印步驟

1、從源圖片,截取右下角部分,另存為新圖片;

2、識別水印,顏色值為:[200, 200, 200]~[255, 255, 255]

3、去掉水印,還原圖片;

4、把源圖片、去掉水印的新圖片,進(jìn)行重疊合并;

實(shí)現(xiàn)代碼

效果對比

import cv2
import numpy as np
from PIL import Image
import os
​
dir = os.getcwd()
path = "1.jpg"
newPath = "new.jpg"
img=cv2.imread(path,1)
hight,width,depth=img.shape[0:3]
​
#截取
cropped = img[int(hight*0.8):hight, int(width*0.7):width]  # 裁剪坐標(biāo)為[y0:y1, x0:x1]
cv2.imwrite(newPath, cropped)
imgSY = cv2.imread(newPath,1)
​
#圖片二值化處理,把[200,200,200]-[250,250,250]以外的顏色變成0
thresh = cv2.inRange(imgSY,np.array([200,200,200]),np.array([250,250,250]))
#創(chuàng)建形狀和尺寸的結(jié)構(gòu)元素
kernel = np.ones((3,3),np.uint8)
#擴(kuò)展待修復(fù)區(qū)域
hi_mask = cv2.dilate(thresh,kernel,iterations=10)
specular = cv2.inpaint(imgSY,hi_mask,5,flags=cv2.INPAINT_TELEA)
cv2.imwrite(newPath, specular)
​
#覆蓋圖片
imgSY = Image.open(newPath)
img = Image.open(path)
img.paste(imgSY, (int(width*0.7),int(hight*0.8),width,hight))
img.save(newPath)

實(shí)現(xiàn)效果如下圖,這個默認(rèn)是去掉白色右下角的水印,大家可以根據(jù)自己的需求進(jìn)行更改。

到此這篇關(guān)于Python批量圖片去水印的示例代碼的文章就介紹到這了,更多相關(guān)Python批量圖片去水印的示例代碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python命令行引導(dǎo)用戶填寫可用的ip地址和端口號實(shí)現(xiàn)

    python命令行引導(dǎo)用戶填寫可用的ip地址和端口號實(shí)現(xiàn)

    這篇文章主要為大家介紹了python命令行引導(dǎo)用戶填寫可用的ip地址和端口號實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • Python實(shí)現(xiàn)將Markdown一鍵打印為A4專業(yè)文檔

    Python實(shí)現(xiàn)將Markdown一鍵打印為A4專業(yè)文檔

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)將Markdown一鍵打印為A4專業(yè)文檔,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下
    2026-01-01
  • Python中Django 后臺自定義表單控件

    Python中Django 后臺自定義表單控件

    本篇文章主要介紹了Python中Django 后臺自定義表單控件,其實(shí) django 已經(jīng)為我們提供了一些可用的表單控件,比如:多選框、單選按鈕等,有興趣的開業(yè)了解一下。
    2017-03-03
  • pandas pivot_table() 按日期分多列數(shù)據(jù)的方法

    pandas pivot_table() 按日期分多列數(shù)據(jù)的方法

    今天小編就為大家分享一篇pandas pivot_table() 按日期分多列數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python3多線程知識點(diǎn)總結(jié)

    python3多線程知識點(diǎn)總結(jié)

    在本篇文章里小編給各位分享的是關(guān)于python3多線程的相關(guān)知識點(diǎn)內(nèi)容,以后需要的朋友們可以參考下。
    2019-09-09
  • Python的Tornado框架的異步任務(wù)與AsyncHTTPClient

    Python的Tornado框架的異步任務(wù)與AsyncHTTPClient

    Tornado的奧義就在于異步處理來提高單線程的Python程序執(zhí)行性能,這里我們就來詳解Python的Tornado框架的異步任務(wù)與AsyncHTTPClient,需要的朋友可以參考下
    2016-06-06
  • python變量的存儲原理詳解

    python變量的存儲原理詳解

    這篇文章主要介紹了python變量的存儲原理詳解,對于python而言,python的一切變量都是對象,變量的存儲,采用了引用語義的方式,存儲的只是一個變量的值所在的內(nèi)存地址,而不是這個變量的只本身,需要的朋友可以參考下
    2019-07-07
  • Python使用Flask實(shí)現(xiàn)將DOCX轉(zhuǎn)為Markdown

    Python使用Flask實(shí)現(xiàn)將DOCX轉(zhuǎn)為Markdown

    這篇文章主要為大家詳細(xì)介紹了如何基于Python的Flask框架編寫一個項(xiàng)目,能夠?qū)⑸蟼鞯?docx文件轉(zhuǎn)換為 Markdown,并提取圖片以供下載預(yù)覽,感興趣的小伙伴可以了解下
    2026-01-01
  • 詳解Python中的strftime()方法的使用

    詳解Python中的strftime()方法的使用

    這篇文章主要介紹了詳解Python中的strftime()方法的使用,是Python入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • matplotlib 輸出保存指定尺寸的圖片方法

    matplotlib 輸出保存指定尺寸的圖片方法

    今天小編就為大家分享一篇matplotlib 輸出保存指定尺寸的圖片方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05

最新評論

仙桃市| 黔南| 金秀| 独山县| 浠水县| 探索| 明星| 云安县| 闽清县| 广饶县| 莱阳市| 甘孜县| 朔州市| 三穗县| 宁波市| 资源县| 岗巴县| 武隆县| 墨江| 来凤县| 壶关县| 香格里拉县| 酒泉市| 皋兰县| 大安市| 长岛县| 陆良县| 伽师县| 营口市| 阳新县| 抚松县| 资兴市| 乌拉特中旗| 岳普湖县| 青铜峡市| 黎平县| 平果县| 晋宁县| 乌兰浩特市| 鹤岗市| 甘洛县|