#python
Вопрос:
Я пытаюсь получить значения HSV всех пикселей на изображении. Я протестировал приведенный ниже код с простым пурпурным изображением и получил значения, которые сильно отличаются от значений, полученных из онлайн-конвертера. Еще одна вещь, которую я понял, заключается в том, что ни одно из значений результирующего массива не превышает 255 (пурпурный имеет значение H около 300).
`from PIL import Image infile = 'magenta.jpg' saturation = 0 img = Image.open(infile) width, height = img.size img_hsv = img.convert('HSV') for x in range(width-1): for y in range(height-1): hsv = img_hsv.getpixel((x,y)) print(hsv)`
Комментарии:
1. вы подумали, что это может быть с другим диапазоном? допустим, все так и есть
[0 - 255]
?2. На самом деле мне нужны значения HSV для этого пикселя. Я не хочу устанавливать диапазон
3. вы получаете значения ВПГ, но в определенном диапазоне
[0 - 255]
, поэтому оттенок0
красный, и оттенок255
тоже красный. Это означает, что вам просто нужно умножить/разделить выходное значение4. Значения оттенков варьируются от 0 до 360, верно?
5. стандартный? ДА. Это означает, что вы должны умножить результат на
(360/255)