灰度图像/MATLAB/数字图像处理入门

灰度图像

  • 灰度图像转化rgb2gray
    • 灰度图像转化rgb2ind
    • 灰度图像向索引图像的转换gray2ind
    • 将灰度图像转换为索引图像grayslice
    • 索引图像转换为灰度图像ind2gray
    • 索引图像转换为真彩色图像ind2rgb
    • 灰度图像转换为二值图像im2bw
    • 索引图像转换为二值图像im2bw
    • RGB图像转换为二值图像im2bw
    • 矩阵J转换为灰度图像mat2gray
    • 对灰度图像G进行2次滤波,实现边缘检测filter2
    • 读取多帧图像序列
    • 二维图像纹理映射三维球体表面warp
    • 交互式用鼠标选择像素
    • 图像像素信息显示工具impixelinfo

灰度图像转化rgb2gray

matlab_Code
close all; %关闭当前所有图形窗口
clear all; %清空工作空间变量
clc; %清屏
X=imread(‘football.jpg’); %读取文件格式为.jpg,文件名为football的RGB图像的信息
I=rgb2gray(X); %将RGB图像转换为灰度图像
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
subplot(121),imshow(X); %显示原RGB图像
subplot(122),imshow(I); %显示转换后灰度图像
Result灰度图像/MATLAB/数字图像处理入门_第1张图片

灰度图像转化rgb2ind

close all; %关闭当前所有图形窗口
clear all; %清空工作空间变量
clc; %清屏
RGB = imread(‘football.jpg’); %读取图像信息
[X1,map1]=rgb2ind(RGB,64); %将RGB图像转换成索引图像,颜色种数N是64种
[X2,map2]=rgb2ind(RGB,0.2); %将RGB图像转换成索引图像,颜色种数N是216种
map3= colorcube(128); %创建一个指定颜色数目的RGB颜色映射表
X3=rgb2ind(RGB,map3);
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure;
subplot(131),imshow(X1,map1); %显示用最小方差法转换后索引图像
subplot(132),imshow(X2,map2); %显示用均匀量化法转换后索引图像
subplot(133),imshow(X3,map3); %显示用颜色近似法转换后索引图像
灰度图像/MATLAB/数字图像处理入门_第2张图片

灰度图像向索引图像的转换gray2ind

close all %关闭当前所有图形窗口
clear all; %清空工作空间变量
clc %清屏
I = imread(‘cameraman.tif’) %读取灰度图像信息
[X,map]=gray2ind(I,8); %实现灰度图像向索引图像的转换,N取8
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure,imshow(I); %显示原灰度图像
figure, imshow(X, map); %显示N=8转换后索引图像
灰度图像/MATLAB/数字图像处理入门_第3张图片
灰度图像/MATLAB/数字图像处理入门_第4张图片

将灰度图像转换为索引图像grayslice

close all; %关闭当前所有图形窗口
clear all; %清空工作空间变量
clc; %清屏
I = imread(‘coins.png’); %读取图像信息
X = grayslice(I,32); %将灰度图像转换为索引图像
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure,imshow(I); %显示原图像
figure,imshow(X,jet(32)); %jet(M)是相当于colormap,是一个M×3的数组
灰度图像/MATLAB/数字图像处理入门_第5张图片
灰度图像/MATLAB/数字图像处理入门_第6张图片

索引图像转换为灰度图像ind2gray

close all; %关闭当前所有图形窗口
clear all; %清空工作空间变量
clc; %清屏
[X,map]=imread(‘forest.tif’);%像信息
I = ind2gray(X,map); %再将索引图像转换为灰度图像
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure,imshow(X,map); %将索引图像显示
figure,imshow(I); %将灰度图像显示
灰度图像/MATLAB/数字图像处理入门_第7张图片
灰度图像/MATLAB/数字图像处理入门_第8张图片

索引图像转换为真彩色图像ind2rgb

[X,map]=imread(‘kids.tif’); %读取图像信息
RGB=ind2rgb(X,map); %将索引图像转换为真彩色图像
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure, imshow(X,map); %显示原图像
figure,imshow(RGB); %显示真彩色图像

灰度图像/MATLAB/数字图像处理入门_第9张图片

灰度图像转换为二值图像im2bw

I=imread(‘rice.png’); %读取图像信息
BW1=im2bw(I,0.4); %将灰度图像转换为二值图像,level值为0.4
BW2=im2bw(I,0.6); %将灰度图像转换为二值图像,level值为0.6
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure;
subplot(131),imshow(I); %显示level=0.4转换后的二值图像
subplot(132),imshow(BW1); %显示level=0.5转换后的二值图像
subplot(133),imshow(BW2); %显示level=0.6转换后的二值图像

灰度图像/MATLAB/数字图像处理入门_第10张图片

索引图像转换为二值图像im2bw

load trees; %从文件‘trees。mat’中载入数据到workplace
BW = im2bw(X,map,0.4); %将缩=索引图像转换为二值图像
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure, imshow(X,map); %显示原索引图像
figure, imshow(BW); %显示转换后二值图像

灰度图像/MATLAB/数字图像处理入门_第11张图片
灰度图像/MATLAB/数字图像处理入门_第12张图片

RGB图像转换为二值图像im2bw

I=imread(‘pears.png’); %读取图像信息
BW=im2bw(I,0.5); %将RGB图像转换为二值图像
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure,
subplot(121),imshow(I); %显示原图像
subplot(122),imshow(BW); %显示转换后二值图像

灰度图像/MATLAB/数字图像处理入门_第13张图片

矩阵J转换为灰度图像mat2gray

X=magic(256);
I= mat2gray(X); %将矩阵J转换为灰度图像
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
imshow(I); %显示转换后灰度图像
灰度图像/MATLAB/数字图像处理入门_第14张图片

对灰度图像G进行2次滤波,实现边缘检测filter2

I=imread(‘tire.tif’); %读取图像信息
H=[1 2 1;0 0 0;-1 -2 -1]; %设置subol算子
X=filter2(H,I); %对灰度图像G进行2次滤波,实现边缘检测
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]); %修改图形背景颜色的设置
figure,
subplot(131),imshow(I);
subplot(132),imshow(X,[]),colorbar(); %显示图像,并添加颜色条
subplot(133),imshow(X,[]),colorbar(‘east’);
灰度图像/MATLAB/数字图像处理入门_第15张图片

读取多帧图像序列

close all; %关闭当前所有图形窗口
clear all; %清空工作空间变量
clc; %清屏
I=zeros(128,128,1,27); %建立四维数组I
for i=1:27
[I(:,:,:,i),map]=imread(‘mri.tif’,i); %读取多帧图像序列,存放在数组I中
end
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]) %修改图形背景颜色的设置
montage(I,map); %将多帧图像同时显示
灰度图像/MATLAB/数字图像处理入门_第16张图片

二维图像纹理映射三维球体表面warp

clc; %清屏
%I=imread(‘testpat.png’);
I=imread(‘football.jpg’); %读取图像信息
[x,y,z]=sphere; %创建三个(N+1)×(N+1)的矩阵,使得surf(X,Y,Z)建立一个球体,缺省时N取20
set(0,‘defaultFigurePosition’,[100,100,1000,400]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]) %修改图形背景颜色的设置
figure,
subplot(121),warp(I); %显示图像映射到矩形平面
subplot(122),warp(x,y,z,I); %将二维图像纹理映射三维球体表面
grid; %建立网格
灰度图像/MATLAB/数字图像处理入门_第17张图片

交互式用鼠标选择像素

clc; %清屏
RGB = imread(‘peppers.png’); %读取图像信息
c = [12 146 410]; %新建一个向量c,存放像素纵坐标
r = [104 156 129]; %新建一个向量r,存放像素横坐标
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]) %修改图形背景颜色的设置
pixels1=impixel(RGB) %交互式用鼠标选择像素
pixels2= impixel(RGB,c,r) %将像素坐标作为输入参数,显示特定像素的颜色值

图像像素信息显示工具impixelinfo

close all; %关闭当前所有图形窗口
clear all %清空工作空间变量
clc; %清屏
set(0,‘defaultFigurePosition’,[100,100,1000,500]); %修改图形图像位置的默认设置
set(0,‘defaultFigureColor’, [1 1 1]) %修改图形背景颜色的设置
h = imshow(‘hestain.png’); %显示图像
hp = impixelinfo; %创建图像像素信息显示工具
set(hp,‘Position’,[150 290 300 20]); %设置像素信息工具显示的位置
figure
imshow(‘trees.tif’);
impixelinfo %创建图像像素信息显示工具
灰度图像/MATLAB/数字图像处理入门_第18张图片
灰度图像/MATLAB/数字图像处理入门_第19张图片

你可能感兴趣的:(图像处理,数字图像处理,机器视觉,matlab)