IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 【给照片加水印】 -> 正文阅读

[人工智能]【给照片加水印】

实验目的

(1)理解空域添加数字水印的原理。
(2)熟练安装Python扩展库pillow。
(3)熟悉Python扩展库pillow操作图像的方法。
(4)熟练运用字典结构。

实验内容

首先准备一个图像文件,然后把该文件中的图像内容作为数字水印批量添加到当前文件夹中所有图像文件中,要求水印在目标图像文件中的位置随机选择为左上角、右下角或图像中间,并且水印图像的背景在目标图像中设置为透明。

代码

from PIL import Image
import random
import os

def addwm(imagepath, k):
    path1 = "D:/Desktop/PyCharmWork/Demo/work-09-2022-04-22/水印.png"         #水印路径
    path2 = "D:/Desktop/PyCharmWork/Demo/work-09-2022-04-22/picture/" + imagepath   #需要添加水印的路径
    path3 = "D:/Desktop/PyCharmWork/Demo/work-09-2022-04-22/result/"        #另存路径
    wm = Image.open(path1).convert("RGBA")
    img = Image.open(path2).convert("RGBA")
    newwm = wm.resize((300, 300))
    newimg = img.resize((450, 500))
    width1, height1 = newwm.size
    width2, height2 = newimg.size
    for i in range(width1):
        for j in range(height1):
            rgba = newwm.getpixel((i, j))
            newrgba = rgba[:-1] + (100,)
            newwm.putpixel((i, j), newrgba)
    position = [(0, 0), (width2 // 2 - width1 // 2, height2 // 2 - height1 // 2), (width2 - width1, height2 - height1)]
    tuce = Image.new("RGBA", (width2, height2), (0, 0, 0, 0))
    tuce.paste(newwm, random.choice(position))
    out = Image.composite(tuce, newimg, tuce)
    out.save(path3 + str(k + 1) + ".png")


def start():
    path = "D:/Desktop/PyCharmWork/Demo/work-09-2022-04-22/picture/"
    images = os.listdir(path)
    withs = [".jpg", ".png", ".bmp"]
    for i in range(len(images)):
        hname = os.path.splitext(images[i])[1]
        if hname in withs:
            addwm(images[i], i)
            print("图片" + images[i] + "添加水印成功")


if __name__ == "__main__":
    start()

结果:

Python 3.9.7 (default, Sep 16 2021, 16:59:28) [MSC v.1916 64 bit (AMD64)] on win32
runfile('D:/Desktop/PyCharmWork/Demo/work-09-2022-04-22/__init__.py', wdir='D:/Desktop/PyCharmWork/Demo/work-09-2022-04-22')
图片111111.jpg添加水印成功
图片picture.jpg添加水印成功

参考资料

【1】图像批量添加数字水印_变强的猴子的博客-CSDN博客

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-28 11:50:53  更:2022-04-28 11:53:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:17:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码