eloy.centroid
=============

.. py:module:: eloy.centroid

.. autoapi-nested-parse::

   Centroiding utilities for astronomical images.

   This module provides functions to compute centroids of sources in images
   using photutils, with robust handling of edge cases.



Attributes
----------

.. autoapisummary::

   eloy.centroid.default_centroid_func


Functions
---------

.. autoapisummary::

   eloy.centroid.photutils_centroid
   eloy.centroid.ballet_centroid


Module Contents
---------------

.. py:data:: default_centroid_func

.. py:function:: photutils_centroid(data, coords, cutout=21, centroid_fun=None)

   Compute centroids for a list of coordinates using photutils.

   :param data: 2D image data.
   :type data: np.ndarray
   :param coords: Array of (x, y) coordinates.
   :type coords: np.ndarray
   :param cutout: Size of the cutout box for centroiding.
   :type cutout: int, optional
   :param centroid_fun: Centroiding function to use.
   :type centroid_fun: callable or None

   :returns: Array of centroid coordinates.
   :rtype: np.ndarray


.. py:function:: ballet_centroid(data, coords, cnn)

   Compute centroids for sources using a CNN-based model.

   :param data: 2D image data.
   :type data: np.ndarray
   :param coords: Array of (x, y) coordinates for sources.
   :type coords: np.ndarray
   :param cnn: CNN model with a `centroid` method that accepts cutouts.
   :type cnn: object

   :returns: Array of refined centroid coordinates.
   :rtype: np.ndarray


