zoukankan      html  css  js  c++  java
  • 9比特平面分层

    1、实战原理

    如图,一张256级灰度图像,其中一个像素点由8个比特组成,8个比特的信息加起来才构成一个像素点。比如灰度为194的像素点A,转换成二进制值为1100_0010,其中从左往右分别为第7,6,5,4,3,2,1,0比特。每个比特平面中A像素点的值取决于A的灰度的二进制在该比特位的取值。

    此次实战共有640*480个像素点,众多像素点就构成了8比特平面分层,每个比特平面都是二值图像。因此每层中的每个像素点可能是黑,可能是白。

    2、matlab验证:

    clear all;
    
    RGB = imread('G:	estRGB565image.jpg');   %读取图片文件
    
    gray = rgb2gray(RGB);         %转换为灰度图像
    [ROW,COL,N] = size(gray);     %获得图片尺寸[高度,长度,维度]
    
    subplot(3,3,1);
    imshow(gray,[]);
    title('原始图像');
    
    for k=1:8
        for i=1:ROW
            for j=1:COL
                tmp(i,j) = bitget(gray(i,j),k);%将RGB(i,j)灰度值分解为二进制串,取第k位
            end
        end
        subplot(3,3,k+1);
        imshow(tmp,[]);
        ind = num2str(k-1);
        imti = ['',ind,'比特平面'];
        title(imti);
    end
    View Code

    matlab结果:

     

    3、fpga实现:

    这个实战的灰度图片是从实战6那里取得的灰度图片,也就是把YCbCr格式中的Y分量提取出来。

    fpga效果:

    我这里通过按键依次切换各层图片:由于图片太多,我用手机记录了。

  • 相关阅读:
    JAVA序列化
    python教程
    原来root用户只有本地的权限,需要手动将远程的权限打开,尝试了好几种方法,最后还是下面这种方法管用
    MYsql开启远程连接
    雅虎36条优化准则
    需要学习的技术
    可用的谷歌地址
    propertype和_proto_分析
    mvn 插件
    通过 api 调用检查具体日期是否为法定节假日
  • 原文地址:https://www.cnblogs.com/FPGAer/p/14105532.html
Copyright © 2011-2022 走看看