Align a sequence of astronomical FITS files based on sources extracted in each image. The aligned files will be geometrically reprojected so all the images are the same size and shape.
It is designed to work exclusively with reduced data from Las Cumbres Observatory. FITS data from LCO is Rice compressed and contains sources extracted using SEP during our data pipeline processing.
Download this repository :
python setup.py install
from fits_align.ident import make_transforms
from fits_align.align import affineremap
from glob import glob
from numpy import shape
tmp_dir = "<FULL PATH TO INPUT FILES>"
img_list = sorted(glob(os.path.join(tmp_dir,"*.fz")))
ref_image = img_list[0]
images_to_align = img_list[1:]
identifications = make_transforms(ref_image, images_to_align)
aligned_images = [ref_image]
for id in identifications:
if id.ok:
alignedimg = affineremap(id.ukn.filepath, id.trans, outdir=tmpdir)
aligned_images.append(alignedimg)
This is a customised fork of AliPy by Malte Tewes. I have removed the dependency on SciPy in favour of pure NumPy (for linear algebra) and Pillow (for image array transforms).