It is now possible to load reference objects from HTM index catalogs instead of astrometry.net index files. Here are a few tips.
To use such catalogs, retarget refObjLoader
to lsst.meas.algorithms.LoadIndexedReferenceObjectsTask
. For example for processCcd.py
, put the following into a config override file:
from lsst.meas.algorithms import LoadIndexedReferenceObjectsTask
config.calibrate.refObjLoader.retarget(LoadIndexedReferenceObjectsTask)
For an example of creating an HTM index catalog, see meas_astrom
tests/data/sdssrefcat/README.txt
. A few subtleties:
- As for any LSST reference catalog, it is important to set the {{resolved}} flag to a reasonable value to support astrometry, and the {{photometric}} flag to a reasonable value to support photometry. In particular, when creating the {{sdssrefcat}} for testing {{PhotoCalTask}} using SDSS data, we found we needed to set the {{photometric}} flag based on a signal/noise threshold, in order to produce reasonable results. The
README.txt
file shows the values we used, but you may wish to do something different for a large catalog. - Always check the created config file
config/IngestIndexedReferenceTask.py
and remove any unnecessary imports, in order to improve compatibility with different versions of the stack (see DM-7002).
Warning: if you have existing HTM index catalogs please check them to see if they require updating. In the repository containing the reference catalog, perform the following steps on the file config/IngestIndexedReferenceTask.py
:
-
Remove all unnecessary imports, in order to improve compatibility with different versions of the stack.
-
Make sure the file begins as follows; if it attemps to import
IngestIndexedReferenceConfig
fromlsst.pipe.tasks
then it needs updating (due to DM-6969):import lsst.meas.algorithms.ingestIndexReferenceTask
assert type(config)==lsst.meas.algorithms.ingestIndexReferenceTask.IngestIndexedReferenceConfig, âconfig is of type %s.%s instead of lsst.meas.algorithms.ingestIndexReferenceTask.IngestIndexedReferenceConfigâ % (type(config).__module__, type(config).__name__)