matlab数字图像处理(matlab数字图像处理temp=i(1:n 1:n)什么意思)
本文目录
- matlab数字图像处理temp=i(1:n 1:n)什么意思
- Matlab在数字图像处理中的应用
- Matlab数字图像处理 关于明暗调整的问题
- MATLAB--数字图像处理 Hough变换
- 数字图像处理matlab中怎么制作并显示动态图
- 如何使用matlab读取/写入图像文件
matlab数字图像处理temp=i(1:n 1:n)什么意思
这个命令就是从矩阵i中取出一个n阶行列式,就是到i的第1行到第n行加上第1行到第n列的数据。
下面是一个例子:
a = rand(4,5)%产生随机数组,每次运行结果不一定相同
i = 4;
b = a(1:i,1:i)
结果为:
a =
0.6557 0.6787 0.6555 0.2769 0.6948
0.0357 0.7577 0.1712 0.0462 0.3171
0.8491 0.7431 0.7060 0.0971 0.9502
0.9340 0.3922 0.0318 0.8235 0.0344
b =
0.6557 0.6787 0.6555 0.2769
0.0357 0.7577 0.1712 0.0462
0.8491 0.7431 0.7060 0.0971
0.9340 0.3922 0.0318 0.8235
Matlab在数字图像处理中的应用
load trees是加载一个图像
im2bw是一个将图像文件转换成二元图像(黑白的)的函数,X是要转换文件的名字,是事先读入的,你试试,找一个图像,然后=imread(‘你的图像所在的路径及名字’);然后用imshow(X,map)
显示出刚读入的图像。然后再用b=im2bw(X,map,0.4);把图像变成灰白的,要查看就用语句:imshow(X,map), figure, imshow(BW)当然记得事先要clear all
整个过程我尝试的如下:
=imread(‘你的图像所在的路径及名字’);
BW = im2bw(X,map,0.4);
imshow(X,map), figure, imshow(BW)
是不是就看到图像有两个啊?一个彩色一个黑白啊?
Matlab数字图像处理 关于明暗调整的问题
直方图均衡化试试,matlab中histeq函数可以实现一些效果。
I = imread(’tire.tif’);
J = histeq(I);
imshow(I)
figure, imshow(J)这个其实比较简单的。图片的亮度是根据灰度而定的。
首先是读取图片,然后储存R、G、B值。
将图片转换正灰度图。
调节灰度图色数(根据加减值就可以办到)
根据储存的R、G、B值,将图片转换回RGB图。
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中怎么制作并显示动态图
使用plot函数实现数字动态显示。
MATLAB(MatrixLaboratory)MATLAB是matrix和laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的模式,代表了当今国际科学计算软件的先进水平。
如何使用matlab读取/写入图像文件
1、查看图片所在的位置。
2、输入命令I=imread(’E:\1.jpg’)。
3、点击右边工作区的名称为I的,可以查看图片的编码。
4、输入命令imsho(I),选择命令,右击,执行所选内容。
5、或选择命令,点击上端的“运行并前进”。
6、如图所示,图片就显示出来了。
更多文章:
thinkpad p70(thinkpad p70带色彩矫正器吗)
2024年7月9日 10:03