簡體   English   中英

使用二進制文件保存圖像文件 - pyspark

[英]Saving an Image file using binary Files - pyspark

如何將圖像文件(JPG 格式)保存到本地系統中。 我使用 BinaryFiles 將圖片加載到 spark 中,將它們轉換為 Array 並進行處理。 下面是代碼

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)))))

做了一些圖像處理,現在鍵有路徑,值有圖像數組

imageOutuint = imagelapRDD.map(lambda (x,y): (x,(y.astype(np.uint8))))
imageOutIMG = imageOutuint.map(lambda (x,y): (x,(Image.fromarray(y))))

如何將圖像保存到本地/HDFS 系統,我發現沒有與之相關的選項。

如果要將數據保存到本地文件系統,只需作為本地迭代器收集並使用標准工具按記錄保存文件記錄:

for x, img in imagerdd.toLocalIterator():
    path = ... # Some path .jpg (based on x?)
    img.save(path)

只要確保cache imagerdd以避免重新計算。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM