色偷偷91综合久久噜噜-色偷偷成人-色偷偷尼玛图亚洲综合-色偷偷人人澡久久天天-国内精品视频一区-国内精品视频一区二区三区

Hello! 歡迎來到小浪云!


圖像處理: 設計 自定義透明度 水印


效果圖

未加水印前:

圖像處理: 設計 自定義透明度 水印

水印掩碼:

圖像處理: 設計 自定義透明度 水印

透明度為 0.3 的水印圖片:

圖像處理: 設計 自定義透明度 水印

透明度為 1.0 的水印圖片:

圖像處理: 設計 自定義透明度 水印

我自己編寫的這段代碼,其效果似乎比opencv官網上的示例更好,因為水印中沒有夾帶黑色噪點。

代碼語言:JavaScript 代碼運行次數:0

# coding=utf-8 import cv2 import numpy as np <p>bottom = cv2.imread('elegent.jpg') mark = cv2.imread('mask.jpg')</p><h1>加水印</h1><p>def waterMark(src, mask, transparency):</p><h1>對掩碼:轉為float型 --> 乘上透明度 --> 地板整數 --> 回到uint8型</h1><pre class="brush:php;toolbar:false">mask = np.floor(mask.astype(np.float32) * transparency).astype(np.uint8) dst = cv2.add(src, mask) # 防止溢出像素值域 dst = dst * (dst <= 255) + 255 * (dst > 255) # 回到uint8型 dst = dst.astype(np.uint8) return dst

b_rows, b_cols, b_channels = bottom.shape m_rows, m_cols, m_channels = mark.shape

將圖片右下角矩形塊 替換為 加過水印的矩形塊

bottom[b_rows-m_rows:b_rows, b_cols-m_cols:b_cols, ] = waterMark(bottom[b_rows-m_rows:b_rows, b_cols-m_cols:b_cols, ], mark, 0.3)

保存水印圖片

cv2.imwrite(‘waterMark.jpg’, bottom) cv2.imshow(‘waterMark’, bottom) cv2.waitKey(3000) cv2.destroyAllWindows()

對比OpenCV官網上的類似例程:

圖像處理: 設計 自定義透明度 水印

具體代碼:

代碼語言:JavaScript 代碼運行次數:0

# coding=utf-8 import cv2</p><p>img1 = cv2.imread('elegent.jpg') img2 = cv2.imread('mask.jpg')</p><p>b_rows, b_cols, b_channels = img1.shape m_rows, m_cols, m_channels = img2.shape</p><h1>I want to put logo on top-left corner, So I create a ROI</h1><p>rows,cols,channels = img2.shape roi = img1[b_rows-m_rows:b_rows, b_cols-m_cols:b_cols, ]</p><h1>Now create a mask of logo and create its inverse mask also</h1><p>img2gray = cv2.cvtColor(img2,cv2.COLOR_BGR2GRAY) ret, mask = cv2.threshold(img2gray, 10, 255, cv2.THRESH_BINARY) mask_inv = cv2.bitwise_not(mask)</p><h1>Now black-out the area of logo in ROI</h1><p>img1_bg = cv2.bitwise_and(roi,roi,mask = mask_inv)</p><h1>Take only region of logo from logo image.</h1><p>img2_fg = cv2.bitwise_and(img2,img2,mask = mask)</p><h1>Put logo in ROI and modify the main image</h1><p>dst = cv2.add(img1_bg,img2_fg)</p><h1>img1[0:rows, 0:cols ] = dst</h1><h1>將圖片右下角矩形塊 替換為 加過水印的矩形塊</h1><p>img1[b_rows-m_rows:b_rows, b_cols-m_cols:b_cols, ] = dst</p><p>cv2.imwrite('res.jpg', img1) cv2.imshow('res',img1) cv2.waitKey(0) cv2.destroyAllWindows()

該例程的實現效果:

圖像處理: 設計 自定義透明度 水印

劣勢:通過細節放大圖可以看出,OpenCV官網例程的效果較差,不僅無法自定義水印透明度,而且水印中還會夾帶黑色噪點,影響美觀:

圖像處理: 設計 自定義透明度 水印

相關閱讀

主站蜘蛛池模板: xxx在线| 日韩免费一级a毛片在线播放一级 | 国产精品久久久久久久网站 | 日本h网站| 在线综合色 | 久久国产精品免费一区二区三区 | 永久在线观看视频 | 日本色噜噜 | 日日爽日日操 | 日韩高清成人 | 色网站免费在线观看 | 亚洲网站色 | 色综合久久一本首久久 | 免费观看黄色的软件 | 一级做a毛片免费视频 | 天天挨操 | 制服丝袜在线不卡 | 色综合精品久久久久久久 | 三级网址在线观看 | 乱轮黄色小说 | 一个色中文字幕 | 一级特黄a免费大片 | 黄色一级视频在线播放 | 日韩欧美在线一级一中文字暮 | 狠狠色 综合色区 | 天天色综合久久 | 久操久操久操 | 爱干在线 | 99国产精品一区二区 | 久久精品影视 | 免费三级观看 | 看看黄色毛片 | 久久综合狠狠综合久久97色 | 人人澡人人透人人爽 | 国产成人精品综合久久久 | 爆操极品美女 | 久久精品人人做人人 | 久久 精品 一区二区 | 天天舔天天操 | 一级片免费在线观看视频 | 四虎精品影视 |