图像的颜色直方图

在颜色直方图中,我们通常在每个颜色通道中提取直方图,这并不包含颜色如何共现的信息,例如有多少像素具有强度I(100,200,50)?

有没有什么方法可以构建一个表示颜色共现的直方图?(例如,有多少像素包含强度值(200,100,50)?)

我正在寻找这种类型直方图的改进版本,例如像这篇论文中提到的


回答:

由于你想将其用作进一步识别的图像级描述符,简单的分箱可能不是最佳选择,因为颜色在你的样本中分布不均匀。

典型的方法是词袋模型。你从整个图像集(三维空间中的点)中提取所有像素值,并使用某种聚类算法(如k-meansEM算法)对它们进行量化。假设你使用了K个聚类(这可能取决于你的目的和样本大小,你可以从K=100开始)。为了描述单个图像,你为每个像素找到最接近的聚类(所谓的视觉词),并构建具有K个箱的直方图,使每个箱的值是对应视觉词的像素数量。这就是你的描述符,你可以使用描述符上的欧几里得距离或χ²距离来比较图像。

请注意,根据你的平台,有很多聚类算法(甚至是词袋框架)的实现可用。OpenCV是最受欢迎的之一。请注意,根据你的问题,你也可以使用基于梯度的描述符,如HOG

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中创建了一个多类分类项目。该项目可以对…

发表回复

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