2017-02-13 14 views
0

jpegやpngのような画像フォーマットで.csvファイルで利用可能なmnistデータセットを変換したいと思います。Mnistデータセットを画像フォーマットに変換する

from PIL import Image 
temp = mnist.train.images[0] 
temp=np.reshape(temp,(28,28)) 
temp=temp*255 
im = Image.fromarray(temp).convert('L') 
im.save("C:/Users/user/Desktop/ML/image/img.png") 

Iは画像に画素を変換するための上記のコードを使用し、私は画像に変換することができていますが、問題は、画像が白黒フォーマットで保存されています。 とステートメント

im = Image.fromarray(temp).convert('L') 

私が代わりに「L」の「RGB」を使用した場合に画像が黒画像として保存されます。 どのようにしてイメージをカラーフォーマットに変換できますか?

答えて

0

整数をパックドバイトとしてmongoDBに保存すると、PILを使用してパックされたバイトを次のようにイメージに変換できます。

このコードでは、10個のテスト画像を保存し、そのうちの1つを取得して.pngとして保存する方法を示します。

>>> from pymongo import MongoClient 
>>> client = MongoClient() 
>>> db = client.test_database 
>>> import csv 
>>> from struct import pack 
>>> posts = db.posts 
>>> with open('mnist_test_10.csv') as mnist_csv: 
...  mnist_reader = csv.reader(mnist_csv) 
...  for row in mnist_reader: 
...   digit = row[0] 
...   pixels = pack((-1+len(row))*'B', *[int(_) for _ in row[1:]]) 
...   post = {'digit': digit, 'pixels': pixels} 
...   post_id = posts.insert_one(post).inserted_id 
...   
>>> record = posts.find_one({'digit':'7'}) 
>>> from PIL import Image 
>>> im = Image.frombytes('L',(28,28),record['pixels']) 
>>> im.save('temp.png') 
>>> 
+0

im.save( 'temp.png')は、イメージをmongoDBデータベースまたは特定のフォルダに保存します。私はイメージをmongoDBに保存したいからです。 – rajat188

+0

'post_id = posts.insert_one(post).inserted_id'は、イメージバイトをmongodbに格納します。コード中の 'record ='以降は、バイトを取り出して使用する方法のデモンストレーションです。この場合、 '.png'イメージにカバリングされ、ファイルとして保存されます。 –

+0

私は答えの中で、いくつかの詳細はあなたがイメージのために覚えている目的にかかっていると言及していたはずです。 –

関連する問題