使用open-cv实现图片添加水印

实验原理

  • 将一个透明的水印图层覆盖到原始图像上

实验过程

python 复制代码
import cv2

def add_logo_to_image(img, logo_path, position, mask_threshold=0):
    """
    在图像上添加logo。

    参数:
    img: 输入的图像,为一个二维或三维的numpy数组。
    logo_path: logo图片的路径,字符串类型。
    position: logo在图像上的位置,为一个元组,包含两个整数,分别表示x和y坐标。
    mask_threshold: 用于创建logo二值掩码的阈值,可选,默认为0。

    返回:
    添加logo后的图像。
    """
    # 读取logo图片
    logo = cv2.imread(logo_path)
    # 将logo转换为灰度图
    logo_gray = cv2.cvtColor(logo, cv2.COLOR_BGR2GRAY)
    # 根据灰度图和阈值创建logo的二值掩码
    _, logo_binary = cv2.threshold(logo_gray, mask_threshold, 255, cv2.THRESH_BINARY_INV)

    # 解包位置坐标
    x, y = position
    # 根据logo尺寸定义图像上的区域
    ROI = img[y:y + logo.shape[0], x:x + logo.shape[1]]
    # 使用掩码对ROI区域和logo进行位运算,以融合logo
    ROI_logo = cv2.bitwise_and(ROI, ROI, mask=logo_binary)
    img_logo = cv2.add(ROI_logo, logo)

    # 将融合后的logo放置到原图像的相应位置
    img[y:y + logo.shape[0], x:x + logo.shape[1]] = img_logo
    # 返回添加logo后的图像
    return img


# 读取背景图像
img = cv2.imread('./bgc.jpeg')

# 在图像的左上角添加第一个logo
img = add_logo_to_image(img, './tm1.png', (0, 0))
# 在图像的右上角添加第二个logo
img = add_logo_to_image(img, './tm2.png', (400, 0))

# 显示最终的图像
cv2.imshow('img', img)
# 等待按键按下,然后关闭窗口
cv2.waitKey(0)

实验结果

相关推荐
毋小黑2 小时前
753K 参数打赢 SwinIR:CRAFT 用「高频先验」给 Transformer 超分查漏补缺
人工智能·opencv·计算机视觉
TAN-90°-3 小时前
Deep Learning for Computer Vision——Generative Models 2
人工智能·深度学习·神经网络·算法·目标检测·机器学习·计算机视觉
YOLO数据集集合3 小时前
光伏板红外-可见光配对缺陷检测数据集 | 光伏板缺陷 红外可见光配准 多模态检测 无人机巡检 目标检测 YOLO格式9094期
人工智能·目标检测·计算机视觉·目标跟踪·红外·无人机视角·太阳能板
岁月蹉跎的一杯酒4 小时前
ISPDiffuser:用扩散模型学习 RAW→sRGB 映射
图像处理·isp
刘广睿5 小时前
影栈实战:AI 生图放大不再糊,Hires.fix 与 ESRGAN 超分从 512 到 4K 封面
图像处理·人工智能·深度学习·aigc·效率工具
AI的探索之旅5 小时前
97 个 OpenCV 实例(二十九):三相机联合标定,把三只眼睛绑在一起
人工智能·opencv·计算机视觉
这张生成的图像能检测吗6 小时前
(论文速读)IPFP:把图像特征反投影到 3D,用单分支完成多模态训练
人工智能·计算机视觉·点云·多模态融合·3d技术·三维感知·2d相机
YOLO数据集集合6 小时前
无人机航拍地面目标检测数据集 | 无人机航拍 地面目标检测 坦克识别 人员检测 俯视视角 目标检测9092期
人工智能·目标检测·计算机视觉·目标跟踪·无人机航拍·军事图像·坦克识别
硅谷秋水8 小时前
RoboLab:用于分析机器人任务通才策略的高-保真仿真基准
机器学习·计算机视觉·语言模型·机器人
He BianGu18 小时前
【WPF-VisionMaster】机器视觉通用平台V5.0版本发行说明
opencv·c#·wpf·halcon·机器视觉·visionmaster