Получаване на най-често срещаното цветно изображение

Пиша приложение, което заснема видео от камерата на устройството с Android. Опитвам се да получа всички кадри от видеоклип на всяка секунда. това видео съдържа специфична цветова последователност Да предположим (червено, оранжево, бяло, черно, виолетово). Всъщност по отношение на видеоклиповете, след всяка секунда един цвят се излъчва на екрана на лаптопа и трябва да направя видео на тази последователност на излъчване, тогава трябва да идентифицирам последователността от цветове. Вече направих тази част, за да получа кадри от видеото.

Сега основният ми въпрос е, че как мога да идентифицирам всеки цвят на изображението от набор от рамки на изображение. Искам резултат като по-долу:

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

Всяка помощ ще бъде оценена.

Благодаря


person sam_k    schedule 22.05.2015    source източник


Отговори (2)


С пускането на Android Lollipop вече имате достъп до помощен клас, наречен Palette. С него можете да извлечете основните цветове на вашето растерно изображение, които можете да получите от кадри на вашето видео. Ето публикация в блог, обясняваща как да използвате класа:
https://www.bignerdranch.com/blog/extracting-colors-to-a-palette-with-android-lollipop/

person EscapeArtist    schedule 22.05.2015
comment
но моята цветова последователност не е фиксирана. Всеки цвят може да присъства във видеото. 0 до 255. Това работи ли перфектно? - person sam_k; 22.05.2015
comment
Да, цветът не е фиксиран. Класът Palette улавя открояващите се цветове във всяко изображение, което му дадете. - person EscapeArtist; 22.05.2015

Можете да разгледате моето приложение Color Extractor (https://github.com/RacZo/ColorExtractor) , това е малко приложение, което създавам като доказателство за концепцията, но показва как да използвате новите класове Palette и Palette Builder, за да получите цветове и мостри от изображение, можете дори да направите снимка с камерата, за да извлечете цветовете от то.

person Oscar Salguero    schedule 03.09.2015