def test_JSON(self):
testMage = np.random.uniform( high=10, size=[3,128,64] ).astype( 'int8' )
meta = {'foo': 5, 'bar': 42}
mrcName = os.path.join( tmpDir, "testMage.mrcz" )
pixelsize = [1.2, 5.6, 3.4]
mrcz.writeMRC( testMage, mrcName, meta=meta,
pixelsize=pixelsize, pixelunits=u"\AA",
voltage=300.0, C3=2.7, gain=1.05,
compressor='zstd', clevel=1, n_threads=4 )
rereadMage, rereadHeader = mrcz.readMRC( mrcName, pixelunits=u"\AA" )
try: os.remove( mrcName )
except IOError: log.info( "Warning: file {} left on disk".format(mrcName) )
assert( np.all(testMage.shape == rereadMage.shape) )
assert( testMage.dtype == rereadMage.dtype )
for key in meta:
assert( meta[key] == rereadHeader[key] )
npt.assert_array_almost_equal( testMage, rereadMage )
npt.assert_array_equal( rereadHeader['voltage'], 300.0 )
npt.assert_array_almost_equal( rereadHeader['pixelsize'], pixelsize )
npt.assert_array_equal( rereadHeader['pixelunits'], u"\AA" )
npt.assert_array_equal( rereadHeader['C3'], 2.7 )
npt.assert_array_equal( rereadHeader['gain'], 1.05 )
pass
评论列表
文章目录