如何标准化图像颜色?

在描述Viola-Jones对象检测框架的论文中(Viola和Jones的实时人脸检测),提到如下内容:

用于训练的所有示例子窗口都进行了方差标准化,以尽量减少不同光照条件的影响。

我的问题是“他们使用了什么工具来标准化图像?”

我并不是在寻找Viola & Jones使用的特定工具,而是在寻找一个能产生几乎相同输出的类似工具。我已经跟随了很多haar训练教程(试图检测手),但尚未能输出一个好的检测器(xml)。

我尝试联系了作者,但至今仍未得到回应。


回答:

一种可能的方法是假设所有元素符合正态分布,进行简单标准化处理。

首先找到平均值(Mu)和标准差(S):

Mu = 1/N * Sum(a[i][j]) 对每个i,j S  =  sqrt(1/(N-1) *  Sum((a[i][j] - Mu)^2)) 对每个i,j       (这里N是像素数量,在Viola Jones案例中是20*20)

从中,我们可以使用标准正态分布公式(通过标准化所有值)来标准化每个像素的值:

a'[i][j] = (a[i][j] - Mu) / S

另一种方法是向量标准化,其基本步骤如下:

  • 找到向量的长度|a| = sqrt(sum (a[i][j]*a[i][j])) 对每个i,j
  • 赋值:a'[i][j] = a[i][j] / |a|

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注