OpenCV gaussianblur делает изображение незакрашенным
Я применяю GaussianBlur OpenCV на изображение. Результирующее изображение выглядит недостаточно цветов оригинального изображения.
Мой код:
originalImage = cv2.imread('path to original image',0)
blurredImage = cv2.GaussianBlur(originalImage,(15,15),0)
cv2.imwrite('path to save the new image', blurredImage)
Исходное изображение: Новое изображение: Это правильное поведение? Я хочу сохранить детали цвета.
1 ответ
Проблема в том, что строка читает изображение как:
originalImage = cv2.imread('path to original image',0)
Парам 0
в cv2.imread()
указывает библиотеке на чтение изображения в градациях серого независимо от исходной конфигурации изображения. Чтобы это исправить вы можете позвонить cv2.imread()
без параметров как:
originalImage = cv2.imread('path to original image')
Эта команда инструктирует библиотеку читать изображение в BGR
конфигурации.
Но если вы хотите прочитать изображение в том же формате, в каком оно есть, вам может потребоваться позвонить:
originalImage = cv2.imread('path to original image', -1)
Вы можете обратиться к cv2.imread()
документы для получения дополнительной информации.