上一篇写到将mongodb中的图像读出,但是读出的数据类型为二进制流,无法直接使用普通的图像处理模块来做。
通过PIL中的Image和IO中的二进制OI模块、numpy中的np.array(image)即可完成
from pymongo import MongoClient from gridfs import * from PIL import Image import io import numpy as np client=MongoClient('localhost',27017) db=client.image gridFS = GridFS(db, collection="fs") count=0 ls=[] for grid_out in gridFS.find(): filename=grid_out.filename if (filename=="cs2"): data = grid_out.read() # 获取图片数据 image=Image.open(io.BytesIO(data)) k = np.array(image) print(len(ls))