9游戏

matlab图像处理,MATLAB图像处理实例详解

街酒 778

1、打开软件,读入图片。2、分别建立3*3高斯滤波模板和平均滤波模板,并对加噪的图片进行滤波处理。

显示原图、加噪后的图片和分别用高斯、平均模板滤波后的图片。

3、图片结果如图,可以看出平均模板滤波后噪声十分明显,高斯模板滤波后噪声影响相对较小,但也很容易看出。4、使用中值滤波对图片进行处理,并显示处理后的图像。5、从图片可以看出,中值滤波后的图像基本上看不出来噪声的影响。完成保存就可以了。

matlab的图像处理功能属于什么组成部分

MATLAB 包含两个部分:核心部分和各种应用工具箱。MATLAB 核心部分MATLAB 的核心部分由 MATLAB 开发环境、MATLAB 语言、MATLAB 数学函数库、MATLAB 图形处理系统和 MATLAB 应用程序接口五大部分组成,包含数百个核心内部函数。

Simulink 目前被 MathWorks 公司以与MATLAB 并列的地位推出。

MATLAB 开发环境是一个集成的工作环境,包括 MATLAB 命令行窗口、文件编辑调试器、工作区、数组编辑器和在线帮助文档等。MATLAB 语言具有程序流程控制、函数、数据结构、输入输出和面向对象的编辑特点,是基于矩阵/数组的语言。MATLAB 的数学函数库包含了大量的计算算法,包括基本函数、矩阵运算和复杂算法等。MATLAB 的图形处理系统能够将二维和三维数组的数据用图形表示出来,并可以实现图像处理、动画显示和表达式作图等功能。

MATLAB 应用程序接口使 MATLAB 语言能与 C 或 FORTRAN 等其他编程语言进行交互。MATLAB 工具箱MATLAB 的工具箱包括两种:功能性工具箱和科学性工具箱。功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及与硬件实时交互功能,适用于多种学科。

学科性工具箱则专业性比较强,如 control toolbox、communication toolbox 等,这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无须编写自己学科范围内的基础程序即可直接进行高、精、尖的研究。

如何用MATLAB打开以及处理图片

1、先打开软件后,找到左上角按钮,点击即可用m编辑器,写入代码,可以每写完一部分,执行一下,查看效果。2、接着需要将该文件保存。

3、然后将一个图片,复制到同一个文件夹里,方便程序调用。

4、然后即可进行程序创建,这里如图使用imread进行读取,其中引号内容有文件名,包括扩展名,这是相对路径。如果程序和图不在同一文件夹,则必须使用图片完整路径。5、为了实时看到效果,可添加imshow,用于输出,这里添加了此语句,可以显示刚刚读入的彩图。6、因为输出图片可能较多,可用subplot将其放入一张结果图上,在每个imshow之前,都添加此语句,其中(2,2,1)表示2行2列布置中,第一张图,其他依次类推。

7、这样运行后,结果如图。8、最后,需将处理的结果进行保存,可以用最后一行imwrite进行,该句中名称可自行设置,格式即扩展名,可不和原图相同,9、运行之后,如图,即可找到储存的文件。

matlab图像处理楼主你太狠了,5分要别人做这么多!1.图像的读入、显示及信息查询:(1)I=imread ('lena.jpg') %图像读入imshow(I) %图像显示(2)inf=imfinfo('lena.jpg') % 图像信息查询2.图像的常用处理语句:(1) X=rgb2gray(I) ; imshow(X) %彩色图像转灰度图像 (2)X2=grayslice(I,64) ; imshow(X2,hot(64)) %将灰度图像转为索引色图像(3) X3=im2bw(X1) ; imshow(X3) %将图像转二值图像3.图像滤波:clear allg0=imread('lena.tif')g0 = g0(:,:,2); %三维转二维figure(1);imshow(g0) ;title('原图') %如图 5g1=imnoise(g0,'salt & pepper',0.2)g1=im2double(g1);figure(2);imshow(g1);title('加入椒盐噪声') %如图 6h1=fspecial('gaussian',4,0.3)g2=filter2(h1,g1,'same')figure(3);imshow(g2);title('进行高斯滤波') %如图 7h2=fspecial('sobel')g3=filter2(h2,g1,'same')figure(4);imshow(g3);title('进行sobel滤波') %如图 8h3=fspecial('prewitt')g4=filter2(h3,g1,'same')figure(5);imshow(g4);title('进行prewitt滤波') %如图 9h4=fspecial('laplacian',0.5);g5=filter2(h4,g1,'same');figure(6);imshow(g5);title('进行拉普拉斯滤波'); %如图 10h5=fspecial('log',4,0.3);g6=filter2(h5,g1,'same');figure(7);imshow(g6);title('进行高斯拉普拉斯滤波'); %如图 11h6=fspecial('average');g7=filter2(h6,g1,'same');figure(8);imshow(g7);title('进行均值滤波'); %如图 12h7=fspecial('unsharp',0.3);g8=filter2(h7,g1,'same');figure(9);imshow(g8);title('进行模糊滤波'); %如图 13h8=[0 -1 0;-1 5 -1;0 -1 0];g9=filter2(h8,g1,'same');figure(10);imshow(g9);title('进行高通高斯滤波'); %如图 14h9=g1;g10=medfilt2(h9);figure(11);imshow(g10);title('进行中值滤波'); %如图 15这样可以么?

MATLAB--数字图像处理 Hough变换

Hough变换是1962年由Hough提出来的,用于检测图像中直线、圆、抛物线、椭圆等形状能够用一定函数关系描述的曲线。 在这里我们重点研究的是 利用Hough变换检测图中的直线。

对于上图中的直线L,用常规方程表示 L: y=ax+b 那么用极坐标怎么表示呢? 对于任意的R,都有 R×cos(β-θ)=ρ 展开得 R×cosβcosθ+R×sinβsinθ=ρ 又x=R×cosβ y=R×sinβ(这个就不用解释了吧 高中知识了 O(∩_∩)O) x×cosθ+y×sinθ=ρ 从这个极坐标表示的式子来看,是不是在一条直线上面所有的(x,y)都对应一个ρ、θ呢? 所以这个就是hough变换的: 点-线对偶性 通俗的讲:在直角坐标系中的一条直线,在极坐标下,其实就是一个点,坐标为(ρ,θ) 由a、b两图:位于一条直线上的两点,在极坐标会产生一个交点,说明他们共线。

可是在直角坐标系中明明只有两个点,b图中反而是两条曲线? 对于任意一点,过该点有无数条直线,每条直线都有一个(ρ,θ)值,那么无数条直线,就会组成连续的(ρ,θ)值,就会构成极坐标系下的一条连续曲线。 这样,我们对一副图像所有点进行同样的操作,得到一副(ρ,θ)图像。 如果我们需要找出图像中最长的那条直线,那么肯定组成该直线的点最多,那么在极坐标系中肯定有个(ρ,θ)点是有最多条直线相交得到的。 如下图,利用函数就可以找到 相交曲线数 最多的一个点。

那么找到该点有什么用呢? 找到该点,就可以得到(ρ,θ)值、直线起始、终止点坐标。(MATLAB提供函数支持) 这里来说说,计算机是怎么由(ρ,θ)坐标图找到相交曲线最多的那个点。 首先,提供一个坐标轴 这里就说简单些:在基础二我们可以得出 一个点在极坐标系下的一条曲线 然后我们 对该曲线进行细分,分成很多个点 (得到坐标) 在第一步提供的坐标轴里面,凡是前面分出来的点坐标,该位置的值就累加1 重复所有点,就可以得出一副累加图 如果需要找到曲线相交最多那个点,就只需要在该坐标轴中找到值最大的点坐标即可。

标签: MATLAB处理图像