def make_error_frame(image1, image2, mask1, mask2, header, outname):
print("Making error image for %s" %op.basename(outname))
a,b = image1.shape
new = np.zeros((a*2,b))
mas = np.zeros((a*2,b))
new[:a,:] = image1
new[a:,:] = image2
mas[:a,:] = mask1
mas[a:,:] = mask2
err = np.zeros(new.shape)
for i in xrange(2*a):
err[i,:] = np.where(mas[i,:]<0, mas[i,:],
biweight_filter(new[i,:], 31,
func=biweight_midvariance))
hdu = fits.PrimaryHDU(np.array(err, dtype='float32'), header=header)
hdu.header.remove('BIASSEC')
hdu.header.remove('TRIMSEC')
hdu.header['DATASEC'] = '[%i:%i,%i:%i]' %(1,b,1,2*a)
outname = op.join(op.dirname(outname), 'e.' + op.basename(outname))
hdu.writeto(outname, overwrite=True)
评论列表
文章目录