Преобразование изображения PNG PIL в изображение OpenCV заменяет прозрачность на черный фон - PullRequest
0 голосов
/ 11 декабря 2018

Когда я пытаюсь преобразовать изображение PIL типа PNG в изображение OpenCV, прозрачный фон в PNG превращается в черный фон.Как сохранить прозрачный фон в объекте OpenCV Image.

Вот фрагмент кода:

# PIL Image object which holds a transparent background png image.  
pil_img = Image.open(ioFile).convert('RGBA')
pil_img.show()

# I use numpy to convert the pil_image into a numpy array
numpy_image = np.array(pil_img)

# I convert to a openCV2 image, notice the COLOR_RGB2BGR which means that
# the color is converted from RGBA to BGR format
opencvImage = cv2.cvtColor(numpy_image, cv2.COLOR_RGBA2BGRA)
# 
#(I commented below lines, to show that I tried them but did not work.)
#
# opencvImage = cv2.cvtColor(numpy_image, cv2.IMREAD_UNCHANGED)
# opencvImage = cv2.cvtColor(numpy_image,  cv2.COLOR_RGB2BGR)
showImage(opencvImage) 

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

...