Я не знаю, имеете ли вы это в виду, но, возможно, это будет полезно:
require 'rubygems'
require 'RMagick'
include Magick
image = Image.read("stack.png")[0]
hash = image.color_histogram
color, number = hash.max{|a,b| a[1] <=> b[1]}
puts color.to_color
Это сработало как брелок для очень простого изображения (только 5 цветов), но должно работать длятакже более сложные изображения (я не проверял это; возвращаемый хеш в этом случае будет довольно большим, поэтому вы можете использовать квантование на вашем изображении перед использованием color_histogram).
Некоторые ресурсы:
color_histogram квантование
Надеюсь, это было полезно для вас.:)