示例#1
0
def create_img(metadata):
    """
    Constructs a single image
    """
    metadata.sort(key=lambda x: x[1])
    data = []
    for i in range(len(subbands)):
        sb = []
        for v in metadata[i * config.inttime * 2:(i + 1) * config.inttime * 2]:
            f = open(v[3], 'r')
            f.seek(v[4])
            dat = parse_data(f.read(LEN_BDY))
            dat[(dat < -1) |
                (dat > 1)] = 0  # To filter out outlier visibilities
            sb.append(dat)
        data.append(np.array(sb).mean(axis=0))

    return np.rot90(
        np.real(
            gfft.gfft(np.ravel(data),
                      in_ax,
                      out_ax,
                      enforce_hermitian_symmetry=True,
                      verbose=False,
                      W=config.window,
                      alpha=config.alpha)), 1) * mask
示例#2
0
dx = 1.0 / res
out_ax = [(dx, res), (dx, res)]

L = np.linspace(-1, 1, res)
M = np.linspace(-1, 1, res)
mask = np.ones((res, res))
xv, yv = np.meshgrid(L, M)

image = data.copy()
im = image.mean(axis=(-1, -2))

im = np.rot90(
    np.real(
        gfft.gfft(np.ravel(im), [u, v],
                  out_ax,
                  enforce_hermitian_symmetry=True,
                  verbose=True,
                  W=6,
                  alpha=1.5)), 1) * mask

plt.imsave('image.png',
           im,
           vmin=np.nanmean(im) - 3 * np.nanstd(im),
           vmax=np.nanmean(im) + 3 * np.nanstd(im),
           origin='lower')

plt.figure(figsize=(16, 16), facecolor='white')
plt.imshow(im,
           vmin=np.nanmean(im) - 3 * np.nanstd(im),
           vmax=np.nanmean(im) + 3 * np.nanstd(im),
           origin='lower')
plt.title('SB320-202012281240-lba_outer.vis direct imaging')