前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >MATLAB的图像显示方法

MATLAB的图像显示方法

作者头像
timerring
发布于 2023-03-04 06:20:54
发布于 2023-03-04 06:20:54
4.8K00
代码可运行
举报
文章被收录于专栏:TechBlogTechBlog
运行总次数:0
代码可运行

文章和代码以及样例图片等相关资源,已经归档至【Github仓库:digital-image-processing-matlab

文章目录

MATLAB的图像显示方法

目的

  1. 了解 MATLAB 的基本功能及操作方法。
  2. 掌握典型离散信号的 Matlab 产生和显示。

内容

在 MATLAB 中, 序列是用矩阵向量表示, 但它没有包含采样信息, 即序列位置信息, 为 此, 要表示一个序列需要建立两个向量; 一是时间序列 n , 或称位置序列, 另一个为取值序 列 x ,表示如下:

n=[\cdots,-3,-2,-1,0,1,2,3, \cdots]

\mathrm{x}=[\cdots, 6,3,5,2,1,7,9, \cdots]

一般程序都从 0 位置起始, 则

x=[x(0), x(1), x(2), \cdots]

对于多维信号需要建立矩阵来表示, 矩阵的每个列向量代表一维信号。

数字信号处理中常用的信号有指数信号、正弦信号、余弦信号、方波信号、锯齿波信号 等, 在 MATLAB 语言中分别由 exp, sin, cos, square, sawtooth 等函数来实现。

1.用 MATLAB 编制程序, 分别产生长度为

(由输入确定) 的序列:

(1)单位冲击响应序列

可用 MATLAB 中 zeros 函数来实现;

代码语言:javascript
代码运行次数:0
运行
复制
t=-20:1:20;
X=zeros(size (t)) ;
X(21)=1;
plot(t,x);
(2)单位阶跃序列

U(n) 可用 MATLAB 中 ones 函数来实现;

代码语言:javascript
代码运行次数:0
运行
复制
t=-20:1:20;
X=zeros (size (t)) ;
x (21:41)=ones (1,21);
plot(t,x);
(3)正弦序列
\quad x(n)=\sin (\omega n)

代码语言:javascript
代码运行次数:0
运行
复制
N0=20;
w=0.5;
n=-N0:0.5:N0;
y=sin (w*n);
plot (n, y);
(4)指数序列
x(n)=a^{n},-\infty<n<+\infty
代码语言:javascript
代码运行次数:0
运行
复制
N0=20 ;
a=1.1;
n=-N0:2:N0 ;
X=a.^n;
plot (n,x);
(5)复指数序列

用 exp 函数实现

K_{0} e^{(a+j b) n}

, 并给出该复指数序列的实部、虚部、幅 值和相位的图形。(其中 a=-0.2 ; b=0.5 ; K0=4 ; N=40.)

K_{0} e^{(a+j b) n}=K_{0} e^{a n}(\cos (b n)+j \sin (b n))
代码语言:javascript
代码运行次数:0
运行
复制
a=-0.2;
b=0.5;
K0=4;
N=40;
n=-N:1:N;
t=K0*exp.^(a+j*b)*n ;

流程图:

在计算机上实现正弦序列

x(n)=A_{0} \sin (2 \pi f n+\varphi)
代码语言:javascript
代码运行次数:0
运行
复制
A0=-0.2;
f=0.05;
pi=3.14;
K0=2/3*pi;
N=40;
n=-N:1:N;
x=A0*sin(2*pi*f*n+K0);
plot(n,x)

MATLAB的图像显示方法

1.练习图像读写和显示函数的使用方法

2.掌握MATLAB支持的五类图像显示方法

3.数字图像处理中常用到的MATLAB函数

1.图像的读

代码语言:javascript
代码运行次数:0
运行
复制
RGB=imread('D:\pic\DIP3E_CHO1\Fig0101(1921 digital image).tif);

2.图像显示

(1)图像显示
代码语言:javascript
代码运行次数:0
运行
复制
f=imread('D:\pic\DIP3E_CHO1\Fig0101(1921 digital image).tif');
whos f
imshow(f)
[m,n]=size(f)%显示图像的大小
(2)同屏显示多个图像

可用subplot(m,n)将图形窗分为m*n个子窗口,然后取第一、第二…子窗口显示不同的图像,实现同屏显示多个图像。例如:

代码语言:javascript
代码运行次数:0
运行
复制
figure(1);
%2×2个子屏中的第一个子屏
subplot (2,2,1);
%显示第一个图像
imshow(Il);
%2×2个子屏中的第四个子屏
subplot(2,2,4);
%显示第四个图像
imshow(I4);

3.数字图像处理中常用到的MATLAB函数

size ()函数

Zeros ()函数

Fft2(), ifft2()函数

Imhist()函数

Histeq()函数

Imrotate()函数

Imnoise()函数

Edge()函数

Title()函数

Xlable(), Ylable()函数

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-03-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
干货 | ES6 系列之我们来聊聊装饰器
       点击上方“腾讯NEXT学院”关注我们 Decorator 装饰器主要用于: 1. 装饰类 2. 装饰方法或属性 1 .装饰类 @annotationclass MyClass { } function annotation(target) { target.annotated = true;} 2. 装饰方法或属性 class MyClass { @readonly method() { }} function readonly(targe
腾讯NEXT学位
2020/02/11
6300
干货 | ES6 系列之我们来聊聊装饰器
Decorator 装饰器
Angular大量使用了JS的装饰器特性,先看 ruanyifeng的介绍 使用babel转换 步骤 : npm install -g babel-cli npm init; npm install --save-dev babel-plugin-transform-decorators-legacy babel --plugins transform-decorators-legacy 1.js > 1.es5.js 例1 @eat class Person { constructor() {} }
mafeifan
2018/12/25
4240
设计模式(11)[JS版]-JavaScript中的注解之装饰器模式
装饰器模式模式动态地扩展了(装饰)一个对象的行为,同时又不改变其结构。在运行时添加新的行为的能力是由一个装饰器对象来完成的,它 "包裹 "了原始对象,用来提供额外的功能。多个装饰器可以添加或覆盖原始对象的功能。装饰器模式属于结构型模式。和适配器模式不同的是,适配器模式是原有的对象不能用了,而装饰器模式是原来的对象还能用,在不改变原有对象结构和功能的前提下,为对象添加新功能。
AlbertYang
2020/09/08
8670
设计模式(11)[JS版]-JavaScript中的注解之装饰器模式
decorator 学习小结
decorator 学习小结 1. decorator 是什么 decorator 是装饰者,是 ES7 的语法。 decorator 本质是一个 wrapper,可以动态增强【类】,【实例方法】的能
IMWeb前端团队
2017/12/29
6650
decorator 学习小结
JS 完美的 AOP 编程
看到 decorator这个词的时候,让我回想起了python中的decorator.而,当我看到 decorator中的 @的时候, 我tm确定,这尼玛不就是python吗? 但, too young too naive. es6中的decorator和python很相似,但却又非常的不一样.因为,在js中,decorator是不能用来装饰函数的.(因为有函数提升) so, decorator在js中是用来干嘛的呢? 神马是decorator decorator是以一种近乎trick的方式,让你写更少的代
villainhr
2018/07/03
9420
Decorator 从原理到实践
ES6 已经不必在过多介绍,在 ES6 之前,装饰器可能并没有那么重要,因为你只需要加一层 wrapper 就好了,但是现在,由于语法糖 class 的出现,当我们想要去在多个类之间共享或者扩展一些方法的时候,代码会变得错综复杂,难以维护,而这,也正式我们 Decorator 的用武之地。
Nealyang
2019/09/29
5370
Decorator 从原理到实践
2020的最后一天,不妨了解下装饰器
举一个非常常见的需求。假设我们有一个类Network,它有一个异步getList方法
ACK
2021/01/05
1K0
Decorator 装饰器
大家在前端开发过程中有遇到过 @ + 方法名 这种写法吗?当我第一次看到的时候,直接懵了,这是什么东东……
政采云前端团队
2022/03/29
4130
Decorator 装饰器
一文读懂 @Decorator 装饰器——理解 VS Code 源码的基础
作者:easonruan,腾讯 CSIG 前端开发工程师 1. 装饰器的样子 我们先来看看 Decorator 装饰器长什么样子,大家可能没在项目中用过 Decorator 装饰器,但多多少少会看过下面装饰器的写法: /* Nest.Js cats.controller.ts */ import { Controller, Get } from '@nestjs/common'; @Controller('cats') export class CatsController {   @Get()  
腾讯技术工程官方号
2021/08/09
1.2K0
搭建node服务(四):Decorator装饰器
Decorator(装饰器)是ECMAScript中一种与class相关的语法,用于给对象在运行期间动态的增加功能。Node.js还不支持Decorator,可以使用Babel进行转换,也可以在TypeScript中使用Decorator。本示例则是基于TypeScript来介绍如何在node服务中使用Decorator。
宜信技术学院
2020/11/05
1.7K0
如何用 Decorator 装饰你的 Typescript?
正在着手写 THE LAST TIME 系列的 Typescript 篇,而Decorator 一直是我个人看来一个非常不错的切面方案。所谓的切面方案就是我们常说的切面编程 AOP。一种编程思想,简单直白的解释就是,一种在运行时,动态的将代码切入到类的指定方法、指定位置上的编程思想就是 AOP。AOP 和我们熟悉的 OOP 一样,只是一个编程范式,AOP 没有说什么规定要使用什么代码协议,必须要用什么方式去实现,这只是一个范式。而 Decorator 也就是AOP 的一种形式。
Nealyang
2019/12/30
1.2K0
在JavaScript中使用装饰器
Decorator装饰器是ES7的时候提案的特性,目前处于Stage 3候选阶段(2022年10月)。
luciozhang
2023/04/22
5430
在JavaScript中使用装饰器
Vue中使用装饰器,我是认真的
作为一个曾经的Java coder, 当我第一次看到js里面的装饰器(Decorator)的时候,就马上想到了Java中的注解,当然在实际原理和功能上面,Java的注解和js的装饰器还是有很大差别的。本文题目是Vue中使用装饰器,我是认真的,但本文将从装饰器的概念开发聊起,一起来看看吧。
前端进击者
2021/07/27
1.2K0
TS 设计模式05 - 装饰者模式
在 oop 中,继承是实现多态最简单的方案。同一类的对象会有不同表现时,我们基于此基类去写派生类即可。但有时候,过度使用继承会导致程序无法维护。比如说,人有一个展示自己外观的方法,穿上不同的衣服这个展现形式就不一样。一个人可以选择穿 T-shirt,裤子,裙子,外套等等,它的顺序和搭配是不固定的,如果使用继承,我们对每种组合都需要去定义一个类,比如穿裤子的人,穿裙子的人,穿裤子和裙子的人,先穿裤子再穿外套的人......这样会是我们的程序变得非常庞大而难以维护。 事实上,不管穿什么衣服,本质上仍然是人,衣服只是基于人类的装饰而已。装饰器模式允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。
love丁酥酥
2020/09/01
1.3K0
TS 设计模式05 - 装饰者模式
JavaScript设计模式之装饰器模式
手机壳就是装饰器,没有它手机也能正常使用,原有的功能不变,手机壳可以减轻手机滑落的损耗。
FinGet
2019/06/28
4660
JS 装饰器解析
随着 ES6 和 TypeScript 中类的引入,在某些场景需要在不改变原有类和类属性的基础上扩展些功能,这也是装饰器出现的原因。 装饰器简介 作为一种可以动态增删功能模块的模式(比如 redux 的中间件机制),装饰器同样具有很强的动态灵活性,只需在类或类属性之前加上 @方法名 就完成了相应的类或类方法功能的变化。 不过装饰器模式仍处于第 2 阶段提案中,使用它之前需要使用 babel 模块 transform-decorators-legacy 编译成 ES5 或 ES6。 在 TypeScrip
牧云云
2018/04/28
2.9K0
JS 装饰器解析
TS 进阶 - 实际应用 03
装饰器的本质是一个函数,只不过它的入参时提前确定好的。TypeScript 中的装饰器目前只能在类及类成员上使用。
Cellinlab
2023/05/17
4940
一文读懂 JS 装饰器,这是一个会打扮的装饰器
装饰器是最新的 ECMA 中的一个提案,是一种与类(class)相关的语法,用来注释或修改类和类方法。装饰器在 Python 和 Java 等语言中也被大量使用。装饰器是实现 AOP(面向切面)编程的一种重要方式。
用户1462769
2020/03/30
1.3K0
一文读懂 JS 装饰器,这是一个会打扮的装饰器
玩转ES6(四)Set、Map、Class类和decorator 装饰器
在看Class之前建议看一下js的面向对象 https://juejin.im/post/5b8a8724f265da435450c591
前端迷
2019/12/03
8270
大型前端如何分析用户行为和追踪函数调用链
在很多时候我们项目越来越大的时候,我们希望去监听局部某些类方法的性能,这个时候我们既不想影响源代码的功能,但又想借助某些方案去窥探类方法内部的运行效能,此时我们就可以考虑使用装饰器对类方法性能进行监听。装饰器相信大家都不陌生了,虽然在 Javasript 里面它仍处于提议阶段,但是我们已经可以 TypeScript 里面运用这个特性,也可以借助 babel 的语法转换在 Javasript 里面使用。
wscats
2020/06/18
2K0
大型前端如何分析用户行为和追踪函数调用链
相关推荐
干货 | ES6 系列之我们来聊聊装饰器
更多 >
目录
  • 文章目录
  • MATLAB的图像显示方法
    • 目的
    • 内容
    • MATLAB的图像显示方法
      • 1.图像的读
      • 2.图像显示
      • 3.数字图像处理中常用到的MATLAB函数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文