Лаборатория HSV — подобрать цвет и маску · Теория: HSV и ползунки
← Все задачи с изображениями ·
Выделите красно-оранжевые участки мяча. Красный находится по обе стороны границы шкалы H: одной маски недостаточно. Прочитайте input.png и преобразуйте BGR в HSV (OpenCV: H от 0 до 179, S и V от 0 до 255). Диапазоны: H=0…15, S=120…255, V=60…255; H=170…179, S=120…255, V=60…255. Все границы включительны. Объедините два диапазона логическим ИЛИ. Сохраните одноканальную маску uint8: подходящий пиксель — 255, остальные — 0 в output.png без изменения размеров. Проверка сравнивает пиксели на трёх версиях фотографии. На своём изображении можно экспериментировать отдельно.
Прочитайте входной файл через cv2.imread('input.png') и сохраните результат командой cv2.imwrite('output.png', result). Используйте также numpy и PIL. Результат появится ниже; cv2.imshow() в этой среде не используется.
import cv2
import numpy as np
image = cv2.imread('input.png')
# Выделите нужные пиксели и сохраните output.png
Запуск использует выбранное изображение. Проверка решения всегда выполняется на учебных тестах.
Файл используется для запуска, но не заменяет учебные тесты.

Постройте две маски через inRange: одну для начала шкалы оттенка, другую для её конца.
Объедините маски операцией cv2.bitwise_or. Не складывайте uint8-маски: при пересечении диапазонов возможно переполнение.