ImageD  v2_7_5 (24.06.22)
ImageD is an image processing software designed for rapid prototyping and implementing algorithms and solutions for science, research and teaching.
d_img_proc.h
Go to the documentation of this file.
1 /************************************
2  * added: 11.09.2018 *
3  * author: David Eilenstein *
4  * contact: D.Eilenstein@gsi.de *
5  * project: ImageD *
6  * facility: GSI Darmstadt, Ger *
7  ************************************/
8 
9 #ifndef D_IMG_PROC_H
10 #define D_IMG_PROC_H
11 
12 //own
13 #include <d_enum.h>
14 #include <d_stat.h>
15 #include <d_math.h>
16 #include <d_component.h>
17 #include <d_component_list.h>
20 #include <d_featureset.h>
21 #include <d_geo_point_2d.h>
22 #include <d_geo_line_2d.h>
23 #include <d_contour.h>
24 
25 //general
26 #include <iostream>
27 #include <vector>
28 #include <fstream>
29 #include <sstream>
30 #include <iterator>
31 #include <thread>
32 #include <complex>
33 
34 //Qt
35 #include <QMainWindow>
36 #include <QImage>
37 #include <QPainter>
38 #include <QPen>
39 #include <QColor>
40 #include <QFileInfo>
41 #include <QDir>
42 #include <QString>
43 #include <QDebug>
44 
45 //openCV
46 #include <opencv2/core/core.hpp>
47 #include <opencv2/highgui/highgui.hpp>
48 #include <opencv2/imgproc/imgproc.hpp>
49 #include "opencv2/stitching.hpp"
50 
51 //namespaces
52 using namespace std;
53 //using namespace cv; (prohibited because of abigous names with qtdatavisualization)
54 #include <d_opencv_typedefs.h>
55 
63 {
64 public:
65  D_Img_Proc();
66 
67  static int Load_From_Path (Mat *pMA_Out, QFileInfo FI_path);
68  static int Load_From_Path (Mat *pMA_Out, QString path);
69  static int Load_From_Path (Mat *pMA_Out, string path);
70  static int Load_From_Path_Gray (Mat *pMA_Out, QFileInfo FI_path);
71  static int Load_From_Path_Gray (Mat *pMA_Out, QString path);
72  static int Load_From_Path_Gray (Mat *pMA_Out, string path);
73  static int Load_From_Path_Text (Mat *pMA_Out, string path);
74  static int Load_From_Path_Raw (Mat *pMA_Out, string path, int width, int height, int out_type);
75  static int Load_From_Path_Multi (Mat *pMA_Out, QString path, unsigned int page);
76 
77  static int Generate_byValueFunction (Mat *pMA_Out, int width, int height, function<double (double x, double y)> value_function);
78  static int Generate_byValueFunction_Complex (Mat *pMA_Out, int width, int height, function<complex<double> (complex<double> x, complex<double> y)> value_function);
79 
80  static QString Type_of_QImage (QImage *pQI_In);
81  static QString Type_of_Mat (Mat *pMA_In);
82  static QString Type_of_Mat (int channels, int depth);
83  static int TypeIndex_of_Mat (int channels, int depth);
84  static int Channels_of_MatType (int type);
85  static int BitDepth_of_MatType (int type);
86  static int BitsPerPixel_of_MatType (int type);
87  static Scalar Scalar_EqualInAllChannels (int channels = 1, double value = 0);
88 
89  static int Stat_ofPixelvalues (double *value, Mat *pMA_In, int stat, bool ignore_zeros);
90  static int Quantiles_ofPixelvalues (double *q_low, double *q_high, Mat *pMA_In, double low_rel, double high_rel, bool ignore_zeros);
91  static int Quantiles_ofPixelvalues (vector<double> *v_q_low, vector<double> *v_q_high, Mat *pMA_In, double low_rel, double high_rel, bool ignore_zeros);
92 
93  static int Convert_Mat_to_QImage (QImage *pQI_Out, Mat *pMA_In, bool use_custom_range_for_spread_non_8bit = false, double in_min = 0, double in_max = 1);
94  static int Convert_QImage_to_Mat (Mat *pMA_Out, QImage *pQI_In);
95  static int Convert_toMat4Ch (Mat *pMA_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color);
96  static int Convert_toMat4Ch_8bit (Mat *pMA_Out, Mat *pMA_In, int alpha_mode, bool heat_color = false, bool norm_alpha = true);
97  static int Convert_toMat4Ch_8bit (Mat *pMA_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color = false, bool norm_alpha = true);
98  static int Convert_toQImage4Ch (QImage *pQI_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color);
99  static int Convert_toQImage4Ch_8bit (QImage *pQI_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color = false);
100 
101 
102  static int MinMax_of_Mat (Mat *pMA_In, double *min_ext, double *max_ext);
103  static int MinMax_of_Mat_1C (Mat *pMA_In, double *min_ext, double *max_ext);
104  static int ValAtPix (vector<double> *v_value, Mat *pMA_In, size_t x_pos, size_t y_pos);
105  static int ValAtPix (QString *QS_value, Mat *pMA_In, unsigned int x_pos, unsigned int y_pos);
106 
107  static int Duplicate (Mat *pMA_Out, Mat *pMA_In);
108  static int Insert (Mat *pMA_Target, Mat *pMA_Insert, int offset_x, int offset_y);
109  static int Insert (Mat *pMA_Target, Mat *pMA_Insert, int offset_x, int offset_Y, double scale);
110 
111  static int Invert (Mat *pMA_Out, Mat *pMA_In);
112 
113  static int Convert_Color (Mat *pMA_Out, Mat *pMA_In, int cvt_mode);
114  static int Convert_Color_RGBA (Mat *pMA_Out, Mat *pMA_In, double r, double g, double b, double a, double range_rgba = 255.0);
115  static int Convert_Color2Mono (Mat *pMA_Out, Mat *pMA_In, int col2mono_code);
116  static int Convert_Depth_NoScaling (Mat *pMA_Out, Mat *pMA_In, int depth);
117  static int Convert_Depth_NoScaling_1C (Mat *pMA_Out, Mat *pMA_In, int depth);
118  static int Convert_8UC1 (Mat *pMA_Out, Mat *pMA_In);
119  static int Convert_Complex2Real_1C (Mat *pMA_Out, Mat *pMA_InRe, Mat *pMA_InIm, int mode);
120  static int Convert_Complex2Real_1C (Mat *pMA_Out, Mat *pMA_InComplexChannels, int mode);
121  static int Convert_Angle2Color_Rad (Mat *pMA_Out, Mat *pMA_InAngleRad, uchar Saturation = 255, uchar Value = 255);
122  static int Normalize (Mat *pMA_Out, Mat *pMA_In, unsigned int norm, unsigned int type, double min, double max);
123  static int Spread_16_bit_to_8bit (Mat *pMA_Out, Mat *pMA_In, double in_max, double out_max);
124  static int Spread_8bit_to_float01 (Mat *pMA_Out, Mat *pMA_In);
125  static int Channel_Supression (Mat *pMA_Out, Mat *pMA_In, bool use_r = true, bool use_g = true, bool use_b = true, bool force_3ch = false);
126  static int Split (Mat *pMA_Out, Mat *pMA_In, unsigned int channel);
127  static int Merge (Mat *pMA_Out, Mat *pMA_In0, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, unsigned int channels, bool channel_use[4]);
128  static int Sign2Color (Mat *pMA_Out, Mat *pMA_In, bool norm = false);
129  static int Duplicate2Channels (Mat *pMA_Out, Mat *pMA_In, int channels);
130  static int Merge (Mat *pMA_Out, Mat *pMA_In0, Mat *pMA_In1, Mat *pMA_In2);
131  static int Merge (Mat *pMA_Out, vector<Mat> vMA_in, vector<int> v_R, vector<int> v_G, vector<int> v_B, vector<int> v_A);
132  static int Combi_8UC1_binary (Mat *pMA_Out, Mat *pMA_In);
133  static int GammaSpread_1C (Mat *pMA_Out, Mat *pMA_In, double gamma, double in_min, double in_max, double out_min = 0, double out_max = 255, bool force_8bit = false);
134  static int GammaSpread (Mat *pMA_Out, Mat *pMA_In, double gamma, double in_min, double in_max, double out_min = 0, double out_max = 255, bool force_8bit = false);
135  static int GammaSpread (Mat *pMA_Out, Mat *pMA_In, double gamma, vector<double> v_in_min, vector<double> v_in_max, double out_min = 0, double out_max = 255, bool force_8bit = false);
136  static int GammaSpread_Quantiles (Mat *pMA_Out, Mat *pMA_In, double gamma, double quantile_low, double quantile_high, double out_min = 0, double out_max = 255, bool force_8bit = false, bool ignore_zeros = true);
137  static int Visualize_to8bit (Mat *pMA_Out, Mat *pMA_In, int mode_crop, int mode_trafo, int mode_anchor, int mode_range, double val_anchor, double val_range, double val_min, double val_max, double val_gamma, double val_center, double val_scale, bool keep_min_max = false, int mode_complex = c_COMPLEX2REAL_RE_IM);
138  static int Visualize_to8bit_1C (Mat *pMA_Out, Mat *pMA_In, int mode_trafo, int mode_anchor, int mode_range, double val_anchor, double val_range, double crop_min, double crop_max, double val_gamma, double val_center, double val_scale);
139 
140  static int Crop_Rect_Rel (Mat *pMA_Out, Mat *pMA_In, double x1_rel, double y1_rel, double x2_rel, double y2_rel);
141  static int Crop_Rect_Rel (Mat *pMA_Out, Mat *pMA_In, double x1_rel, double y1_rel, double x2_rel, double y2_rel, int *offset_x, int *offset_y, int *width, int *heigth);
142  static int Crop_Rect_Abs (Mat *pMA_Out, Mat *pMA_In, int x, int y, int width, int height);
143  static int Crop_Rect_Rot (Mat *pMA_Out, Mat *pMA_In, int x, int y, int width, int height, double angle);
144  static int Crop_Rect_Rot (Mat *pMA_Out, Mat *pMA_In, RotatedRect rrect);
145  static int Crop_Circle (Mat *pMA_Out, Mat *pMA_In, int x, int y, int r);
146  static int Zoom (Mat *pMA_Out, Mat *pMA_In, double x_rel, double y_rel, double factor);
147  static int Zoom (Mat *pMA_Out, Mat *pMA_In, double x_rel, double y_rel, double factor, int *offset_x, int *offset_y, int *width, int *heigth);
148  static int Padding (Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int type = BORDER_CONSTANT);
149  static int Padding (Mat *pMA_Out, Mat *pMA_In, int right, int left, int top, int bottom, int type = BORDER_CONSTANT);
150  static int Padding_1C (Mat *pMA_Out, Mat *pMA_In, int right, int left, int top, int bottom, int type = BORDER_CONSTANT);
151  static int ForceSize (Mat *pMA_Out, Mat *pMA_In, int width, int heigth, int border_type = BORDER_CONSTANT);
152  static int Stitch_Border_abs (Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, int border_R, int border_B, int overlap_R, int overlap_B, Stitcher::Mode mode = Stitcher::SCANS);
153  static int Stitch_Border_rel (Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, double border_R, double border_B, double overlap_R, double overlap_B, Stitcher::Mode mode = Stitcher::SCANS);
154  static int Stitch_Border_abs_custom (Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, int border_R, int border_B, int overlap_R, int overlap_B);
155  static int Stitch_Border_rel_custom (Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, double border_R, double border_B, double overlap_R, double overlap_B);
156 
157  static int Scale_Factor (Mat *pMA_Out, Mat *pMA_In, double scale_x, double scale_y);
158  static int Scale_ToSize (Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y);
159 
160  static int Threshold_Relative (Mat *pMA_Out, Mat *pMA_In, double max_val, double thres_rel);
161  static int Threshold_Relative_1C (Mat *pMA_Out, Mat *pMA_In, double max_val, double thres_rel);
162  static int Threshold_Absolute (Mat *pMA_Out, Mat *pMA_In, double thres_abs);
163  static int Threshold_Absolute_1C (Mat *pMA_Out, Mat *pMA_In, double thres_abs);
164  static int Threshold_Value (Mat *pMA_Out, Mat *pMA_In, int out_mode, double max_val, double thres);
165  static int Threshold_Auto (Mat *pMA_Out, Mat *pMA_In, int out_mode, double max_val, int auto_mode);
166  static int Threshold_Adaptive (Mat *pMA_Out, Mat *pMA_In, int out_mode, double max_val, int adapt_mode, unsigned int mask_size, double offset);
167  static int Threshold_Adaptive_Gauss (Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double offset, double scale);
168  static int Threshold_Adaptive_Gauss_1C (Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double offset, double scale);
169  static int Threshold_RankOrderOffsetHysteresis (Mat *pMA_Out, Mat *pMA_In, double radius, double quantile, double thresh_offset_indicator, double thresh_offset_hysteresis, bool labeling = false);
170  static int Threshold_BlurThres (Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double thres);
171  static int Color_Grab (Mat *pMA_Out, Mat *pMA_In, int color_space, int out_mode, vector<uchar> min, vector<uchar> max);
172 
173  static int Morphology_Elemental (Mat *pMA_Out, Mat *pMA_In, int morph_type, int elem_type, unsigned int elem_size_X, unsigned int elem_size_Y, int border_type, unsigned int iterations);
174  static int Morphology_Skeleton (Mat *pMA_Out, Mat *pMA_In, int elem_type, unsigned int elem_size_X, unsigned int elem_size_Y, int border_type);
175  static int Morphology_Thinning (Mat *pMA_Out, Mat *pMA_In, int thinning_type);
176  static int Morphology_Thinning_Iteration (Mat img, int iter, int thinning_type);
177  static int Morphology_Erode_Rect (Mat *pMA_Out, Mat *pMA_In, int elem_size_X, int elem_size_Y);
178  static int Morphology_Dilate_Rect (Mat *pMA_Out, Mat *pMA_In, int elem_size_X, int elem_size_Y);
179  static int Morphology_LocMax_Rect (Mat *pMA_Out, Mat *pMA_In, int elem_size_X = 3, int elem_size_Y = 3);
180  static int Morphology_LocMax_Rect_1C (Mat *pMA_Out, Mat *pMA_In, int elem_size_X = 3, int elem_size_Y = 3);
181  static int Morphology_Reconstruction (Mat *pMA_Out, Mat *pMA_InSeed, Mat *pMA_InLimit, Mat *pMA_Mask, double quantil = 1);
182 
183  static int Transformation_Distance (Mat *pMA_Out, Mat *pMA_In, int metric, int precision);
184  //static int Transformation_Distance_Rel (Mat *pMA_Out, Mat *pMA_In, int metric, int precision);
185  static int Transformation_Watershed (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Marker);
186  static int Transformation_Watershed_Auto (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Marker, bool include_not_seeded, bool conv_8bit, bool exclude_border);
187  static int Transformation_Watershed_Auto (Mat *pMA_Out, Mat *pMA_In, double distance, bool include_not_seeded, bool conv_8bit, bool exclude_border);
188  static int Transformation_Watershed_Auto (Mat *pMA_Out, Mat *pMA_In, int size, double sigma, bool include_not_seeded, bool conv_8bit, bool exclude_border);
189  static int Transformation_Watershed_Custom (Mat *pMA_Out, Mat *pMA_In2Fill, Mat *pMA_InMarker, Mat *pMA_FG_Mask, int mode_flood, int mode_marker, int mode_mask, int connectivity = 8, int gauss_size = 5, double gauss_sigma = 2, int morphgrad_elem = MORPH_ELLIPSE, int morphgrad_size = 3, double thresh = 127, bool exclude_border = true, bool include_non_seeded = true, bool draw_watersheds = true);
190  static int Transformation_Watershed_Custom (Mat *pMA_Out, Mat *pMA_In2Fill, Mat *pMA_InMarker, Mat *pMA_FG_Mask, int connectivity = 8);
191  static int Transformation_Fourier (Mat *pMA_Out, Mat *pMA_In, bool invers);
192  static int Transformation_Fourier (Mat *pMA_Out, Mat *pMA_In_Re, bool invers = false, bool force_fft = true, bool out_real = false, int out_complex_mode = c_COMPLEX2REAL_ABS, bool out_scale = false, bool out_center = true, bool out_nof0 = true);
193  static int Transformation_Fourier (Mat *pMA_Out, Mat *pMA_In_Re, Mat *pMA_In_Im, bool complex_input, bool invers = false, bool force_fft = true, bool out_real = false, int out_complex_mode = c_COMPLEX2REAL_ABS, bool out_scale = false, bool out_center = true, bool out_nof0 = true);
194  static int Transformation_Fourier_1C (Mat *pMA_Out, Mat *pMA_In_Re, Mat *pMA_In_Im, bool invers = false, bool force_fft = true, bool out_real = false, int out_complex_mode = c_COMPLEX2REAL_ABS, bool out_scale = false, bool out_center = true, bool out_nof0 = true);
195 
196  static int Segmentation_GaussDistWater (Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double thres, double distance, bool include_not_seeded, bool conv_8bit, bool exclude_border);
197 
198  static int Filter_Box (Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, int out_depth, bool norm);
199  static int Filter_Box_RMS (Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, int out_depth, bool norm);
200  static int Filter_Gauss (Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, double sigma_x, double sigma_y);
201  static int Filter_Median (Mat *pMA_Out, Mat *pMA_In, int size);
202  static int Filter_Median (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask);
203  static int Filter_RankOrder (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, double quantil_relPos);
204  static int Filter_RankOrder_Circular (Mat *pMA_Out, Mat *pMA_In, double quantil_relPos, double radius);
205  static int Filter_RankOrder_Rect (Mat *pMA_Out, Mat *pMA_In, double quantil_relPos, int size_x, int size_y);
206  static int Filter_RankOrder_1C (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, double quantil_relPos);
207  static int Filter_RankOrder_1C_Thread (Mat *pMA_Out, Mat *pMA_InPadded, Mat *pMA_Mask, double quantil_relPos, size_t img_in_sx, size_t y_start, size_t y_end, double val_max, size_t mask_relevant_px_count, vector<Point> *vBorderL, vector<Point> *vBorderR, vector<Point> *vBorderT, vector<Point> *vBorderB);
208  static int Filter_Maximum_1C (Mat *pMA_Out, Mat *pMA_In, size_t mask_size_x, size_t mask_size_y);
209  static int Filter_Maximum_1C_Thread_X (Mat *pMA_Out, Mat *pMA_In, size_t mask_size_x, size_t n_in_x, size_t y_start, size_t y_end);
210  static int Filter_Maximum_1C_Thread_Y (Mat *pMA_Out, Mat *pMA_In, size_t mask_size_x, size_t mask_size_y, size_t n_in_y, size_t x_start, size_t x_end);
211 
212  static int Filter_Laplace (Mat *pMA_Out, Mat *pMA_In, int size, int border, int out_depth, double scale, double delta);
213  static int Filter_LaplaceOfGaussian (Mat *pMA_Out, Mat *pMA_In, int size_g, double sigma_g, int size_l, int border, int out_depth, double scale, double delta);
214  static int Filter_Sobel (Mat *pMA_Out, Mat *pMA_In, int size, int border, int out_depth, double scale, double delta, int d_x, int d_y);
215  static int Filter_Scharr (Mat *pMA_Out, Mat *pMA_In, int border, int out_depth, double scale, double delta, int d_x, int d_y);
216  static int Filter_Canny (Mat *pMA_Out, Mat *pMA_In, int size, double thres_low, double thres_high, bool L2_gradient);
217  static int Filter_Bilateral (Mat *pMA_Out, Mat *pMA_In, int diameter, int border, double sigma_color, double sigma_space);
218  static int Filter_Gabor (Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, int out_depth, double sigma, double theta, double lambda, double gamma, double psi, double delta);
219 
220  static int Filter_Eilenstein_Prototype (Mat *pMA_Out, Mat *pMA_In, bool cmp_fkt(double, double, double), unsigned int size_x, unsigned int size_y, bool normalized, double constant);
221  static int Filter_Eilenstein_1C (Mat *pMA_Out, Mat *pMA_In, int comp, unsigned int size_x, unsigned int size_y, bool normalized, double constant);
222  static int Filter_Eilenstein (Mat *pMA_Out, Mat *pMA_In, int comp, unsigned int size_x, unsigned int size_y, bool normalized, double constant);
223  static int Filter_Eilenstein (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<double (double cur, double nei)> response_CurNei, function<double (double res, double wei)> weight_ResWeigth, function<double (vector<double> v_res)> combine_Responses);
224  static int Filter_Eilenstein_1C (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<double (double cur, double nei)> response_CurNei, function<double (double res, double wei)> weight_ResWeigth, function<double (vector<double> v_res)> combine_Responses);
225 
226  static int Filter_Function (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<double (double cur, double nei)> F1_CenterImage, function<double (double f1r, double msk)> F2_f1mask, function<double (vector<double> vf2r)> F3_Combine, function<double (double f3r, double cen)> F4_f3center, int border_type = BORDER_CONSTANT, bool DoNonZeroMaskOnly = false);
227  static int Filter_Function_1C (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<double (double cur, double nei)> F1_CenterImage, function<double (double f1r, double msk)> F2_f1mask, function<double (vector<double> vf2r)> F3_Combine, function<double (double f3r, double cen)> F4_f3center, int border_type = BORDER_CONSTANT, int thread_number = 8, bool DoNonZeroMaskOnly = false);
228  static int Filter_Function_1C_Thread (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<double (double cur, double nei)> F1_CenterImage, function<double (double f1r, double msk)> F2_f1mask, function<double (vector<double> vf2r)> F3_Combine, function<double (double f3r, double cen)> F4_f3center, int row_start, int row_end, int col_start, int col_end, bool DoNonZeroMaskOnly = false);
229  static int Filter_Function_8bit (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<uchar (double cur, double nei)> F1_CenterImage, function<uchar (double f1r, double msk)> F2_f1mask, function<uchar (vector<double> vf2r)> F3_Combine, function<uchar (double f3r, double cen)> F4_f3center, int border_type = BORDER_CONSTANT, bool DoNonZeroMaskOnly = false);
230  static int Filter_Function_8bit_1C (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<uchar (double cur, double nei)> F1_CenterImage, function<uchar (double f1r, double msk)> F2_f1mask, function<uchar (vector<double> vf2r)> F3_Combine, function<uchar (double f3r, double cen)> F4_f3center, int border_type = BORDER_CONSTANT, int thread_number = 8, bool DoNonZeroMaskOnly = false);
231  static int Filter_Function_8bit_1C_Thread (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function<uchar (double cur, double nei)> F1_CenterImage, function<uchar (double f1r, double msk)> F2_f1mask, function<uchar (vector<double> vf2r)> F3_Combine, function<uchar (double f3r, double cen)> F4_f3center, int row_start, int row_end, int col_start, int col_end, bool DoNonZeroMaskOnly = false);
232 
233  static int Filter_Stat (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, int stat, int border_type = BORDER_CONSTANT);
234  static int Filter_Stat_Circular (Mat *pMA_Out, Mat *pMA_In, double radius, int stat, int border_type = BORDER_CONSTANT);
235  static int Filter_Stat_Rect (Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int stat, int border_type = BORDER_CONSTANT);
236 
237  static int Fill_Holes (Mat *pMA_Out, Mat *pMA_In);
238  static int Exclude_BorderConnected (Mat *pMA_Out, Mat *pMA_In);
239  static int Labeling (Mat *pMA_Out, Mat *pMA_In, int connectivity, int out_depth);
240 
241  //simple nomenclatur math functions (WIP)
242  /*static int Math_Not (Mat *pMA_Out, Mat *pMA_In1);
243  static int Math_Invert (Mat *pMA_Out, Mat *pMA_In1);
244  static int Math_Subtract (Mat *pMA_Out, Mat *pMA_In1, double subtrahend);
245  static int Math_Subtract (Mat *pMA_Out, double minuend, Mat *pMA_In1);
246  static int Math_Subtract (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
247  static int Math_Subtract_Absolute (Mat *pMA_Out, Mat *pMA_In1, double subtrahend);
248  static int Math_Subtract_Absolute (Mat *pMA_Out, double minuend, Mat *pMA_In1);
249  static int Math_Subtract_Absolute (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
250  static int Math_Divide (Mat *pMA_Out, Mat *pMA_In1, double divisor);
251  static int Math_Divide (Mat *pMA_Out, double dividend, Mat *pMA_In1);
252  static int Math_Power (Mat *pMA_Out, Mat *pMA_In1, double power);
253  static int Math_Power (Mat *pMA_Out, double base, Mat *pMA_In1);
254  static int Math_Root2 (Mat *pMA_Out, Mat *pMA_In1);
255  static int Math_LogE (Mat *pMA_Out, Mat *pMA_In1);
256  static int Math_Add_Weighted (Mat *pMA_Out, double weight_1, Mat *pMA_In1, double weight_2, Mat *pMA_In2, double weight_sum);
257  static int Math_Xor (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
258  static int Math_Min (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
259  static int Math_Max (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
260  static int Math_Comp (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, int comp);
261  static int Math_Function (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function<double (double x, double y)> function_img1_img2);
262  static int Math_Function_8bit (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function<uchar (double x, double y)> function_img1_img2);
263  */
264  static int Math_Add (Mat *pMA_Out, Mat *pMA_In1, double summand);
265  static int Math_Add (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
266  static int Math_Add (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double summand);
267  static int Math_Add (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3);
268  static int Math_Add (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, double summand);
269  static int Math_Add (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4);
270  static int Math_Add (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4, double summand);
271  static int Math_Mult (Mat *pMA_Out, Mat *pMA_In1, double factor);
272  static int Math_Mult (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
273  static int Math_Mult (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double factor);
274  static int Math_Mult (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3);
275  static int Math_Mult (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, double factor);
276  static int Math_Mult (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4);
277  static int Math_Mult (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4, double factor);
278  static int Math_And (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
279  static int Math_And (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3);
280  static int Math_And (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4);
281  static int Math_Or (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
282  static int Math_Or (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3);
283  static int Math_Or (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4);
284  static int Math_Magnitude (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
285  static int Math_MagnitudeSquared (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
286  static int Math_Phase (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
287  static int Math_LimitTop (Mat *pMA_Out, Mat *pMA_InThresh, Mat *pMA_InToLimit);
288  static int Math_LimitTop (Mat *pMA_Target, Mat *pMA_InThresh);
289 
290  static bool Check_IsSimilar (Mat *pMA_In1, Mat *pMA_In2);
291  static bool Check_GreaterValue (Mat *pMA_InSmaller, Mat *pMA_InGreater);
292 
293  //old complicated math function names (from here) - kept to avoid version conflicts
294  static int Math_ImgSelf_Not (Mat *pMA_Out, Mat *pMA_In);
295  static int Math_ImgScal_Add (Mat *pMA_Out, Mat *pMA_In, double summmand);
296  static int Math_ImgScal_Sub (Mat *pMA_Out, Mat *pMA_In, double subtrahend);
297  static int Math_ScalImg_Sub (Mat *pMA_Out, Mat *pMA_In, double minuend);
298  static int Math_ImgScal_Mult (Mat *pMA_Out, Mat *pMA_In, double factor);
299  static int Math_ImgScal_Div (Mat *pMA_Out, Mat *pMA_In, double divisor);
300  static int Math_ImgScal_Pow (Mat *pMA_Out, Mat *pMA_In, double power);
301  static int Math_ImgScal_Root (Mat *pMA_Out, Mat *pMA_In);
302  static int Math_ImgScal_Log (Mat *pMA_Out, Mat *pMA_In);
303  static int Math_ImgImg_Add (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
304  static int Math_ImgImg_AddWeighted (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double weight_1, double weight_2, double weight_sum);
305  static int Math_ImgImg_Diff (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
306  static int Math_ImgImg_DiffAbs (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
307  static int Math_ImgImg_Mult (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double scale);
308  static int Math_ImgImg_Div (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double scale);
309  static int Math_ImgImg_BitAnd (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
310  static int Math_ImgImg_BitOr (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
311  static int Math_ImgImg_BitXor (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
312  static int Math_ImgImg_Min (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
313  static int Math_ImgImg_Max (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
314  static int Math_ImgImg_Comp (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, int comp);
315  static int Math_ImgImg_Function (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function<double (double x, double y)> function_img1_img2);
316  static int Math_ImgImg_Function_8bit (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function<uchar (double x, double y)> function_img1_img2);
317  static int Math_ImgImg_Function_Complex(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function<complex<double> (complex<double> x, complex<double> y)> function_img1_img2);
318  static int Math_ImgStack_Project (Mat *pMA_Out, vector<Mat> *pvMA_In, int stat = c_STAT_MEAN_ARITMETIC);
319  static int Math_ImgStack_StatCombine (Mat *pMA_Out, vector<Mat> *pvMA_In0, vector<Mat> *pvMA_In1, function<double (vector<double>)> f_stat_0, function<double (vector<double>)> f_stat_1, function<double (double, double)> f_combi, bool force8bit);
320  static int Math_ImgStack_StatCombine_Thread (Mat *pMA_Out, vector<Mat> *pvMA_In0, vector<Mat> *pvMA_In1, function<double (vector<double>)> f_stat_0, function<double (vector<double>)> f_stat_1, function<double (double, double)> f_combi, bool force8bit, int row_start, int row_end);
321  static int Math_Special_Add_Color (Mat *pMA_Out, Mat *pMA_In_Color, Mat *pMA_In0, Mat *pMA_In1, Mat *pMA_In2);
322  static int Math_Special_NADH (Mat *pMA_NADH, Mat *pMA_I, Mat *pMA_A2, Mat *pMA_T1, Mat *pMA_T2, float k, bool ignore_0, float T2_Max_Thres, float T2_Max_Const);
323  static int Math_Special_NADPH (Mat *pMA_NADPH, Mat *pMA_I, Mat *pMA_A2, Mat *pMA_T1, Mat *pMA_T2, float k, bool ignore_0, float T2_Min_Thres, float T2_Min_Const);
324  static int Math_Special_NADPH_NADH (Mat *pMA_NADPH_NADH, Mat *pMA_T2, bool ignore_0, float T2_Min_Thres, float T2_Max_Thres, float T2_Min_Const, float T2_Max_Const);
325  static int Math_Special_Trans2Count (Mat *pMA_Count, Mat *pMA_Trans, float base, float scale);
326  static int Math_Special_IncreaseIfSet (Mat *pMA_Count, Mat *pMA_Check);
327  //old complicated math function names (until here)
328 
329  static int Matrix_Product (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2);
330  static int Matrix_Inversion (Mat *pMA_Out, Mat *pMA_In);
331  static int Matrix_Transpose (Mat *pMA_Out, Mat *pMA_In);
332 
333  static int Shading_Correct (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Reference);
334 
335  static int Mask (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask);
336  static int Mask_1C (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask);
337  static int Value_to_MinOrMax (Mat *pMA_Out, Mat *pMA_In, double val_src, bool to_min);
338  static int Value_to_Value (Mat *pMA_Out, Mat *pMA_In, double val_src, double val_dst);
339 
340  static int Histo_Equal (Mat *pMA_Out, Mat *pMA_In);
341 
342  static int Calc_Hist (Mat *pMA_Hist, Mat *pMA_In, bool uniform, bool accum); //buggy! use the other one...
343  static int Calc_Hist (vector<vector<double>> *vv_hist, Mat *pMA_In, bool uniform, bool accum);
344  static int Calc_Hist_1C (vector<double> *v_hist, Mat *pMA_In, bool uniform, bool accum, unsigned int class_count, double *min_ext, double *max_ext, double *step_ext);
345  static int Calc_Hist_Multi (vector<vector<double>> *vv_hist, Mat *pMA_In, bool uniform, bool accum, unsigned int class_count, vector<double> *v_min_ext, vector<double> *v_max_ext, vector<double> *v_step_ext);
346 
347  static int Calc_LUT (vector<int> *vLUT, Mat *pMA_Label);
348  static int Split_img2vv_value (vector<vector<double>> *vv_data_LabPix, Mat *pMA_Value, Mat *pMA_Label, bool ignore_0);
349  static int Split_img2vv_coord (vector<vector<Point>> *vvp_data_LabCooPt, Mat *pMA_Label);
350  static int Split_img2components (D_Component_List *pCompList, Mat *pMA_In, int connectivity = 8);
351  static int Split_ObjectAreas (vector<double> *v_objects, vector<double> *v_areas, Mat *pMA_Label, Mat *pMA_Objects, int connectivity);
352 
353  static int LUT_Apply_to_Label_Int (Mat *pMA_Out, Mat *pMA_Label, vector<int> vLUT);
354  static int LUT_Apply_to_Label_Double (Mat *pMA_Out, Mat *pMA_Label, vector<double> vLUT, bool LUT_has_BG_label = true);
355  static int LUT_Apply_to_Label_Uchar (Mat *pMA_Out, Mat *pMA_Label, vector<uchar> vLUT, bool LUT_has_BG_label = true);
356  static int LUT_Apply_to_Label_Binary (Mat *pMA_Out, Mat *pMA_Label, vector<int> vLUT, bool ignore_BG = true);
357  static int LUT_Apply_to_Label_TrueFalse(Mat *pMA_Out_true, Mat *pMA_Out_false, Mat *pMA_Label, vector<int> vLUT, bool edges = true, bool ignore_BG = true);
358  static int LUT_Apply_to_Label_Color (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, vector<int> vLUT, int channel_true, int channel_false, bool edges = true, bool ignore_BG = true);
359 
360  static int Feature_Value (Mat *pMA_Out, Mat *pMA_In, int feature, int connectivity = 4);
361  static int FeatureContext_Value (Mat *pMA_Out, Mat *pMA_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat, int stat, int connectivity = 4);
362  static int Feature_Select (Mat *pMA_Out, Mat *pMA_In, int feature, double f_min, double f_max, int connectivity = 4);
363  static int FeatureContext_Select (Mat *pMA_Out, Mat *pMA_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat, int stat, double t_min, double t_max, int connectivity = 4);
364  static int Feature_Visualize (Mat *pMA_Out, Mat *pMA_In, int feature, int connectivity = 4, int thickness = 1, double scale = 1);
365  static int Feature_Connect (Mat *pMA_Out, Mat *pMA_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat1, int feat2, function<bool(double, double)> comp, int connect_mode = c_CONNECT_CLOSEST, int connectivity = 4, int thickness = 2);
366 
367  static int ValueStat (Mat *pMA_Out, Mat *pMA_InLabel, Mat *pMA_InValue, int stat, int connectivity = 8);
368  static int ValueStat_Select (Mat *pMA_Out, Mat *pMA_InLabel, Mat *pMA_InValue, int stat, double thresh_min, double thresh_max, int connectivity = 8);
369 
370  static int Detect_CornerHarris (Mat *pMA_Out, Mat *pMA_In, int blockSize, int sobelAperture, double harrisParam, double thres);
371 
372  static int Select_Area (Mat *pMA_Out, Mat *pMA_In, unsigned int area_min, unsigned int area_max, int connectivity);
373 
374  static int Reduce_Geometric (Mat *pMA_Out, Mat *pMA_In, int geometric, int connectivity = 8, int thickness = 1, uchar value = 255);
375  static int Reduce_Outlines (Mat *pMA_Out, Mat *pMA_In, int neighborhood = 8, int thickness = 1);
376  static int Reduce_Centroid (Mat *pMA_Out, Mat *pMA_In, int thickness = 1);
377  static int Reduce_Contours (Mat *pMA_Out, Mat *pMA_In, int thickness = 1);
378 
379  static int Calc_Centroids (vector<Point2f> *pvCentroids, Mat *pMA_In, int connectivity = 8);
380 
381  static int Floodfill (Mat *pMA_Out, Mat *pMA_In, unsigned int seed_x, unsigned int seed_y, double new_val);
382  static int Floodfill (Mat *pMA_Target, unsigned int seed_x, unsigned int seed_y, double new_val);
383  static int Floodfill_Boundary (Mat *pMA_Out, Mat *pMA_In, double new_val);
384  static int Floodfill_Delta (Mat *pMA_Out, Mat *pMA_In, int seed_x, int seed_y, uchar val_new, uchar val_delta);
385  static bool Floodfill_Delta_Step (Mat *pMA_Target, Mat *pMA_Check, int x, int y, int dx, int dy, int val_new, int val_delta, int val_origin);
386  static int Hysteresis (Mat *pMA_Out, Mat *pMA_In_Indicator, Mat *pMA_In_Hysteresis, bool labeling = false);
387 
388  static int ImgStackToRow (Mat *pMA_Out, vector<Mat> *pvMA_In, vector<vector<QString>> vvQS_LabelText_Img_Line, int text_thickness = 1, double text_scale = 1.0, int line_height = 10, int frame_thickness = 2);
389  static int ImgStackToGrid (Mat *pMA_Out, vector<Mat> *pvMA_In, vector<vector<QString>> vvQS_LabelText_Img_Line, size_t maxPerRow, int text_thickness = 1, double text_scale = 1.0, int line_height = 10, int frame_thickness = 2);
390 
391  static int Draw_Dot (Mat *pMA_Target, int x, int y, int d, uchar val);
392  static int Draw_Dots (Mat *pMA_Target, vector<Point2f> vCenters, vector<double> vDiameters, uchar val);
393  static int Draw_Dots (Mat *pMA_Target, vector<Point> vCenters, vector<double> vDiameters, uchar val);
394  static int Draw_Dot (Mat *pMA_Target, int x, int y, int r, uchar val_r, uchar val_g, uchar val_b);
395  static int Draw_Line (Mat *pMA_Target, unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, unsigned int thickness = 1, double value = 255);
396  static int Draw_Line (Mat *pMA_Target, unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, unsigned int thickness, double val_r, double val_g, double val_b);
397  static int Draw_Line (Mat *pMA_Target, Point P1, Point P2, unsigned int thickness, double val_r, double val_g, double val_b);
398  static int Draw_Line_Bresenham (Mat *pMA_Target, Point P1, Point P2, double val);
399  static int Draw_Line_Angle (Mat *pMA_Target, double length, double center_x, double center_y, double angle, unsigned int thickness = 1, double value = 255);
400  static int Draw_Vector (Mat *pMA_Target, int offset_x, int offset_y, double length_value, double angle_value, double length_error = 0, double angle_error = 0, int vector_thickness = 1, uchar value = 255, int error_steps = 360, int error_thickness = 1);
401  static int Draw_Arc (Mat *pMA_Target, int offset_x, int offset_y, double arc_angle, double arc_orientation, double radius, int line_thickness = 1, uchar value = 255, int draw_arc_steps = 360);
402  static int Draw_Arc (Mat *pMA_Target, int offset_x, int offset_y, double arc_angle_value, double arc_angle_error, double arc_orientation, double radius, int line_thickness = 1, uchar value = 255, int draw_arc_steps = 360);
403  static int Draw_VectorField (Mat *pMA_Target, vector<vector<double>> vv_XY_length_value, vector<vector<double>> vv_XY_angle_value, vector<vector<double>> vv_XY_length_error, vector<vector<double>> vv_XY_angle_error, uchar value = 255, int vector_thickness = 3, int error_steps = 360, int error_thickness = 1, bool grid_add = true, int grid_thicknes = 2, bool label_add = false, int label_thickness = 2, double label_scale = 1.0);
404  static int Draw_ArcField (Mat *pMA_Target, vector<vector<double>> vv_XY_arc_angle_value, vector<vector<double>> vv_XY_arc_angle_error, vector<vector<double>> vv_XY_arc_orientation_value, vector<vector<double>> vv_XY_arc_radius_value, vector<vector<size_t> > vv_XY_draw_if_non_zero, uchar value = 255, int thickness = 3, int arc_draw_steps = 360, bool grid_add = true, int grid_thicknes = 2, bool label_add = false, int label_thickness = 2, double label_scale = 1.0);
405  static int Draw_CircleField (Mat *pMA_Target, vector<vector<double>> vv_XY_radius_value, vector<vector<double>> vv_XY_radius_error, uchar value = 255, int circle_thickness = 1, bool circles_filled = true, bool grid_add = false, int grid_thicknes = 2, bool label_add = false, int label_thickness = 2, double label_scale = 1.0);
406  static int Draw_Rect (Mat *pMA_Target, unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, unsigned int thickness = 1, double val = 255);
407  static int Draw_Rect_Rotate (Mat *pMA_Target, RotatedRect rrect, int thickness = 1, double value = 255);
408  static int Draw_GridSimple (Mat *pMA_Target, int nx, int ny, Scalar value = 255, int thickness = 1);
409  static int Draw_Grid (Mat *pMA_Target, int nx, int ny, bool lines_add, int grid_thickness, bool label_add, int label_thickness, double label_scale, double value);
410  static int Draw_Grid (Mat *pMA_Target, int nx, int ny, bool lines_add, int grid_thickness, bool label_add, int label_thickness, double label_scale, double value_r, double value_g, double value_b);
411  static int Draw_Grid (Mat *pMA_Target, vector<vector<double>> vvNumbers_xy, int nx, int ny, bool lines_add, int grid_thickness, bool label_add, int label_thickness, double label_scale, double value_r, double value_g, double value_b);
412  static int Draw_Grid (Mat *pMA_Target, vector<vector<vector<QString> > > vvvTexts_xyl, int nx, int ny, bool lines_add, int grid_thickness, bool label_add, int label_thickness, double label_scale, double value_r, double value_g, double value_b);
413  static int Draw_Boundaries (Mat *pMA_Target, int width = 1, int val = 255);
414  static int Draw_Circle (Mat *pMA_Out, Mat *pMA_In, int x, int y, int r, int val = 255, int thickness = 1, bool filled = false);
415  static int Draw_Circle (Mat *pMA_Target, int x, int y, int r, int val, int thickness = 1, bool filled = false);
416  static int Draw_Circle (Mat *pMA_Target, int x, int y, int r, int val_r, int val_g, int val_b, int thickness = 1, bool filled = false);
417  static int Draw_Ellipse (Mat *pMA_Target, RotatedRect ell, double val_r, double val_g, double val_b, int thickness = 1);
418  static int Draw_MarkerSymbol (Mat *pMA_Target, int x1, int y1, int x2, int y2, int symbol_id, uchar r, uchar g, uchar b, double scale = 1);
419  static int Draw_Text (QImage *pQI_Target, QString text_tl, QString text_tr, QString text_bl, QString text_br, unsigned int size, QColor color);
420  static int Draw_Text (Mat *pMA_Target, QString text,int x, int y, int thickness, double scale, double value);
421  static int Draw_Text (Mat *pMA_Target, QString text,int x, int y, int thickness, double scale, double value_r, double value_g, double value_b);
422  static int Draw_Text_ContrastColor (Mat *pMA_Target, QString text,int x = 0, int y = 0, int thickness = 1, double scale = 1.0);
423  static int Draw_Label_Numbers_LUT (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, vector<double> v_LUT, bool border, double scale, double thickness, bool center, int precision, uchar r = 0, uchar g = 0, uchar b = 0);
424  static int Draw_Label_Text (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, QStringList QSL_LabelTexts, bool border, double scale, double thickness, bool center, uchar r = 0, uchar g = 0, uchar b = 0, int connectivity = 4);
425  static int Draw_Label_Numbers_LUT_Gray (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, vector<double> v_LUT, int geometric, double scale, int thickness, bool center, int precision);
426  static int Draw_Label_Numbers (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, double scale, double thickness, bool center);
427  static int Draw_Label_Numbers (Mat *pMA_Out, Mat *pMA_Label, double scale, double thickness, bool center);
428  static int Draw_Label_Numbers_Corner (Mat *pMA_Out, Mat *pMA_Label, double scale, double thickness);
429  static int Draw_Label_Numbers_Center (Mat *pMA_Out, Mat *pMA_Label, double scale, double thickness);
430  static int Draw_Contours (Mat *pMA_Target, vector<vector<Point>> vContours, int line_thickness, double value);
431  static int Draw_Contour (Mat *pMA_Target, vector<Point> vContour, int line_thickness, double value);
432  static int Draw_Contour (Mat *pMA_Target, vector<Point> vContour, int line_thickness, double R, double G, double B);
433  static int Draw_ContourCrop (Mat *pMA_Out, Mat *pMA_In_R, Mat *pMA_In_G, Mat *pMA_In_B, vector<Point> vContour, int line_thickness, double R, double G, double B, bool draw_contour = true);
434  static int Draw_ContourCrop (Mat *pMA_Out, Mat *pMA_In, vector<Point> vContour, int line_thickness, double value, bool draw_contour = true);
435  static int Draw_ContourText (Mat *pMA_Target, vector<vector<Point>> vContours, QStringList QSL_Texts, vector<Point2f> vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value);
436  static int Draw_ContourText (Mat *pMA_Out, Mat *pMA_In, vector<vector<Point>> vContours, QStringList QSL_Texts, vector<Point2f> vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value);
437  //static int Draw_Contours (Mat *pMA_Out, Mat *pMA_In, int thickness = 1, uchar value = 255);
438  static QColor Contrast_Color (QColor col_in, bool force_black_and_white = true, bool mirror_hue = true, bool force_light2blue = true);
439  static Scalar Contrast_Color (Vec3d val_BGR, bool force_black_and_white = true, bool mirror_hue = true, bool force_light2blue = true);
440  static QString Color2Text4StyleSheet (QColor col_in);
441  static int Highlight_NumericalProblems (Mat *pMA_Out, Mat *pMA_In);
442 
443  static int OverlayImage (Mat *pMA_Out, Mat *pMA_BaseR, Mat *pMA_BaseG, Mat *pMA_BaseB, Mat *pMA_OverR, Mat *pMA_OverG, Mat *pMA_OverB, uchar thresh_overlay = 0);
444  static int OverlayOverwrite (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Overlay, double intensity_overlay = 1.0, double intensity_backgr = 1.0);
445  static int OverlayOverwrite (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Overlay, QColor color, double intensity_overlay = 1.0, double intensity_backgr = 1.0);
446  static int OverlayOverwrite (Mat *pMA_Target, Mat *pMA_Overlay, uchar r, uchar g, uchar b, double intensity_overlay = 1.0);
447  static int OverlayOverwrite (Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Overlay, uchar r, uchar g, uchar b, double intensity_overlay = 1.0, double intensity_backgr = 1.0);
448  static int ExtremeValuesColor (Mat *pMA_Out, Mat *pMA_In, double rel_low = 0.1, double rel_high = 0.9, double gamma = 1.0, bool color_low = false, bool color_high = true, bool zero_as_lowest = true);
449  static int Legend_HSV (Mat *pMA_Out, int width, int height, QStringList QSL_H, QStringList QSL_S, QStringList QSL_V, QString QS_H, QString QS_S, QString QS_V, double H_angle_min, double H_angle_range, double scale = 1, double thickness = 1);
450 
451  static int ClassBorder_kNN (Mat *pMA_Out, Mat *pMA_Class0, Mat *pMA_Class1, int n);
452 
453  static int ObjectsMovement (vector<double> *pvShift_PxPerFrame, vector<double> *pvDirection_Rad, vector<Point2f> *pvPositions, vector<Mat> *pvMA_In, vector<vector<Point2f>> *pvvCentroids, double max_Shift_PxPerFrame = INFINITY, size_t index_NewImg = 0, int connectivity = 8);
454  static int ObjectsMovement_Heatmap (Mat *pMA_OutHeatmap, Mat *pMA_OutLegend, Mat *pMA_InValue, vector<vector<Point2f>> vv_FrmObjPositions, vector<vector<double>> vv_FrmObjShifts, vector<vector<double>> vv_FrmObjAngles, Point2f P_VortexCenter, double shift_scale, double value_scale, int blur_size_x, int blur_size_y, int mode, int legend_width, int legend_height, double legend_scale, double legend_thickness, int legend_examples = 5, double min_rel = 0.1, double max_rel = 0.9, double frame2time = 0.0417);
455 
456  static int DistancesStat (Mat *pMA_Out, Mat *pMA_In, function<double (vector<double>)> F_Stat);
457  static int RadiometricStereo (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, double S1X, double S1Y, double S1Z, double S2X, double S2Y, double S2Z, double S3X, double S3Y, double S3Z, int out_mode);
458  static int RadiometricStereo (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat S, int out_mode);
459 
460  static int InterferometerMichelson (Mat *pMA_Out, int scene_size_x_px, int scene_size_y_px, int scale_px, double scale_m, double wavelength_m, double dist_source_m, double dist_detector_m, double dist_mirror1_m, double dist_mirror2_m, double angle_mirror1_x, double angle_mirror1_y, double angle_mirror2_x, double angle_mirror2_y);
461 
462 };
463 
464 #endif // D_IMG_PROC_H
c_COL2MONO_NUMBER_OF
@ c_COL2MONO_NUMBER_OF
Definition: d_enum.h:665
Mat
cv::Mat Mat
Definition: d_opencv_typedefs.h:28
QSL_Errors
const QStringList QSL_Errors
Definition: d_enum.h:183
D_Component_List_Context::get_PointCouples_Closest
vector< vector< Point > > get_PointCouples_Closest(int type1, int type2, double dist_min, double dist_max, int feat1, int feat2, function< bool(double, double)> comparison)
Definition: d_component_list_context.cpp:187
ER_okay
@ ER_okay
Definition: d_enum.h:133
D_Img_Proc::Type_of_Mat
static QString Type_of_Mat(Mat *pMA_In)
Definition: d_img_proc.cpp:363
c_MARKER_SYMBOL_DOT
@ c_MARKER_SYMBOL_DOT
Definition: d_enum.h:2036
c_FEAT_CIRC_ENCLOSE_CENTER_X
@ c_FEAT_CIRC_ENCLOSE_CENTER_X
Definition: d_enum.h:1402
D_Img_Proc::Fill_Holes
static int Fill_Holes(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:12257
c_COMPLEX2REAL_REAL
@ c_COMPLEX2REAL_REAL
Definition: d_enum.h:973
c_VIEWER_3D_ALPHA_CHANNEL_3
@ c_VIEWER_3D_ALPHA_CHANNEL_3
Definition: d_enum.h:486
D_Img_Proc::Crop_Rect_Abs
static int Crop_Rect_Abs(Mat *pMA_Out, Mat *pMA_In, int x, int y, int width, int height)
Definition: d_img_proc.cpp:5514
D_Img_Proc::Draw_Text_ContrastColor
static int Draw_Text_ContrastColor(Mat *pMA_Target, QString text, int x=0, int y=0, int thickness=1, double scale=1.0)
Definition: d_img_proc.cpp:18707
c_VIEWER_3D_ALPHA_CHANNEL_SQUARE_MEAN
@ c_VIEWER_3D_ALPHA_CHANNEL_SQUARE_MEAN
Definition: d_enum.h:490
D_Math::Function_2D_to_1D_8bit
static function< uchar(double x, double y)> Function_2D_to_1D_8bit(int type, double a=1, double b=0, double c=1, double d=0, double e=0, double f=0, uchar nan_val=0, uchar inf_val=0)
Definition: d_math.cpp:527
BORDER_CONSTANT
const int BORDER_CONSTANT
Definition: d_opencv_typedefs.h:77
D_Img_Proc::Draw_Line
static int Draw_Line(Mat *pMA_Target, unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, unsigned int thickness=1, double value=255)
Definition: d_img_proc.cpp:17134
D_Img_Proc::Visualize_to8bit
static int Visualize_to8bit(Mat *pMA_Out, Mat *pMA_In, int mode_crop, int mode_trafo, int mode_anchor, int mode_range, double val_anchor, double val_range, double val_min, double val_max, double val_gamma, double val_center, double val_scale, bool keep_min_max=false, int mode_complex=c_COMPLEX2REAL_RE_IM)
Definition: d_img_proc.cpp:5082
c_COL2MONO_RED
@ c_COL2MONO_RED
Definition: d_enum.h:654
DFT_SCALE
const int DFT_SCALE
Definition: d_opencv_typedefs.h:128
D_Stat::Optimize_Init
static double Optimize_Init(int opt_type)
Definition: d_stat.cpp:4185
D_Img_Proc::Math_Or
static int Math_Or(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:12702
D_Img_Proc::Math_ScalImg_Sub
static int Math_ScalImg_Sub(Mat *pMA_Out, Mat *pMA_In, double minuend)
Definition: d_img_proc.cpp:13028
c_FEAT_MASS_CENTER_X
@ c_FEAT_MASS_CENTER_X
Definition: d_enum.h:1398
c_VIEWER_3D_ALPHA_OPAC
@ c_VIEWER_3D_ALPHA_OPAC
Definition: d_enum.h:482
D_Img_Proc::Split_img2components
static int Split_img2components(D_Component_List *pCompList, Mat *pMA_In, int connectivity=8)
Definition: d_img_proc.cpp:15169
Vec3i
cv::Vec3i Vec3i
Definition: d_opencv_typedefs.h:54
D_Img_Proc::Math_And
static int Math_And(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:12645
c_COMPLEX2REAL_IMAG
@ c_COMPLEX2REAL_IMAG
Definition: d_enum.h:974
D_Math::Distance
static double Distance(Point pt1, Point pt2)
Definition: d_math.cpp:1511
c_VIS_TRAFO_NUMBER_OF
@ c_VIS_TRAFO_NUMBER_OF
Definition: d_enum.h:700
d_component.h
D_Math::Function_2D_to_1D
static function< double(double x, double y)> Function_2D_to_1D(int type, double a=1, double b=0, double c=1, double d=0, double e=0, double f=0, double nan_val=0, double inf_val=0)
Definition: d_math.cpp:88
D_Math::Difference_AngleRad
static double Difference_AngleRad(double a1, double a2)
Definition: d_math.cpp:1688
D_Img_Proc::Draw_Grid
static int Draw_Grid(Mat *pMA_Target, vector< vector< vector< QString > > > vvvTexts_xyl, int nx, int ny, bool lines_add, int grid_thickness, bool label_add, int label_thickness, double label_scale, double value_r, double value_g, double value_b)
FONT_HERSHEY_COMPLEX_SMALL
const int FONT_HERSHEY_COMPLEX_SMALL
Definition: d_opencv_typedefs.h:137
D_Img_Proc::Math_ImgScal_Pow
static int Math_ImgScal_Pow(Mat *pMA_Out, Mat *pMA_In, double power)
Definition: d_img_proc.cpp:13056
D_Img_Proc::Filter_RankOrder
static int Filter_RankOrder(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, double quantil_relPos)
D_Img_Proc::Filter_RankOrder performs Rank order filtering with huang algorithm for any quantile.
Definition: d_img_proc.cpp:9143
c_MATH_2D_TO_1D_ELLIPSE
@ c_MATH_2D_TO_1D_ELLIPSE
Definition: d_enum.h:1065
c_VIEWER_3D_ALPHA_CHANNEL_0
@ c_VIEWER_3D_ALPHA_CHANNEL_0
Definition: d_enum.h:483
D_Img_Proc::Math_ImgImg_Diff
static int Math_ImgImg_Diff(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13125
D_Img_Proc::Morphology_LocMax_Rect_1C
static int Morphology_LocMax_Rect_1C(Mat *pMA_Out, Mat *pMA_In, int elem_size_X=3, int elem_size_Y=3)
D_Img_Proc::Draw_Dot
static int Draw_Dot(Mat *pMA_Target, int x, int y, int d, uchar val)
Definition: d_img_proc.cpp:17060
d_math.h
D_Img_Proc::GammaSpread
static int GammaSpread(Mat *pMA_Out, Mat *pMA_In, double gamma, double in_min, double in_max, double out_min=0, double out_max=255, bool force_8bit=false)
Definition: d_img_proc.cpp:4903
D_Img_Proc::Filter_Median
static int Filter_Median(Mat *pMA_Out, Mat *pMA_In, int size)
Definition: d_img_proc.cpp:9097
c_COMPLEX2REAL_ABS
@ c_COMPLEX2REAL_ABS
Definition: d_enum.h:976
D_Component_List::get_pMatBinary
Mat * get_pMatBinary()
Definition: d_component_list.h:65
D_Img_Proc::Morphology_Skeleton
static int Morphology_Skeleton(Mat *pMA_Out, Mat *pMA_In, int elem_type, unsigned int elem_size_X, unsigned int elem_size_Y, int border_type)
Definition: d_img_proc.cpp:7064
Point2f
cv::Point2f Point2f
Definition: d_opencv_typedefs.h:37
Vec2i
cv::Vec2i Vec2i
Definition: d_opencv_typedefs.h:48
DIST_L2
const int DIST_L2
Definition: d_opencv_typedefs.h:114
c_WATERSHED_FILL_SOURCE_INV
@ c_WATERSHED_FILL_SOURCE_INV
Definition: d_enum.h:605
c_VIEWER_3D_ALPHA_MAX_IS_TRANSPARENT
@ c_VIEWER_3D_ALPHA_MAX_IS_TRANSPARENT
Definition: d_enum.h:491
D_Img_Proc::Threshold_Adaptive
static int Threshold_Adaptive(Mat *pMA_Out, Mat *pMA_In, int out_mode, double max_val, int adapt_mode, unsigned int mask_size, double offset)
Definition: d_img_proc.cpp:6669
c_FEAT_CIRC_INCLOSE_RADIUS
@ c_FEAT_CIRC_INCLOSE_RADIUS
Definition: d_enum.h:1387
c_COL2MONO_GREEN
@ c_COL2MONO_GREEN
Definition: d_enum.h:653
c_COL2MONO_Z
@ c_COL2MONO_Z
Definition: d_enum.h:657
MORPH_GRADIENT
const int MORPH_GRADIENT
Definition: d_opencv_typedefs.h:90
c_GEO_NUMBER_OF
@ c_GEO_NUMBER_OF
Definition: d_enum.h:2064
D_Img_Proc::Math_ImgImg_Min
static int Math_ImgImg_Min(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13232
D_Component_List::size
size_t size()
Definition: d_component_list.h:94
D_Img_Proc::Floodfill_Delta
static int Floodfill_Delta(Mat *pMA_Out, Mat *pMA_In, int seed_x, int seed_y, uchar val_new, uchar val_delta)
Definition: d_img_proc.cpp:16775
D_Img_Proc::Spread_16_bit_to_8bit
static int Spread_16_bit_to_8bit(Mat *pMA_Out, Mat *pMA_In, double in_max, double out_max)
Definition: d_img_proc.cpp:3903
D_Img_Proc::Histo_Equal
static int Histo_Equal(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:14397
c_FEAT_MASS_CENTER_Y
@ c_FEAT_MASS_CENTER_Y
Definition: d_enum.h:1407
D_Img_Proc::Math_ImgImg_BitXor
static int Math_ImgImg_BitXor(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13217
c_STAT_MINIMUM
@ c_STAT_MINIMUM
Definition: d_enum.h:754
D_Img_Proc::Draw_Dots
static int Draw_Dots(Mat *pMA_Target, vector< Point2f > vCenters, vector< double > vDiameters, uchar val)
Definition: d_img_proc.cpp:17076
D_Img_Proc::Draw_CircleField
static int Draw_CircleField(Mat *pMA_Target, vector< vector< double >> vv_XY_radius_value, vector< vector< double >> vv_XY_radius_error, uchar value=255, int circle_thickness=1, bool circles_filled=true, bool grid_add=false, int grid_thicknes=2, bool label_add=false, int label_thickness=2, double label_scale=1.0)
Definition: d_img_proc.cpp:17593
c_GEO_CIRCLE_EQUIVAL
@ c_GEO_CIRCLE_EQUIVAL
Definition: d_enum.h:2060
PI_2_0
const double PI_2_0
Definition: d_enum.h:2537
D_Img_Proc::Math_ImgImg_AddWeighted
static int Math_ImgImg_AddWeighted(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double weight_1, double weight_2, double weight_sum)
Definition: d_img_proc.cpp:13107
c_FEAT_CIRC_INCLOSE_CENTER_X
@ c_FEAT_CIRC_INCLOSE_CENTER_X
Definition: d_enum.h:1401
D_Img_Proc::Feature_Select
static int Feature_Select(Mat *pMA_Out, Mat *pMA_In, int feature, double f_min, double f_max, int connectivity=4)
Definition: d_img_proc.cpp:15710
D_Img_Proc::InterferometerMichelson
static int InterferometerMichelson(Mat *pMA_Out, int scene_size_x_px, int scene_size_y_px, int scale_px, double scale_m, double wavelength_m, double dist_source_m, double dist_detector_m, double dist_mirror1_m, double dist_mirror2_m, double angle_mirror1_x, double angle_mirror1_y, double angle_mirror2_x, double angle_mirror2_y)
Definition: d_img_proc.cpp:20977
c_FEAT_CIRC_INCLOSE_CENTER_Y
@ c_FEAT_CIRC_INCLOSE_CENTER_Y
Definition: d_enum.h:1410
D_Img_Proc::Draw_Contours
static int Draw_Contours(Mat *pMA_Target, vector< vector< Point >> vContours, int line_thickness, double value)
D_Img_Proc::Draw_Contours draws a list of constours to an image.
Definition: d_img_proc.cpp:19134
D_Img_Proc::Split_img2vv_value
static int Split_img2vv_value(vector< vector< double >> *vv_data_LabPix, Mat *pMA_Value, Mat *pMA_Label, bool ignore_0)
Definition: d_img_proc.cpp:14833
Vec3d
cv::Vec3d Vec3d
Definition: d_opencv_typedefs.h:52
ER_dim_2D_only
@ ER_dim_2D_only
Definition: d_enum.h:164
Vec4d
cv::Vec4d Vec4d
Definition: d_opencv_typedefs.h:58
D_Img_Proc::Math_ImgImg_Max
static int Math_ImgImg_Max(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13247
D_Img_Proc::Convert_8UC1
static int Convert_8UC1(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:3406
D_Img_Proc::Filter_Stat_Circular
static int Filter_Stat_Circular(Mat *pMA_Out, Mat *pMA_In, double radius, int stat, int border_type=BORDER_CONSTANT)
Definition: d_img_proc.cpp:12170
D_Img_Proc::Load_From_Path
static int Load_From_Path(Mat *pMA_Out, QFileInfo FI_path)
Definition: d_img_proc.cpp:16
D_Img_Proc::Math_ImgScal_Sub
static int Math_ImgScal_Sub(Mat *pMA_Out, Mat *pMA_In, double subtrahend)
Definition: d_img_proc.cpp:13019
D_Img_Proc::Math_MagnitudeSquared
static int Math_MagnitudeSquared(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:12776
d_value_distribution_list.h
D_Img_Proc::Visualize_to8bit_1C
static int Visualize_to8bit_1C(Mat *pMA_Out, Mat *pMA_In, int mode_trafo, int mode_anchor, int mode_range, double val_anchor, double val_range, double crop_min, double crop_max, double val_gamma, double val_center, double val_scale)
Definition: d_img_proc.cpp:5312
ER_channel_missmatch
@ ER_channel_missmatch
Definition: d_enum.h:145
c_MATH_2D_TO_1D_X_times_Y
@ c_MATH_2D_TO_1D_X_times_Y
Definition: d_enum.h:1037
Vec2w
cv::Vec2w Vec2w
Definition: d_opencv_typedefs.h:50
ER_size_missmatch
@ ER_size_missmatch
Definition: d_enum.h:141
c_FEAT_RECT_AXEPAR_LEFT
@ c_FEAT_RECT_AXEPAR_LEFT
Definition: d_enum.h:1404
Vec4s
cv::Vec4s Vec4s
Definition: d_opencv_typedefs.h:61
D_Img_Proc::Math_ImgImg_Comp
static int Math_ImgImg_Comp(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, int comp)
Definition: d_img_proc.cpp:13262
LINE_8
const int LINE_8
Definition: d_opencv_typedefs.h:141
Vec4f
cv::Vec4f Vec4f
Definition: d_opencv_typedefs.h:59
c_VIEWER_3D_ALPHA_CHANNEL_MEAN
@ c_VIEWER_3D_ALPHA_CHANNEL_MEAN
Definition: d_enum.h:489
D_Img_Proc::Draw_Grid
static int Draw_Grid(Mat *pMA_Target, vector< vector< double >> vvNumbers_xy, int nx, int ny, bool lines_add, int grid_thickness, bool label_add, int label_thickness, double label_scale, double value_r, double value_g, double value_b)
D_Img_Proc::Normalize
static int Normalize(Mat *pMA_Out, Mat *pMA_In, unsigned int norm, unsigned int type, double min, double max)
Definition: d_img_proc.cpp:3814
D_Img_Proc::Draw_ArcField
static int Draw_ArcField(Mat *pMA_Target, vector< vector< double >> vv_XY_arc_angle_value, vector< vector< double >> vv_XY_arc_angle_error, vector< vector< double >> vv_XY_arc_orientation_value, vector< vector< double >> vv_XY_arc_radius_value, vector< vector< size_t > > vv_XY_draw_if_non_zero, uchar value=255, int thickness=3, int arc_draw_steps=360, bool grid_add=true, int grid_thicknes=2, bool label_add=false, int label_thickness=2, double label_scale=1.0)
Definition: d_img_proc.cpp:17517
Rect
cv::Rect Rect
Definition: d_opencv_typedefs.h:65
D_Img_Proc::Math_Mult
static int Math_Mult(Mat *pMA_Out, Mat *pMA_In1, double factor)
Definition: d_img_proc.cpp:12504
c_GEO_CIRCLE_INSCRIB
@ c_GEO_CIRCLE_INSCRIB
Definition: d_enum.h:2058
c_FEAT_CIRC_ENCLOSE_CENTER_Y
@ c_FEAT_CIRC_ENCLOSE_CENTER_Y
Definition: d_enum.h:1411
d_featureset.h
MORPH_CROSS
const int MORPH_CROSS
Definition: d_opencv_typedefs.h:85
D_Img_Proc::Filter_Scharr
static int Filter_Scharr(Mat *pMA_Out, Mat *pMA_In, int border, int out_depth, double scale, double delta, int d_x, int d_y)
Definition: d_img_proc.cpp:10761
D_Img_Proc::Draw_MarkerSymbol
static int Draw_MarkerSymbol(Mat *pMA_Target, int x1, int y1, int x2, int y2, int symbol_id, uchar r, uchar g, uchar b, double scale=1)
Definition: d_img_proc.cpp:18352
D_Img_Proc::Filter_Eilenstein
static int Filter_Eilenstein(Mat *pMA_Out, Mat *pMA_In, int comp, unsigned int size_x, unsigned int size_y, bool normalized, double constant)
Definition: d_img_proc.cpp:10982
c_VIS_TRAFO_RANGE_FIXED
@ c_VIS_TRAFO_RANGE_FIXED
Definition: d_enum.h:724
D_Contour::t
int t()
Definition: d_contour.cpp:115
D_Img_Proc::Math_Special_NADPH
static int Math_Special_NADPH(Mat *pMA_NADPH, Mat *pMA_I, Mat *pMA_A2, Mat *pMA_T1, Mat *pMA_T2, float k, bool ignore_0, float T2_Min_Thres, float T2_Min_Const)
Definition: d_img_proc.cpp:13924
D_Img_Proc::Math_Special_NADPH_NADH
static int Math_Special_NADPH_NADH(Mat *pMA_NADPH_NADH, Mat *pMA_T2, bool ignore_0, float T2_Min_Thres, float T2_Max_Thres, float T2_Min_Const, float T2_Max_Const)
Definition: d_img_proc.cpp:13962
D_Img_Proc::Reduce_Centroid
static int Reduce_Centroid(Mat *pMA_Out, Mat *pMA_In, int thickness=1)
Definition: d_img_proc.cpp:16524
D_Component_List::get_CentroidVector
vector< Point2f > get_CentroidVector()
Definition: d_component_list.cpp:148
D_Img_Proc::Stitch_Border_rel_custom
static int Stitch_Border_rel_custom(Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, double border_R, double border_B, double overlap_R, double overlap_B)
Definition: d_img_proc.cpp:6189
Vec3b
cv::Vec3b Vec3b
Definition: d_opencv_typedefs.h:51
D_Img_Proc::Convert_toQImage4Ch_8bit
static int Convert_toQImage4Ch_8bit(QImage *pQI_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color=false)
Definition: d_img_proc.cpp:2029
BORDER_REFLECT
const int BORDER_REFLECT
Definition: d_opencv_typedefs.h:79
D_Img_Proc::GammaSpread_Quantiles
static int GammaSpread_Quantiles(Mat *pMA_Out, Mat *pMA_In, double gamma, double quantile_low, double quantile_high, double out_min=0, double out_max=255, bool force_8bit=false, bool ignore_zeros=true)
Definition: d_img_proc.cpp:5057
c_MARKER_SYMBOL_3DOTS
@ c_MARKER_SYMBOL_3DOTS
Definition: d_enum.h:2042
D_Img_Proc::Exclude_BorderConnected
static int Exclude_BorderConnected(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:12318
c_VIEWER_3D_ALPHA_CHANNEL_2
@ c_VIEWER_3D_ALPHA_CHANNEL_2
Definition: d_enum.h:485
D_Img_Proc::Morphology_Thinning
static int Morphology_Thinning(Mat *pMA_Out, Mat *pMA_In, int thinning_type)
Definition: d_img_proc.cpp:7198
c_WATERSHED_MARKER_NUMBER_OF
@ c_WATERSHED_MARKER_NUMBER_OF
Definition: d_enum.h:625
c_VIS_TRAFO_ANCHOR_WHITE
@ c_VIS_TRAFO_ANCHOR_WHITE
Definition: d_enum.h:712
ER_file_not_exist
@ ER_file_not_exist
Definition: d_enum.h:161
c_MATH_2D_TO_1D_Y
@ c_MATH_2D_TO_1D_Y
Definition: d_enum.h:1033
D_Img_Proc::Draw_Label_Numbers_Corner
static int Draw_Label_Numbers_Corner(Mat *pMA_Out, Mat *pMA_Label, double scale, double thickness)
Definition: d_img_proc.cpp:21018
Grad2Rad
const double Grad2Rad
Definition: d_enum.h:2542
PI
const double PI
Definition: d_enum.h:2534
c_FEAT_CIRC_EQUIVAL_RADIUS
@ c_FEAT_CIRC_EQUIVAL_RADIUS
Definition: d_enum.h:1388
Vec2b
cv::Vec2b Vec2b
Definition: d_opencv_typedefs.h:45
D_Img_Proc::Split_img2vv_coord
static int Split_img2vv_coord(vector< vector< Point >> *vvp_data_LabCooPt, Mat *pMA_Label)
Definition: d_img_proc.cpp:15111
D_Img_Proc::Draw_Text
static int Draw_Text(QImage *pQI_Target, QString text_tl, QString text_tr, QString text_bl, QString text_br, unsigned int size, QColor color)
Definition: d_img_proc.cpp:18588
c_COL2MONO_VALUE
@ c_COL2MONO_VALUE
Definition: d_enum.h:663
D_Img_Proc::Labeling
static int Labeling(Mat *pMA_Out, Mat *pMA_In, int connectivity, int out_depth)
Definition: d_img_proc.cpp:12350
D_Contour::contour
vector< Point > contour()
Definition: d_contour.h:49
D_Img_Proc::Load_From_Path_Raw
static int Load_From_Path_Raw(Mat *pMA_Out, string path, int width, int height, int out_type)
Definition: d_img_proc.cpp:137
c_VIS_TRAFO_LINEAR
@ c_VIS_TRAFO_LINEAR
Definition: d_enum.h:697
D_Img_Proc::Math_ImgScal_Mult
static int Math_ImgScal_Mult(Mat *pMA_Out, Mat *pMA_In, double factor)
Definition: d_img_proc.cpp:13037
D_Img_Proc::Draw_ContourCrop
static int Draw_ContourCrop(Mat *pMA_Out, Mat *pMA_In_R, Mat *pMA_In_G, Mat *pMA_In_B, vector< Point > vContour, int line_thickness, double R, double G, double B, bool draw_contour=true)
Definition: d_img_proc.cpp:19214
D_Img_Proc::Threshold_Adaptive_Gauss_1C
static int Threshold_Adaptive_Gauss_1C(Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double offset, double scale)
D_Img_Proc::Threshold_Adaptive_Gauss_1C lokall adaptive threshhold using comparison to gauss filtered...
Definition: d_img_proc.cpp:6711
D_Img_Proc::Transformation_Distance
static int Transformation_Distance(Mat *pMA_Out, Mat *pMA_In, int metric, int precision)
Definition: d_img_proc.cpp:7486
D_Img_Proc::Filter_Gabor
static int Filter_Gabor(Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, int out_depth, double sigma, double theta, double lambda, double gamma, double psi, double delta)
Definition: d_img_proc.cpp:10811
c_VIS_TRAFO_RANGE_DYNAMIC
@ c_VIS_TRAFO_RANGE_DYNAMIC
Definition: d_enum.h:723
D_Img_Proc::Matrix_Product
static int Matrix_Product(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:14057
c_DIR2D_R
@ c_DIR2D_R
Definition: d_enum.h:2112
D_Img_Proc::Draw_Line_Angle
static int Draw_Line_Angle(Mat *pMA_Target, double length, double center_x, double center_y, double angle, unsigned int thickness=1, double value=255)
Definition: d_img_proc.cpp:17244
c_OPT_1D_MINIMUM
@ c_OPT_1D_MINIMUM
Definition: d_enum.h:957
NORM_MINMAX
const int NORM_MINMAX
Definition: d_opencv_typedefs.h:149
D_Img_Proc::Calc_LUT
static int Calc_LUT(vector< int > *vLUT, Mat *pMA_Label)
Definition: d_img_proc.cpp:14806
Vec3w
cv::Vec3w Vec3w
Definition: d_opencv_typedefs.h:56
D_Component_List::get_BndBox_Rotate
RotatedRect get_BndBox_Rotate(int comp)
Definition: d_component_list.h:85
c_VIEWER_3D_ALPHA_CHANNEL_MAX
@ c_VIEWER_3D_ALPHA_CHANNEL_MAX
Definition: d_enum.h:488
c_GEO_OUTLINE
@ c_GEO_OUTLINE
Definition: d_enum.h:2053
D_Img_Proc::LUT_Apply_to_Label_Int
static int LUT_Apply_to_Label_Int(Mat *pMA_Out, Mat *pMA_Label, vector< int > vLUT)
Definition: d_img_proc.cpp:15282
D_Img_Proc::Math_Special_Add_Color
static int Math_Special_Add_Color(Mat *pMA_Out, Mat *pMA_In_Color, Mat *pMA_In0, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13804
D_Img_Proc::Split_ObjectAreas
static int Split_ObjectAreas(vector< double > *v_objects, vector< double > *v_areas, Mat *pMA_Label, Mat *pMA_Objects, int connectivity)
Definition: d_img_proc.cpp:15179
D_Img_Proc::Legend_HSV
static int Legend_HSV(Mat *pMA_Out, int width, int height, QStringList QSL_H, QStringList QSL_S, QStringList QSL_V, QString QS_H, QString QS_S, QString QS_V, double H_angle_min, double H_angle_range, double scale=1, double thickness=1)
Definition: d_img_proc.cpp:19906
Vec4w
cv::Vec4w Vec4w
Definition: d_opencv_typedefs.h:62
c_GEO_CONVEX_DEFICIT
@ c_GEO_CONVEX_DEFICIT
Definition: d_enum.h:2055
d_component_list_context.h
D_Component_List::get_pMatLabels
Mat * get_pMatLabels()
Definition: d_component_list.h:67
c_COL2MONO_SATURATION
@ c_COL2MONO_SATURATION
Definition: d_enum.h:662
D_Img_Proc::Convert_toMat4Ch
static int Convert_toMat4Ch(Mat *pMA_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color)
Definition: d_img_proc.cpp:1323
D_Img_Proc::Scale_Factor
static int Scale_Factor(Mat *pMA_Out, Mat *pMA_In, double scale_x, double scale_y)
Definition: d_img_proc.cpp:6208
c_VIEWER_3D_ALPHA_CHANNEL_1
@ c_VIEWER_3D_ALPHA_CHANNEL_1
Definition: d_enum.h:484
c_COL2MONO_BRIGHTNESS
@ c_COL2MONO_BRIGHTNESS
Definition: d_enum.h:658
c_STAT_MAXIMUM
@ c_STAT_MAXIMUM
Definition: d_enum.h:774
c_COMPLEX2REAL_PHASE
@ c_COMPLEX2REAL_PHASE
Definition: d_enum.h:975
D_Img_Proc::Draw_Contour
static int Draw_Contour(Mat *pMA_Target, vector< Point > vContour, int line_thickness, double value)
Definition: d_img_proc.cpp:19175
QSL_FeatureList
const QStringList QSL_FeatureList
Definition: d_enum.h:1457
D_Math::Center
static Point2f Center(Point2f pt1, Point2f pt2)
Definition: d_math.cpp:1606
D_Img_Proc::Filter_Stat
static int Filter_Stat(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, int stat, int border_type=BORDER_CONSTANT)
Definition: d_img_proc.cpp:12156
D_Stat::Function_SingleStat
static function< double(vector< double >)> Function_SingleStat(int stat)
Definition: d_stat.cpp:683
D_Img_Proc::Math_ImgImg_Div
static int Math_ImgImg_Div(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double scale)
Definition: d_img_proc.cpp:13171
D_Img_Proc::Reduce_Contours
static int Reduce_Contours(Mat *pMA_Out, Mat *pMA_In, int thickness=1)
Definition: d_img_proc.cpp:16575
D_Img_Proc::Filter_Function_8bit_1C
static int Filter_Function_8bit_1C(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function< uchar(double cur, double nei)> F1_CenterImage, function< uchar(double f1r, double msk)> F2_f1mask, function< uchar(vector< double > vf2r)> F3_Combine, function< uchar(double f3r, double cen)> F4_f3center, int border_type=BORDER_CONSTANT, int thread_number=8, bool DoNonZeroMaskOnly=false)
Definition: d_img_proc.cpp:11968
ER_NumericProblem
@ ER_NumericProblem
Definition: d_enum.h:175
c_COMPLEX2REAL_HUE_VAL
@ c_COMPLEX2REAL_HUE_VAL
Definition: d_enum.h:979
D_Img_Proc::Filter_Maximum_1C
static int Filter_Maximum_1C(Mat *pMA_Out, Mat *pMA_In, size_t mask_size_x, size_t mask_size_y)
Definition: d_img_proc.cpp:9999
D_Contour::l
int l()
Definition: d_contour.cpp:82
D_Img_Proc::Math_Magnitude
static int Math_Magnitude(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:12759
D_Img_Proc::Filter_Function
static int Filter_Function(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function< double(double cur, double nei)> F1_CenterImage, function< double(double f1r, double msk)> F2_f1mask, function< double(vector< double > vf2r)> F3_Combine, function< double(double f3r, double cen)> F4_f3center, int border_type=BORDER_CONSTANT, bool DoNonZeroMaskOnly=false)
Definition: d_img_proc.cpp:11397
D_Img_Proc::Filter_Function_8bit_1C_Thread
static int Filter_Function_8bit_1C_Thread(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function< uchar(double cur, double nei)> F1_CenterImage, function< uchar(double f1r, double msk)> F2_f1mask, function< uchar(vector< double > vf2r)> F3_Combine, function< uchar(double f3r, double cen)> F4_f3center, int row_start, int row_end, int col_start, int col_end, bool DoNonZeroMaskOnly=false)
Definition: d_img_proc.cpp:12059
D_Math::Spread_2_8bit
static function< uchar(double val_in)> Spread_2_8bit(double min, double max, function< double(double val_in)> F)
Definition: d_math.cpp:1745
D_Img_Proc::Combi_8UC1_binary
static int Combi_8UC1_binary(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:4592
DFT_INVERSE
const int DFT_INVERSE
Definition: d_opencv_typedefs.h:127
D_Img_Proc::Convert_toQImage4Ch
static int Convert_toQImage4Ch(QImage *pQI_Out, Mat *pMA_In_Value, Mat *pMA_In_Alpha, bool heat_color)
Definition: d_img_proc.cpp:2006
D_FeatureSet
Definition: d_featureset.h:37
D_Img_Proc::Duplicate
static int Duplicate(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:2397
D_Img_Proc::Calc_Centroids
static int Calc_Centroids(vector< Point2f > *pvCentroids, Mat *pMA_In, int connectivity=8)
Definition: d_img_proc.cpp:16613
D_Img_Proc::LUT_Apply_to_Label_Double
static int LUT_Apply_to_Label_Double(Mat *pMA_Out, Mat *pMA_Label, vector< double > vLUT, bool LUT_has_BG_label=true)
Definition: d_img_proc.cpp:15308
D_Img_Proc::Mask
static int Mask(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask)
Definition: d_img_proc.cpp:14098
IMREAD_ANYCOLOR
const int IMREAD_ANYCOLOR
Definition: d_opencv_typedefs.h:108
D_Img_Proc::ExtremeValuesColor
static int ExtremeValuesColor(Mat *pMA_Out, Mat *pMA_In, double rel_low=0.1, double rel_high=0.9, double gamma=1.0, bool color_low=false, bool color_high=true, bool zero_as_lowest=true)
Definition: d_img_proc.cpp:19664
D_Img_Proc::LUT_Apply_to_Label_Binary
static int LUT_Apply_to_Label_Binary(Mat *pMA_Out, Mat *pMA_Label, vector< int > vLUT, bool ignore_BG=true)
Definition: d_img_proc.cpp:15448
D_Img_Proc::LUT_Apply_to_Label_Uchar
static int LUT_Apply_to_Label_Uchar(Mat *pMA_Out, Mat *pMA_Label, vector< uchar > vLUT, bool LUT_has_BG_label=true)
Definition: d_img_proc.cpp:15378
c_WATERSHED_FILL_MASK_DIST
@ c_WATERSHED_FILL_MASK_DIST
Definition: d_enum.h:602
D_Img_Proc::Threshold_Auto
static int Threshold_Auto(Mat *pMA_Out, Mat *pMA_In, int out_mode, double max_val, int auto_mode)
Definition: d_img_proc.cpp:6653
D_Img_Proc::Draw_Label_Numbers
static int Draw_Label_Numbers(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, double scale, double thickness, bool center)
Definition: d_img_proc.cpp:19012
D_Img_Proc::Convert_Complex2Real_1C
static int Convert_Complex2Real_1C(Mat *pMA_Out, Mat *pMA_InRe, Mat *pMA_InIm, int mode)
Definition: d_img_proc.cpp:3477
D_Img_Proc::Math_ImgScal_Add
static int Math_ImgScal_Add(Mat *pMA_Out, Mat *pMA_In, double summmand)
Definition: d_img_proc.cpp:13010
c_CONNECT_NUMBER_OF
@ c_CONNECT_NUMBER_OF
Definition: d_enum.h:1268
D_Img_Proc::Check_GreaterValue
static bool Check_GreaterValue(Mat *pMA_InSmaller, Mat *pMA_InGreater)
Definition: d_img_proc.cpp:12963
c_GEO_CIRCLE_ENCLOSE
@ c_GEO_CIRCLE_ENCLOSE
Definition: d_enum.h:2061
D_Img_Proc::Matrix_Inversion
static int Matrix_Inversion(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:14069
Point
cv::Point Point
Definition: d_opencv_typedefs.h:35
Vec2s
cv::Vec2s Vec2s
Definition: d_opencv_typedefs.h:49
c_WATERSHED_FILL_MASK_COPY
@ c_WATERSHED_FILL_MASK_COPY
Definition: d_enum.h:603
ER_bitdepth_bad
@ ER_bitdepth_bad
Definition: d_enum.h:138
c_MATH_2D_TO_1D_X
@ c_MATH_2D_TO_1D_X
Definition: d_enum.h:1032
D_Img_Proc::Draw_Rect
static int Draw_Rect(Mat *pMA_Target, unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, unsigned int thickness=1, double val=255)
Definition: d_img_proc.cpp:17687
D_Img_Proc::Filter_LaplaceOfGaussian
static int Filter_LaplaceOfGaussian(Mat *pMA_Out, Mat *pMA_In, int size_g, double sigma_g, int size_l, int border, int out_depth, double scale, double delta)
Definition: d_img_proc.cpp:10712
c_COL2MONO_Y
@ c_COL2MONO_Y
Definition: d_enum.h:656
D_Img_Proc::OverlayOverwrite
static int OverlayOverwrite(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Overlay, double intensity_overlay=1.0, double intensity_backgr=1.0)
Definition: d_img_proc.cpp:19556
ER_parameter_missmatch
@ ER_parameter_missmatch
Definition: d_enum.h:143
c_COL2MONO_HUE
@ c_COL2MONO_HUE
Definition: d_enum.h:661
D_Math::Sum_AngleRad
static double Sum_AngleRad(double a1, double a2)
Definition: d_math.cpp:1716
c_GEO_ELLIPSE_FIT
@ c_GEO_ELLIPSE_FIT
Definition: d_enum.h:2063
D_Img_Proc::Morphology_Thinning_Iteration
static int Morphology_Thinning_Iteration(Mat img, int iter, int thinning_type)
Definition: d_img_proc.cpp:7228
D_Contour
The D_Contour class represents a contour of a 2D object and offers several methods for gaining inform...
Definition: d_contour.h:39
D_Img_Proc::Convert_QImage_to_Mat
static int Convert_QImage_to_Mat(Mat *pMA_Out, QImage *pQI_In)
Definition: d_img_proc.cpp:1308
D_Img_Proc::Transformation_Watershed_Custom
static int Transformation_Watershed_Custom(Mat *pMA_Out, Mat *pMA_In2Fill, Mat *pMA_InMarker, Mat *pMA_FG_Mask, int mode_flood, int mode_marker, int mode_mask, int connectivity=8, int gauss_size=5, double gauss_sigma=2, int morphgrad_elem=MORPH_ELLIPSE, int morphgrad_size=3, double thresh=127, bool exclude_border=true, bool include_non_seeded=true, bool draw_watersheds=true)
D_Img_Proc::Transformation_Watershed_Custom WIP, don't use!
Definition: d_img_proc.cpp:7909
c_GEO_CENTROID
@ c_GEO_CENTROID
Definition: d_enum.h:2049
c_FEAT_CIRC_CIRCUMS_RADIUS
@ c_FEAT_CIRC_CIRCUMS_RADIUS
Definition: d_enum.h:1390
D_Img_Proc::ObjectsMovement
static int ObjectsMovement(vector< double > *pvShift_PxPerFrame, vector< double > *pvDirection_Rad, vector< Point2f > *pvPositions, vector< Mat > *pvMA_In, vector< vector< Point2f >> *pvvCentroids, double max_Shift_PxPerFrame=INFINITY, size_t index_NewImg=0, int connectivity=8)
Definition: d_img_proc.cpp:20212
D_Img_Proc::Threshold_Relative_1C
static int Threshold_Relative_1C(Mat *pMA_Out, Mat *pMA_In, double max_val, double thres_rel)
Definition: d_img_proc.cpp:6352
c_COMPLEX2REAL_HUE_SAT
@ c_COMPLEX2REAL_HUE_SAT
Definition: d_enum.h:980
D_Img_Proc::Draw_ContourText
static int Draw_ContourText(Mat *pMA_Target, vector< vector< Point >> vContours, QStringList QSL_Texts, vector< Point2f > vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value)
D_Img_Proc::Draw_ContourText draw contours in an image with added text at contours centers.
Definition: d_img_proc.cpp:19332
D_Img_Proc::Draw_Circle
static int Draw_Circle(Mat *pMA_Out, Mat *pMA_In, int x, int y, int r, int val=255, int thickness=1, bool filled=false)
Definition: d_img_proc.cpp:18255
D_Img_Proc::Padding
static int Padding(Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int type=BORDER_CONSTANT)
Definition: d_img_proc.cpp:5708
ER_type_bad
@ ER_type_bad
Definition: d_enum.h:136
D_Img_Proc::Filter_Stat_Rect
static int Filter_Stat_Rect(Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int stat, int border_type=BORDER_CONSTANT)
Definition: d_img_proc.cpp:12221
D_Img_Proc::Transformation_Fourier
static int Transformation_Fourier(Mat *pMA_Out, Mat *pMA_In, bool invers)
Definition: d_img_proc.cpp:8532
D_Img_Proc::ObjectsMovement_Heatmap
static int ObjectsMovement_Heatmap(Mat *pMA_OutHeatmap, Mat *pMA_OutLegend, Mat *pMA_InValue, vector< vector< Point2f >> vv_FrmObjPositions, vector< vector< double >> vv_FrmObjShifts, vector< vector< double >> vv_FrmObjAngles, Point2f P_VortexCenter, double shift_scale, double value_scale, int blur_size_x, int blur_size_y, int mode, int legend_width, int legend_height, double legend_scale, double legend_thickness, int legend_examples=5, double min_rel=0.1, double max_rel=0.9, double frame2time=0.0417)
Definition: d_img_proc.cpp:20374
MORPH_RECT
const int MORPH_RECT
Definition: d_opencv_typedefs.h:86
D_Img_Proc::Load_From_Path_Gray
static int Load_From_Path_Gray(Mat *pMA_Out, QFileInfo FI_path)
Definition: d_img_proc.cpp:51
IMREAD_ANYDEPTH
const int IMREAD_ANYDEPTH
Definition: d_opencv_typedefs.h:109
d_img_proc.h
d_geo_line_2d.h
D_Img_Proc::Math_Special_Trans2Count
static int Math_Special_Trans2Count(Mat *pMA_Count, Mat *pMA_Trans, float base, float scale)
Definition: d_img_proc.cpp:13995
D_Img_Proc::Threshold_BlurThres
static int Threshold_BlurThres(Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double thres)
Definition: d_img_proc.cpp:6915
D_FeatureSet::detect_Harris
int detect_Harris(Mat *pMA_In, int blockSize, int sobelAperture, double harrisParam, double thres)
D_FeatureSet::detect_Harris Uses cornerHarris to detect keypoints.
Definition: d_featureset.cpp:25
D_Img_Proc::Draw_Label_Numbers_LUT
static int Draw_Label_Numbers_LUT(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, vector< double > v_LUT, bool border, double scale, double thickness, bool center, int precision, uchar r=0, uchar g=0, uchar b=0)
Definition: d_img_proc.cpp:18727
c_GEO_CIRCLE_CIRCUMS
@ c_GEO_CIRCLE_CIRCUMS
Definition: d_enum.h:2062
D_Img_Proc::ValAtPix
static int ValAtPix(vector< double > *v_value, Mat *pMA_In, size_t x_pos, size_t y_pos)
Definition: d_img_proc.cpp:2192
DFT_REAL_OUTPUT
const int DFT_REAL_OUTPUT
Definition: d_opencv_typedefs.h:124
D_Img_Proc::Split
static int Split(Mat *pMA_Out, Mat *pMA_In, unsigned int channel)
Definition: d_img_proc.cpp:4007
D_Img_Proc::Draw_Label_Text
static int Draw_Label_Text(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, QStringList QSL_LabelTexts, bool border, double scale, double thickness, bool center, uchar r=0, uchar g=0, uchar b=0, int connectivity=4)
Definition: d_img_proc.cpp:18825
D_Component_List::get_ContourVector_ConvexHull
vector< vector< Point > > get_ContourVector_ConvexHull()
Definition: d_component_list.cpp:252
DFT_COMPLEX_INPUT
const int DFT_COMPLEX_INPUT
Definition: d_opencv_typedefs.h:125
D_Img_Proc::Filter_Eilenstein_1C
static int Filter_Eilenstein_1C(Mat *pMA_Out, Mat *pMA_In, int comp, unsigned int size_x, unsigned int size_y, bool normalized, double constant)
Definition: d_img_proc.cpp:10931
D_Img_Proc::Filter_Maximum_1C_Thread_Y
static int Filter_Maximum_1C_Thread_Y(Mat *pMA_Out, Mat *pMA_In, size_t mask_size_x, size_t mask_size_y, size_t n_in_y, size_t x_start, size_t x_end)
Definition: d_img_proc.cpp:10412
Vec4b
cv::Vec4b Vec4b
Definition: d_opencv_typedefs.h:57
MORPH_ERODE
const int MORPH_ERODE
Definition: d_opencv_typedefs.h:89
D_Component_List::get_FeatureVector
vector< double > get_FeatureVector(int feature)
Definition: d_component_list.cpp:119
c_WATERSHED_MARKER_FILL_LOC_MIN
@ c_WATERSHED_MARKER_FILL_LOC_MIN
Definition: d_enum.h:621
IMREAD_GRAYSCALE
const int IMREAD_GRAYSCALE
Definition: d_opencv_typedefs.h:111
BORDER_REPLICATE
const int BORDER_REPLICATE
Definition: d_opencv_typedefs.h:82
ER_channel_bad
@ ER_channel_bad
Definition: d_enum.h:144
D_Img_Proc::Load_From_Path_Text
static int Load_From_Path_Text(Mat *pMA_Out, string path)
Definition: d_img_proc.cpp:86
c_WATERSHED_FILL_SOURCE_COPY
@ c_WATERSHED_FILL_SOURCE_COPY
Definition: d_enum.h:604
D_Img_Proc::Feature_Visualize
static int Feature_Visualize(Mat *pMA_Out, Mat *pMA_In, int feature, int connectivity=4, int thickness=1, double scale=1)
Definition: d_img_proc.cpp:15810
Vec3f
cv::Vec3f Vec3f
Definition: d_opencv_typedefs.h:53
D_Img_Proc::MinMax_of_Mat_1C
static int MinMax_of_Mat_1C(Mat *pMA_In, double *min_ext, double *max_ext)
Definition: d_img_proc.cpp:2180
D_Img_Proc::Shading_Correct
static int Shading_Correct(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Reference)
Definition: d_img_proc.cpp:14089
D_Img_Proc::Filter_Box
static int Filter_Box(Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, int out_depth, bool norm)
Definition: d_img_proc.cpp:9052
D_Img_Proc::Padding_1C
static int Padding_1C(Mat *pMA_Out, Mat *pMA_In, int right, int left, int top, int bottom, int type=BORDER_CONSTANT)
Definition: d_img_proc.cpp:5849
D_Img_Proc::MinMax_of_Mat
static int MinMax_of_Mat(Mat *pMA_In, double *min_ext, double *max_ext)
Definition: d_img_proc.cpp:2052
CHAIN_APPROX_SIMPLE
const int CHAIN_APPROX_SIMPLE
Definition: d_opencv_typedefs.h:100
D_Img_Proc::ValueStat
static int ValueStat(Mat *pMA_Out, Mat *pMA_InLabel, Mat *pMA_InValue, int stat, int connectivity=8)
D_Img_Proc::ValueStat assigns a statistic value of all pixel values in a label to the label as gray v...
Definition: d_img_proc.cpp:15977
D_Img_Proc::Math_ImgScal_Root
static int Math_ImgScal_Root(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:13068
D_Img_Proc::TypeIndex_of_Mat
static int TypeIndex_of_Mat(int channels, int depth)
Definition: d_img_proc.cpp:496
Vec2f
cv::Vec2f Vec2f
Definition: d_opencv_typedefs.h:47
D_Img_Proc::Mask_1C
static int Mask_1C(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask)
Definition: d_img_proc.cpp:14214
c_MARKER_SYMBOL_3CIRCLES
@ c_MARKER_SYMBOL_3CIRCLES
Definition: d_enum.h:2041
D_Img_Proc::Hysteresis
static int Hysteresis(Mat *pMA_Out, Mat *pMA_In_Indicator, Mat *pMA_In_Hysteresis, bool labeling=false)
Definition: d_img_proc.cpp:16857
D_Img_Proc::LUT_Apply_to_Label_TrueFalse
static int LUT_Apply_to_Label_TrueFalse(Mat *pMA_Out_true, Mat *pMA_Out_false, Mat *pMA_Label, vector< int > vLUT, bool edges=true, bool ignore_BG=true)
Definition: d_img_proc.cpp:15514
c_STEREO_NORMAL
@ c_STEREO_NORMAL
Definition: d_enum.h:1255
c_WATERSHED_MASK_NUMBER_OF
@ c_WATERSHED_MASK_NUMBER_OF
Definition: d_enum.h:640
RETR_TREE
const int RETR_TREE
Definition: d_opencv_typedefs.h:97
DIST_MASK_PRECISE
const int DIST_MASK_PRECISE
Definition: d_opencv_typedefs.h:122
D_Img_Proc::Zoom
static int Zoom(Mat *pMA_Out, Mat *pMA_In, double x_rel, double y_rel, double factor)
Definition: d_img_proc.cpp:5649
c_CONNECT_IN_RANGE
@ c_CONNECT_IN_RANGE
Definition: d_enum.h:1267
MORPH_DILATE
const int MORPH_DILATE
Definition: d_opencv_typedefs.h:88
D_Img_Proc::Highlight_NumericalProblems
static int Highlight_NumericalProblems(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:19450
D_Img_Proc::Crop_Rect_Rel
static int Crop_Rect_Rel(Mat *pMA_Out, Mat *pMA_In, double x1_rel, double y1_rel, double x2_rel, double y2_rel)
Definition: d_img_proc.cpp:5467
Scalar
cv::Scalar Scalar
Definition: d_opencv_typedefs.h:30
D_Stat::Function_SingleStat_8bit
static function< uchar(vector< double >)> Function_SingleStat_8bit(int stat)
Definition: d_stat.cpp:1779
D_Component_List::get_Ellipse_Fitted
RotatedRect get_Ellipse_Fitted(int comp)
Definition: d_component_list.h:87
c_STAT_SUM
@ c_STAT_SUM
Definition: d_enum.h:737
D_Component_List::get_FeatureVector_BG
vector< double > get_FeatureVector_BG(int feature)
Definition: d_component_list.cpp:132
D_Img_Proc::Transformation_Watershed
static int Transformation_Watershed(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Marker)
Definition: d_img_proc.cpp:7557
D_Img_Proc::Stitch_Border_rel
static int Stitch_Border_rel(Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, double border_R, double border_B, double overlap_R, double overlap_B, Stitcher::Mode mode=Stitcher::SCANS)
Definition: d_img_proc.cpp:6011
D_Img_Proc::ValueStat_Select
static int ValueStat_Select(Mat *pMA_Out, Mat *pMA_InLabel, Mat *pMA_InValue, int stat, double thresh_min, double thresh_max, int connectivity=8)
Definition: d_img_proc.cpp:16060
D_Img_Proc::Transformation_Watershed_Auto
static int Transformation_Watershed_Auto(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Marker, bool include_not_seeded, bool conv_8bit, bool exclude_border)
Definition: d_img_proc.cpp:7573
D_Img_Proc::Math_Special_IncreaseIfSet
static int Math_Special_IncreaseIfSet(Mat *pMA_Count, Mat *pMA_Check)
Definition: d_img_proc.cpp:14027
D_Img_Proc::Draw_Ellipse
static int Draw_Ellipse(Mat *pMA_Target, RotatedRect ell, double val_r, double val_g, double val_b, int thickness=1)
Definition: d_img_proc.cpp:18337
D_Component_List_Context::get_pCompList
D_Component_List * get_pCompList()
Definition: d_component_list_context.h:72
D_Img_Proc::Calc_Hist_1C
static int Calc_Hist_1C(vector< double > *v_hist, Mat *pMA_In, bool uniform, bool accum, unsigned int class_count, double *min_ext, double *max_ext, double *step_ext)
Definition: d_img_proc.cpp:14665
c_COL2MONO_BLUE_YELLOW
@ c_COL2MONO_BLUE_YELLOW
Definition: d_enum.h:659
D_Img_Proc::Convert_toMat4Ch_8bit
static int Convert_toMat4Ch_8bit(Mat *pMA_Out, Mat *pMA_In, int alpha_mode, bool heat_color=false, bool norm_alpha=true)
Definition: d_img_proc.cpp:1363
c_FEAT_CIRC_ENCLOSE_RADIUS
@ c_FEAT_CIRC_ENCLOSE_RADIUS
Definition: d_enum.h:1389
ER_size_bad
@ ER_size_bad
Definition: d_enum.h:140
c_GEO_RECT_AXEPAR
@ c_GEO_RECT_AXEPAR
Definition: d_enum.h:2056
D_Img_Proc::Floodfill_Delta_Step
static bool Floodfill_Delta_Step(Mat *pMA_Target, Mat *pMA_Check, int x, int y, int dx, int dy, int val_new, int val_delta, int val_origin)
Definition: d_img_proc.cpp:16809
D_Img_Proc::GammaSpread_1C
static int GammaSpread_1C(Mat *pMA_Out, Mat *pMA_In, double gamma, double in_min, double in_max, double out_min=0, double out_max=255, bool force_8bit=false)
Definition: d_img_proc.cpp:4649
c_WATERSHED_FILL_NUMBER_OF
@ c_WATERSHED_FILL_NUMBER_OF
Definition: d_enum.h:608
D_Img_Proc::Color_Grab
static int Color_Grab(Mat *pMA_Out, Mat *pMA_In, int color_space, int out_mode, vector< uchar > min, vector< uchar > max)
Definition: d_img_proc.cpp:6950
c_COL2MONO_X
@ c_COL2MONO_X
Definition: d_enum.h:655
D_Component_List_Context::set_Mat
int set_Mat(Mat *pMA_BinaryOrLabel, int connectivity=8)
Definition: d_component_list_context.cpp:21
c_STEREO_ALBEDO
@ c_STEREO_ALBEDO
Definition: d_enum.h:1254
d_geo_point_2d.h
D_Img_Proc::Filter_Box_RMS
static int Filter_Box_RMS(Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, int out_depth, bool norm)
Definition: d_img_proc.cpp:9067
D_Component_List::get_BndBox_Rect
Rect get_BndBox_Rect(int comp)
Definition: d_component_list.h:83
D_Img_Proc::RadiometricStereo
static int RadiometricStereo(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, double S1X, double S1Y, double S1Z, double S2X, double S2Y, double S2Z, double S3X, double S3Y, double S3Z, int out_mode)
Definition: d_img_proc.cpp:20887
D_Contour::w
int w()
Definition: d_contour.h:60
Vec2d
cv::Vec2d Vec2d
Definition: d_opencv_typedefs.h:46
D_Img_Proc::Math_ImgStack_Project
static int Math_ImgStack_Project(Mat *pMA_Out, vector< Mat > *pvMA_In, int stat=c_STAT_MEAN_ARITMETIC)
Definition: d_img_proc.cpp:13436
D_Contour::h
int h()
Definition: d_contour.h:61
D_Img_Proc::Stat_ofPixelvalues
static int Stat_ofPixelvalues(double *value, Mat *pMA_In, int stat, bool ignore_zeros)
Definition: d_img_proc.cpp:662
D_Math::Log_Centered
static function< double(double val_in)> Log_Centered(double center, double divisor)
Definition: d_math.cpp:1780
D_Img_Proc::Stitch_Border_abs
static int Stitch_Border_abs(Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, int border_R, int border_B, int overlap_R, int overlap_B, Stitcher::Mode mode=Stitcher::SCANS)
Definition: d_img_proc.cpp:5927
D_Img_Proc::Draw_Rect_Rotate
static int Draw_Rect_Rotate(Mat *pMA_Target, RotatedRect rrect, int thickness=1, double value=255)
Definition: d_img_proc.cpp:17713
d_component_list.h
D_Img_Proc::BitsPerPixel_of_MatType
static int BitsPerPixel_of_MatType(int type)
Definition: d_img_proc.cpp:647
D_Img_Proc::Insert
static int Insert(Mat *pMA_Target, Mat *pMA_Insert, int offset_x, int offset_y)
Definition: d_img_proc.cpp:2405
Vec4i
cv::Vec4i Vec4i
Definition: d_opencv_typedefs.h:60
c_MARKER_SYMBOL_MINUS
@ c_MARKER_SYMBOL_MINUS
Definition: d_enum.h:2039
c_COMPLEX2REAL_RE_IM
@ c_COMPLEX2REAL_RE_IM
Definition: d_enum.h:978
D_Component_List::get_Centroid
Point2f get_Centroid(int comp)
Definition: d_component_list.h:69
D_Img_Proc::Calc_Hist_Multi
static int Calc_Hist_Multi(vector< vector< double >> *vv_hist, Mat *pMA_In, bool uniform, bool accum, unsigned int class_count, vector< double > *v_min_ext, vector< double > *v_max_ext, vector< double > *v_step_ext)
Definition: d_img_proc.cpp:14543
D_Img_Proc::Filter_Function_1C_Thread
static int Filter_Function_1C_Thread(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function< double(double cur, double nei)> F1_CenterImage, function< double(double f1r, double msk)> F2_f1mask, function< double(vector< double > vf2r)> F3_Combine, function< double(double f3r, double cen)> F4_f3center, int row_start, int row_end, int col_start, int col_end, bool DoNonZeroMaskOnly=false)
Definition: d_img_proc.cpp:11685
c_MATH_2D_TO_1D_X_greater_Y
@ c_MATH_2D_TO_1D_X_greater_Y
Definition: d_enum.h:1041
D_Img_Proc::Convert_Depth_NoScaling_1C
static int Convert_Depth_NoScaling_1C(Mat *pMA_Out, Mat *pMA_In, int depth)
Definition: d_img_proc.cpp:2890
D_Component_List::set_Mat
int set_Mat(Mat *pMA_BinaryOrLabel, int connectivity=8)
Definition: d_component_list.cpp:22
D_Img_Proc::Morphology_Erode_Rect
static int Morphology_Erode_Rect(Mat *pMA_Out, Mat *pMA_In, int elem_size_X, int elem_size_Y)
Definition: d_img_proc.cpp:7297
D_Img_Proc::Value_to_MinOrMax
static int Value_to_MinOrMax(Mat *pMA_Out, Mat *pMA_In, double val_src, bool to_min)
Definition: d_img_proc.cpp:14313
D_Img_Proc::Convert_Angle2Color_Rad
static int Convert_Angle2Color_Rad(Mat *pMA_Out, Mat *pMA_InAngleRad, uchar Saturation=255, uchar Value=255)
Definition: d_img_proc.cpp:3774
d_contour.h
D_Img_Proc::Feature_Value
static int Feature_Value(Mat *pMA_Out, Mat *pMA_In, int feature, int connectivity=4)
Definition: d_img_proc.cpp:15646
D_Img_Proc::Segmentation_GaussDistWater
static int Segmentation_GaussDistWater(Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double thres, double distance, bool include_not_seeded, bool conv_8bit, bool exclude_border)
Definition: d_img_proc.cpp:9016
D_Img_Proc::Filter_Sobel
static int Filter_Sobel(Mat *pMA_Out, Mat *pMA_In, int size, int border, int out_depth, double scale, double delta, int d_x, int d_y)
Definition: d_img_proc.cpp:10742
D_Img_Proc::Floodfill
static int Floodfill(Mat *pMA_Out, Mat *pMA_In, unsigned int seed_x, unsigned int seed_y, double new_val)
Definition: d_img_proc.cpp:16690
c_STAT_MEAN_ARITMETIC_OF_NON_ZERO
@ c_STAT_MEAN_ARITMETIC_OF_NON_ZERO
Definition: d_enum.h:742
D_Component_List_Context::get_PointCouples_AllInRange
vector< vector< Point > > get_PointCouples_AllInRange(int type1, int type2, double dist_min, double dist_max, int feat1, int feat2, function< bool(double, double)> comparison)
Definition: d_component_list_context.cpp:397
D_Img_Proc::Filter_Canny
static int Filter_Canny(Mat *pMA_Out, Mat *pMA_In, int size, double thres_low, double thres_high, bool L2_gradient)
Definition: d_img_proc.cpp:10778
D_Img_Proc::Scale_ToSize
static int Scale_ToSize(Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y)
Definition: d_img_proc.cpp:6219
D_Img_Proc::Math_LimitTop
static int Math_LimitTop(Mat *pMA_Out, Mat *pMA_InThresh, Mat *pMA_InToLimit)
Definition: d_img_proc.cpp:12834
c_GEO_CIRCLE_INCLOSE
@ c_GEO_CIRCLE_INCLOSE
Definition: d_enum.h:2059
D_Img_Proc::Math_ImgImg_Function
static int Math_ImgImg_Function(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function< double(double x, double y)> function_img1_img2)
Definition: d_img_proc.cpp:13278
ER_other
@ ER_other
Definition: d_enum.h:134
D_Img_Proc::Filter_Bilateral
static int Filter_Bilateral(Mat *pMA_Out, Mat *pMA_In, int diameter, int border, double sigma_color, double sigma_space)
Definition: d_img_proc.cpp:10796
D_Img_Proc::Threshold_Adaptive_Gauss
static int Threshold_Adaptive_Gauss(Mat *pMA_Out, Mat *pMA_In, int size, double sigma, double offset, double scale)
Definition: d_img_proc.cpp:6689
D_Img_Proc::Morphology_Elemental
static int Morphology_Elemental(Mat *pMA_Out, Mat *pMA_In, int morph_type, int elem_type, unsigned int elem_size_X, unsigned int elem_size_Y, int border_type, unsigned int iterations)
Definition: d_img_proc.cpp:7041
ER_bitdepth_missmatch
@ ER_bitdepth_missmatch
Definition: d_enum.h:139
D_Img_Proc::Math_ImgSelf_Not
static int Math_ImgSelf_Not(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:12999
D_Component_List
The D_Component_List class is a list of D_Component representing the blobs in a binary image.
Definition: d_component_list.h:46
D_Contour::tl
Point tl()
Definition: d_contour.h:62
c_VIS_TRAFO_ANCHOR_DYNAMIC
@ c_VIS_TRAFO_ANCHOR_DYNAMIC
Definition: d_enum.h:709
c_COMPLEX2REAL_ABS_SQUARE
@ c_COMPLEX2REAL_ABS_SQUARE
Definition: d_enum.h:977
c_MARKER_SYMBOL_CROSS
@ c_MARKER_SYMBOL_CROSS
Definition: d_enum.h:2040
D_Img_Proc::Reduce_Outlines
static int Reduce_Outlines(Mat *pMA_Out, Mat *pMA_In, int neighborhood=8, int thickness=1)
Definition: d_img_proc.cpp:16469
FONT_HERSHEY_TRIPLEX
const int FONT_HERSHEY_TRIPLEX
Definition: d_opencv_typedefs.h:138
c_COL2MONO_GRAY
@ c_COL2MONO_GRAY
Definition: d_enum.h:651
D_Component_List_Context
The D_Component_List_Context class inherits D_Component_List and calculates features of the blobs dep...
Definition: d_component_list_context.h:53
c_DIR2D_D
@ c_DIR2D_D
Definition: d_enum.h:2114
D_Component_List::get_OffsetVector_2f
vector< Point2f > get_OffsetVector_2f()
Definition: d_component_list.cpp:190
D_Img_Proc::Draw_Grid
static int Draw_Grid(Mat *pMA_Target, int nx, int ny, bool lines_add, int grid_thickness, bool label_add, int label_thickness, double label_scale, double value)
Definition: d_img_proc.cpp:17899
D_Component_List::get_MatBinary
Mat get_MatBinary()
Definition: d_component_list.h:64
D_Math::CopyValue
static function< double(double val_in)> CopyValue()
Definition: d_math.cpp:1724
c_COL2MONO_RED_GREEN
@ c_COL2MONO_RED_GREEN
Definition: d_enum.h:660
ER_type_missmatch
@ ER_type_missmatch
Definition: d_enum.h:137
D_Img_Proc::Scalar_EqualInAllChannels
static Scalar Scalar_EqualInAllChannels(int channels=1, double value=0)
Definition: d_img_proc.cpp:652
MORPH_ELLIPSE
const int MORPH_ELLIPSE
Definition: d_opencv_typedefs.h:87
D_Img_Proc::Math_ImgImg_Function_8bit
static int Math_ImgImg_Function_8bit(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function< uchar(double x, double y)> function_img1_img2)
Definition: d_img_proc.cpp:13329
D_Img_Proc::DistancesStat
static int DistancesStat(Mat *pMA_Out, Mat *pMA_In, function< double(vector< double >)> F_Stat)
Definition: d_img_proc.cpp:20854
D_Img_Proc::Filter_RankOrder_1C_Thread
static int Filter_RankOrder_1C_Thread(Mat *pMA_Out, Mat *pMA_InPadded, Mat *pMA_Mask, double quantil_relPos, size_t img_in_sx, size_t y_start, size_t y_end, double val_max, size_t mask_relevant_px_count, vector< Point > *vBorderL, vector< Point > *vBorderR, vector< Point > *vBorderT, vector< Point > *vBorderB)
D_Img_Proc::Filter_RankOrder_1C_Thread performs Rank order filtering with huang algorithm for any qua...
Definition: d_img_proc.cpp:9583
Point2d
cv::Point2d Point2d
Definition: d_opencv_typedefs.h:38
c_GEO_CONVEX_HULL
@ c_GEO_CONVEX_HULL
Definition: d_enum.h:2054
D_Img_Proc::Math_Phase
static int Math_Phase(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:12817
D_Img_Proc::Draw_Vector
static int Draw_Vector(Mat *pMA_Target, int offset_x, int offset_y, double length_value, double angle_value, double length_error=0, double angle_error=0, int vector_thickness=1, uchar value=255, int error_steps=360, int error_thickness=1)
Definition: d_img_proc.cpp:17273
D_Img_Proc::Threshold_Absolute_1C
static int Threshold_Absolute_1C(Mat *pMA_Out, Mat *pMA_In, double thres_abs)
Definition: d_img_proc.cpp:6553
D_Img_Proc::Crop_Rect_Rot
static int Crop_Rect_Rot(Mat *pMA_Out, Mat *pMA_In, int x, int y, int width, int height, double angle)
Definition: d_img_proc.cpp:5530
D_Img_Proc::Math_ImgImg_BitOr
static int Math_ImgImg_BitOr(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13202
D_Img_Proc::Load_From_Path_Multi
static int Load_From_Path_Multi(Mat *pMA_Out, QString path, unsigned int page)
Definition: d_img_proc.cpp:315
d_opencv_typedefs.h
D_Img_Proc::Draw_ContourText
static int Draw_ContourText(Mat *pMA_Out, Mat *pMA_In, vector< vector< Point >> vContours, QStringList QSL_Texts, vector< Point2f > vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value)
c_GEO_CONTOUR
@ c_GEO_CONTOUR
Definition: d_enum.h:2052
c_COMPDIST_NUMBER_OF
@ c_COMPDIST_NUMBER_OF
Definition: d_enum.h:2096
D_Img_Proc::Crop_Circle
static int Crop_Circle(Mat *pMA_Out, Mat *pMA_In, int x, int y, int r)
Definition: d_img_proc.cpp:5586
D_Img_Proc::ForceSize
static int ForceSize(Mat *pMA_Out, Mat *pMA_In, int width, int heigth, int border_type=BORDER_CONSTANT)
Definition: d_img_proc.cpp:5870
D_Img_Proc::Draw_Arc
static int Draw_Arc(Mat *pMA_Target, int offset_x, int offset_y, double arc_angle, double arc_orientation, double radius, int line_thickness=1, uchar value=255, int draw_arc_steps=360)
Definition: d_img_proc.cpp:17351
c_GEO_OFFSET
@ c_GEO_OFFSET
Definition: d_enum.h:2048
c_MARKER_SYMBOL_CIRCLE
@ c_MARKER_SYMBOL_CIRCLE
Definition: d_enum.h:2035
D_Component_List::get_ContourVector
vector< vector< Point > > get_ContourVector()
Definition: d_component_list.cpp:221
D_Img_Proc::Filter_RankOrder_Rect
static int Filter_RankOrder_Rect(Mat *pMA_Out, Mat *pMA_In, double quantil_relPos, int size_x, int size_y)
D_Img_Proc::Filter_RankOrder_Rect special case of Filter_RankOrder for rect masks.
Definition: d_img_proc.cpp:9317
c_CONNECT_CLOSEST
@ c_CONNECT_CLOSEST
Definition: d_enum.h:1266
c_VIS_TRAFO_CROP_FIXED
@ c_VIS_TRAFO_CROP_FIXED
Definition: d_enum.h:688
D_Img_Proc::Morphology_Dilate_Rect
static int Morphology_Dilate_Rect(Mat *pMA_Out, Mat *pMA_In, int elem_size_X, int elem_size_Y)
Definition: d_img_proc.cpp:7347
c_STEREO_NUMBER_OF
@ c_STEREO_NUMBER_OF
Definition: d_enum.h:1256
D_Img_Proc::Convert_Color
static int Convert_Color(Mat *pMA_Out, Mat *pMA_In, int cvt_mode)
Definition: d_img_proc.cpp:2524
D_Img_Proc::Type_of_QImage
static QString Type_of_QImage(QImage *pQI_In)
Definition: d_img_proc.cpp:461
D_Img_Proc::Value_to_Value
static int Value_to_Value(Mat *pMA_Out, Mat *pMA_In, double val_src, double val_dst)
Definition: d_img_proc.cpp:14336
D_Img_Proc::Contrast_Color
static QColor Contrast_Color(QColor col_in, bool force_black_and_white=true, bool mirror_hue=true, bool force_light2blue=true)
Definition: d_img_proc.cpp:19388
D_Img_Proc::OverlayImage
static int OverlayImage(Mat *pMA_Out, Mat *pMA_BaseR, Mat *pMA_BaseG, Mat *pMA_BaseB, Mat *pMA_OverR, Mat *pMA_OverG, Mat *pMA_OverB, uchar thresh_overlay=0)
Definition: d_img_proc.cpp:19509
D_Img_Proc::Invert
static int Invert(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:2496
D_Img_Proc
The D_Img_Proc class static 2D image processing functions.
Definition: d_img_proc.h:63
D_Img_Proc::Filter_Function_1C
static int Filter_Function_1C(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function< double(double cur, double nei)> F1_CenterImage, function< double(double f1r, double msk)> F2_f1mask, function< double(vector< double > vf2r)> F3_Combine, function< double(double f3r, double cen)> F4_f3center, int border_type=BORDER_CONSTANT, int thread_number=8, bool DoNonZeroMaskOnly=false)
Definition: d_img_proc.cpp:11596
D_Img_Proc::Sign2Color
static int Sign2Color(Mat *pMA_Out, Mat *pMA_In, bool norm=false)
Definition: d_img_proc.cpp:4191
D_Img_Proc::Convert_Mat_to_QImage
static int Convert_Mat_to_QImage(QImage *pQI_Out, Mat *pMA_In, bool use_custom_range_for_spread_non_8bit=false, double in_min=0, double in_max=1)
Definition: d_img_proc.cpp:973
c_MATH_2D_TO_1D_X_equals_Y
@ c_MATH_2D_TO_1D_X_equals_Y
Definition: d_enum.h:1040
d_enum.h
c_MARKER_SYMBOL_TICK
@ c_MARKER_SYMBOL_TICK
Definition: d_enum.h:2043
D_Img_Proc::Morphology_Reconstruction
static int Morphology_Reconstruction(Mat *pMA_Out, Mat *pMA_InSeed, Mat *pMA_InLimit, Mat *pMA_Mask, double quantil=1)
Definition: d_img_proc.cpp:7437
D_Img_Proc::D_Img_Proc
D_Img_Proc()
Definition: d_img_proc.cpp:11
c_COMPLEX2REAL_NUMBER_OF
@ c_COMPLEX2REAL_NUMBER_OF
Definition: d_enum.h:981
D_Img_Proc::Math_Special_NADH
static int Math_Special_NADH(Mat *pMA_NADH, Mat *pMA_I, Mat *pMA_A2, Mat *pMA_T1, Mat *pMA_T2, float k, bool ignore_0, float T2_Max_Thres, float T2_Max_Const)
Definition: d_img_proc.cpp:13886
D_Img_Proc::Math_ImgImg_DiffAbs
static int Math_ImgImg_DiffAbs(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13140
c_FEAT_CIRC_INSCRIB_RADIUS
@ c_FEAT_CIRC_INSCRIB_RADIUS
Definition: d_enum.h:1386
c_STAT_NUMBER_OF_STATS
@ c_STAT_NUMBER_OF_STATS
Definition: d_enum.h:795
c_FEAT_RECT_AXEPAR_TOP
@ c_FEAT_RECT_AXEPAR_TOP
Definition: d_enum.h:1413
D_Img_Proc::Detect_CornerHarris
static int Detect_CornerHarris(Mat *pMA_Out, Mat *pMA_In, int blockSize, int sobelAperture, double harrisParam, double thres)
Definition: d_img_proc.cpp:16151
D_Img_Proc::Filter_Maximum_1C_Thread_X
static int Filter_Maximum_1C_Thread_X(Mat *pMA_Out, Mat *pMA_In, size_t mask_size_x, size_t n_in_x, size_t y_start, size_t y_end)
Definition: d_img_proc.cpp:10134
D_Img_Proc::Stitch_Border_abs_custom
static int Stitch_Border_abs_custom(Mat *pMA_Out, Mat *pMA_In_Main, Mat *pMA_In_R, Mat *pMA_In_B, Mat *pMA_In_BR, int border_R, int border_B, int overlap_R, int overlap_B)
Definition: d_img_proc.cpp:6032
c_VIS_TRAFO_GAMMA
@ c_VIS_TRAFO_GAMMA
Definition: d_enum.h:698
RotatedRect
cv::RotatedRect RotatedRect
Definition: d_opencv_typedefs.h:66
D_Img_Proc::Select_Area
static int Select_Area(Mat *pMA_Out, Mat *pMA_In, unsigned int area_min, unsigned int area_max, int connectivity)
Definition: d_img_proc.cpp:16167
ER_MatrixNotInvertable
@ ER_MatrixNotInvertable
Definition: d_enum.h:169
D_Img_Proc::Reduce_Geometric
static int Reduce_Geometric(Mat *pMA_Out, Mat *pMA_In, int geometric, int connectivity=8, int thickness=1, uchar value=255)
Definition: d_img_proc.cpp:16215
D_Img_Proc::Math_ImgImg_BitAnd
static int Math_ImgImg_BitAnd(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13187
D_Img_Proc::ImgStackToRow
static int ImgStackToRow(Mat *pMA_Out, vector< Mat > *pvMA_In, vector< vector< QString >> vvQS_LabelText_Img_Line, int text_thickness=1, double text_scale=1.0, int line_height=10, int frame_thickness=2)
Definition: d_img_proc.cpp:16903
ER_parameter_bad
@ ER_parameter_bad
Definition: d_enum.h:142
c_VIS_TRAFO_RANGE_NUMBER_OF
@ c_VIS_TRAFO_RANGE_NUMBER_OF
Definition: d_enum.h:725
D_Img_Proc::ClassBorder_kNN
static int ClassBorder_kNN(Mat *pMA_Out, Mat *pMA_Class0, Mat *pMA_Class1, int n)
Definition: d_img_proc.cpp:20100
D_Img_Proc::FeatureContext_Select
static int FeatureContext_Select(Mat *pMA_Out, Mat *pMA_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat, int stat, double t_min, double t_max, int connectivity=4)
Definition: d_img_proc.cpp:15758
D_Img_Proc::Math_Add
static int Math_Add(Mat *pMA_Out, Mat *pMA_In1, double summand)
Definition: d_img_proc.cpp:12364
D_Img_Proc::Math_ImgStack_StatCombine
static int Math_ImgStack_StatCombine(Mat *pMA_Out, vector< Mat > *pvMA_In0, vector< Mat > *pvMA_In1, function< double(vector< double >)> f_stat_0, function< double(vector< double >)> f_stat_1, function< double(double, double)> f_combi, bool force8bit)
Definition: d_img_proc.cpp:13646
D_Img_Proc::Quantiles_ofPixelvalues
static int Quantiles_ofPixelvalues(double *q_low, double *q_high, Mat *pMA_In, double low_rel, double high_rel, bool ignore_zeros)
Definition: d_img_proc.cpp:751
c_WATERSHED_FILL_SOURCE_LOG
@ c_WATERSHED_FILL_SOURCE_LOG
Definition: d_enum.h:606
D_Img_Proc::Math_ImgImg_Add
static int Math_ImgImg_Add(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:13092
D_Img_Proc::Calc_Hist
static int Calc_Hist(Mat *pMA_Hist, Mat *pMA_In, bool uniform, bool accum)
Definition: d_img_proc.cpp:14410
D_Img_Proc::Math_ImgScal_Div
static int Math_ImgScal_Div(Mat *pMA_Out, Mat *pMA_In, double divisor)
Definition: d_img_proc.cpp:13046
D_Img_Proc::Merge
static int Merge(Mat *pMA_Out, Mat *pMA_In0, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, unsigned int channels, bool channel_use[4])
Definition: d_img_proc.cpp:4060
c_COL2MONO_BLUE
@ c_COL2MONO_BLUE
Definition: d_enum.h:652
BORDER_DEFAULT
const int BORDER_DEFAULT
Definition: d_opencv_typedefs.h:78
D_Img_Proc::Floodfill_Boundary
static int Floodfill_Boundary(Mat *pMA_Out, Mat *pMA_In, double new_val)
Definition: d_img_proc.cpp:16722
D_Img_Proc::Draw_Line_Bresenham
static int Draw_Line_Bresenham(Mat *pMA_Target, Point P1, Point P2, double val)
D_Img_Proc::Draw_Line_Bresenham custum function to draw a line between 0° and 45°
Definition: d_img_proc.cpp:17225
D_Img_Proc::BitDepth_of_MatType
static int BitDepth_of_MatType(int type)
Definition: d_img_proc.cpp:602
D_Img_Proc::Convert_Depth_NoScaling
static int Convert_Depth_NoScaling(Mat *pMA_Out, Mat *pMA_In, int depth)
Definition: d_img_proc.cpp:2777
D_Component_List_Context::get_AllComps_StatFeatInDist_BG
vector< double > get_AllComps_StatFeatInDist_BG(int type1, int type2, double dist_min, double dist_max, int feat, int stat)
Definition: d_component_list_context.cpp:150
D_Img_Proc::Duplicate2Channels
static int Duplicate2Channels(Mat *pMA_Out, Mat *pMA_In, int channels)
Definition: d_img_proc.cpp:4394
D_Img_Proc::Filter_Gauss
static int Filter_Gauss(Mat *pMA_Out, Mat *pMA_In, int size_x, int size_y, int border, double sigma_x, double sigma_y)
Definition: d_img_proc.cpp:9083
D_Img_Proc::Math_ImgImg_Mult
static int Math_ImgImg_Mult(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, double scale)
Definition: d_img_proc.cpp:13155
D_Img_Proc::ImgStackToGrid
static int ImgStackToGrid(Mat *pMA_Out, vector< Mat > *pvMA_In, vector< vector< QString >> vvQS_LabelText_Img_Line, size_t maxPerRow, int text_thickness=1, double text_scale=1.0, int line_height=10, int frame_thickness=2)
Definition: d_img_proc.cpp:16917
D_Img_Proc::Filter_RankOrder_Circular
static int Filter_RankOrder_Circular(Mat *pMA_Out, Mat *pMA_In, double quantil_relPos, double radius)
D_Img_Proc::Filter_RankOrder_Circular special case of Filter_RankOrder.
Definition: d_img_proc.cpp:9271
D_Img_Proc::Morphology_LocMax_Rect
static int Morphology_LocMax_Rect(Mat *pMA_Out, Mat *pMA_In, int elem_size_X=3, int elem_size_Y=3)
Definition: d_img_proc.cpp:7397
c_MARKER_SYMBOL_RECT
@ c_MARKER_SYMBOL_RECT
Definition: d_enum.h:2037
D_Img_Proc::FeatureContext_Value
static int FeatureContext_Value(Mat *pMA_Out, Mat *pMA_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat, int stat, int connectivity=4)
Definition: d_img_proc.cpp:15679
c_VIS_TRAFO_ANCHOR_CENTER
@ c_VIS_TRAFO_ANCHOR_CENTER
Definition: d_enum.h:710
c_VIS_TRAFO_ANCHOR_NUMBER_OF
@ c_VIS_TRAFO_ANCHOR_NUMBER_OF
Definition: d_enum.h:713
c_MARKER_SYMBOL_PLUS
@ c_MARKER_SYMBOL_PLUS
Definition: d_enum.h:2038
D_Img_Proc::Color2Text4StyleSheet
static QString Color2Text4StyleSheet(QColor col_in)
Definition: d_img_proc.cpp:19445
D_Img_Proc::Convert_Color_RGBA
static int Convert_Color_RGBA(Mat *pMA_Out, Mat *pMA_In, double r, double g, double b, double a, double range_rgba=255.0)
Definition: d_img_proc.cpp:2552
D_Img_Proc::Filter_Eilenstein_Prototype
static int Filter_Eilenstein_Prototype(Mat *pMA_Out, Mat *pMA_In, bool cmp_fkt(double, double, double), unsigned int size_x, unsigned int size_y, bool normalized, double constant)
Definition: d_img_proc.cpp:10838
D_Img_Proc::Check_IsSimilar
static bool Check_IsSimilar(Mat *pMA_In1, Mat *pMA_In2)
Definition: d_img_proc.cpp:12936
c_WATERSHED_FILL_SOURCE_MORPH_GRAD
@ c_WATERSHED_FILL_SOURCE_MORPH_GRAD
Definition: d_enum.h:607
D_Img_Proc::Convert_Color2Mono
static int Convert_Color2Mono(Mat *pMA_Out, Mat *pMA_In, int col2mono_code)
Definition: d_img_proc.cpp:2662
D_Img_Proc::Generate_byValueFunction_Complex
static int Generate_byValueFunction_Complex(Mat *pMA_Out, int width, int height, function< complex< double >(complex< double > x, complex< double > y)> value_function)
Definition: d_img_proc.cpp:346
c_VIS_TRAFO_CROP_DYNAMIC
@ c_VIS_TRAFO_CROP_DYNAMIC
Definition: d_enum.h:687
D_Img_Proc::Threshold_Value
static int Threshold_Value(Mat *pMA_Out, Mat *pMA_In, int out_mode, double max_val, double thres)
Definition: d_img_proc.cpp:6638
D_Img_Proc::Threshold_Relative
static int Threshold_Relative(Mat *pMA_Out, Mat *pMA_In, double max_val, double thres_rel)
Definition: d_img_proc.cpp:6235
D_Img_Proc::Draw_GridSimple
static int Draw_GridSimple(Mat *pMA_Target, int nx, int ny, Scalar value=255, int thickness=1)
Definition: d_img_proc.cpp:17746
c_GEO_RECT_ROTATE
@ c_GEO_RECT_ROTATE
Definition: d_enum.h:2057
D_Img_Proc::Filter_Function_8bit
static int Filter_Function_8bit(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, function< uchar(double cur, double nei)> F1_CenterImage, function< uchar(double f1r, double msk)> F2_f1mask, function< uchar(vector< double > vf2r)> F3_Combine, function< uchar(double f3r, double cen)> F4_f3center, int border_type=BORDER_CONSTANT, bool DoNonZeroMaskOnly=false)
Definition: d_img_proc.cpp:11786
Point3f
cv::Point3f Point3f
Definition: d_opencv_typedefs.h:40
D_Img_Proc::Calc_Hist
static int Calc_Hist(vector< vector< double >> *vv_hist, Mat *pMA_In, bool uniform, bool accum)
c_VIS_TRAFO_ANCHOR_BLACK
@ c_VIS_TRAFO_ANCHOR_BLACK
Definition: d_enum.h:711
D_Math::AngleRad
static double AngleRad(Point2f pt1, Point2f pt2)
Definition: d_math.cpp:1594
D_Img_Proc::Draw_Label_Numbers_Center
static int Draw_Label_Numbers_Center(Mat *pMA_Out, Mat *pMA_Label, double scale, double thickness)
Definition: d_img_proc.cpp:19096
c_FEAT_NUMBER_OF_FEATS
@ c_FEAT_NUMBER_OF_FEATS
Definition: d_enum.h:1455
D_Img_Proc::Threshold_Absolute
static int Threshold_Absolute(Mat *pMA_Out, Mat *pMA_In, double thres_abs)
Definition: d_img_proc.cpp:6440
Size
cv::Size Size
Definition: d_opencv_typedefs.h:31
D_Img_Proc::Feature_Connect
static int Feature_Connect(Mat *pMA_Out, Mat *pMA_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat1, int feat2, function< bool(double, double)> comp, int connect_mode=c_CONNECT_CLOSEST, int connectivity=4, int thickness=2)
Definition: d_img_proc.cpp:15901
D_Img_Proc::Math_ImgImg_Function_Complex
static int Math_ImgImg_Function_Complex(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, function< complex< double >(complex< double > x, complex< double > y)> function_img1_img2)
Definition: d_img_proc.cpp:13380
c_VIS_TRAFO_LOG
@ c_VIS_TRAFO_LOG
Definition: d_enum.h:699
Size2f
cv::Size2f Size2f
Definition: d_opencv_typedefs.h:32
D_Img_Proc::Channel_Supression
static int Channel_Supression(Mat *pMA_Out, Mat *pMA_In, bool use_r=true, bool use_g=true, bool use_b=true, bool force_3ch=false)
Definition: d_img_proc.cpp:3953
D_Img_Proc::Spread_8bit_to_float01
static int Spread_8bit_to_float01(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:3934
c_STAT_MEAN_ARITMETIC
@ c_STAT_MEAN_ARITMETIC
Definition: d_enum.h:740
c_VIEWER_3D_ALPHA_CHANNEL_MIN
@ c_VIEWER_3D_ALPHA_CHANNEL_MIN
Definition: d_enum.h:487
ER_index_out_of_range
@ ER_index_out_of_range
Definition: d_enum.h:146
D_Img_Proc::Draw_Label_Numbers_LUT_Gray
static int Draw_Label_Numbers_LUT_Gray(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, vector< double > v_LUT, int geometric, double scale, int thickness, bool center, int precision)
Definition: d_img_proc.cpp:18927
D_Img_Proc::Matrix_Transpose
static int Matrix_Transpose(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:14080
D_Img_Proc::Filter_RankOrder_1C
static int Filter_RankOrder_1C(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Mask, double quantil_relPos)
D_Img_Proc::Filter_RankOrder_1C performs Rank order filtering with huang algorithm for any quantile.
Definition: d_img_proc.cpp:9350
D_Img_Proc::LUT_Apply_to_Label_Color
static int LUT_Apply_to_Label_Color(Mat *pMA_Out, Mat *pMA_In, Mat *pMA_Label, vector< int > vLUT, int channel_true, int channel_false, bool edges=true, bool ignore_BG=true)
Definition: d_img_proc.cpp:15567
D_Img_Proc::Draw_VectorField
static int Draw_VectorField(Mat *pMA_Target, vector< vector< double >> vv_XY_length_value, vector< vector< double >> vv_XY_angle_value, vector< vector< double >> vv_XY_length_error, vector< vector< double >> vv_XY_angle_error, uchar value=255, int vector_thickness=3, int error_steps=360, int error_thickness=1, bool grid_add=true, int grid_thicknes=2, bool label_add=false, int label_thickness=2, double label_scale=1.0)
Definition: d_img_proc.cpp:17443
D_Img_Proc::Transformation_Fourier_1C
static int Transformation_Fourier_1C(Mat *pMA_Out, Mat *pMA_In_Re, Mat *pMA_In_Im, bool invers=false, bool force_fft=true, bool out_real=false, int out_complex_mode=c_COMPLEX2REAL_ABS, bool out_scale=false, bool out_center=true, bool out_nof0=true)
Definition: d_img_proc.cpp:8850
D_Math::Line_Bresenham_8
static vector< Point > Line_Bresenham_8(Point P0, Point P1)
Definition: d_math.cpp:1815
D_Img_Proc::Math_ImgScal_Log
static int Math_ImgScal_Log(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:13080
D_Img_Proc::Generate_byValueFunction
static int Generate_byValueFunction(Mat *pMA_Out, int width, int height, function< double(double x, double y)> value_function)
Definition: d_img_proc.cpp:332
D_Img_Proc::Filter_Laplace
static int Filter_Laplace(Mat *pMA_Out, Mat *pMA_In, int size, int border, int out_depth, double scale, double delta)
Definition: d_img_proc.cpp:10694
d_stat.h
D_Img_Proc::Draw_Boundaries
static int Draw_Boundaries(Mat *pMA_Target, int width=1, int val=255)
Definition: d_img_proc.cpp:18238
c_COL2MONO_LUMINANZ
@ c_COL2MONO_LUMINANZ
Definition: d_enum.h:664
D_Img_Proc::Channels_of_MatType
static int Channels_of_MatType(int type)
Definition: d_img_proc.cpp:557
Vec3s
cv::Vec3s Vec3s
Definition: d_opencv_typedefs.h:55
D_Img_Proc::Threshold_RankOrderOffsetHysteresis
static int Threshold_RankOrderOffsetHysteresis(Mat *pMA_Out, Mat *pMA_In, double radius, double quantile, double thresh_offset_indicator, double thresh_offset_hysteresis, bool labeling=false)
Definition: d_img_proc.cpp:6830
ER_empty
@ ER_empty
Definition: d_enum.h:135
c_WATERSHED_FILL_MASK_DIST_INV
@ c_WATERSHED_FILL_MASK_DIST_INV
Definition: d_enum.h:601
D_Math::GammaCorrect_to01
static function< double(double val_in)> GammaCorrect_to01(double min, double max, double gamma)
Definition: d_math.cpp:1764
D_Img_Proc::Math_ImgStack_StatCombine_Thread
static int Math_ImgStack_StatCombine_Thread(Mat *pMA_Out, vector< Mat > *pvMA_In0, vector< Mat > *pvMA_In1, function< double(vector< double >)> f_stat_0, function< double(vector< double >)> f_stat_1, function< double(double, double)> f_combi, bool force8bit, int row_start, int row_end)
Definition: d_img_proc.cpp:13718