2016-05-21 10 views
1

PIL open load()関数で画像を読み込み、ピクセルを変更しています。私はそれからソケットを通してクライアントにこれを送らなければなりません。どのようにイメージを保存せずにこれを行うことができますか。私の現在のアプローチでは、save関数を使用してイメージを保存し、それをrbモードでファイルとして開き、送信します。画像Pythonを保存せずにソケット経由でpil画像を送信

#want to avoid this section 
pic.save("anyname","png") 
f = open("anyname.png","rb") 
data = f.read() 
client_connection.sendall(data) 

答えて

0

のピクセルを操作する= Image.open(イメージ名) ピクセル= pic.load() #code picがあなたは、メモリ内のファイルハンドルを作成し、それに書き込むことができます。

from io import BytesIO 
fd = BytesIO() 
pic.save(fd, "png") 
client_connection.sendall(fd.getvalue()) 
関連する問題