私はロードして分析したいhdf5ファイルにたくさんの画像を持っています。各画像は1920x1920のuint16であり、メモリにそれらをすべてロードするとコンピュータがクラッシュします。画像をスライスして、他の人がそれを回避すると言われました。データが1920x1920x100(100画像)であれば、各画像の最初の80行を読み込み、そのスライスを分析してから次のスライスに移動します。これは、私は問題なく行うことができますが、私はHDF5ファイルにデータセットを作成しようとすると、それは、TypeError例外を取得:要素0を変換できません...h5pyは要素0をhsize_tに変換できません
をhsize_tするために、私はとの問題を再現することができますこの非常に単純化されたコード:
with h5py.File('h5file.hdf5','w') as f:
data = np.random.randint(100, size=(15,15,20))
data_set = f.create_dataset('data', data, dtype='uint16')
出力が得られます。
TypeError: Can't convert element 0 ([[29 50 75...4 50 28 36 13 72]]) to hsize_t
私も「data_set =」と「DTYPE = 『uint16の』」を省略して試してみましたが、私はまだ同じを取得しますエラー。コードは次のようになります。
with h5py.File('h5file.hdf5','w') as f:
data = np.random.randint(100, size=(15,15,20))
f.create_dataset('data', data)
誰でも問題の原因を教えていただけますか? 乾杯!
乾杯!今それは動作します:) – DonMP