将灰度图像中处于同一比特位上的二进制像素值进行组合,得到一幅二进制值图像,该图 像被称为灰度图像的一个位平面,这个过程被称为位平面分解。
【例 3.13】编写程序,观察灰度图像的各个位平面。
import cv2
import numpy as np
lena = cv2.imread("/Users/zhaofeier/Desktop/lena.bmp",0)
cv2.imshow("lena",lena)
r,c = lena.shape
x = np.zeros((r,c,8),dtype=np.uint8) #?8bit,所以8个通道
for i in range(8):
x[:,:,i] = 2**i
r = np.zeros((r,c,8),dtype=np.uint8)
for i in range(8):
r[:,:,i] = cv2.bitwise_and(lena,x[:,:,i])
mask = r[:,:,i] > 0
r[mask] = 255
cv2.imshow(str(i),r[:,:,i])
cv2.waitKey()
cv2.destroyAllWindows()