У меня есть файл с большим количеством изображений .tif.
Часть 1. Предварительный просмотр изображений TIFF
Когда я пытаюсь просмотреть их, нажимая на нихв папке jupyter (которая выглядит как эта папка Jupyter ) я получаю следующее сообщение:
Ошибка!D: ... \ image.tif не в кодировке UTF-8
Напротив, если я нажимаю png в папке Jupyter, Jupyter отображает изображение.
Как я могу исправить свои изображения, зная, что в моей папке их более 1000?
Тем не менее, если я напишу:
sph = cv2.imread('A1.tif',-1)
plt.imshow(sph)
plt.show()
, я получу изображение: изображение 'A1.tif' .
Теперь я тоже проверил:
import chardet
chardet.detect('A1.det')
--> {'confidence': 1.0, 'encoding': 'ascii', 'language': ''} # result
Так что видимо я закодирован в ascii.Это так же, как utf-8 или я должен конвертировать их?
Редактировать: Ответ: В одном из комментариев @FabienP отвечает, что «Согласно официальной документации, лаборатория Jupyter не поддерживает формат TIFF для предварительного просмотра изображений (на данный момент)», чтоотвечает на этот вопрос.
Часть 2: написание видео из изображений TIFF
У меня есть еще один вопрос, и я не знаю, связаны ли оба вопроса.
Я хочу сделать из них видео.
import cv2
import os
image_folder = 'A549_A1'
video_name = 'video.avi'
images = [img for img in os.listdir(image_folder) if img.endswith(".tif")]
frame = cv2.imread(os.path.join(image_folder, images[0]))
height, width, layers = frame.shape
video = cv2.VideoWriter(video_name, 0, 1, (width,height))
for image in images:
video.write(cv2.imread(os.path.join(image_folder, image)))
cv2.destroyAllWindows()
video.release()
Но вместо того, чтобы получить ожидаемое видео, я получаю странное изображение со множеством изображений за один шаг: заголовок видео.Вы можете сравнить его с изображением выше, чтобы убедиться, что это не нормально.
Как я могу это исправить?