сортировка изображений по цвету

Я ищу способ сортировки изображений, как показано на следующем снимке экрана:

http://www.pixolution.de/sites/LargeImages_en.html

Я просмотрел все темы по этой теме на stackoverflow, но ни одно из предлагаемых решений даже близко не дало мне изображения выше.

Подходы, которые я пробовал:

  1. для каждого изображения построить гистограмму rgb цветов в порядке убывания встречаемости
  2. для каждой гистограммы, вычислите расстояние от черного (r: 0, g: 0, b: 0) следующим образом:

     для цвета в image_histogram:
     total_distance + = color.percentage_of_image * расстояние (BLACK_RGB, color.rgb)
    

затем сортируют изображения по расстоянию

. Я надеялся, что изображения с одинаковым распределением цветов окажутся на одинаковом расстоянии и приведут к визуальному упорядочению по цвету. Это было не так, похоже, это работает, но не так, как на изображении выше.

Для функции расстояния я пробовал евклидово расстояние, сортировку hsv (h-> s-> v) и даже лабораторную сортировку расстояния . Ничего из этого не помогло

Если у кого-то есть лучший подход, я хотел бы знать!

9
задан Jason Plank 2 November 2011 в 09:21
поделиться