Создайте многостраничный файл tiff с отдельными тегами для каждого изображения, используя tifffile python. ⇐ Python
Создайте многостраничный файл tiff с отдельными тегами для каждого изображения, используя tifffile python.
Я пытаюсь создать файл Tiff из пары небольших 8-битных изображений. Предполагается, что файл Tiff содержит изображения с отдельными тегами. (В моем примере все теги одинаковы, за исключением того, что описание должно быть индивидуальным для каждого изображения)
Я получаю файл Tiff, содержащий все правильные теги, но мои изображения почему-то не включены. Вот код, который я использую...
импортировать numpy как np импортировать ОС импортировать tiff-файл как tf импортировать xml.etree.ElementTree как ET из ihb_preprocessing.settings импортируйте LOGGING_CONFIG def getDescription(описание) -> ул: описание_контента: ул с open(description, "r") как f: описание_содержание = f.read() печать (len (description_content)) е.закрыть() вернуть описание_содержание def list_files(путь_к папке:str, тип:str) -> []: описания = [] для файла в os.listdir(folder_path): если file.endswith(тип): descriptions.append(os.path.join(путь_к папке, файл)) описания = отсортировано (описания) вернуть описания #Обратите внимание, что в настоящее время единственная информация, взятая из метаданных, — это размер, имя из описания и изображение. #BitsPerSample: число = 8 Сжатие: целое = 5 Фотометрическая интерпретация: int = 1 #Разрешение: int = [4294967295, 213274] Планарная конфигурация: int = 1 Единица разрешения: int = 3 Программное обеспечение: str = 'PerkinElmer-QPI' путь_папки = "FakeImages/" tiff_files = [os.path.join(folder_path, filename) для имени файла в os.listdir(folder_path), если filename.endswith(".tif")] tiff_files = отсортировано (tiff_files) image_array = np.empty((len(tiff_files),) + tf.imread(tiff_files[0]).shape, dtype=np.uint8) печать (лен (image_array.shape)) описания = list_files("ImageDescriptions/", ".txt") описания = отсортировано (описания) descr_tag = {} для меня в диапазоне (len(image_array)): descr_tag[f"description{i}"] = getDescription(descriptions) с tf.TiffWriter("Fake_Images_.tiff", bigtiff=True) в качестве писателя: для меня в диапазоне (len(image_array)): Writer.write(данные = image_array, #bitspersample = BitsPerSample, сжатие = Сжатие, фотометрический = Фотометрическая интерпретация, # разрешение = Разрешение, planarconfig = PlanarConfiguration, единица разрешения = единица разрешения, программное обеспечение = Программное обеспечение, описание = descr_tag[f"description{i}"])
Я пытаюсь создать файл Tiff из пары небольших 8-битных изображений. Предполагается, что файл Tiff содержит изображения с отдельными тегами. (В моем примере все теги одинаковы, за исключением того, что описание должно быть индивидуальным для каждого изображения)
Я получаю файл Tiff, содержащий все правильные теги, но мои изображения почему-то не включены. Вот код, который я использую...
импортировать numpy как np импортировать ОС импортировать tiff-файл как tf импортировать xml.etree.ElementTree как ET из ihb_preprocessing.settings импортируйте LOGGING_CONFIG def getDescription(описание) -> ул: описание_контента: ул с open(description, "r") как f: описание_содержание = f.read() печать (len (description_content)) е.закрыть() вернуть описание_содержание def list_files(путь_к папке:str, тип:str) -> []: описания = [] для файла в os.listdir(folder_path): если file.endswith(тип): descriptions.append(os.path.join(путь_к папке, файл)) описания = отсортировано (описания) вернуть описания #Обратите внимание, что в настоящее время единственная информация, взятая из метаданных, — это размер, имя из описания и изображение. #BitsPerSample: число = 8 Сжатие: целое = 5 Фотометрическая интерпретация: int = 1 #Разрешение: int = [4294967295, 213274] Планарная конфигурация: int = 1 Единица разрешения: int = 3 Программное обеспечение: str = 'PerkinElmer-QPI' путь_папки = "FakeImages/" tiff_files = [os.path.join(folder_path, filename) для имени файла в os.listdir(folder_path), если filename.endswith(".tif")] tiff_files = отсортировано (tiff_files) image_array = np.empty((len(tiff_files),) + tf.imread(tiff_files[0]).shape, dtype=np.uint8) печать (лен (image_array.shape)) описания = list_files("ImageDescriptions/", ".txt") описания = отсортировано (описания) descr_tag = {} для меня в диапазоне (len(image_array)): descr_tag[f"description{i}"] = getDescription(descriptions) с tf.TiffWriter("Fake_Images_.tiff", bigtiff=True) в качестве писателя: для меня в диапазоне (len(image_array)): Writer.write(данные = image_array, #bitspersample = BitsPerSample, сжатие = Сжатие, фотометрический = Фотометрическая интерпретация, # разрешение = Разрешение, planarconfig = PlanarConfiguration, единица разрешения = единица разрешения, программное обеспечение = Программное обеспечение, описание = descr_tag[f"description{i}"])
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение