获取最频繁的颜色形式图像

Getting most frequent color form image

我正在编写一个从 Android 设备的摄像头捕获视频的应用程序。我试图每一秒获取视频的所有帧。该视频包含特定的颜色序列假设(红色、橙色、白色、黑色、紫色)。实际上关于视频,每秒在笔记本电脑屏幕上播放一种颜色后,我需要制作这个广播序列的视频,然后我需要识别颜色序列。我已经完成了从视频中获取图像帧的部分。

现在我的主要问题是,如何从一组图像帧中识别每种图像颜色。我想要如下输出:

(image1, red)
(image2, white)
(image3, black)
(image4, Yellow)
(image5, orange)

如有任何帮助,我们将不胜感激。

谢谢

随着 Android Lollipop 的发布,您现在可以使用名为 Palette 的助手 class。 有了它,您可以提取位图的主要颜色,您可以从视频帧中获取这些颜色。 这里有一篇博客 post 解释了如何使用 class:
https://www.bignerdranch.com/blog/extracting-colors-to-a-palette-with-android-lollipop/

您可以看看我的应用程序 Color Extractor (https://github.com/RacZo/ColorExtractor),这是我构建的一个小应用程序作为概念验证,但它展示了如何使用新的 Palette 和 Palette Builder 类 要从图像中获取颜色和样本,您甚至可以用相机拍摄照片以从中提取颜色。