如何用matlab中的子图法把两个图片的尺寸归一化

如何用matlab中的子图法把两个图片的尺寸归一化,第1张

matlab中的归一化处理有三种方法大悄罩

1. premnmx、postmnmx、tramnmx

2. restd、poststd、trastd

3. 自己编程

(1)线性函数转换,表达式如下:

y=(x-MinValue)/(MaxValue-MinValue)

说明:x、y分别为转换前、后滚闹的值,MaxValue、MinValue分别为样本的最大值和最小值。

(2)对数函数转换,表达式如下:

y=log10(x)

说明:以10为底的对数函数转换。

(3)反余切函数转换,表达式如下:

y=atan(x)*2/PI

(4)一个归一化代码.

I=double(I)

maxvalue=max(max(I)')%max在把矩阵每列的最大值找到,并组成一个单行的数组,转置一下就会行转换为列,再max就求一个最大的值,如果不转置,只能求出每列的最大值。

f = 1 - I/maxvalue%为什么要用1去减?

Image1=f

机器学习模型需要对数据进行归一化

1)归一化后加快了梯度下降求最优解的速度;2)归一化有可能提高精度

1 归一化为什么能提高梯度下降法求解最优解的速度?

如下图所示,蓝色的圈圈图代表的是两个特征的等高线。其中左图两个特征X1和X2的区间相差非常大,X1区间是[0,2000],X2区间是[1,5],其所形成的等高线非常尖。当使用梯度下降法寻求最优解时,很有可能走“之字型”运滚路线(垂直等高线走),从而导致需要迭代很多次才能收敛;

而右图对两个原始特征进行了归一化,其对应的等高线显得很圆,在梯度下降进行求解时能较快的收敛。

因此如果机器学习模型使用梯度下降法求最优解时,归一化往往非常有必要,否则很难收敛甚至不能收敛。

如果你的“归一化”指的是吧图盯唯瞎像每个像素点都变成同一个值,那么过程如下。

cvCvtColor(src,dst,CV_BGR2HSV),参数我记不太清楚了 ,大概就是这样,意思是把BGR图像src转凯空成HSV图像dst。

dst的三个通道里存的是H,S,V,H是色彩,S是饱和度,V是亮度。要灰度归一化,只要把图像dst的每个像素V改得一样就行了。注意V的范围是0-180,不能超过这个范围。

最后再把dst转成能够输出到屏幕的BGR图像,cvCvtColor(dst,dst2,CV_HSV2BGR),这样dst2就是归一化之后的BGR图像山猜

1.

基本上归一化思想是利用图像的不变矩寻找一组参数使其能够消除其他变换函数对郑或图

像变换的影响。也就是转换成唯一的标准形式以抵抗仿射变换

图像归一化使得图像可以抵抗几何变换的攻击,

它能够找出图像中的那些不变量,

从而

得知这些图像原本就是一样的或者一个系列的。

因为我们这次的图片有好多都是一个系列的,所以老师把这个也作为我研究的一个方

向。

我们主要要通过归一化减小医学图片由于薯丛或光线不均匀造成的干扰。

2.matlab

里图像数据有时候必须是浮点型才能处理,而图像数据本身是

0-255

UNIT

型数

据所以需要归一化,转换到

0-1

之间。

3.

归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,

成为纯量。

目的是为了:

(1).

避免具有不同物理意义和量纲的输入变量不能平等使用

(2).bp

中常采用

sigmoid

函数作为转移函数,归一化能够防止净输入绝对值过大引起的神经

元输出饱和现象

(3).

保证输出数据中数值小的不被吞食

3.

神经网络中归一化的原因

归一化是为了加快训练网络的收敛性,可以不进行归一化处理

归一化的具体作用是归纳统一样本的统计分布性。

归一化在

0-1

之间是统计的概率

分布,归一化在

-1--+1

之间是统计的坐标分布。归一化有同一、统一和合一的意思。无论是

为了建模还是为了计算,

首先基本度量单位要同一,

神经网络是以样本在事件中的统计分别

几率来进行训练(概率计算)和预测的,归一化是同一在

0-1

之间的统计概率分布;

当所

有样本的输入信号都为正值时,

与第一隐含层神经元相连的权值只能同时增加或减小,

从而

导致学习速度很慢。

为了避免出现这种情况,

加快网络学习速度,

可以对输入信号进行归一

化,使得所有样本的输入信号其均值接近于

0

或与其均方差相比很小。

归一化是因为

sigmoid

函数的取值是

0

1

之间的,

网络最后一个节点的输出也是

如此,

所以经常要对样本的输出归一化处理。

所以这样做分类的问题时用

[0.9 0.1 0.1]

就要比

[1 0 0]

要好。

但是归一化处理并不总是合适的,

根据输出值的分布情况,

标准化等其它统计变换方法有时

可能更好。

二、如何归一化

matlab

中的归一化处理有三种方法

1. premnmx

postmnmx

tramnmx

2. restd

poststd

trastd

3.

自己编程

(1)

线性函数转换,表达式如下:

y=(x-MinValue)/(MaxValue-MinValue)

说明:

x

y

分别为转换前、后的值,

MaxValue

MinValue

说明:以

10

为底的对数函数转换。

(3)

反余切函数转换,表达式如下:

y=atan(x)*2/PI

(4)

一个归一化代码

.

I=double(I)

maxvalue=max(max(I)')%max

在把矩阵每列的最大值找到,

并组成一个单数伍行的数组,

转置一

下就会行转换为列,再

max

就求一个最大的值,如果不转置,只能求出每列的最大值。

f = 1 - I/maxvalue%

为什么要用

1

去减?

Image1=f

图像归一化到

[0,255]

(im

-

min(min(im)))

./

(max(max(im))

min(min(im))) * 255


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12542280.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存