質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

Q&A

0回答

1080閲覧

Pillow のImage.frombytes が使えない問題

teefpc

総合スコア111

Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

0グッド

0クリップ

投稿2019/06/11 02:27

編集2019/06/11 03:16

etlclb の文字データを読み込もうとしているのですが、Pillowの機能が使えません。
Specification of ETL-9 – etlcdb

Python2.7

1import struct 2from PIL import Image, ImageEnhance 3 4filename = 'ETL9G/ETL9G_01' 5id_record = 0 6sz_record = 8199 7with open(filename, 'r') as f: 8 f.seek(id_record * sz_record) 9 s = f.read(sz_record) 10 r = struct.unpack('>2H8sI4B4H2B34x8128s7x', s) 11 print r[0:14], hex(r[1]) 12 iF = Image.frombytes('F', (128, 127), r[14], 'bit', 4) 13 iP = iF.convert('P') 14 fn = 'ETL9G_{:d}_{:s}.png'.format((r[0]-1)%20+1, hex(r[1])[-4:]) 15 #iP.save(fn, 'PNG', bits=4) 16 enhancer = ImageEnhance.Brightness(iP) 17 iE = enhancer.enhance(16) 18 iE.save(fn, 'PNG')

これを実行すると、

(1, 12321, 'A.TSUGU ', 1, 0, 0, 0, 0, 0, 0, 8212, 8310, 0, 0) 0x3021

AttributeErrorTraceback (most recent call last)
<ipython-input-21-32b849e13da4> in <module>()
10 r = struct.unpack('>2H8sI4B4H2B34x8128s7x', s)
11 print r[0:14], hex(r[1])
---> 12 iF = Image.frombytes('F', (128, 127), r[14], 'bit', 4)
13 iP = iF.convert('P')
14 fn = 'ETL9G_{:d}_{:s}.png'.format((r[0]-1)%20+1, hex(r[1])[-4:])

AttributeError: 'module' object has no attribute 'frombytes'

というエラー我出ます。Imageクラスには、frombytesというメソッドは存在しないのですが、
Pillow 3.3.3 や、6.0.0 には、実装されています

Pillow

なにが間違っているのでしょうか。

使用しているPillow のバージョンは以下のとおりです。
(chainer1-17-py27) user@machine01:~$ conda list Pillow
packages in environment at /homeuser/libraries/anaconda3/envs/chainer1-17-py27:

Name Version Build Channel
pillow 6.0.0 py27h34e0f95_0
または、
pillow 2.7.0 py27_1
で試しました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問