《数字图像处理》第二次作业 :MATLAB 彩色图像处理 您所在的位置:网站首页 cat函数图像 《数字图像处理》第二次作业 :MATLAB 彩色图像处理

《数字图像处理》第二次作业 :MATLAB 彩色图像处理

2023-05-27 16:10| 来源: 网络整理| 查看: 265

《数字图像处理》第二次作业 :MATLAB 彩色图像处理

matlab 数字图像处理

************************************************************************ > File Name: 《数字图像处理》第二次作业 :MATLAB 彩色图像处理 > Author: 罗天涵 > Student-Id: 16121141 > Mail: [email protected] ************************************************************************

一. 熟悉matlab彩色图像处理函数1.1 cat

函数说明 Matlab中的cat函数是concatenate的缩写,本意是“连接”的意思。cat函数的使用方法可以在Matlab的help中查找。

函数用法 - cat(1,A,B)在竖直方向合并。两个矩阵想要在竖直方向上合并,也就必须列相同。 - cat(2,A,B)在水平方向合并。同样的道理,两个矩阵要在水平方向上合并. - cat(3,A,B)合并为3维矩阵 - cat(N,A,B)合并为n维矩阵

函数样例

>> aa = 1 2 3 4>> bb = 4 5 6 7>> cat(1,a,b)ans = 1 2 3 4 4 5 6 7>> cat(2,a,b)ans = 1 2 4 5 3 4 6 7>> cat(3,a,b)ans(:,:,1) = 1 2 3 4ans(:,:,2) = 4 5 6 71.2 rgbcube

函数说明

一幅RGB图像就是M×N×3大小的彩色像素的数组,其中的每个彩色像素点都是在特定空间位置的彩色图像所对应的红、绿、蓝三个分量。RGB图像也可以看做由三个灰度图像形成的“堆栈”,当发送到彩色监视器的红、绿、蓝输入端时,就在屏幕上产生彩色图像。RGB彩色空间常常用RGB彩色立方体加以显示,如图6-2所示。这个立方体的顶点是光的原色(红、绿、蓝)和二次色(青色、紫红色、黄色)

rgbcube就是从任意一个角度去观察rgb彩色立方体。

函数用法 rgbcube不是matlab的自带函数,而是冈萨雷斯的教材自定义的一个函数。所幸教材提供了代码和示范。

% Blue-Magenta-White-Cyan ( 0, 0, 10) 蓝-洋红-白-青% Red-Yellow-White-Magenta ( 10, 0, 0) 红-黄-白-洋红% Green-Cyan-White-Yellow ( 0, 10, 0) 绿-青-白-黄% Black-Red-Magenta-Blue ( 0, -10, 0) 黑-红-洋红-蓝

RGBCUBE(VX,VY,VZ)显示RGB颜色立方体,从点(VX,VY,VZ)查看。序列中的第一个颜色最接近视轴,其他颜色从该轴看,向右(或上方),然后顺时针移动。

函数样例

>> rgbcube(0,10,0);

rhb_ube_0-10-0.png-2.6kB

>> rgbcube(0,0,10);

rhbcube_0-0-10.png-2.6kB

1.3 colormap

函数说明 MATLAB figure的colormap中默认共有64种不同的颜色,所以colorbar的范围只能是[ 1, 64])。所以矩阵中的数值范围也应该是[1, 64]。

函数用法

函数样例

1.4 rgb2ind ind2rgb

函数说明 将 RGB 图像转换为索引图像

函数用法

[X,map] = rgb2ind(RGB,n) 使用最小方差量化和抖动将 RGB 图像转换为索引图像 X。map 最多包含 n 个颜色。n 必须小于或等于 65,536。 X = rgb2ind(RGB, map) 使用逆颜色图算法和抖动,根据带颜色图 map 将 RGB 图像转换为索引图像 X [X,map] = rgb2ind(RGB, tol) 使用均匀量化和抖动将 RGB 图像转换为索引图像 X。map 最多包含 (floor(1/tol)+1)^3 个颜色。tol 必须介于 0.0 和 1.0 之间。

函数样例

这里采用均匀量化抖动将彩色立方体转化为压缩图像,如图所示,颜色确实被压缩的比较厉害;我进行了下对比:

RGB = imread('Fig0602(b)(RGB_color_cube).tif');[X,map] = rgb2ind(RGB,128);imshow(X,map)

rgb2ind_test1.png-59.4kB

可以发现,4096的色彩和抖动现象明显好于64个色彩的。在后面还原回去的时候也可以看得出来

ind2rgb_test.png-52.8kB

1.5 gray2nd ind2gray

函数说明 将索引图像转化为灰度图像,将灰度图像转化为索引图像

函数用法

[X,cmap] = gray2ind(I,c) 将灰度图像转换为带有颜色的 颜色图I的索引图像 将灰度图像或者二值图像转换为带有颜色的 颜色图I的索引图像 。 C : 色彩映射颜色的数量,指定为1到65536之间的正整数。 如果输入图像是灰度,则默认值 c是64。 如果输入图像是二进制的,则默认值 c是2。 I = ind2gray(X,cmap) I = ind2gray(X,cmap) 将X带有色彩映射 的索引图像转换cmap为灰度图像I。该 ind2gray功能在保持亮度的同时从输入图像中去除色调和饱和度信息。

函数样例

I1 = imread('cameraman.tif');[X1, map1] = gray2ind(I1, 16);[X2, map2] = imread('trees.tif');I2 = ind2gray(X2,map2);figure;% 开一个新的图像区域subplot(2, 2, 1); imshow(I1); title('raw image');subplot(2, 2, 2); imshow(X1, map1); title('ind image with 16 colors');subplot(2, 2, 4); imshow(I2); title('raw image');subplot(2, 2, 3); imshow(X2, map2); title('gray image convert by raw image');grid on;

gray2ind_test.png-109.4kB

尽管选择了16种颜色,但这16种颜色终究还是灰色。 「后来发现下面两个图片的标题写反了」 彩色图像转灰色图像,效果也是很好的。注意和rgb2gray的不同。rgb2gray的参数是三唯的矩阵。

rgb2ntsc ntsc2rgb

函数说明

函数用法

函数样例

rgb2ycber ycbcr2rgb

函数说明

函数用法

函数样例

rgb2hsv hsv2rgb

函数说明

函数用法

函数样例

二. 彩色图像的中值滤波增强

说实话,之前写过了中值滤波后,这次再写,就调用之前写的函数即可。有个很大的问题就是算法的效率比较低。 我的思路比较简单,分离RGB后把之前的函数调用一下,最后再拼回去,就是滤波后的rgb图像

函数代码

function [outputArg1] = median_filter_rgbimg(inputArg1,n,padding_mode)% inputArg1 RGB imgR =inputArg1(:,:,1);G=inputArg1(:,:,2);B =inputArg1(:,:,3);R = median_filter_plus(R,n,padding_mode);G = median_filter_plus(G,n,padding_mode);B = median_filter_plus(B,n,padding_mode);outputArg1 = cat(3,R,G,B);end

测试代码

% media_filter_rgbimg_testI = imread('./imgs/maxresdefault.jpg');M3 = median_filter_rgbimg(I,3,'zero');M9 = median_filter_rgbimg(I,9,'zero');M16 = median_filter_rgbimg(I,16,'zero');figure;% 开一个新的图像区域subplot(2, 2, 1); imshow(I); title('raw image');subplot(2, 2, 2); imshow(M3); title('3*3 滤波模板 ');subplot(2, 2, 3); imshow(M9); title('9*9 滤波模板');subplot(2, 2, 4); imshow(M16); title('16*16 滤波模板');grid on;

median_colorful_img.png-445.8kB 可以看到,在滤波的作用下,图像的字体变得逐渐模糊。

median_colorful_img2.png-187.4kB 可以看到,在滤波的作用下,图像的内容变得逐渐模糊。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有