像素是由比特组成的数字。
例如,在256级的灰度图中,每个像素是由8比特(也就是1个字节)组成的。
代替突出灰度级范围,我们可以突出特定比特来为整个图像的外观做出贡献。
一幅8比特图像,可以认为是8个1比特的平面组成,其中平面1包含图像中所有像素的最低阶比特,而平面8包含图像中所有像素的最高阶比特。
显示一幅8比特图像的第8个比特平面并不困难,可对它进行二值化,0-127之间映射为0,128-255之间映射为1。
以下是vb.net实现的比特平面分层:
代码写的很丑陋/(ㄒoㄒ)/~~,见谅哈
- '将一幅灰度图分为8个1比特的平面
- Dim img As New Image(Of Gray, Byte)("C:\test3.bmp")
- Dim height As Integer = img.Height
- Dim width As Integer = img.Width
- '初始化8个1比特的平面
- Dim img1 As New Image(Of Gray, Byte)(width, height)
- Dim img2 As New Image(Of Gray, Byte)(width, height)
- Dim img3 As New Image(Of Gray, Byte)(width, height)
- Dim img4 As New Image(Of Gray, Byte)(width, height)
- Dim img5 As New Image(Of Gray, Byte)(width, height)