|
Luiza
v03-01
|
Processor implementing Astrometry.net algorithms. More...
#include <Astrometry.h>
Public Member Functions | |
| virtual Processor * | newProcessor () |
| Return a new instance of the processor. More... | |
| virtual void | init () |
| virtual void | processData (GloriaDataContainer *data) |
| virtual void | check (GloriaDataContainer *data) |
| Called for every loop - right after processData() call. More... | |
| virtual void | end () |
Public Member Functions inherited from luiza::Processor | |
| Processor (const std::string &typeName) | |
| Default constructor. More... | |
| virtual | ~Processor () |
| Destructor. | |
| virtual void | startAnalysis (GloriaDataContainer *) |
| Called before first data processing loop. More... | |
| virtual void | concludeAnalysis (GloriaDataContainer *) |
| Called after all data processing loops. More... | |
| virtual const std::string & | type () const |
| Return type name for the processor (as set in constructor). | |
| virtual const std::string & | name () const |
| Return name of this processor. | |
| virtual const std::string & | logLevelName () const |
| Return name of the local verbosity level of this processor - "" if not set. | |
| virtual StringParameters * | parameters () |
| Return parameters defined for this Processor. | |
| virtual void | printDescription () |
| Print information about this processor in ASCII steering file format. | |
| virtual void | printDescriptionXML (std::ostream &stream=std::cout) |
| Print information about this processor in XML steering file format. | |
| template<class T > | |
| void | printParameters () |
| Print the parameters and their values depending on the given verbosity level. | |
| void | printParameters () |
| Print the parameters and their values with verbosity level MESSAGE. | |
| const std::string & | description () |
| Description of processor. | |
| bool | isFirstEvent () |
| True if first event in processEvent(evt) - use this e.g. to initialize histograms etc. | |
| GloriaCollectionType | getGloriaInType (const std::string &colName) |
| Return the input type for the collection colName. More... | |
| GloriaCollectionType | getGloriaOutType (const std::string &colName) |
| Return the output type for the collection colName. More... | |
| bool | isInputCollectionName (const std::string ¶meterName) |
| Check if parameter defines collection. More... | |
| bool | isOutputCollectionName (const std::string ¶meterName) |
| True if the given parameter defines an LCIO output collection */. | |
Protected Member Functions | |
| void | printEndMessage () const |
| int | GetAstrometricIndexesForImage (char **, GloriaFitsImage *) |
Protected Member Functions inherited from luiza::Processor | |
| void | setReturnValue (bool val) |
| Set the return value for this processor - typically at end of processEvent(). More... | |
| void | setReturnValue (const std::string &name, bool val) |
| Set a named return value for this processor - typically at end of processEvent() More... | |
| template<class T > | |
| void | registerProcessorParameter (const std::string &name, const std::string &description, T ¶meter, const T &defaultVal, int setSize=0) |
| Register a steering variable for this processor - call in constructor of processor. More... | |
| void | registerInputCollection (const GloriaCollectionType &type, const std::string &name, const std::string &description, std::string ¶meter, const std::string &defaultVal, int setSize=0) |
| Register parameter describing input collection. More... | |
| void | registerOutputCollection (const GloriaCollectionType &type, const std::string &name, const std::string &description, std::string ¶meter, const std::string &defaultVal, int setSize=0) |
| Register parameter describing output collection. More... | |
| void | registerInputCollections (const GloriaCollectionType &type, const std::string &name, const std::string &description, StringVec ¶meter, const StringVec &defaultVal, int setSize=0) |
| Register parameter describing input collections. More... | |
| template<class T > | |
| void | registerOptionalParameter (const std::string &name, const std::string &description, T ¶meter, const T &defaultVal, int setSize=0) |
| Same as registerProcessorParameter except that the parameter is optional. More... | |
| bool | parameterSet (const std::string &name) |
| Tests whether the parameter has been set in the steering file. | |
| template<class T > | |
| void | message (const std::string &message) const |
| Print message according to verbosity level. More... | |
| template<class T > | |
| void | message (const std::basic_ostream< char, std::char_traits< char > > &m) const |
| Similar to message(const std::string& message) More... | |
| std::stringstream & | log () const |
| Returns an empty stringstream that is used by the message method. | |
| virtual void | setProcessorParameters (StringParameters *parameters) |
| Allow friend class CCProcessor to change/reset processor parameters. | |
| virtual void | updateParameters () |
| Allow friend class CCProcessor to update processor parameters. | |
| virtual void | updateTelescopeParameters (std::string name) |
| Allow to update processor parameters for given telescope name. More... | |
| virtual void | updateTelescopeParameters (GloriaFitsHeader *header) |
| Update processor parameters based on FITS header. More... | |
Protected Attributes | |
| string | _imageCollectionName |
| Name of the image collection containing images to be added. | |
| std::vector< std::string > | _positionColumns |
| Names of the position columns in the object table. | |
| std::string | _brightnessColumn |
| Name of the object brightness column. | |
| bool | _magnitudoGiven |
| Flag for brightness given in magintudo. | |
| double | _PixscaleHigh |
| Upper boundary of possible pixel sizes in arcseconds. | |
| double | _PixscaleLow |
| Lower boundary of possible pixel sizes in arcseconds. | |
| string | _Indexes_path |
| Path to astrometric (astrometry.net) indexes files. | |
| int | astrodepth |
| Depth limit for astrometry.net algorithm. | |
| int | astroorder |
| Order of the SIP polynomial in astrometry fit. | |
| int | _maxObjects |
| Maximum number of objects to be used in astrometry algorithm. | |
| float | _minDistance |
| Minimum distance between two objects to be used in astrometry algorithm. | |
| float | _bloomingCut |
| Minimum distance between objects along vertical or horizontal line. | |
| int | verbosity |
| Verbosity of astrometry.net output. | |
| bool | inparallel |
| Solve using indexes parallely or not. | |
| bool | overwrite |
| Recalculate and overwrite astrometry if exists in a file. | |
| bool | addposition |
| Add object positions to the object list table. | |
| bool | addtoheader |
| Add astrometry output to the object list table header. | |
Protected Attributes inherited from luiza::Processor | |
| std::string | _description |
| Describes what the processor does. Set in constructor. | |
Processor implementing Astrometry.net algorithms.
Processor to apply Astrometry.net algorithm for finding image orientation and transformation for calculating object position in the sky. As an input to the algorithm gloria::GloriaObjectList collection should be given. If image collection is specified as well, calculated astrometry parameters are added to the image FITS header.
| ListCollectionName | - Name of the collection containing object collection (corresponding to the object list) |
| ImageCollectionName | - Name of the collection containing images (corresponding to the object list) |
| PositionColumns | Names of the object table columns from which object position should be taken. These are 'CCD_X' and 'CCD_Y' by default (default column names for Luiza photometry processors), but can be changed by user. |
| BrightnessColumn | Name of the object list column from which object brightness should be taken ('Signal' by default). |
| MagnitudoGiven | Flag to indicate that the brightness stored in the input table is already in magnitudo scale (logarythmic). Default is 'false'. |
Object list with astrometry can be stored in the new collection
| OutputCollectionName | - Name of the collection where object table will be stored |
| PermanentCollection | - Flag output collection, as permanent, not deleted after loop is finished (default is false) |
| Overwrite | - Flag to recalculate and overwrite astrometry, even if it exists in the file header |
| AddPosition | - Flag to add RA DEC positions from astrometry to the input object list |
| AddToHeader | - Flag to add astrometry parameters to the object list header |
| IndexesPath | - Path to astrometric (astrometry.net) indexes files This files are required for the algorithm to run. They can be downloaded from dedicated astrometry.net web page. |
| PixscaleHigh | - Upper boundary of possible pixel sizes in arcseconds, used when selecting the index files for analysis. |
| PixscaleLow | - Lower boundary of possible pixel sizes in arcseconds |
| AstroDepth | - Depth limit for the astrometry algorithm (default 0) |
| AstroOrder | - Order of the SIP polynomial in astrometry fit (default 3) |
| MaxObjects | - Maximum number of objects to be used for astrometry. Brightest objects are selected. |
| MinDistance | - Minimum distance (in pixels) between two objects to be used for astrometry. Brightest objects are selected. This can help to remove some artefacts. |
| BloomingCut | - Minimum distance between objects along vertical or horizontal line. To remove artificial sets of objects along vertical or horizontal lines which can appear due to blooming etc. |
| AstVerbosity | - Verbosity level of astrometry.net routines (default 0) |
| InParallel | - Solve using indexes parallely or not (default true) |
|
virtual |
Called for every loop - right after processData() call.
Can be used to check processing and/or produce check plots.
Reimplemented from luiza::Processor.
|
virtual |
Called after data processing for clean up.
Reimplemented from luiza::Processor.
References printEndMessage().
|
protected |
Return list of astrometry.net indexes proper for the image angular size Only those indexes physically accessible are returned Need to be a char **, since astrometry.net code is in plain C
References _Indexes_path, _PixscaleHigh, gloria::GloriaFitsHeader::GetKeywordValueDouble(), gloria::GloriaFitsHeader::IsKeywordSet(), gloria::GloriaFitsImage::SizeX(), and gloria::GloriaFitsImage::SizeY().
Referenced by processData().
|
virtual |
Called at the begin of the job before anything is read. Use to initialize the processor, e.g. book histograms.
Reimplemented from luiza::Processor.
References _imageCollectionName, luiza::Processor::name(), luiza::Processor::parameters(), and luiza::Processor::setReturnValue().
|
inlinevirtual |
Return a new instance of the processor.
Has to be implemented by subclasses.
Implements luiza::Processor.
|
protected |
Test method for const.
Referenced by end().
|
virtual |
Called for every data loop
Reimplemented from luiza::Processor.
References _bloomingCut, _brightnessColumn, _imageCollectionName, _magnitudoGiven, _maxObjects, _minDistance, _PixscaleHigh, _PixscaleLow, _positionColumns, gloria::GloriaFitsTable::AddColumn(), gloria::GloriaFitsHeader::AddComment(), gloria::GloriaFitsHeader::AddHistory(), addposition, addtoheader, gloria::GloriaFitsTable::AdjustColumns(), astrodepth, astroorder, gloria::GloriaFitsTable::ColumnExists(), gloria::GloriaFitsTable::DeleteColumn(), GetAstrometricIndexesForImage(), gloria::GloriaDataContainer::GetImageCollection(), gloria::GloriaFitsHeader::GetKeywordValueDouble(), gloria::GloriaDataContainer::GetTableCollection(), gloria::GloriaFitsTable::GetVectorOf(), gloria::GloriaDataContainer::ImageCollectionExists(), inparallel, gloria::GloriaFitsHeader::InputFileName(), gloria::GloriaFitsHeader::IsKeywordSet(), overwrite, gloria::GloriaFitsHeader::SetKeywordDouble(), gloria::GloriaFitsHeader::SetKeywordInt(), luiza::Processor::setReturnValue(), gloria::GloriaFitsTable::SetValue(), gloria::GloriaFitsImage::SizeX(), gloria::GloriaFitsImage::SizeY(), gloria::GloriaDataContainer::TableCollectionExists(), and verbosity.
1.8.9.1