OpenCV Python преобразует изображение цветового пространства в YCbCr

Мне нужно преобразовать изображение из BGR в YCbCr в Python с помощью OpenCV. У меня есть изображение с размером/разрешением 512x512, но когда изображение открывается, размер составляет 128x128.

Я делаю:

image = cv2.imread(imageName, cv2.COLOR_BGR2YCR_CB)

Кто-нибудь может мне помочь?


person Flávio Losada    schedule 09.07.2018    source источник
comment
Не могли бы вы попробовать перефразировать этот вопрос? Я не уверен, в чем вам нужна помощь.   -  person lakshayg    schedule 09.07.2018


Ответы (1)


Проблема:

Если вы посмотрите на документы для imread, Функция принимает целочисленный флаг с именем imreadmodes. Этот флаг, по-видимому, принимает информацию об изменении размера изображения, а не об изменении цветовых пространств.

Решение:

Я полагаю, что вы ищете cv2.cvtColor функция, которая использует флаг для определения источника и целевые цветовые пространства.

Оба флага представляют собой простые целочисленные перечисления. Я предполагаю, что функция imread просто делает все возможное с неправильным типом флага.

Вы, вероятно, хотите сделать что-то вроде:

BGRImage = cv2.imread(imageName)
YCrCbImage = cv2.cvtColor(BGRImage, cv2.COLOR_BGR2YCR_CB)
person William Yolland    schedule 09.07.2018