有一段時間沒有寫博客了,最近因為自己需要給圖片添加水印,就寫了個簡單的圖片添加水印
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)