Зависит от вида визуальной информации, представленной в некоторых вариантах Метод Монте-Карло может подойти.В частности, если вы отображаете фотографические изображения, то выборочная случайная выборка (где random является взвешенной ) даст вам достаточно справедливое представление.Так, например, вы можете выбрать xor-shift random (как это было бы быстрее, чем AS3 Math.random()
) и считывать значения цвета из ByteArray, сгенерированного из BitmapData, следующим образом: pixels.readUnsignedInt(xorShiftRandom() * pixels.length)
в случае, если BitmapData использует формат ARGB.
Кроме того, вы хотите построить гистограмму так, чтобы похожие цвета создавали большинство.Затем вам нужно будет сделать произвольный выбор в отношении того, в какой степени цвета считаются похожими (сколько столбцов гистограммы учитывается в одном и том же цвете), и, таким образом, найти наиболее распространенный цвет, попробовав группы элементов.
Выможет также предварительно обработать изображение (уменьшив его).У меня нет никаких математических доказательств, но кажется, что вам не понадобится изображение размером больше 255x255 для достижения желаемых результатов.