python去水印保存图片,python批量添加水印

  python去水印保存图片,python批量添加水印

  本文主要介绍如何使用python实现简单的水印去除。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。

  在做视频或者图片处理的时候,经常会遇到水印,或者需要去除图片的某一部分。这时候就需要想办法把不想要的部分去掉。下面的工具可以控制鼠标改变图片任意部分的颜色,从而去除水印。在这里,我们默认将其更改为白色。

  

一、准备工作

  1.CV2库

  2.PIL图书馆

  

二、源码

  导入cv2 #导入相关库

  从PIL进口图片

  全球img

  全局点1、点2

  def on_mouse(事件,x,y,标志,参数):

  全局img,点1,点2

  img2=img.copy()

  if event==cv2 . event _ lbuttondown 3360 #左键单击

  点1=(x,y)

  cv2.circle(img2,point1,10,(255,255,255),2)

  cv2.imshow(image ,img2)

  Elif event==cv2.event _ mousemove和(flags cv2 . event _ flag _ lbutton)3360 #按住左键拖动。

  cv2.rectangle(img2,point1,(x,y),(255,255,255),2)

  cv2.imshow(image ,img2)

  elif event==cv2 . event _ lbuttonup : #左键释放

  点2=(x,y)

  cv2.rectangle(img2,point1,point2,(255,255,255),2)

  cv2.imshow(image ,img2)

  min_x=min(点1[0],点2[0])

  min_y=min(点1[1],点2[1])

  width=abs(点1[0] -点2[0])

  height=abs(点1[1] -点2[1])

  cut_img=img[min_y:min_y高度,min_x:min_x宽度]

  cv2.imwrite(first.png ,cut_img)

  将裁剪后的图片变成白色。

  定义测试2():

  i=1

  j=1

  Img=Image.open(first.png) #读取系统内部照片

  Print(img.size) #打印图像尺寸

  print(img.getpixel((4,4)))

  宽度=img.size[0] #长度

  Height=img.size[1] # width

  对于I,在范围(0,宽度): #内遍历所有长度点

  对于范围内(0,高度): #遍历所有宽度点

  Data=(img.getpixel((i,j))) #打印此图所有点

  Print(data) #打印每个像素的颜色RGBA的值(r,g,b,alpha)。

  Print(data[0]) #打印RGBA的R值

  if (data[0]!=255和数据[1]!=255和数据[2]!=255): # RGBA R值大于170,G值大于170,B值大于170

  Img.putpixel ((I,J),(255,255,255,255)) #然后把这些像素的颜色改成大红色。

  Img=img.convert(RGB) #将图像强制转换为RGB。

  img.save(mid.png )

  def testMain():

  img=image . open(/home/gt Wang/1000000 . png )

  img2=Image.open(mid.png )

  layer=Image.new(RGBA ,img.size,(255,255,255,0))

  layer.paste(img2,(point1))

  img _ after=image.composite(layer,img,layer)

  img_after.show()

  img_after.save(output.png )

  定义主():

  全球img

  img=cv2.imread(input.png )

  cv2.namedWindow(image )

  cv2.setMouseCallback(image ,on_mouse)

  cv2.imshow(image ,img)

  cv2.waitKey(0)

  if __name__==__main__:

  主()

  测试2()

  testMain()

  这就是本文的全部内容。希望对大家的学习有所帮助,也希望大家能支持盛行的IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: