zoukankan      html  css  js  c++  java
  • 关于opencv对图片添加水印

    有一段时间没有写博客了,最近因为自己需要给图片添加水印,就写了个简单的图片添加水印

    python:3.6.7

    pycharm

    opencv是一个开源的库,是有C++编写,支持C ++,Python,Java和MATLAB接口,并支持Windows,Linux,  Android  和Mac OS倾向于视觉应用。

    本次使用的python

    首先安装opencv模块,pip install opencv-python

    国外的网络下载通常比较慢所以此处还有一个国内的下载地址

    pip install opencv-python  -i https://pypi.tuna.tsinghua.edu.cn/simple

    下载成功后,开始编写代码 ~~。

    首先导入CV2 

    import  cv2

    cv2.imread(‘准备添加水印的图片’)  #此处为读取需要添加水印的图片具体信息

    使用函数cv2.imread(filepath,flags)读入图片

        • filepath:要读入图片的完整路径
        • flags:读入图片的标志 
          • cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道
          • cv2.IMREAD_GRAYSCALE:读入灰度图片
          • cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通

    cv2.imread返回的数据主要图片的属性值[[[206 240 233] [201 242 234] [204 240 234]......] 为分辨率,色值、宽度、高度等

    只有返回了数据才可以进行下面才做,如果返回是None  则代表读入失败,后续操作将无法完成

    下面开始添加水印:

    cv2.putText()#此为添加水印

    cv2.putText(x,'text',(100,100),cv2.FONT_HERSHEY_SCRIPT_COMPLEX,1,(255,255,255),2)

     x='cv2.imread返回的数据参数'、添加的水印,水印坐标,水印字体,字体大小(数值越大。字体越大,可以出现小数),字体色值坐标,字体粗细(数值越高。字体越粗))

    添加水印成功后需要将水印图片保存下来

    此时需要cv2.imwrite()

    cv2.imwrite('path+name',w)# 保存下来的图片路径与名称,w:im.write返回的数据。

    此时水印添加成功并保存在制定的文件下

    这是如果想看此图片时可用以下小窗口查看

    cv2.nameWindow('窗口名称') #创建一个窗口

    cv2.imshow('窗口名称',预览图片参数)#窗口名称:为nameWindow生成的窗口名称,预览图片:此处需要传入cv2.imread生成的图片参数

    cv2.waitKey()  #为等待时间后关闭窗口,ms 时间

    一下为粗略代码

    x=cv2.imread(img_path2)
    cv2.namedWindow('test')
    w=cv2.putText(x,'text',(100,100),cv2.FONT_HERSHEY_SCRIPT_COMPLEX,1,(255,255,255),2)
    cv2.imwrite('o.jpg',w)
    cv2.imshow('test',x)
    cv2.waitKey(2000)
  • 相关阅读:
    Django(25)WSGIRequest对象
    Django(24)永久重定向和临时重定向
    Django(23)Django限制请求装饰器
    Django(22)Django执行SQL语句
    Django(21)migrate报错的解决方案
    Django(20)ORM模型迁移命令
    Django(19)QuerySet API
    Django(18)聚合函数
    Django(17)orm查询操作
    数据结构-用队列实现栈
  • 原文地址:https://www.cnblogs.com/Jaredhan/p/12690868.html
Copyright © 2011-2022 走看看