在MATLAB里能求出彩色图像的R、G、B三个分量吗? 在MATLAB里能求出彩色图像的R、G、B三个分量吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用imread就好了如a=imread('filename');得到地a就是个三维矩阵了,就是R、G、B三个矩阵的组合了。 补充一下: a(:,:,1),a(:,:,2),a(:,:,3)分别就是它的R,G,B三个分量。 http://www.mathworks.com/access/helpdesk/help/techdoc/ref/imread.shtml一、前言MATLAB是集数值计算,符号运算及图形处理等强大功能于一体的科学计算语言。作为强大的科学计算平台,它几乎能够满足所有的计算需求。自MATLAB4.0问世以来,MATLAB语言就一直受到工程应用的各个领域的学者和工程师们的关注。2001年Mathworks公司又推出了强大的MATLAB升级版本MATLAB6.0,使其在符号运算和图形处理功能上得到了进一步完善。除此之外,新版本的MATLAB还增强了它的各种应用工具箱,使MATLAB的应用面越来越广,功能也越来越强大。因此MATLAB已成为最为普遍的计算工具之一。MATLAB软件具有很强的开放性和适用性。在保持内核不便的情况下,MATLAB可以针对不同的应用学科推出相应的工具箱(toolbox)。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、概率统计、信号处理、图像处理和物理仿真等,都在工具箱(Toolbox)家族中有自己的一席之地。此外,MATLAB还支持用户用自己编写的M文件(MATLAB的程序文件)组成自己的工具箱,极大的方便了用户的使用和维护。本文想就MATLAB中提供的图像处理工具箱(Image Processing Toolbox)的使用作一些实例方面的介绍。二、MATLAB数字图像处理MATLAB全称是Matrix Laboratory(矩阵实验室),一开始它是一种专门用于矩阵数值计算的软件,从这一点上也可以看出,它在矩阵运算上有自己独特的特点。实际上MATLAB中的绝大多数的运算都是通过矩阵这一形式进行的。这一特点也就决定了MATLAB在处理数字图像上的独特优势。理论上讲,图像是一种二维的连续函数,然而在计算机上对图像进行数字处理的时候,首先必须对其在空间和亮度上进行数字化,这就是图像的采样和量化的过程。二维图像进行均匀采样,就可以得到一幅离散化成M×N样本的数字图像,该数字图像是一个整数阵列,因而用矩阵来描述该数字图像是最直观最简便的了。而MATLAB的长处就是处理矩阵运算,因此用MATLAB处理数字图像非常的方便。MATLAB支持五种图像类型,即索引图像、灰度图像、二值图像、RGB图像和多帧图像阵列;支持BMP、GIF、HDF、JPEG、PCX、PNG、TIFF、XWD、CUR、ICO等图像文件格式的读,写和显示。MATLAB对图像的处理功能主要集中在它的图像处理工具箱(Image Processing Toolbox)中。图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、二值图像操作以及形态学处理等图像处理操作。下面用一些实例进行简单说明:1、图像的读取MATLAB中从图像文件中读取数据用函数imread(),这个函数的作用就是将图像文件的数据读入矩阵中,此外还可以用imfinfo()函数查看图像文件的信息(见例1)%例1:图像数据及图像信息的读取imfinfo e:\matlabwork\tuxiang\Girl.bmp%读取图像信息[A,M]=imread('e:\matlabwork\tuxiang\Girl.bmp','bmp'); %图像数据的读取,将图像数据放入矩阵A中,颜色数据放入矩阵M中imshow(A,M);title('原图像');M(:,1)=0; %将颜色数据矩阵的一列置零figureimshow(A,M);title('改变颜色后的图像') 在多个控制件中,如何获取当前所点击控件的ID? 请教串口红外的读写问题 VC操作Excel的问题(期待大家的帮助) 找一个RFC2833发DTMF的例子! 为什么vs2005下都要手动转函数格式 请问vc中this是什么意思? 谁能告诉我这些是什么意思 我的ADO连接SQL有问题,请帮忙 VC如何改变Excel的列宽? 如何用vc++做一个服务程序,有详细的例子吗?请进-------》 我想问一下各位有没有见过编译原理学习光盘卖或其下载网址! 弱问vc工程中External Dependencies目录是怎么产生的?
如a=imread('filename');得到地a就是个三维矩阵了,就是R、G、B三个矩阵的组合了。
MATLAB是集数值计算,符号运算及图形处理等强大功能于一体的科学计算语言。作为强大的科学计算平台,它几乎能够满足所有的计算需求。自MATLAB4.0问世以来,MATLAB语言就一直受到工程应用的各个领域的学者和工程师们的关注。2001年Mathworks公司又推出了强大的MATLAB升级版本MATLAB6.0,使其在符号运算和图形处理功能上得到了进一步完善。除此之外,新版本的MATLAB还增强了它的各种应用工具箱,使MATLAB的应用面越来越广,功能也越来越强大。因此MATLAB已成为最为普遍的计算工具之一。
MATLAB软件具有很强的开放性和适用性。在保持内核不便的情况下,MATLAB可以针对不同的应用学科推出相应的工具箱(toolbox)。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、概率统计、信号处理、图像处理和物理仿真等,都在工具箱(Toolbox)家族中有自己的一席之地。此外,MATLAB还支持用户用自己编写的M文件(MATLAB的程序文件)组成自己的工具箱,极大的方便了用户的使用和维护。本文想就MATLAB中提供的图像处理工具箱(Image Processing Toolbox)的使用作一些实例方面的介绍。
二、MATLAB数字图像处理
MATLAB全称是Matrix Laboratory(矩阵实验室),一开始它是一种专门用于矩阵数值计算的软件,从这一点上也可以看出,它在矩阵运算上有自己独特的特点。实际上MATLAB中的绝大多数的运算都是通过矩阵这一形式进行的。这一特点也就决定了MATLAB在处理数字图像上的独特优势。理论上讲,图像是一种二维的连续函数,然而在计算机上对图像进行数字处理的时候,首先必须对其在空间和亮度上进行数字化,这就是图像的采样和量化的过程。二维图像进行均匀采样,就可以得到一幅离散化成M×N样本的数字图像,该数字图像是一个整数阵列,因而用矩阵来描述该数字图像是最直观最简便的了。而MATLAB的长处就是处理矩阵运算,因此用MATLAB处理数字图像非常的方便。
MATLAB支持五种图像类型,即索引图像、灰度图像、二值图像、RGB图像和多帧图像阵列;支持BMP、GIF、HDF、JPEG、PCX、PNG、TIFF、XWD、CUR、ICO等图像文件格式的读,写和显示。MATLAB对图像的处理功能主要集中在它的图像处理工具箱(Image Processing Toolbox)中。图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、二值图像操作以及形态学处理等图像处理操作。下面用一些实例进行简单说明:
1、图像的读取
MATLAB中从图像文件中读取数据用函数imread(),这个函数的作用就是将图像文件的数据读入矩阵中,此外还可以用imfinfo()函数查看图像文件的信息(见例1)
%例1:图像数据及图像信息的读取
imfinfo e:\matlabwork\tuxiang\Girl.bmp
%读取图像信息
[A,M]=imread('e:\matlabwork\tuxiang\Girl.bmp','bmp');
%图像数据的读取,将图像数据放入矩阵A中,颜色数据放入矩阵M中
imshow(A,M);title('原图像');
M(:,1)=0; %将颜色数据矩阵的一列置零
figure
imshow(A,M);title('改变颜色后的图像')