
MATLAB
计算机科学与技术专业研究生二年级,与你一起学习MATLAB。争取在研究生毕业论文写作时,可以自己设计出有技术水准的图。加油!
@@南风
这个作者很懒,什么都没留下…
展开
-
matlab快速将几幅图片放在一幅图片
matlab中将几幅图片放在一起显示f=imread('Fig0219(a).tif');fn=imnoise(f,'salt & pepper',0.2);gm=medfilt2(fn);gms=medfilt2(fn,'symmetric');subplot 221;imshow(f); title('(a)X射线图像');subplot 222;imshow(fn);title('(b)被椒盐噪声污染的图像');subplot 223;imshow(gm);title('(c)原创 2020-07-07 17:53:27 · 22792 阅读 · 0 评论 -
ordfilt2非线性滤波器
函数ordfilt2计算统计排序(order-statistic filter)滤波器(也叫做rank filter,即排序滤波器)。这些是非线性空间滤波器,它们的响应基于图像邻域中的像素序列,并且领域中心像素的值被由邻域序列的排序结果决定的值代替。 函数ordfilt2的语法为: g=ordfilt2(f,order,domain) 这个函数用领域排序集合中的第order个元素去替代f中的每个元素以生成输出图像g,邻域由domain内的非零元素指定。在这里,domain是由0和1组成的m*n大小的.原创 2020-07-07 17:48:50 · 1144 阅读 · 0 评论 -
【matlab】线性空间滤波器的实现
线性空间滤波器 工具箱支持一些预定义的二维线性空间滤波器,可通过函数fspecial实现,该函数生成滤波模板W,函数的语法为: w=fspecial(‘type’,parameters) type------------滤波器的类型 parameters------------进一步定义指定的滤波器由函数fspecial支持的空间滤波器,其中的一些用于边缘检测类型语法及参数averagefspecial(‘average’,[r,c])是矩形平均滤波器,大小为rc,默认值原创 2020-07-06 17:54:26 · 2307 阅读 · 0 评论 -
【matlab】直方图均衡化
先读入一张图片这幅图片是显微镜下花粉的图像,的放大了700倍。这幅图片比较暗,动态范围比较低。现在我们把a的直方图运行出来:直方图均衡后的图片可以看出在平均灰度方面的改进是非常明显的。对比度增加源于直方图在整个灰度级上的显著扩展。灰度级的增加源于均衡化之后的图像直方图中灰度级平均值高于(较亮)原始值。直方图均衡化方法并不能生成平坦的直方图,但却具有增加图像灰度级动态范围的特性。在直方图均衡化过程中使用的变换函数是归一化直方图的累加求和。可以使用cumsum函数实现变换功能。变换函数原创 2020-06-24 11:48:15 · 808 阅读 · 0 评论 -
生成并绘制图像的直方图
工具箱中用于处理图像直方图的核心函数是imhist,基本语法如下:h=imhist(f,b)f-------输入图像h-------直方图b-------形成直方图的“统计堆栈”的书目,若b不在此参数列表中,默认值为256.我们可以通过下列表达式得到归一化的直方图:p=imhist(f,b)/numel(f)numel(f)函数可以给出数组f中元素的个数(也就是图像中的像素数)直方图还可以利用条形图来绘制,为了达到目的,我们使用下列函数:bar(horz,z,width)z------原创 2020-06-13 18:54:01 · 2038 阅读 · 0 评论 -
stretchlim函数
这幅图是正常显示。>> low_high=stretchlim(f)low_high = 0 1 >> g2=imadjust(f,stretchlim(f),[]) >> imshow(g2)>> g3=imadjust(f,stretchlim(f),[1 0])>>> imshow(g3)可以看到这样增加了负片图像的对比度。stretchlim函数的语法:low_hi.原创 2020-06-02 07:58:16 · 1859 阅读 · 0 评论 -
imadjust函数
imadjust函数一、imadjust函数imadjust函数是***针对灰度图像进行灰度变换***的基本图像处理工具箱函数。一般的语法格式:g=imadjust(f,[low_in high_in],[low_out high_out],gamma)输入图像应属于unit8、unit16或double类gamma------指明了由f映射生成图像g时曲线的形状。gamma小于1,映射被加权至较高(较亮)的输出值。如果省略,则gamma默认为1(线性映射)。g1位***负片图像***负片原创 2020-06-01 22:49:55 · 2578 阅读 · 0 评论 -
空间域技术背景
空间域指的是图像平面本身,直接对图像的像素进行处理操作。表达式表达:g(x,y)=T[f(x,y)]f(x,y)----输入图像g(x,y)—输出(处理后)的图像T---------对图像f的算子,作用于(x,y)定义的邻域。原创 2020-06-01 22:09:38 · 441 阅读 · 0 评论 -
MATLAB优化编码
MATLAB是专门为数组操作而设计的编程语言。两种重要的优化Matlab代码的方法:预分配数组和向量化循环。一、预分配预分配在进入计算数组元素的for循环之前初始化数组。tic和toc可用来测量函数的执行时间。可以看到同样的命令运行时间变了。f—函数句柄s—调用所需的秒数二、向量化我们可以调用非常有用的MATLAB函数meshgrid(c,r)c-----水平(行)r------垂直(列)meshgrid()的语法:【c,r】=meshgrid(c,r)向量化之后的代码常原创 2020-06-01 18:58:08 · 522 阅读 · 0 评论 -
函数句柄
函数句柄定义:函数句柄是MATLAB数据类型,包含用于引用函数的信息。好处:【1】可以把函数句柄作为参数传递给另外一个函数。【2】提高重复操作的性能。【3】可将函数句柄保存在数据结构或文件中供以后使用函数句柄有两种不同的类型,都用函数句柄算子@来创建一、命名的函数句柄二、使用匿名的函数句柄通用格式为:@(input-argument-list) expressiong—计算输入值的平方r----计算两个变量平方之和的平方根可以像调用命名函数句柄那样调用匿名函数句柄。...原创 2020-06-01 17:33:11 · 8582 阅读 · 0 评论 -
毕业论文图像快速画出
本节主要讲图形怎么画,相比较于Excel,matlab画图的功能会更简单和强大。原创 2020-05-14 17:58:10 · 420 阅读 · 0 评论 -
元胞数组的应用
本节我们主要讲的是利用小括号进行索引,可以删除行,也可以对具体的元胞赋予新的值。原创 2020-05-10 17:59:18 · 885 阅读 · 0 评论 -
【matlab】访问元胞数组
本节我们讲的是使用大括号访问元胞数组的值,即某一个元胞数组里某个位置的具体值。原创 2020-05-10 15:54:40 · 1655 阅读 · 0 评论 -
[matlab]元胞数组(使用cellplot显示元胞数组)
要显示元胞数组,需要使用cellplot()函数。语法格式:cellplot(元胞数组名)原创 2020-05-10 15:29:04 · 4002 阅读 · 0 评论 -
【matlab】元胞数组(使用celldisp显示元胞数组)
元胞数组(使用celldisp显示元胞数组)语法格式:celldisp(元胞数组);我们来看看代码是如何写的:a{1,1}=rand(2,3);a{1,2}=ones(3,5);a{2,1}=zeros(3,4);a{2,2}=rands(3,6);celldisp(a);按F5进行运行,可以看到每一个元胞的内容...原创 2020-05-09 18:35:37 · 2209 阅读 · 0 评论 -
【matlab】元胞数组(由元胞数组创建元胞数组)
元胞数组(由元胞数组创建元胞数组)语法格式:元胞数组名(指定索引)={元胞};我们来看一段代码:原创 2020-05-09 18:18:22 · 813 阅读 · 0 评论 -
【matlab】元胞数组的创建
元胞数组的创建语法格式:元胞数组名={元胞。。。元胞};我们可以看一下代码如何写:>> a={rand(4,4),zeros(5,3);ones(3,5),rands(7,8);rand(5,6),[1 3 5 6 7;2 4 5 6 7;24 67 23 78 89]};//创建3行2列的元胞数组>> size(a);>> b=size(a);//数组的长度>> bb = 3 2>> aa =原创 2020-05-09 17:42:17 · 2948 阅读 · 0 评论 -
【matlab】访问结构体内部元素
【matlab】访问结构体内部元素语法格式:结构体名称.字段名;如果给域换新值则:结构体名称.字段名=新值; 例如:person.weight;具体情况我们看一下代码:>> student(1)=struct('score',98,'rand',15);>> student(1).score;>> student(1);>> a=student(1).score;>> aa = 98>> stud原创 2020-05-09 16:45:12 · 1777 阅读 · 0 评论 -
[matlab]使用struct创建结构体
[matlab]使用struct创建结构体语法:struct(域名1,属性值1,域名2,属性值2,。。。。。)我们具体看看结构体怎么使用:>> person(1)=struct('name','anna','weight',160,'age',28);>> person(2)=struct('name','jack','weight',178,'age',32);>> personperson = 包含以下字段的 1×2 struct 数组:原创 2020-05-09 16:21:34 · 2318 阅读 · 0 评论 -
【matlab】结构体
matlab中的结构体使用赋值语句来创建结构体>> person(1).name='anna';>> person(1.weight)=80;>> person(1).weight=80;>> person(1).length=200;>> person(1).width=40;>> person(2).name='jack';>> person(2).weight=70;>> person(2)原创 2020-05-09 11:13:13 · 1064 阅读 · 0 评论 -
【matlab】三维曲面
【matlab】三维曲面三维曲面用到了surf()函数语法:surf(X,Y,Z);先来看一个例子:>> [X Y]=meshgrid(-2:0.5:2);>> Z=ones(size(X));>> surf(X,Y,Z);运行截图可以看出XY的范围确定之后,Z的值都是1,所以图像是一张平面再举例一个复杂的>> [X Y]=meshgrid(-10:0.6:10);>> Z=sqrt(X.^2+Y.^2);>&g原创 2020-05-09 10:17:34 · 554 阅读 · 2 评论 -
【matlab】三维网格曲面图(mesh的用法)
【matlab】三维网格曲面图(mesh的用法)语法:mesh(X,Y,Z);具体可以看代码:>> Z=ones(size(x));>> [X,Y]=meshgrid(-2:0.5:2);>> Z=ones(size(X));>> mesh(X,Y,Z);运行截图如果使用三角函数,图像效果更好一些;>> [X,Y]=meshgrid(-8:0.1:8);>> Z=cos(Y);>> mesh(X,原创 2020-05-08 23:18:20 · 6941 阅读 · 0 评论 -
【matlab】三维曲面(矩形网格---meshgrid)
【matlab】三维曲面(矩形网格—meshgrid)二维曲线:先找到x,找到对应的y,绘制点。>> x=1:2*pi;>> y=sin(x);>> plot(x,y,'o');>> plot(x,y,'o-');运行截图对于三维曲面:先找到(x,y),找到对应的Z,绘制点。(网线图+表面图)语法:【X,Y】=meshgrid(x,y);具体代码:>> x=-2:0.5:2;>> y=-2:0.5:2;原创 2020-05-08 22:57:20 · 1897 阅读 · 0 评论 -
【MATLAB】三维曲线(plot3)
【MATLAB】三维曲线(plot3)语法:plot(x,y,z);举例如下:>> x=0:1:100;>> y=sin(x);>> z=cos(x);>> plot3(x,y,z);运行截图原创 2020-05-08 22:27:50 · 1344 阅读 · 0 评论 -
【matlab】直方图(hist函数的应用)
【matlab】直方图(hist函数的应用)语法:hist(数据)hist(数据,分组个数)hist(数据,x轴划分情况)可以用代码展示该函数的作用:>> x=0:0.1:2*pi;>> y=sin(x);>> hist(y,50);运行截图>> a=[1 3 4 1 4 6];>> hist(a,[1 3 4 6]);运行截图...原创 2020-05-08 22:15:40 · 3953 阅读 · 0 评论 -
【MATLAB】饼图
本节介绍的是饼图的绘制方法首先看一下语法:a=[1,2,3,4,5,6];pie(a)如果这样写出来的图是只有百分比,没有标注的,为此可以进行改进一下;>> pie([2356,789,1265,2046]);>> title('商品占有率');>> legend('A产品','B产品','C产品','D产品');运行截图注意:标注的框可以移动。...原创 2020-05-08 17:58:06 · 6008 阅读 · 0 评论 -
【matlab】面积图(area函数的应用)
【matlab】面积图(area函数的应用)基本语法:area(y);面积图可以加入很多的元素,例如:【1】basevalue=-2;area(y,basevalue);//这里的basevalue一定要加入进去【2】area(y,‘linestyle’,’–’)//设置曲线的样式【3】ares(y,‘lifestyle’,5)//这里是设置线条的粗细具体可以看如下具体举例我们...原创 2020-05-08 17:17:30 · 11014 阅读 · 0 评论 -
【MATLAB】柱状图(bar的用法)
【MATLAB】柱状图(bar的用法)语法:【1】bar(y)【2】bar(x,y)【3】barh(y,属性)先举例:>> x=0:0.1:2*pi;>> y=cos(x);>> bar(y);运行截图为再举例一个>> y=rand(4,3);>> bar(y)运行后为如果调整格子的宽度可以改为bar(...原创 2020-05-08 16:19:47 · 10982 阅读 · 0 评论 -
[MATLAB]图例说明(legend的用法)
[MATLAB]图例说明语法:legend(图例说明)例如:x=y1=y2=y3=plot(x,[y1;y2;y3]);//这里特别要注意y1y2y3之间是用分号进行连接的具体代码如下:>> x=0:0.1:2*pi;>> y1=sin(x);>> y2=cos(x);>> y3=sin(x)+cos(x);>>...原创 2020-05-08 11:54:35 · 12385 阅读 · 0 评论 -
[MATLAB]设置坐标轴标签
[MATLAB]设置坐标轴标签>> x=0:0.1:2*pi;>> y=sin(x);>> plot(x,y);>> xlabel('x轴示范','color','b','fontsize',18);>> ylabel('y轴示范','color','r','fontsize',18);运行截图...原创 2020-05-08 11:27:57 · 19083 阅读 · 0 评论 -
猜算式,四个两位数字不可以重复(一)
xy=ab这四个两位是有0到9组成,但是数字不可以重复package p1;import java.util.ArrayList;import java.util.List;public class Demo01 { static List<String> lis=new ArrayList<String>();//结果1(有重复的结果) static L...原创 2020-04-07 17:02:25 · 618 阅读 · 0 评论 -
字符串处理(三)
串的简单处理(一)具体要求为:1、把每个单词的首字母变大写2、把数字与字母之间用下划线分开,使得更加清晰3、把单词中间有多个空格的调整为1个空格package p1;import java.util.Scanner;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Demo02...原创 2020-04-05 18:13:45 · 213 阅读 · 0 评论