diagram = imread('C:\Users\Administrator\Desktop\Compressed\fiter\lena256.jpg')
%diagram = rgb2gray(diagram);%------------------------------将图片转换为灰度图
%diagram = logical(diagram)%
figure,imshow(diagram),title('Original picture');%----------显示原图
%figure,imshow(diagram(100,:)),title('Original picture');%--显示100行水平扫描线
%plot(diagram(255,:))
size(diagram)
whos diagram
% imfinfo lena256.jpg %---------------------------------------显示图片信息
diagram(256,256)
diagram(1:10,1:10) % diagram = imadjust(diagram,[0,1],[1,0]) %-----------------图像反转 亮度
% figure,imshow(diagram)
% diagram = intrans(diagram,'stretch',mean2(im2double(diagram)),0.9);

%%======================直方图============================%%
% h = imhist(diagram)
% h1 = h(1:1:256)
% horz = 1:1:256;
%bar(horz,h1)
%axis([0 255 0 1500])
%%======================图像复原===========================%%
%g = imnoise(diagram,'gaussian') %-------------------------添加高斯噪声
%figure,imshow(g) [M,N]=size(diagram)
R = imnoise2('salt & pepper',M,N,0.01,0) %-----------------椒盐噪声
c = find(R == 0);
gp = diagram
gp(c) = 255 %--------------------------------------------椒盐噪声
%figure,imshow(gp);title('salt noise ')
%g2 = imnoise(diagram,'poisson') %-------------------------珀松
%figure,imshow(g2);title('pospng noise ')
% fp = spfilt(gp,'chmean',3,3,-1)
% figure,imshow(fp)
%%=========================分离RGB========================%%
rgb_se = diagram
% rgb_se = im2double(rgb_se)
fr = rgb_se(:,:,1)
fg = rgb_se(:,:,2)
fb = rgb_se(:,:,3) R = rgb_se(:,:,1)
G = rgb_se(:,:,2)
B = rgb_se(:,:,3)
Y = 16+(0.256789*R+0.504129*G+0.097906*B)
Cb = 128+(-0.148223*R-0.290992*G+0.439215*B)
Cr = 128+(0.439215*R-0.367789*G-0.071426*B)
% figure,imshow(Y);title('Y ')
% ycbcr = cat(3,Y,Cb,Cr)
% figure,imshow(ycbcr);title('Ycbcr ')
% figure,imshow(fr) %--------------------------------------此时的不是红色,只是红色分量
% figure,imshow(fg)
% figure,imshow(fb)
% rgb_image = cat(3,fr,fg,fb) %------------------------------合并RGB分量
% figure,imshow(rgb_image)
%==========================提出R G B分量===================%%
a = diagram
[r,c,d]=size(a); red=a;%提取红色分量
red(:,:,1)=a(:,:,1);
red(:,:,2)=zeros(r,c);%--------------------------------------将其他两组分量置位0
red(:,:,3)=zeros(r,c);
% red=unit8(red);
% red=uint8(red);
%subplot(131),imshow(red);title('red separation')
%提取绿色分量
green=zeros(r,c);
green(:,:,2)=a(:,:,2);
green(:,:,1)=zeros(r,c);
green(:,:,3)=zeros(r,c);
green=uint8(green);
%subplot(132),imshow(green);title('green separation')
%提取蓝色分量
blue=zeros(r,c);
blue(:,:,1)=zeros(r,c);
blue(:,:,2)=zeros(r,c);
blue(:,:,3)=a(:,:,3);
blue=uint8(blue);
%subplot(133),imshow(blue);title('blue separation')
%%===========================颜色空间转换=====================%%
rgb_image = diagram
rgb_image = im2double(rgb_image)
yiq_image = rgb2ntsc(rgb_image) %---------------------------RGB to NTSC
%figure,imshow(yiq_image);title('RGB to NTSC ')
ycbcr_image = rgb2ycbcr(rgb_image)%--------------------------RGB to Ycbcr
% figure,imshow(ycbcr_image);title('RGB to Ycbcr ')
size(ycbcr_image)
%Here pick off the 256x256 luminance part of the ycbcr image
Y = ycbcr_image(:,:,1)
%figure, imshow(Y); title('Y part of Image');
size(Y) %Here pick off the 256x256 Cb part of the ycbcr image
CB = ycbcr_image(:,:,2)
%figure, imshow(CB); title('Cb part of Image');
size(CB) %Here pick off the 256x256 Cr part of the ycbcr image
CR = ycbcr_image(:,:,3)
%figure, imshow(CR); title('Cr part of Image');
size(CR) 

数字图象处理MATLAB学习的更多相关文章

  1. Matlab学习笔记 figure函数

    Matlab学习笔记 figure函数 matlab中的 figure 命令,能够创建一个用来显示图形输出的一个窗口对象.每一个这样的窗口都有一些属性,例如窗口的尺寸.位置,等等.下面一一介绍它们. ...

  2. matlab学习笔记 bsxfun函数

    matlab学习笔记 bsxfun函数 最近总是遇到 bsxfun这个函数,前几次因为无关紧要只是大概看了一下函数体去对比结果,今天再一次遇见了这个函数,想想还是有必要掌握的,遂查了些资料总结如下. ...

  3. matlab学习笔记(一)单元数组

    matlab学习笔记(一)单元数组 1.floor(x) :取最小的整数 floor(3.18)=3,floor(3.98)=3 ceil(x)  :取最大的整数 ceil(3.18)=4,ceil( ...

  4. matlab学习笔记---(1)

    Matlab学习笔记 一. Desktop Basics (Matlab 基础知识) 当你打开Matlab的时候,matlab按照以下默认的方式展示出来. 该桌面主要包括以下几部分内容: 当前文件夹: ...

  5. 【数学建模】MATLAB学习笔记——函数式文件

    MATLAB学习笔记——函数式文件 引入函数式文件 说明: 函数式文件主要用于解决计算中的参数传递和函数调用的问题. 函数式的标志是它的第一行为function语句. 函数式文件可以有返回值,也可以没 ...

  6. MATLAB学习总结(1)

    MATLAB学习总结(1)   path help path cd(current directory) savepath pathtool

  7. matlab学习路线

    知乎:matlab学习路线 MATLAB数学教学视频

  8. mnist手写数字识别——深度学习入门项目(tensorflow+keras+Sequential模型)

    前言 今天记录一下深度学习的另外一个入门项目——<mnist数据集手写数字识别>,这是一个入门必备的学习案例,主要使用了tensorflow下的keras网络结构的Sequential模型 ...

  9. 数字图像处理(MATLAB版)学习笔记(1)——第1章 绪言

    0.下定决心 当当入手数字图像处理一本,从此开此正式跨入数字图像处理大门.以前虽然多多少少接触过这些东西,也做过一些相关的事情,但感觉都不够系统,也不够专业,从今天开始,一步一步地学习下去,相信会有成 ...

随机推荐

  1. 开启AsyncTask从网络加载图片

    /*AsyncTask 异步任务即做一些简单的异步处理 :是handle与线程池的封装 * 第一个泛型:参数类型泛型 * 第二个泛型:更新进度泛型 * 第三个泛型:onProgressUpdate的返 ...

  2. HF Code Designer 代码生成器

    最近忙于项目和平台开发好久没写博客了,今天把最近的一个项目总结和大家分项一下. 在平台开发的过程中,代码生成器是必不可少的,Net领域的代码生成器比较多,以前用动软的,最早的那个版本还是开源,自己写了 ...

  3. 【Mood-10】每个程序员都应该读的30本书

    “如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本,你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西.” 很多程序员响应,他们在推荐时也写下自己的评语. ...

  4. UIButton的简单操作和实际应用

    不能使用点语法创建button的文本和颜色,因为button具有多种状态   //这里创建一个圆角矩形的按钮UIButton *button1 = [UIButton buttonWithType:U ...

  5. 在CentOS下安装配置MySQL

    经常需要在linux环境下部署项目或安装Mysql数据库,由于记性不好,每次都是求助度娘,每次搜到的步骤都不一样,所以每次都在尝试.冒险:于是乎,把安装的重要步骤贴出,供自己以后参照. 1.首先要看看 ...

  6. 正则转nfa:bug出现。

    本人写的一个正则到nfa的bug 刚写完前面的那篇,自己用脑子过了一下,发现了一个bug.具体情况如下. 这个bug的产生条件是多次调用假名的时候,每次调用都会修改假名的nfa图.直接这么说不好理解, ...

  7. Request.QueryString

    http://localhost:1988/JPKC/zuoyeDown.aspx?catalog=2009年第二学期为什么Request.QueryString["catalog" ...

  8. 何为 ISAPI

    ISAPI即为Internet Server Application Programming Interface ISAPI 服务器扩展 ISAPI 服务器扩展是可以被 HTTP 服务器加载和调用的  ...

  9. Table of Contents - Spring

    The IoC container Spring 容器 属性注入 & 构造注入 Bean 实例的创建方式 p-namespace & c-namespace 集合属性的注入 作用域 延 ...

  10. SQLServer排序时与读取的记录会影响到结果?

    这是在做程序的时候发现的,我用到了一个分页存储过程,在翻看第二页的时候发现结果竟然与第一页有很多重复的内容, 下面开始测试一下吧: 创建表 create table abc ( id int prim ...