zoukankan      html  css  js  c++  java
  • 分段线性变换函数——比特平面分层

    1.比特平面分层
    比特平面。取代突出灰度级范围,突出特定比特来为整个图像外观做出贡献。

    (数字图像处理(中卫第3版))
    以下的样例是该书上使用的实例。这里在matlab中进行实现,帮助大家理解,同一时候请大家提出宝贵的改动意见。


    思想:使用书中的图片(到官网进行下载)。在8比特下,遍历整个图像,用像素值与各比特面的值(2^(n-1),n为比特面)进行位与操作,推断该像素值在该比特面是否存在即该比特位是否为1,假设存在进行二值化给该像素值所在位赋值为255,这也是突出显示该比特的核心,否则赋值0。
    2.实现代码
    %%
    %图像的分段线性变换——比特平面分层
    %作者:褚凯
    %日期:2015.07.30
    %%
    originalImg = imread('Fig0314(a)(100-dollars).tif');
    tempImg = originalImg;
    figure;
    subplot(3,3,1);
    imshow(originalImg);
    title('原始图像');
    height = size(originalImg,1);
    width = size(originalImg,2);
    for n = 1:8
        for i=1:height
            for j=1:width
                gray =bitand( originalImg(i,j), 2^(n-1) );%位与操作推断
               if(gray==2^(n-1))
                    tempImg(i,j) = 255;%二值化 突出比特平面            
                else
                    tempImg(i,j) = 0;
               end                          
            end
        end
        subplot(3,3,n+1);
        imshow(tempImg);
        title(['第',num2str(n),'比特图像 ']);

    end


  • 相关阅读:
    用户管理
    网线制作与分类
    5.虚函数,覆盖,多态,异常处理
    4.类的继承
    3.运算符重载
    7.STL
    6.泛型编程与模板
    C++中>>,<<的重载问题
    2.名字空间和构造函数
    1.C和C++的区别
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/6916692.html
Copyright © 2011-2022 走看看