关于图像处理中的位图切割(Bit-pane Slicing)原理的自我见解

前段时间做过一道数字图像算法的课程一道题,就是有关位图分割算法的,但是当初没理解,我翻了几篇文章后把它弄明白了,所以我打算记录下我的想法,免得忘了。

题目:

Propose a set of intensity-slicing transformations capable of
producing all the individual bit planes of an 4-bit monochrome image.
(For example, a transformation function with the property T®=0 for r
in the range [0,7], and T®=15 for r in the range [8,15] produces an
image of the 4th bit plane in an 4-bit image.)

提出一组强度切片变换,能够产生4位单色图像的所有单个位平面。(例如,在[0,7]范围内具有属性T®=0的变换函数,在范围[8,15]中,T®=15表示r,则在4位图像中生成第4位平面的图像。)

几位灰度图像就是说每个像素用几位来表示的。当我们把图像像素的每位的值提取作为一层,即位图切割。

在这里插入图片描述
发现位数越高的层越接近原图像,即保留的信息就越多。如图:
在这里插入图片描述原图在这里插入图片描述
上面为原图,下面为效果图

但是这个原理是怎么实现呢?
以4位灰度图像为例。我们知道,每个像素值由4位二进制来表示,因此我们将4位图像根据位数分为4层。假如我们要提取第4层图像的信息,即最高位,就要检测每个像素的第4位的值,即0或1。当为1的时候,表示这个位保留着图像的信息,需要保留。当为0的时候,表示没有原图像信息。
我们写出第4位为0和第4位为1的像素值边界:

0 0 0 0 =0
0 1 1 1 =7
1 0 0 0 =8
1 1 1 1 =15

即像素值在[0,7]内的像素第4位都为0,因此我们将在这个范围内的像素赋值为0;像素值在[8,15]内的像素第4位都为1,赋值为1(也可以赋值为其它值,只要不为0和不超过15)。写成表达式为
( r 为 像 素 值 ) T ( r ) = { 0 , r ∈ [ 0 , 7 ] 1 , r ∈ [ 8 , 15 ] ( r为像素值)T(r)=\left\{ \begin{array}{c} 0 ,r∈[0,7] \\ \\ 1,r∈[8,15]\end{array}\right. (r)T(r)=0r[0,7]1r[8,15]

如我们检测到一个像素的值为10(二进制为1 0 1 0),第4位为1,那我们可以将此像素的值赋为1。
那要将第2层的分割出来呢?一次写出0~15二进制:

0 0 0 0 = 0
0 0 0 1 = 1
0 0 1 0 = 20 0 1 1 = 30 1 0 0 = 4
0 1 0 1 = 5
0 1 1 0 = 60 1 1 1 = 71 0 0 0 = 8
1 0 0 1 = 9
1 0 1 0 =101 0 1 1 =111 1 0 0 =12
1 1 0 1 =13
1 1 1 0 =141 1 1 1 =15

我们发现带√的像素值第二位都为1,所以表达式为:

( r 为 像 素 值 。 ) T ( r ) = { 0 , r ∈ [ 0 , 1 ] ∪ [ 4 , 5 ] ∪ [ 8 , 9 ] ∪ [ 12 , 13 ] 1 , r ∈ [ 2 , 3 ] ∪ [ 6 , 7 ] ∪ [ 10 , 11 ] ∪ [ 14 , 15 ] ( r为像素值。)T(r)=\left\{\begin{array}{c} 0 ,r∈[0,1]∪[4,5]∪[8,9]∪[12,13] \\ \\ 1,r∈[2,3]∪[6,7]∪[10,11]∪[14,15]\end{array}\right. (r)T(r)=0r[0,1][4,5][8,9][12,13]1r[2,3][6,7][10,11][14,15]

其它层类似。
对于代码实现和更详细的内容,可以参考
https://blog.csdn.net/ningyaliuhebei/article/details/17161701
有错误也欢迎指出!

  • 11
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值