Go to the documentation of this file.
18 #ifndef IMAGEHANDLING_HPP
19 #define IMAGEHANDLING_HPP
125 bool LoadFile(
const std::string& file_name,
int position = 0);
181 std::string color_map_name =
"standard");
498 double* x_image,
double* y_image);
508 double* x_image,
double* y_image);
518 double* x_canvas,
double* y_canvas);
529 const double y_image,
double* alpha,
541 const double y_canvas,
double* alpha,
570 std::vector<int>& distribution);
573 std::vector<int>& distribution);
576 double* min_value,
double* max_value);
607 double y_image,
double* x_centroid,
624 double* x_axis_angle,
double* background,
625 double* peak_above_background,
double* fwhm_x,
643 double* background,
double* gaussian_volume,
644 double* correlation,
double* gaussian_coord_x,
645 double* gaussian_coord_y,
double* sigma_x,
693 bool process_image();
698 bool process_temp_image();
704 bool apply_bias_image();
709 boost::signals2::connection connect(
710 const signal_t::slot_type& event_listener);
715 void DataAvailable();
717 std::string readHeaderItem(
const cpl_property*
const property)
const;
719 void readPropertyValue(std::string& header_item,
720 const cpl_property*
const property)
const;
745 boost::signals2::connection connection;
762 cpl_image* internal_image;
767 cpl_image* temp_image;
772 cpl_vector* internal_vector;
777 cpl_table* internal_binary_table;
792 int number_extensions;
812 double cut_level_min;
817 double cut_level_max;
822 double median_filter_size;
826 double image_pixel_min;
831 double image_pixel_max;
856 void* internal_image_buffer;
861 double* internal_vector_buffer;
871 std::list<std::string> color_maps;
886 std::string actual_color_map_name;
897 bool cut_levels_determined;
913 bool first_segment_received;
918 int current_bias_selected;
bool WorldCoordinatesDegreesFromImage(const double x_image, const double y_image, double *alpha, double *delta)
Definition: imageHandling.cpp:1211
bool LoadActualConfigurationMap(std::string configuration_map_name)
Definition: imageHandling.cpp:387
void set_ColorScalingTypeLogarithmic()
Definition: imageHandling.cpp:1153
void GetHistogramBinsFromImage(int min_value, int max_value, std::vector< int > &distribution)
Definition: imageHandling.cpp:1397
@ USERDEFINED
Definition: imageHandling.hpp:83
void GetCutValuesPercentageFromImage(const double percentage, double *min_value, double *max_value)
Definition: imageHandling.cpp:1404
int get_ImageWidth()
Definition: imageHandling.cpp:1071
boost::signals2::signal< void()> signal_t
Definition: ddtMemoryAccessor.hpp:79
void GetHistogramFromImage(int min_value, int max_value, std::vector< int > &distribution)
Definition: imageHandling.cpp:1390
bool ApplyCutLevelsAuto()
Definition: imageHandling.cpp:239
bool ApplyCutLevelsMinMax()
Definition: imageHandling.cpp:220
bool get_FlipYFlag()
Definition: imageHandling.cpp:558
ImageHandling()
Definition: imageHandling.cpp:30
int get_NumberAxis() const
Definition: imageHandling.cpp:1077
int StoreActualImageAsBias(const std::string slot_name="")
Definition: imageHandling.cpp:397
Definition: imageColor.hpp:72
void set_FlipYFlag(const bool flip_flag)
Definition: imageHandling.cpp:548
double get_CutLevelMax()
Definition: imageHandling.cpp:1093
FitsExtension get_PrimaryHDUInfo() const
Definition: imageHandling.cpp:146
Definition: ddtLogger.hpp:71
bool ApplyCutLevelsManual(const double min_value, const double max_value)
Definition: imageHandling.cpp:258
@ AUTO
Definition: imageHandling.hpp:74
bool WorldCoordinatesDegreesFromCanvas(const double x_canvas, const double y_canvas, double *alpha, double *delta)
Definition: imageHandling.cpp:1219
signal_t * CutLevelChangedSignal()
Definition: imageHandling.cpp:188
bool ReprossImage()
Definition: imageHandling.cpp:1388
Definition: ddtClient.hpp:36
@ LINEAR_SCALE
Definition: imageHandling.hpp:95
Definition: imageColor.hpp:95
bool LoadActualColorMap(std::string color_map_name)
Definition: imageHandling.cpp:345
std::array< unsigned int, MAX_COLOR_MAP_ENTRIES > colorMapARGB_t
Definition: imageColor.hpp:62
std::string get_CutLevelTypeStr()
Definition: imageHandling.cpp:200
void ClearSelectedBiasImage(const int slot)
Definition: imageHandling.cpp:476
Definition: dataFile.hpp:41
bool LoadConfigurationMaps(std::string configuration_map_source)
Definition: imageHandling.cpp:392
bool get_AttachedToStream()
Definition: imageHandling.cpp:577
double get_ImagePixelMax()
Definition: imageHandling.cpp:1097
FitsExtension * get_FitsExtensionInfo(const int extension_number)
Definition: imageHandling.cpp:141
double GetPixelToDegreesScalingFactor()
Definition: imageHandling.cpp:1364
CplStatistics * GetStatisticsCplImageWindow(int llx, int lly, int urx, int ury)
Definition: imageHandling.cpp:1239
void * get_ImageData()
Definition: imageHandling.cpp:1065
void ApplyBias(const int slot)
Definition: imageHandling.cpp:521
bool LoadFileAsBiasInSlot(const std::string file_name, const int slot)
Definition: imageHandling.cpp:417
bool LoadImageExtensionsAsOne(const std::string &file_name)
Definition: imageHandling.cpp:168
bool get_FlipXFlag()
Definition: imageHandling.cpp:556
double ImagePixelFromImage(const double x_image, double y_image)
Definition: imageHandling.cpp:1185
CutLevelType
Definition: imageHandling.hpp:69
ddt::scalingLut_t * get_LinearScalingLut()
Definition: imageHandling.cpp:1133
void EnableBias(const bool enable_bias)
Definition: imageHandling.cpp:462
Definition: biasBuffer.hpp:51
std::vector< std::string > GetFITSHeader()
Definition: imageHandling.cpp:1250
CutLevelType get_CutLevelType()
Definition: imageHandling.cpp:196
bool GetBiasEnabled() const
Definition: imageHandling.cpp:460
cpl_image * get_Image()
Definition: imageHandling.cpp:1067
std::string get_ActualColorMapName()
Definition: imageHandling.cpp:1105
bool LoadColorMaps(std::string color_map_folder, std::string color_map_name="standard")
Definition: imageHandling.cpp:291
void AttachDataStream(std::string data_stream_id)
Definition: imageHandling.cpp:560
Definition: imageHandling.hpp:53
bool LoadFile(const std::string &file_name, int position=0)
Definition: imageHandling.cpp:152
ddt::colorMap_t * get_ActualColorMap()
Definition: imageHandling.cpp:1101
cpl_apertures * GetCircularObjects(double sigma)
Definition: imageHandling.cpp:581
void DetachDataStream(std::string data_stream_id)
Definition: imageHandling.cpp:573
void set_CutLevelType(const CutLevelType cut_level_type)
Definition: imageHandling.cpp:190
int get_NumberExtensions()
Definition: imageHandling.cpp:1075
signal_t * ImageAvailableInBufferSignal()
Definition: imageHandling.cpp:184
bool ResetCutLevels()
Definition: imageHandling.cpp:276
ColorScalingType get_ColorScalingType()
Definition: imageHandling.cpp:1145
Definition: imageStats.hpp:46
double ImagePixelFromCanvas(const double x_canvas, const double y_canvas, double *x_image, double *y_image)
Definition: imageHandling.cpp:1202
Definition: imageBuffer.hpp:50
void set_CutLevelMin(const double min_value)
Definition: imageHandling.cpp:1079
@ SQRT_SCALE
Definition: imageHandling.hpp:107
ColorScalingType
Definition: imageHandling.hpp:89
ddt::colorMapARGB_t * get_ActualColorMapARGB()
Definition: imageHandling.cpp:1109
bool get_RotateFlag()
Definition: imageHandling.cpp:554
ddt::scalingLut_t * get_ScalingLut()
Definition: imageHandling.cpp:1113
int GetCurrentSelectedBiasSlot() const
Definition: imageHandling.cpp:532
void set_ColorScalingTypeLinear()
Definition: imageHandling.cpp:1149
bool get_LastSegment() const
Definition: imageHandling.cpp:150
bool GetObjectInformation(double x_image, double y_image, int size, double *x_axis_angle, double *background, double *peak_above_background, double *fwhm_x, double *fwhm_y)
Definition: imageHandling.cpp:628
void set_FlipXFlag(const bool flip_flag)
Definition: imageHandling.cpp:542
cpl_table * get_BinaryTable()
Definition: imageHandling.cpp:1069
ddt::DdtLogger * logger
Definition: imageHandling.hpp:682
void ConvertImageToCanvas(const double x_image, const double y_image, double *x_canvas, double *y_canvas)
Definition: imageHandling.cpp:1233
void ClearAllBiasImages()
Definition: imageHandling.cpp:466
@ LOG_SCALE
Definition: imageHandling.hpp:101
void set_logger(ddt::DdtLogger *logger)
Definition: imageHandling.cpp:67
void set_RotateFlag(const bool rot_flag)
Definition: imageHandling.cpp:536
Definition: imageCoords.hpp:51
void set_ColorScalingTypeSquareRoot()
Definition: imageHandling.cpp:1157
std::array< std::array< float, COLOR_MAP_ENTRY_SIZE >, MAX_COLOR_MAP_ENTRIES > colorMap_t
Definition: imageColor.hpp:52
std::string get_ColorScalingTypeStr()
Definition: imageHandling.cpp:1165
double get_ImagePixelMin()
Definition: imageHandling.cpp:1095
ddt::scalingLut_t * get_LogarithmicScalingLut()
Definition: imageHandling.cpp:1137
std::string GetBiasSlotName(const int slot)
Definition: imageHandling.cpp:456
ddt::scalingLut_t * get_SqrtScalingLut()
Definition: imageHandling.cpp:1141
void ConvertCanvasToImage(const double x_canvas, const double y_canvas, double *x_image, double *y_image)
Definition: imageHandling.cpp:1227
int LoadFileAsBias(const std::string file_name)
Definition: imageHandling.cpp:437
std::string GetEquinox()
Definition: imageHandling.cpp:749
std::list< std::string > get_ColorMaps()
Definition: imageHandling.cpp:1099
void DisplaySelectedBiasImage(const int slot)
Definition: imageHandling.cpp:486
void set_CutLevelMax(const double max_value)
Definition: imageHandling.cpp:1085
int get_ImageHeight()
Definition: imageHandling.cpp:1073
bool GetObjectCentroidPos(cpl_apertures *apertures, double x_image, double y_image, double *x_centroid, double *y_centroid)
Definition: imageHandling.cpp:594
virtual ~ImageHandling()
Definition: imageHandling.cpp:32
@ MINMAX
Definition: imageHandling.hpp:79
void set_ColorScalingType(ColorScalingType scaling_type)
Definition: imageHandling.cpp:1161
double get_CutLevelMin()
Definition: imageHandling.cpp:1091
bool GetGaussianParameters(double x_image, double y_image, int size, double *background, double *gaussian_volume, double *correlation, double *gaussian_coord_x, double *gaussian_coord_y, double *sigma_x, double *sigma_y)
Definition: imageHandling.cpp:708