使用opencv给视频添加水印

这段代码演示了如何使用OpenCV库在视频流(默认为本机摄像头)上实时添加水印。首先,读取摄像头视频,然后加载水印图片,通过灰度化和阈值处理创建黑白水印。接着,将水印应用到每一帧的指定区域,最后显示带有水印的视频帧。你可以将0替换为视频文件路径来为你的视频添加水印。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import cv2
capture=cv2.VideoCapture(0)   #读取本机摄像头
while True:
    ret,frame=capture.read()   #ret状态  frame:这一针的图像
    logal_image=cv2.imread('tsww.jpg')
    w1, h1, c1 = frame.shape
    w2,h2,c2=logal_image.shape
    print(w1,h1)
    print(w2, h2)
    roi=frame[w1-w2:w1,h1-h2:h1]
    #灰度化
    gray_logol=cv2.cvtColor(logal_image,cv2.COLOR_BGR2GRAY)
    #黑化
    _,black_logol=cv2.threshold(gray_logol,170,255,cv2.THRESH_BINARY)
    imag_tsw=cv2.bitwise_and(roi,roi,mask=black_logol)
    #白化
    _,white_logal=cv2.threshold(gray_logol,170,255,cv2.THRESH_BINARY_INV)
    imag_tsw1=cv2.bitwise_and(logal_image,logal_image,mask=white_logal)
    imag_tsw2=cv2.add(roi,imag_tsw)
    roii=cv2.add(imag_tsw,imag_tsw1)
    roi[:]=roii
    cv2.imshow('roi',frame)

    if cv2.waitKey(30) & 0xFF == 27:  # waitKey延迟作用,130有点卡,一般30或者60
        break
capture.release()
cv2.destroyAllWindows()

可以将      capture=cv2.VideoCapture(0) 中的0换为视频的地址给自己的视频添加水印

照片来源于网络,侵权请联系删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不良使

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值