python - 在几毫秒内加载 image.png
问题描述
我需要在不到 1 秒的时间内对图像执行功能。我有一个 1000x1000 图像的问题,只是将其作为矩阵加载到程序中,需要 1 秒。
我用来加载它的函数如下:
import png
def load(fname):
with open(fname, mode='rb') as f:
reader = png.Reader(file=f)
w, h, png_img, _ = reader.asRGB8()
img = []
for line in png_img:
l = []
for i in range(0, len(line), 3):
l+=[(line[i], line[i+1], line[i+2])]
img+=[l]
return img
我该如何修改它,以便在打开图像时花费几毫秒多一点?
重要提示:我无法导入除此之外的其他功能(这是大学练习,因此有规则-.-)。所以我必须自己买一个
解决方案
您可以使用PIL
它为您执行此操作,它经过高度优化且速度快
from PIL import Image
def load(path):
return Image.open(path)
推荐阅读
- jenkins - 在jenkins groovy中调用变量的最佳方法
- ms-access-2010 - Ms Access 和 SQL Server nvarchar(max) 限制为 4000 个字符
- python - 为特定版本的 Python 编译 Python 模块
- matlab - 读取源代码时,带有 matlabdomain 的 sphinx 似乎进入了无限循环
- javascript - 需要在执行函数时宣布 aria 标签
- elasticsearch - Elasticsearch 查询存在于多个地理位置的值
- ios - 通过应用程序的 URL 方案重定向到 Telegram
- regex - 如何使用 RegEx 捕获多个登录页面 URL?
- sql - 以管道分隔格式输出 sybase 查询
- entity-framework-6 - Entity Framework 6.2 - 迁移将派生表模型的属性添加到继承表模型