iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python如何在人物图中添加水印
  • 844
分享到

python如何在人物图中添加水印

2023-06-14 14:06:05 844人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章给大家分享的是有关python如何在人物图中添加水印的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;

这篇文章给大家分享的是有关python如何在人物图中添加水印的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Python有哪些常用库

python常用的库:1.requesuts;2.scrapy;3.pillow;4.twisted;5.numpy;6.matplotlib;7.pygama;8.ipyhton等。

1、主要流程

素材准备

人脸检测与人脸关键点检测

调整大小,添加帽子

2、步骤

(1)用dlib的正脸检测器进行人脸检测,用dlib提供的模型提取人脸的五个关键点:

# dlib人脸关键点检测器      predictor_path = "shape_predictor_5_face_landmarks.dat"      predictor = dlib.shape_predictor(predictor_path)         # dlib正脸检测器      detector = dlib.get_frontal_face_detector()       # 正脸检测      dets = detector(img, 1)       # 如果检测到人脸      if len(dets)>0:            for d in dets:              x,y,w,h = d.left(),d.top(), d.right()-d.left(), d.bottom()-d.top()              # x,y,w,h = faceRect                cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2,8,0)               # 关键点检测,5个关键点              shape = predictor(img, d)              for point in shape.parts():                  cv2.circle(img,(point.x,point.y),3,color=(0,255,0))               cv2.imshow("image",img)              cv2.waiTKEy()

(2)调整帽子的大小。

选择两个眼角点,找到中心作为放置帽子的X方向的参考坐标,Y方向的坐标用面框上线的Y坐标表示。然后我们根据检测到的人脸大小调整帽子的大小,让帽子的大小合适。

# 选取左右眼眼角的点              point1 = shape.part(0)              point2 = shape.part(2)               # 求两点中心              eyes_center = ((point1.x+point2.x)//2,(point1.y+point2.y)//2)               # cv2.circle(img,eyes_center,3,color=(0,255,0))                # cv2.imshow("image",img)              # cv2.waitKey()               #  根据人脸大小调整帽子大小              factor = 1.5              resized_hat_h = int(round(rgb_hat.shape[0]*w/rgb_hat.shape[1]*factor))              resized_hat_w = int(round(rgb_hat.shape[1]*w/rgb_hat.shape[1]*factor))               if resized_hat_h > y:                  resized_hat_h = y-1               # 根据人脸大小调整帽子大小              resized_hat = cv2.resize(rgb_hat,(resized_hat_w,resized_hat_h))

(3)添加小图标

当然有些同学的头像不是人物或不能准确的识别无关,所有添加了标识。(即在右下添加小图标)。

小图标避免单调,是从图标中随机选择一个:

图标位置也可以根据爱好调整大小和位置

layer.paste(loGo, (img.size[0] - logo.size[0], img.size[1]-logo.size[1]))

代码如下:

# 水印图片    num = random.randint(1, 5)    logo = Image.open("img_icon/santa_" + str(num) + ".png")    img = Image.open(imgPath)    print(img.size, logo.size)    # 图层    layer = Image.new("RGBA", img.size, (255, 255, 255, 0))    layer.paste(logo, (img.size[0] - logo.size[0], img.size[1]-logo.size[1]))    # 覆盖    img_after = Image.composite(layer, img, layer)    # img_after.show()    img_after.save(outImgePath)

感谢各位的阅读!关于“python如何在人物图中添加水印”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: python如何在人物图中添加水印

本文链接: https://www.lsjlt.com/news/272175.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python如何在人物图中添加水印
    这篇文章给大家分享的是有关python如何在人物图中添加水印的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pillow;...
    99+
    2023-06-14
  • Python如何为图片添加水印
    添加水印的主要目的是为了版权保护,使自己的图像不被抄袭或者恶意转载。网上有很多制作水印的工具,本帖介绍怎么使用Python-Pillow库给图片添加水印。 使用ImageMagick添加图片水印-Linux...
    99+
    2022-06-04
    水印 何为 图片
  • Java如何在Excel中添加水印
    这篇文章主要介绍了Java如何在Excel中添加水印,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。java基本数据类型有哪些Java的基本数据类型分为:1、整数类型,用来表示...
    99+
    2023-06-14
  • 使用Python中PIL库给图片添加文本水印
    目录前言一、PIL是什么?二、安装PIL三、查看PIL版本四、使用PIL库给图片添加文本水印1.引入库2.打开图片文件3.新建一个Draw对象4.设置水印文字、字体、大小5.设置水印...
    99+
    2023-05-16
    python给图片添加水印文字 python pil库 python 添加水印
  • 如何在PHP项目中实现图片处理和水印添加?
    如何在PHP项目中实现图片处理和水印添加?近年来,随着互联网的快速发展,图片的使用在网页设计和应用开发中扮演了越来越重要的角色。为了满足用户对高质量图片的需求,我们需要在PHP项目中实现图片处理和水印添加的功能。本文将介绍一种简单而有效的方...
    99+
    2023-11-02
    图片处理 PHP项目 水印添加
  • 利用Python怎么在图片的指定位置添加水印
    利用Python怎么在图片的指定位置添加水印?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。python可以做什么Python是一种编程语言,内置了许多有效的工具,Python几...
    99+
    2023-06-06
  • 如何利用Java在图片上添加文字水印效果
    目录前言【1】获取原图片对象(1.1)读取本地图片(1.2)读取网络图片【2】创建画笔【3】添加文字水印【4】获取处理图片【5】源代码总结前言 今天分享一个:通过Java代码,给图片...
    99+
    2022-11-12
  • 如何用nodejs给图片添加半透明水印
    本文小编为大家详细介绍“如何用nodejs给图片添加半透明水印”,内容详细,步骤清晰,细节处理妥当,希望这篇“如何用nodejs给图片添加半透明水印”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起...
    99+
    2022-10-19
  • 如何使用python给图片加水印
    这篇文章主要介绍如何使用python给图片加水印,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!方式一:叠加文字水印最简单的一种方式是,在图片上绘制半透明文本来实现水印效果。主要用到Figure.text函数参数类型说...
    99+
    2023-06-15
  • 如何在大数据报表中添加文字水印
    如何在大数据报表中添加文字水印,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。开源报表工具(比如 birt、ireport 等)基本上都得通过背景图变相实现水印,...
    99+
    2023-06-03
  • 怎么在html5中使用canvas给图片添加平铺水印
    这篇文章将为大家详细讲解有关怎么在html5中使用canvas给图片添加平铺水印,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。var img = new&nbs...
    99+
    2023-06-09
  • 计算机中文件水印如何添加
    小编给大家分享一下计算机中文件水印如何添加,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!文件水印的添加方法:首先打开wps软件,并导入需要加水印的文件;然后找到“插入”并且单击;接着点击“自定义水印”,并设置内容、大小、字...
    99+
    2023-06-14
  • 如何使用canvas实现给图片添加平铺水印
    小编给大家分享一下如何使用canvas实现给图片添加平铺水印,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!最近项目中遇到一个需求,需要把一张图片加上平铺的水印类似...
    99+
    2023-06-09
  • golang中如何实现给gif、png、jpeg图片添加文字水印
    小编给大家分享一下golang中如何实现给gif、png、jpeg图片添加文字水印,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!什么是golanggolang 是Google开发的一种静态强类型、编译型、并发型,并具有垃圾...
    99+
    2023-06-14
  • 详解Python如何实现批量为PDF添加水印
    目录准备环境获得经销商名字对应的列表生成水印PDF合并水印与目标PDF总结我们有时候需要把一些机密文件发给多个客户,为了避免客户泄露文件,会在机密文件中添加水印。每个客户收到的文件内...
    99+
    2022-11-10
  • 如何添加或删除PDF文件中的水印
    这篇文章将为大家详细讲解有关如何添加或删除PDF文件中的水印,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、怎样添加水印步骤一:在电脑中找到并打开我们需要使用的迅捷PDF编辑器,进入软件后把需要添加水印...
    99+
    2023-06-05
  • Android中如何给任何view添加全屏倾斜水印
    小编给大家分享一下Android中如何给任何view添加全屏倾斜水印,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!如果要实现如下效果目前有两种思路:先画出带有水平...
    99+
    2023-05-30
    android
  • 大数据报表中如何添加动态文字水印
    大数据报表中如何添加动态文字水印,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。水印是把一些标识信息嵌入到信息载体中,在不影响原载体内容使用的同时,为原作者提供识...
    99+
    2023-06-04
  • 如何在GitLab中添加其他人
    上传代码到GitLab是许多开发人员必备的技能,而添加其他人也是GitLab的重要特性之一。GitLab为开发团队提供了一个方便的平台,让各个团队成员可以实现共享代码并协同开发。本文将介绍如何在GitLab中添加其他人。首先,让我们了解一下...
    99+
    2023-10-22
  • 如何利用Python和OpenCV对图像进行加水印详解
    目录前言🌌 第 1 步:导入 OpenCV 并读取logo和要应用水印的图像💨 第 2步:计算两个图像的高度和宽度🚀 第 3 步:将水...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作