用python和numpy读取二进制.pgm文件

时间:2013-03-15 14:35:09

标签: python opencv numpy python-imaging-library pgm

我需要读取64x64 pgm普通格式的图像文件,并将结果值放在一个numpy矩阵中。我只能在使用Opencv和PIL函数打开图像时才能这样做,但最终的numpy矩阵产生了3通道,返回的值是0和255,而不是0和1(图像是二进制)。我也尝试使用genfromtxt,但它不能将值放在numpy矩阵中。

我只想要一个1通道的numpy矩阵,其中0和1来自pgm图像。我怎么能用python做到这一点?

1 个答案:

答案 0 :(得分:0)

如果PIL将您的图像文件打开为RGB,但您希望它们是二进制文件,我认为您唯一的选择是在打开后进行转换。

im = Image.open('imagefile').convert('1')