直方图-掩膜

生成掩膜图片:首先生成全黑的,再添加白色块。
在这里插入图片描述

import cv2
import numpy as np
import matplotlib.pyplot as plt

o=cv2.imread('image\\boat.bmp',cv2.IMREAD_GRAYSCALE)
m=np.zeros(o.shape , np.uint8)         #生成掩膜背景  图片大小 灰度级为8
m[200:400,200:400] = 255               #生成掩膜图片
histo = cv2.calcHist([o],[0],None,[256],[0,255])     #整幅图片统计
histm = cv2.calcHist([o],[0],m,[256],[0,255],None)    #掩膜图片统计

cv2.imshow('original',o)
cv2.imshow('mask',m)
cv2.waitKey()
cv2.destroyAllWindows()
plt.subplot(121),plt.plot(histo)
plt.subplot(122),plt.plot(histm)
plt.show()

在这里插入图片描述

在这里插入图片描述
显示掩膜图片 分为 与 或 两种运算

import cv2
import numpy as np
import matplotlib.pyplot as plt

o=cv2.imread('image\\boat.bmp',cv2.IMREAD_GRAYSCALE)
m=np.zeros(o.shape , np.uint8)         #生成掩膜背景  图片大小 灰度级为8
m[200:400,200:400] = 255               #生成掩膜图片
mo=cv2.bitwise_and(o,m)

cv2.imshow('original',o)
cv2.imshow('mask',m)
cv2.imshow('image-mask',mo)
cv2.waitKey()
cv2.destroyAllWindows()

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/sundanping_123/article/details/86541936