Я взял среднее значение каждого цвета этим методом и записал среднее значение красного, зеленого и синего в базу данных.
Вот изображения , отсортированные по "-blue". Как видите, 5-е изображение имеет самый синий цвет. Я что-то не так делаю или невозможно получить средний цвет по гистограмме?
Это обработчик, где я создаю гистограмму:
class ImageSave(webapp.RequestHandler):
def post(self):
homepage = HomePage()
original_image = self.request.get("img")
url = self.request.get("url")
firm_name = self.request.get("firm_name")
original_image = db.Blob(original_image)
thumbnail = images.resize(original_image, 250, 250)
img = images.Image(thumbnail)
hist = img.histogram()
rgb_weighed_average = hist_weighed_average(hist)
#update database
homepage.original_image = original_image
homepage.thumbnail = thumbnail
homepage.firm_name = firm_name
homepage.url = url
homepage.red = rgb_weighed_average[0]
homepage.green = rgb_weighed_average[1]
homepage.blue = rgb_weighed_average[2]
homepage.put()
self.redirect("/imageupload")
Спасибо!