Я пытаюсь разрезать изображение подгонки на 4 квартили.Размеры моего исходного изображения соответствует (4163, 3821).Поэтому я хочу файлы с 4 подгонками, со всей информацией из исходного файла подгонки, но с размерами изображения (2081.5,1910.5)
Я использовал это:
with fits.open("/home/andreas/Desktop/my_fileN.fits") as f:
original_data=f[0].data
original_header=f[0].header
x_dim=original_data.shape[0]
y_dim=original_data.shape[1]
deg_per_pixel = original_header["CDELT2"]
min_pixels = 20 * deg_per_pixel
min_pixels_arcsec = min_pixels * 3600
w = WCS(original_header)
w = w.celestial
position=((x_dim/4)+(0*x_dim/2)),((y_dim/4)+(0*y_dim/2))
size= ( (x_dim/2)*u.pixel, (y_dim/2)*u.pixel)
patch_data = Cutout2D(data=original_data,
position=position,
size=size,
wcs=w,
copy=True)
#create a new FITS HDU
patch_hdu = fits.PrimaryHDU(data=patch_data.data,
header=patch_data.wcs.to_header())
patch_hdu.header['BMAJ'] = original_header['BMAJ']
patch_hdu.header['BMIN'] = original_header['BMIN']
#
output_file_path = '/home/andreas/Desktop/' + str(0) + "_" + str(0) + ".fits"
patch_hdu.writeto(output_file_path, overwrite=True)
(0 впозиция для каждого квартиля - там был цикл for ..)
Таким образом, проблема в том, что я получаю файлы с 4 подгонками, но с неправильными размерами, теряя часть изображения.Я получаю следующие размеры: (2082, 1910), (1997, 1910), (2082, 1653), (1997, 1663).
Я также пытался поменять местами положение = (y, x) или размер= (y, x), но проблема остается.
Есть идеи, почему это происходит?И как это правильно решить?