MATLAB图像处理——矩阵操作
矩阵的直接创建
a = [1,2,3:4,5,6:7,8,9]
即a为一个3x3的矩阵:
a =
1 2 3
4 5 6
7 8 9
关于矩阵操作,来看一个问题:
编写一个程序m文件,用于构建和显示包含大小为c×c像素的白色正方形的图像,该程序自动以大小为N x N像素(N = 256)的黑色背景为中心
由图像知识可知,像素值可取0~255之间,0为黑,255为白
代码如下:
a = zeros(256);%创建零矩阵 256*256
cc = 32; %这里令中间的白色正方形大小为32*32
a((N-cc)/2:(N+cc)/2,(N-cc)/2:(N+cc)/2)=255; %将中间变成白色,即赋值为255
imshow(a) %显示图像
显示出来
同理,画一些更复杂的图形:
%在上述图形的基础上再加一些白色图形
a(115:145,:)=255;
a(:,115:145)=255;
这里用到了MATLAB的矩阵赋值,将一些特定的位置(多值)赋特殊值:
A为矩阵,操作A的a行到b行,c列到d列中的数字,其语句为A(a:b,c:d)=m; m为目标值,这里希望改成白色,故赋值为255,叠加上次的中心白色。可以得到下图:
在这里看到最开始的小方格被挡住了一些,但是还能看到一个小角(额...参数设计得不好,忽略这些细节)
在我们查询变量的时候发现,矩阵的115行开始,都变成了255,印证了刚刚的变量,从115-145,当全选这一 列/行 时,可以省去数字,这里省去了列,因为我们想要一整行的白条。(行的也同理,得到了一个整个竖列)
遵从上面的规律,画什么都ok的啦
参考代码:
%利用好循环,可以一层层叠“图形”
clc;
a = zeros(256);
for i =10:10:120
a(i:(256-i),i:(256-i))=255; %加一块白
a((i+3:253-i),(i+3:253-i))=0; %在同一个循环里再加一块小一点的黑
endimshow(a)
总结:由此可见,MATLAB中的图像操作最基本的是矩阵的操作。 在后续的图像处理中(e.g.傅里叶变换),优先对矩阵进行操作。在基础上首先熟练各种矩阵应用。
MATLAB图像处理——矩阵操作相关推荐
- 大数据矩阵计算基础(二):R、Excel、Matlab中矩阵操作
一.R语言 构造矩阵 a=matrix(c(1,2,3,4),ncol=2,byrow=T) b=matrix(c(5,6,7,8),ncol=2,byrow=T) c=matrix(c(1,2,3, ...
- 【MATLAB】矩阵操作 ( 矩阵构造 | 矩阵运算 )
文章目录 一.矩阵构造 1.列举元素 2.顺序列举 3.矩阵重复设置 4.生成元素 1 矩阵 二.矩阵计算 1.矩阵相加 2.矩阵相减 3.矩阵相乘 4.矩阵对应相乘 5.矩阵相除 6.矩阵对应相除 ...
- 【Matlab】矩阵操作
矩阵操作 生成矩阵 生成行矩阵的方式: 冒号表达式 x = 1:1:5 % 1 2 3 4 5 以步长为1,从1到5生成数值,构成行矩阵. 若不设置步长,则默认步长为1. linspace(a, b, ...
- 7.MATLAB变量——矩阵操作二
FPGA教程目录 MATLAB教程目录 -------------------------------------------------------------------------------- ...
- 【MATLAB】矩阵操作 ( 矩阵下标 | 矩阵下标排列规则 )
文章目录 一.矩阵构造 1.获取指定位置的矩阵元素 2.获取指定行的元素 3.获取指定列的元素 二.矩阵下标排列顺序 一.矩阵构造 1.获取指定位置的矩阵元素 获取矩阵指定行列元素的方法 : % 生成 ...
- 6.MATLAB变量——矩阵操作一
FPGA教程目录 MATLAB教程目录 -------------------------------------------------------------------------------- ...
- 范德蒙德矩阵在MATLAB中怎么表示,Python 之 Python与MATLAB 矩阵操作总结
Python 之 Python与MATLAB 矩阵操作小结 一.线形代数理论基础 线形代数(linear algebra)是数学的一个分支,研究矩阵理论.向量空间.线性变换和有限维线形方程组等内容. ...
- matlab能用矩阵操作就不要用for循环
1.MATLAB尽量少用for循环来操作矩阵,多用本身的矩阵操作函数 比如,想将矩阵的第三列通过第二列计算得到,以下两种方式得到的结果一致,但不用for更简洁. a = 6; feature_labe ...
- matlab图像处理创建项目,《MATLAB图像处理超级学习手册》一一2.1 矩阵的创建
本节书摘来自异步社区出版社<MATLAB图像处理超级学习手册>一书中的第2章,第2.1节,作者:MATLAB技术联盟 , 张岩 更多章节内容可以访问云栖社区"异步社区" ...
最新文章
- ​Nature子刊:中德合作发现玉米根系与根际有益微生物互惠关键生物学机制
- Ubuntu 14.04 LTS, 64bit, cuda 7, Caffe环境配置编译和安装
- 【视频】谷歌大佬30分钟让你入门机器学习(2019谷歌I/O资源分享)
- jQuery插件 -- Cookie插件jquery.cookie.js(转)
- pagehelper工具类_PageHelper最佳实践
- 360浏览器清除缓存_手机微信内置浏览器缓存清理指南
- 滑动到底部或顶部响应的ScrollView实现
- WINCC冗余、上位机冗余详细教程
- windows 中获取字体文件名
- Python实战系列-爬取网页内容
- 入行网络攻城狮的自述
- Debian9开机:firmware: failed to load rtl_nic/rtl8168g-3.fw (-2)
- Android Studio 插件-Android Styler 的使用
- arm linux打印机驱动编译方法,嵌入式linux驱动打印机HP系列
- Spark常见面试题及解答
- 物竞天择2 NS2 -MOD制作教程 -制作工具
- jquery操作表格 合并单元格
- GBase8s数据库以 RESTRICT 方式或 CASCADE 方式删除安全标签对象
- java小知识:如何查看class文件的jdk版本
- 用计算机对视频进行剪裁和编辑,Win10系统剪裁视频功能怎么用?windows10剪裁视频功能使用方法介绍...