2

我正在 matlab 中实现机器学习算法,并且正在阅读人眼的颜色范围,并被告知人眼只能感知大约 17,000 种颜色,而图像我有大约 256^3 种颜色. 在 matlab 或其他方式中量化我的图像的最佳方法是什么。另外,作为机器学习方面的一个附带问题,使用位图或 jpeg 哪个更好?

4

3 回答 3

2

JPEG 是一种有损格式。如果您的输入数据还不是 JPEG,则不应使用它。即使是这样,您也不应该重新压缩数据以避免引入进一步的工件。

一种非常简单但流行的颜色量化方法是 k-means 算法。你可以在 Matlab 中找到它。这是一个很好的起点。然而,在最近的研究中存在广泛的范式和方法。

于 2012-04-29T14:18:31.777 回答
2

如果您的颜色量化旨在以某种方式模仿人类感知,我建议从 sRGB 空间转移到更受生物启发的东西,例如 LAB,其中 L 代表整体亮度,A 代表红绿色对,B 代表黄蓝色。使用 LAB 将允许您首次尝试“照明不变”颜色量化。网上有很多 RGB2Lab 转换代码。然后我会完全丢弃 L 通道,除非你也想对黑白进行编码。

最后,声称 17000 种颜色是没有意义的。男人感知7种颜色:红紫粉橙黄绿蓝。

于 2012-04-29T21:21:18.193 回答
0

使用 K 均值聚类(Matlab) 减少颜色。

于 2013-07-07T22:00:31.290 回答