日韩天堂,国产精品久久久久久久久久一区,羞羞羞网站,自拍视频网站,久久亚洲欧美成人精品,桃花阁成人网在线观看

Hello! 歡迎來到小浪云!


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


avatar
小浪云 2025-05-13 28

效果圖

未加水印前:

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

水印掩碼:

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

透明度為 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官網例程的效果較差,不僅無法自定義水印透明度,而且水印中還會夾帶黑色噪點,影響美觀:

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

相關閱讀

主站蜘蛛池模板: 欧美色视频日本 | 精品欧美在线观看视频 | 激情综合五月天 | 九九电影在线免费完整版 | 在线观看国产一区二三区 | 伊人婷婷综合缴情亚洲五月 | 日本国产在线观看 | 亚洲五月花丁香花社区 | 亚洲一区二区三区国产精品 | 久久国产一久久高清 | 婷婷色伊人| 国产福利区一区二在线观看 | 欧美日韩视频一区二区 | 国产成人亚洲精品大帝 | 久久网欧美 | 亚洲精品成人在线 | 亚洲精品乱码久久久久久 | 羽月希母乳 | 亚洲一级在线观看 | 羞羞视频免费网站在线 | 亚洲精品视频在线看 | 中文字幕日韩精品有码视频 | 在线国产播放 | 国产福利一区在线 | 亚洲福利视频一区二区 | 性天堂网| 香蕉视频国产精品 | 中文字幕在线精品不卡 | 调教女m视频免费区 | 亚洲精品高清在线观看 | 亚洲一区导航 | 亚洲欧美日韩综合二区三区 | 日韩在线观看视频网站 | 人人九九精品 | 老子影院午夜精品欧美视频 | 久久蜜桃 | 正版男人的天堂 | 在线亚洲精品国产成人二区 | 亚洲精品视频免费在线观看 | 国产精品久久一区二区三区 | 香蕉视频97|