Сохранить 16-битное изображение с imwrite

Я загружаю 16-битное изображение, используя openCV в Python. Затем я выполняю некоторую обработку и сохраняю ее обратно на диск, используя imwrite() функция openCV. Удивительно, но изображение масштабируется между 0-255

С другой стороны, если я сохраню изображение без какой-либо обработки на диске с помощью imwrite() затем изображение сохраняется как 16-битное. Я подозреваю, что выполнение операций на numpy массив как-то меняет тип массива?

Мой код:

img16Bit = cv2.imread( 'map.pgm', -1 )
imwrite( "actualImage.jpg", img16Bit )         # works fine
# does some processing on img16Bit
imwrite( 'processedImage.jpg', img16Bit )      # image is scaled bw 0-255
#                                              #          colour-transformed
#                                              #          into grayscale-16bit
#                                              #          colordepth

0 ответов

Другие вопросы по тегам