一个用于批量给图片增加水印的Python库

news2025/4/20 1:44:41

本文推荐一个开源免费Python脚本,可以在指定目录及其子目录中批量给图像添加水印,当然,你也可以集成到你的Web应用中。

给图片、视频增加水印以确认版权或者增加效果,是在媒体内容信息经常需要用到的技术。本文推荐一个开源免费Python脚本,可以在指定目录及其子目录中批量给图像添加水印,当然,你也可以集成到你的Web应用中。

源码地址:https://github.com/theitrain/watermark

该Python项目依赖于Pillow库,需要先安装它:

pip install pillow

如何使用:

执行该项目的脚本可以携带几个参数:

  • 要添加水印的图像所在的文件夹
  • 要添加的水印/徽标的路径
  • 要放置水印/徽标的位置(可选)
  • 要保存水印图像的目录(可选;如果未提供,水印图像将覆盖原始图像)
  • 水印/徽标周围的填充(以像素为单位)(可选;默认值为0)

放置水印的有效位置包括:

  • topleft 左上角
  • topright 右上角
  • bottomleft 左下角
  • bottomright右下角
  • center 中间(如果未指定位置,则center为默认值)

除了以上位置,其他位置都将报错。

例子:

1.使用watermark.py,请指定位置、目标目录,并将水印/徽标缩放为图像宽度的30%:

python watermark.py './images' 'logo.png' --pos bottomright --new_dir './watermarked_images' --scale 30

2.使用watermark.py,请指定位置和目标目录:

python watermark.py './images' 'logo.png' --pos bottomright --new_dir './watermarked_images'

3.在水印周围添加填充,请执行以下操作:

python watermark.py './images' 'logo.png' --pos topleft --padding 20

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1383290.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis集群(主从复制)

主从复制:是指将一台 Redis 服务器的数据,复制到其他的 Redis 服务器。 前者称为主节点(master),后者称为从节点(slave),数据的复制是单向的,只能 由主节点到从节点。 可以实现数据备份。即使当其中一台机器宕机其他机器还可以正…

如何运用AR技术提升制造效率?这里有答案!

当谈及AR技术在工业领域的应用,首先让人想到的是它为企业带来的巨大变革。从工业设计和制造到设备维护和维修,再到培训和技能传承以及设备操作和监测,AR技术凭借其独特的方式,帮助企业实现更高效的生产和运营。通过这些环节的优化…

office办公技能|word中的常见通配符使用

一、删除Word中含有指定内容的整行 操作方法: 1、快捷键 CtrlH,打开Word的查找替换窗口,单击【更多】按钮,勾选“使用通配符”。 2、在查找内容处,输入“替换内容*^13”,替换为处什么都不填。 3、单击【…

MySQL系列之数据导入导出

前言 大数据与云计算作为当今时代,数据要素发展的“动力引擎”,已经走进了社会生活的方方方面。而背后承载的云服务或数据服务的高效运转,起了决定作用。 作为数据存储的重要工具,数据库的品类和特性也日新月异。从树型、网络型…

第380场周赛挑战:二分,数位dp和KMP算法的综合运用

比赛地址 卡在第三题了,应该看看第4题kmp套模版的 一、最大频率元素计数 class Solution:def maxFrequencyElements(self, nums: List[int]) -> int:frequency {} # 哈希表用于统计频率max_freq 0 # 存储最大频率# 统计每个元素的频率for num in nums:i…

机器学习周报第28周

目录 摘要Abstract一、文献阅读1.题目:2.摘要3.问题描述4.过去方案5.论文方案6.论文模型7.相关代码 摘要 本周阅读了一篇混沌时间序列预测的论文,论文模型主要使用的是时间卷积网络(Temporal Convolutional Network,TCN&#xff…

1.3K Star,让发送短信变的更简单

Hi,骚年,我是大 G,我的公众号「GitHub指北」会推荐 GitHub 上有趣有用的项目,一分钟 get 一个优秀的开源项目,挖掘开源的价值。 前言 在日常的开发过程中,短信的发送经常使用(尤其是中小型的外…

Java智能导诊系统 (3D人体导医)源码

智能导诊是一种利用人工智能技术来帮助患者进行自助问询及挂号服务的系统。通过智能导诊系统,患者可以输入自身疾病的症状表现,或选择身体部位,在系统的多维度计算下,系统会根据患者提供的信息精准推荐科室,并引导患者…

数据库备份脚本嘎嘎香,被秀到了!

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…

c++qt-基本组件

1. Designer 设计师(掌握) Qt包含了一个Designer程序,用于通过可视化界面设计开发界面,保存的文件格式为.ui(界面文件)。界面文件内部使用xml语法的标签式语言。 在Qt Creator中创建项目时,选中…

r语言拟合曲线

r语言拟合曲线 #圆滑曲线 library(ggalt) library(ggplot2) df <- read.csv("lqs-1.csv",headerT) p2<-ggplot(datadf,aes(xx,yy))geom_point(size1) geom_smooth(span0.1)p2结果

Error: L6218E: Undefined symbol 系列错误汇总 (referred from main.o)

传送门 错误1&#xff1a; Undefined symbol(referred from main.o)错误2&#xff1a;Undefined_symbol _use_two_region memory 错误1&#xff1a; Undefined symbol(referred from main.o) Cube_GPIO\Cube_GPIO.axf: Error: L6218E: Undefined symbol LED_GPIO_Init (referr…

OpenCV4.x(C++)人脸检测(眼睛、侧脸、正脸)

一、前言 OpenCV是一款广泛使用的计算机视觉库&#xff0c;提供了许多强大的功能&#xff0c;包括人脸检测和识别。人脸分类器是OpenCV中用于人脸检测的关键工具之一&#xff0c;能够快速准确地检测出图像中的人脸。 本文将介绍如何使用OpenCV自带的人脸分类器&#xff0c;并…

【SpringMVC快速使用】1.@RestController @RequestMapping 2.logback的使用

背景&#xff1a;为何从这个最简单的 例子写起呢&#xff1f; 那是因为我们的管理后台之类的都是别人写的&#xff0c;我也听说了大家说&#xff1a;只用Post请求就足够了&#xff0c;但是却发现&#xff0c;在浏览器中测试时&#xff0c;默认是GET请求&#xff0c;如果直接写…

【论文阅读】Consistency Models

文章目录 IntroductionDiffusion ModelsConsistency ModelsDefinitionParameterizationSampling Training Consistency Models via DistillationTraining Consistency Models in IsolationExperiment Introduction 相比于单步生成的模型&#xff08;例如 GANs, VAEs, normalizi…

自行车商城网站网页设计与制作web前端设计html+css+js成品。电脑网站制作代开发。vscodeDrea

【自行车商城网站网页设计与制作web前端设计htmlcssjs成品。电脑网站制作代开发。vscodeDrea】 https://www.bilibili.com/video/BV1wT4y1p7jq/?share_sourcecopy_web&vd_sourced43766e8ddfffd1f1a1165a3e72d7605

Docker五部曲之四:Docker Compose

文章目录 前言Compose应用程序模型Compose规范顶层属性servicenetworkvolumesconfigssecrets 环境变量.env文件environment属性主机shell中的环境变量 Profiles&#xff08;剖面&#xff09;启动剖面自动启动剖面和依赖项解析 多compose.yml文件共享与扩展构建规范构建属性 部署…

MySQL主从复制配置(双主双从)

一、架构规划 一主多从可以缓解读的压力&#xff0c;但是如果主宕机了&#xff0c;所有从都不能写了&#xff0c;因此我们配置双主双从。 1、规划图 master1和master2互为主从关系&#xff0c;slave1是master1的从&#xff0c;slave2是master2的从。 2、环境准备 准备四台机…

浅谈对Maven的理解

一、什么是Maven Maven——是Java社区事实标准的项目管理工具&#xff0c;能帮你从琐碎的手工劳动中解脱出来&#xff0c;帮你规范整个组织的构建系统。不仅如此&#xff0c;它还有依赖管理、自动生成项目站点等特性&#xff0c;已经有无数的开源项目使用它来构建项目并促进团队…

WEB服务器-Tomcat

3. WEB服务器-Tomcat 3.1 简介 3.1.1 服务器概述 服务器硬件 指的也是计算机&#xff0c;只不过服务器要比我们日常使用的计算机大很多。 服务器&#xff0c;也称伺服器。是提供计算服务的设备。由于服务器需要响应服务请求&#xff0c;并进行处理&#xff0c;因此一般来说…