OpenCV实现高斯模糊加水印

python 复制代码
# coding:utf-8
# @Email: wangguisen@donews.com
# @Time: 2023/4/21 10:07
# @File: utils.py
'''

'''
import cv2
import PIL
from PIL import Image
import numpy as np
from watermarker.marker import add_mark, im_add_mark
import matplotlib.pyplot as plt

# PIL Image转换成OpenCV格式
def PILImageToCV(imagePath):
    img = Image.open(imagePath)
    plt.imshow(img)
    img = cv2.cvtColor(np.asarray(img), cv2.COLOR_RGB2BGR)
    plt.imshow(img)
    plt.show()

# OpenCV图片转换为PIL image
def CVImageToPIL(imagePath=None, img=None):
    # 自己改改
    # img = cv2.imread(imagePath)
    # plt.imshow(img)
    img2 = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
    # plt.imshow(img2)
    # plt.show()
    return img2

img = cv2.imread('./imgs/res_ori_test.jpg')

# 创建毛玻璃特效
# 参数2:高斯核的宽和高(建议是奇数)
# 参数3:x和y轴的标准差
dst = cv2.GaussianBlur(img, (99, 99), 333)
# cv2.imshow('dst', dst)


# add_mark(file="test1.jpg", out="add_mark_test1.jpg", mark="Python", opacity=0.2, angle=30, space=30)

dst = CVImageToPIL(img=dst)
image = im_add_mark(dst, text="Python", color="#8B8B1B", size=50, opacity=0.3, space=75, angle=30)
image.save("./imgs/add_mark_test1.png")

# add_mark(dst, out="./imgs/add_mark_test1.jpg", mark="Python", opacity=0.2, angle=30, space=30)

# cv2.waitKey()


相关推荐
badhope几秒前
Python、C、Java 终极对决!谁主沉浮?谁将消亡?
java·c语言·开发语言·javascript·人工智能·python·github
薛不痒1 分钟前
模型部署:基于flask和pytorch
人工智能·pytorch·python·深度学习·flask
linxinglu4 分钟前
DeepMind:解开智能之谜与「科学发现」的终极自动化杠杆
运维·人工智能·自动化
AEIC学术交流中心4 分钟前
【快速EI检索 | ACM ICPS出版】2026年人工智能、虚拟现实与文化遗产国际学术会议 (AIVRCH 2026)
人工智能·vr
wenzhangli76 分钟前
OUC NLP双链路闭环设计:基于ooderAgent的LLM+知识库+RAG架构深度解析
人工智能·自然语言处理·架构
KKKlucifer7 分钟前
动态数据识别与分类分级一体化技术研究
人工智能·分类·数据挖掘
balmtv7 分钟前
Gemini 3多模态统一架构深度拆解:从稀疏注意力到原生视频生成的工程实现
人工智能·架构·音视频
IT_陈寒9 分钟前
JavaScript开发者必知的5个高效调试技巧,比console.log强10倍!
前端·人工智能·后端
咚咚王者18 分钟前
人工智能之语言领域 自然语言处理 第十四章 预训练模型
人工智能·自然语言处理