有没有人有一种方法可以在Python中导入每通道16位,3通道TIFF图像?
我还没有找到一种在处理TIFF格式时可以保留每个通道16位深度的方法。我希望一些乐于助人的人能够解决。
这是到目前为止我没有成功尝试过的结果以及结果的列表:
import numpy as np
import PIL.Image as Image
import libtiff
import cv2
im = Image.open('a.tif')
# IOError: cannot identify image file
tif = libtiff.TIFF.open('a.tif')
im = tif.read_image()
# im only contains one of the three channels. im.dtype is uint16 as desired.
im = []
for i in tif.iter_images():
# still only returns one channel
im = np.array(cv2.imread('a.tif'))
# im.dtype is uint8 and not uint16 as desired.
# specifying dtype as uint16 does not correct this
到目前为止,我发现的唯一解决方案是使用ImageMagick将图像转换为PNG。然后,沼泽标准matplotlib.pyplot.imread
会毫无问题地读取PNG文件。
我遇到的另一个问题是将任何numpy数组另存为16位PNG文件,到目前为止,这也不是一件容易的事。
它的功能有限,特别是在回写磁盘非RGB图像时,但是Christoph
Gohlke的tifffile
模块可以毫无问题地
读取3通道16位TIFF,我只是对其进行了测试:
>>> import tifffile as tiff
>>> a = tiff.imread('Untitled-1.tif')
>>> a.shape
(100L, 100L, 3L)
>>> a.dtype
dtype('uint16')
而且Photoshop在阅读时不会抱怨我从中得到了什么:
>>> tiff.imsave('new.tiff', a)
本文向大家介绍Opencv+Python 色彩通道拆分及合并的示例,包括了Opencv+Python 色彩通道拆分及合并的示例的使用技巧和注意事项,需要的朋友参考一下 一、图像色彩通道拆分 B通道图: G通道图: R通道图: 二、图像色彩通道合并 按RGB合并后图: 以上这篇Opencv+Python 色彩通道拆分及合并的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持
我有一个12列的矩阵,我使用中的函数来绘制boxplot。 使用以下命令: 我想要的是以红色、绿色和蓝色呈现前三个方框图。接下来的三件是黄色的,接下来的三件是橙色的,接下来的三件是紫色的。 我该怎么做呢? 非常感谢。
上一节课讲解了纹理贴图的知识点,本节课通过一个把彩色图处理为灰度图的案例进一步认识可编程片元着色器和逐片元的概念。 纹理贴图可以经过渲染管线处理后映射到三维空间中顶点坐标定义的位置,在这个过程中,执行方法texture2D()提取的像素值直接赋值给片元,存入帧缓存的颜色缓冲区中, 显示系统扫描颜色缓冲区中的像素值显示在屏幕上。渲染过线的片元着色器是可编程的,可以执行着色器语言编写的程序,也就是说可
在OpenCV中,可以使用类的方法将不同的颜色贴图应用于图像。以下是这种方法的语法 - 该方法接受以下参数 - src - 表示此操作的源(输入图像)的对象。 dst - 表示此操作的目标(输出图像)的对象。 colormap - 表示要应用的颜色映射的类型的整数类型变量。 示例 以下程序演示了如何将彩色映射应用于图像。 假定以下是上述程序中指定的输入图像:。 执行上面示例代码,得到以下结果 -
6.9.图片与色彩 我们的程序运行良好,但它的外观仍略显粗糙,不太好看。这时可以利用Android的相关特性,为程序添加一些图片和色彩。
问题内容: read.json文件: program.py文件: write.json文件: 我要实现的目标: 从read.json文件读取JSON数据 从程序中的JSON解析和修改一些值 写入另一个write.json文件(JSON格式) 我的代码中没有错误,但是write.json不包含双引号(“”)中的值,而是将值包装在单引号中,使其不是正确的JSON格式。 为了使write.json文件包