numpyで16ビットのPGMイメージをPythonで読み込むには効率的で明確な方法はありますか?ナンシーと16ビットのPGM
PILを使用して16ビットPGM画像due to a PIL bugを読み込むことはできません。私は、次のコードでヘッダーに読むことができます:
dt = np.dtype([('type', 'a2'),
('space_0', 'a1',),
('x', 'a3',),
('space_1', 'a1',),
('y', 'a3',),
('space_2', 'a1',),
('maxval', 'a5')])
header = np.fromfile('img.pgm', dtype=dt)
print header
これは、正しいデータを出力します。('P5', ' ', '640', ' ', '480', ' ', '65535')
をしかし、私は非常に最良の方法ではない気がします。そしてそれを越えて、yの次のデータ(ここでは640x480)を、オフセットがsize(header)
の16ビットでどのように読み取るかを調べるには問題があります。
EDIT:IMAGEは、画像を読み込み、表示する
MATLABコードを追加されます。
I = imread('foo.pgm');
imagesc(I);
そして、このようになります:私はあることを理解しhereから
あなたは例のimg.pgmを添付することができますか?トピックオフ:あなたのサイトをチェックしました。あなたは[この](http://www.bbc.co.uk/news/science-environment-14803840)を見たいと思うかもしれません:北極の周りの暖かい水を探しているのはあなただけではないようです...おそらくあなたの(coleages)論文のために?) – Remi
PGM here:http://db.tt/phaR587 PS一つは、これらのものを見つけることは非常に難しい見てする必要はありません... :(。 – mankoff