如何将图像文件(JPG格式)保存到本地系统。我使用BinaryFiles将图片加载到spark中,将其转换为数组并进行处理。下面是代码
from PIL import Image
import numpy as np
import math
images = sc.binaryFiles("path/car*")
imagerdd = images.map(lambda (x,y): (x,(np.asarray(Image.open(StringIO(y)))))做了一些图像处理,现在key有了path,value有了Array for image
imageOutuint = imagelapRDD.map(lambda (x,y): (x,(y.astype(np.uint8))))
imageOutIMG = imageOutuint.map(lambda (x,y): (x,(Image.fromarray(y))))如何将映像保存到本地/HDFS系统,我看到没有与其相关的选项。
发布于 2016-02-14 04:01:23
如果您想将数据保存到本地文件系统,只需收集为本地迭代器,并使用标准工具按记录保存文件记录:
for x, img in imagerdd.toLocalIterator():
path = ... # Some path .jpg (based on x?)
img.save(path)只需确保cache imagerdd以避免重新计算即可。
https://stackoverflow.com/questions/35383680
复制相似问题