从图像中提取最常见的颜色
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从图像中提取最常见的颜色相关的知识,希望对你有一定的参考价值。
Takes an image (path or url) and extracts the 7 most common colors and returns their hex values.
def extract_colors(src) image = Magick::ImageList.new(src) colors = [] q = image.quantize(7, Magick::RGBColorspace) palette = q.color_histogram.sort {|a, b| b[1] <=> a[1]} (0..6).each do |i| c = palette[i].to_s.split(',').map {|x| x[/d+/]} c.pop c[0], c[1], c[2] = [c[0], c[1], c[2]].map { |s| s = s.to_i if s / 255 > 0 # not all ImageMagicks are created equal.... s = s / 255 end s = s.to_s(16) if s.size == 1 '0' + s else s end } colors << '#' + c.join('') end return colors end
以上是关于从图像中提取最常见的颜色的主要内容,如果未能解决你的问题,请参考以下文章