在python中读取.pgm格式图像
程序员文章站
2022-03-19 23:29:32
...
先检查图片格式
from PIL import Image
# 图像格式
def show_image(filepath):
im = Image.open(filepath)
im.show()
print(im.mode)
print(im.size)
根据print(im.mode)内容结合网址给出的信息判断 。
假设是8位深度图像,则采用下列代码读取数据:
def read_pgm(pgmf):
"""Return a raster of integers from a PGM as a list of lists."""
assert pgmf.readline() == 'P5\n'
(width, height) = [int(i) for i in pgmf.readline().split()]
depth = int(pgmf.readline())
assert depth <= 255
raster = []
for y in range(height):
row = []
for y in range(width):
row.append(ord(pgmf.read(1)))
raster.append(row)
return raster
如图所示读取头后,得到宽度(1024)、高度(下一个1024)和深度(255)。要获取像素数据,注意逐字节即‘rb’格式读取!
参考:
读取格式参考!
推荐阅读
-
在python下读取并展示raw格式的图片实例
-
Python读取txt内容写入xls格式excel中的方法
-
在python中利用pandas和正则表达式读取文件
-
在python2.7中用numpy.reshape 对图像进行切割的方法
-
Python读取txt文件应用---用python实现读取一个txt文档,并根据相应判断条件在txt文件中,每一行内写入指定数据。
-
python opencv在图像中裁剪任意形状多边形,裁剪镂空多边形, 裁剪多个多边形
-
在python中实现格式化输出的方法
-
Python 中 function(#) (X)格式 和 (#)在Python3.*中的注意事项
-
在python下读取并展示raw格式的图片实例
-
Python读取txt内容写入xls格式excel中的方法