相關學習推薦:python教學
# 影像遮罩(image mask):用選定的影像、圖形或物體,對待處理的影像(局部或全部)進行遮蔽來控制影像處理的區域或處理過程。由於覆蓋的特定圖像或物體稱為掩模(mask),在做圖像處理的時候,對圖像進行遮罩的需求非常多,接下來就以下面這張貓狗的圖片進行演示,我選擇的是小貓的頭像。
首先看效果圖:
和numpy
,可透過pip install xxx
進行下載。 <pre class="brush:php;toolbar:false">import cv2
import numpy as np复制代码</pre>
創建掩膜圖像
方形遮罩
# 创建掩膜 mask = np.zeros([img.shape[0], img.shape[1]], dtype=np.uint8) mask[10:170, 50:220] = 255复制代码
圓形遮罩
y = 100
r = 80
# 创建掩膜 x = 140 y = 100 r = 80 mask = np.zeros(img.shape[:2], dtype=np.uint8) mask = cv2.circle(mask, (x, y), r, (255, 255, 255), -1)复制代码
image = cv2.add(img, np.zeros(np.shape(img), dtype=np.uint8), mask=mask)复制代码
展示圖像
# 展示原图 cv2.imshow("img", img) # 展示掩膜图片 cv2.imshow("mask", mask) # 展示添加掩膜效果图片 cv2.imshow("image", image)复制代码
方形遮罩影像:
#方形遮罩與原圖合併影像:
#圓形遮罩圖像:
圓形遮罩與原圖合併影像:總結###遮擋遮罩的原理很簡單,先建立一個和圖片同樣大小的全黑影像,再把需要顯示的區域像素改成白色,最後使用cv2.add疊加image和mask就可以實現影像的遮蔽顯示。 #########想了解更多程式設計學習,請關注###php培訓###欄位! ##########
以上是詳細講解 Python實作對影像進行掩膜遮罩處理的詳細內容。更多資訊請關注PHP中文網其他相關文章!