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_visdat_proc.h
Go to the documentation of this file.
1 /************************************
2  * added: 16.04.2019 *
3  * author: David Eilenstein *
4  * contact: D.Eilenstein@gsi.de *
5  * project: ImageD *
6  * facility: GSI Darmstadt, Ger *
7  ************************************/
8 
9 #ifndef D_VISDAT_PROC_H
10 #define D_VISDAT_PROC_H
11 
12 //own
13 #include <d_enum.h>
14 #include <d_stat.h>
15 #include <d_component.h>
16 #include <d_component_list.h>
18 #include <d_component_analysis.h>
19 #include <d_img_proc.h>
20 #include <d_img_proc_3d.h>
21 #include <d_img_proc_2dfactory.h>
22 #include <d_img_proc_3dfactory.h>
24 #include <d_visdat_header.h>
25 #include <d_visdat_obj.h>
26 #include <d_visdat_dim.h>
27 #include <d_visdat_range.h>
28 #include <d_visdat_slicing.h>
29 #include <d_visdat_slice_1d.h>
30 #include <d_visdat_slice_2d.h>
31 #include <d_visdat_slice_3d.h>
32 
33 //general
34 #include <iostream>
35 #include <vector>
36 #include <fstream>
37 #include <sstream>
38 #include <thread>
39 
40 //Qt
41 #include <QMainWindow>
42 #include <QImage>
43 #include <QPainter>
44 #include <QPen>
45 #include <QColor>
46 #include <QFileInfo>
47 #include <QDir>
48 #include <QString>
49 #include <QDebug>
50 
51 //openCV
52 #include <opencv2/core/core.hpp>
53 #include <opencv2/highgui/highgui.hpp>
54 #include <opencv2/imgproc/imgproc.hpp>
55 #include "opencv2/stitching.hpp"
56 
57 //namespaces
58 using namespace std;
59 //using namespace cv; (prohibited because of abigous names with qtdatavisualization)
60 #include <d_opencv_typedefs.h>
61 
73 {
74 public:
75  D_VisDat_Proc();
76 
77  //index definitions and stuff
78  static int PlaneDim_1st (int plane_index);
79  static int PlaneDim_2nd (int plane_index);
80  static vector<int> PlaneDims (int plane_index);
81  static int VolumeDim_1st (int volume_index);
82  static int VolumeDim_2nd (int volume_index);
83  static int VolumeDim_3rd (int volume_index);
84  static vector<int> VolumeDims (int volume_index);
85  static int PlaneFromDims (int d1, int d2);
86 
87  //Wrapper for img proc function to be executed with VDs
88  static int Wrap_VD (D_VisDat_Slicing slice, function<int (Mat *pMA_Out)> img_proc, D_VisDat_Obj *pVD_Out);
89  static int Wrap_VD (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
90  static int Wrap_VD (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
91  static int Wrap_VD (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
92  static int Wrap_VD (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4);
93  static int Wrap_VD_SameSizeType (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
94  static int Wrap_VD_SameSizeType (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
95  static int Wrap_VD_SameSizeType (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
96  static int Wrap_VD_SameSizeType (D_VisDat_Slicing slice, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4);
97 
98 
99  //Wrapper from D_Img_Proc to be used in threads
100  static void Wrap_2D_img0 (int *ER, D_VisDat_Slice_2D plane, function<int (Mat *pMA_Out)> img_proc, D_VisDat_Obj *pVD_Out);
101  static void Wrap_2D_img1 (int *ER, D_VisDat_Slice_2D plane, function<int (Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
102  static void Wrap_2D_img2 (int *ER, D_VisDat_Slice_2D plane, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
103  static void Wrap_2D_img3 (int *ER, D_VisDat_Slice_2D plane, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
104  static void Wrap_2D_img4 (int *ER, D_VisDat_Slice_2D plane, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4);
105 
106  static void Wrap_3D_img0 (int *ER, D_VisDat_Slice_3D plane, function<int (Mat *pMA_Out)> img_proc, D_VisDat_Obj *pVD_Out);
107  static void Wrap_3D_img1 (int *ER, D_VisDat_Slice_3D plane, function<int (Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
108  static void Wrap_3D_img2 (int *ER, D_VisDat_Slice_3D plane, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
109  static void Wrap_3D_img3 (int *ER, D_VisDat_Slice_3D plane, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
110  static void Wrap_3D_img4 (int *ER, D_VisDat_Slice_3D plane, function<int (Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4);
111 
112  //save VD->files
113  static int Save_VD_ToBinaryFile (D_VisDat_Obj *pVD_Save, QString QS_SavePath);
114  static int Save_VD_Single (D_VisDat_Obj *pVD_Save, QString QS_SavePath, D_VisDat_Slice_2D slice);
115  static int Save_VD_List (D_VisDat_Obj *pVD_Save, QString QS_Dir, QString QS_ImgName, QString QS_Suffix, int DimList = c_DIM_S, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
116  static int Save_VD_ListFull (D_VisDat_Obj *pVD_Save, QString QS_Dir, QString QS_ImgName, QString QS_Suffix, int plane2D, bool transVis, 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);
117 
118  //create files->VD
119  static int Create_VD_Single_Constant (D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, int type = CV_8UC1, double value = 0);
120  static int Create_VD_Single (D_VisDat_Obj *pVD_New, QString QS_Path, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
121  static int Create_VD_Single (D_VisDat_Obj *pVD_New, QFileInfo FI_Path, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
122  static int Create_VD_Single_Raw (D_VisDat_Obj *pVD_New, string path, int width, int height, int out_type);
123  static int Create_VD_SinglePaged (D_VisDat_Obj *pVD_New, QString QS_Path, int DimPage = c_DIM_P, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
124  static int Create_VD_SinglePaged (D_VisDat_Obj *pVD_New, QFileInfo FI_Path, int DimPage = c_DIM_P, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
125  static int Create_VD_List (D_VisDat_Obj *pVD_New, QStringList QSL_InPaths, int DimList = c_DIM_S, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
126  static int Create_VD_List (D_VisDat_Obj *pVD_New, QFileInfoList FIL_InPaths, int DimList = c_DIM_S, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
127  static int Create_VD_ListPaged (D_VisDat_Obj *pVD_New, QStringList QSL_InPaths, int DimList = c_DIM_S, int DimPage = c_DIM_P, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
128  static int Create_VD_ListPaged (D_VisDat_Obj *pVD_New, QFileInfoList FIL_InPaths, int DimList = c_DIM_S, int DimPage = c_DIM_P, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
129  static int Create_VD_Video (D_VisDat_Obj *pVD_New, QString QS_VideoPath, int DimTime = c_DIM_T, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y, bool force8UC1 = false);
130  static int Create_VD_Video (D_VisDat_Obj *pVD_New, QFileInfo FI_VideoPath, int DimTime = c_DIM_T, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y, bool force8UC1 = false);
131  static int Create_VD_Video_Proc (D_VisDat_Obj *pVD_New, QFileInfo FI_VideoPath, int blur_size, double blur_sigma, int t1_size, function<double (vector<double>)> f_stat_t1, int t2_size, function<double (vector<double>)> f_stat_t2, int t_offset, function<double (double, double)> f_combi, bool force8bit);
132  static int Create_VD_PageVector (D_VisDat_Obj *pVD_New, QFileInfo FI_Path, D_VisDat_Dim DimNew, vector<int> vI_Pages2Load, vector<D_VisDat_Slice_2D> v2D_PageSource_DimsPosTarget, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y);
133  static int Create_VD_PageVector_or0 (D_VisDat_Obj *pVD_New, QFileInfo FI_Path, D_VisDat_Dim DimNew, vector<int> vI_Pages2Load, vector<D_VisDat_Slice_2D> v2D_PageSource_DimsPosTarget, int DimImgX = c_DIM_X, int DimImgY = c_DIM_Y, bool full_0_instead = false, int type_if_full_0 = CV_8UC1);
134  static int Create_VD_ValueFunction (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, function<double (double, double)> value_function);
135  static int Create_VD_ValueFunction_Complex (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, function<complex<double> (complex<double> x, complex<double> y)> value_function);
136  static int Create_VD_ValueFunction_6D (D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, function<double (double, double, double, double, double, double)> value_function);
137  static int Create_VD_Random (D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, int type, double min, double max, double a, double b, double c, double d, double e, double f);
138  static int Create_VD_FromBinaryFile (D_VisDat_Obj *pVD_New, QString QS_Path);
139 
140 
141  //write Mat->VD
142  static int Write_2D_Plane (D_VisDat_Obj *pVD_Out, Mat *pMA_In, D_VisDat_Slice_2D OutPlane);
143  static int Write_2D_Plane (D_VisDat_Obj *pVD_Out, QString path, D_VisDat_Slice_2D OutPlane);
144  static int Write_3D_Cuboid (D_VisDat_Obj *pVD_Out, Mat *pMA_In, D_VisDat_Slice_3D OutPlane);
145  static int Insert_atPos (D_VisDat_Obj *pVD_Target, D_VisDat_Obj *pVD_Source, vector<int> vOffset);
146 
147  //read VD->Mat
148  static int Read_2D_Plane (Mat *pMA_Out, D_VisDat_Obj *pVD_In, D_VisDat_Slice_2D InPlane);
149  static int Read_3D_Cuboid (Mat *pMA_Out, D_VisDat_Obj *pVD_In, D_VisDat_Slice_3D InPlane);
150 
151  //Copy
152  static int Copy (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
153 
154  //Dimension
155  static int Dim_Pick (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, vector<int> pick_pos);
156  static int Dim_Crop (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Range crop_range);
157  static int Dim_Project (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int dim_project = c_DIM_X, int stat = c_STAT_MEAN_ARITMETIC, int out_type = CV_64FC1);
158  static int Dim_Deserialise (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int dim_from = c_DIM_P, int dim_to = c_DIM_P, int spacing = 1);
159  static int Dim_Pages2Color (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int p_red = 0, int p_green = 1, int p_blue = 2);
160  //static int Dim_Stitching (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int dim_source = c_DIM_S, Stitcher::Mode mode = Stitcher::PANORAMA, bool divide_images = false);
161  static int Stitch_Border_abs (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, int border_R, int border_B, int overlap_R, int overlap_B, Stitcher::Mode mode = Stitcher::SCANS);
162  static int Stitch_Border_rel (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, double border_R, double border_B, double overlap_R, double overlap_B, Stitcher::Mode mode = Stitcher::SCANS);
163  static int Stitch_Border_abs_custom(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, int border_R, int border_B, int overlap_R, int overlap_B);
164  static int Stitch_Border_rel_custom(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, double border_R, double border_B, double overlap_R, double overlap_B);
165 
166 
167  //Edit
168  static int Crop_Rect_Rel (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double x1_rel, double y1_rel, double x2_rel, double y2_rel);
169  static int Crop_Rect_Abs (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int x, int y, int width, int height);
170  static int Crop_Rect_Rot (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int x, int y, int width, int height, double angle);
171  static int Crop_Circle (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int x, int y, int r);
172  static int Pad_Border (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int size_z, int type = BORDER_CONSTANT, double border_value = 0);
173  static int ForceSize (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int width, int heigth, int border_type = BORDER_CONSTANT);
174  static int Floodfill_Border (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double new_val);
175  static int Floodfill_Delta (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int seed_x, int seed_y, uchar val_new, uchar val_delta);
176  static int Scale_Factor (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double scale_dim_0, double scale_dim_1);
177  static int Scale_ToSize (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_dim_0, int size_dim_1);
178 
179 
180  //Draw
181  static int Draw_Contours (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Target, vector<vector<Point>> vContours, int line_thickness, double value);
182 
183  //Convert
184  static int Convert_Color (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int cvt_mode);
185  static int Convert_Color2Mono (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int col2mono_code);
186  static int Normalize (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int norm, int type, double min, double max);
187  static int Convert_Depth_NoScaling (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int depth);
188  static int Convert_UShort (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
189  static int Channels_Merge (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, int channels_count, bool channels_use[4]);
190  static int Channels_Merge (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
191  static int Sign2Color (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, bool norm = false);
192  static int Channels_Split (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int channel);
193  static int Channel_Supression (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, bool use_r = true, bool use_g = true, bool use_b = true, bool force_3ch = false);
194  static int Convert_8UC1_binary (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
195  static int Visualize_to8bit (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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);
196  static int Convert_Angle2Color_Rad (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InAngleRad, uchar Saturation = 255, uchar Value = 255);
197 
198  //Threshold
199  static int Threshold_Auto (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max, int auto_type);
200  static int Threshold_Auto_Otsu (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max);
201  static int Threshold_Absolute_8U (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max, int thresh);
202  static int Threshold_Absolute (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double thresh);
203  static int Threshold_Relative_8U (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double thresh_rel);
204  static int Threshold_Relative (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double base, double thresh_rel);
205  static int Threshold_Adaptive (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max, int mask_type, int mask_size, double offset);
206  static int Threshold_Adaptive_Gauss (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, double sigma, double offset, double scale = 1);
207  static int Threshold_RankOrderOffsetHysteresis (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double radius, double quantile, double thresh_offset_indicator, double thresh_offset_hysteresis, bool labeling = false);
208 
209  //Grab Color
210  static int Color_Grab (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int color_space, int out_mode, vector<uchar> min, vector<uchar> max);
211 
212  //Labeling
213  static int Labeling (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int connecivity, int out_depth);
214 
215  //Fill Holes
216  static int Fill_Holes (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
217 
218  //Shading
219  static int Shading_Correct (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Ref);
220 
221  //Filter
222  static int Filter_Mean (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int border, int out_depth, bool norm);
223  static int Filter_RootMeanSquare (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int border, int out_depth, bool norm);
224  static int Filter_Gauss (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int border, double sigma_x, double sigma_y);
225  static int Filter_Median (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x3d_or_xy2d, int size_y = 3, int size_z = 3);
226  static int Filter_RankOrder (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Mask, double quantil);
227  static int Filter_RankOrder_Circular (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double quantil, double radius);
228  static int Filter_RankOrder_Rect (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double quantil, int size_x, int size_y);
229  static int Filter_Median (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Mask);
230  static int Filter_Median_Circular (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double radius);
231  static int Filter_Median_Rect (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y);
232  static int Filter_Laplace (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, int border, int out_depth, double scale, double delta);
233  static int Filter_Sobel (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, int border, int out_depth, double scale, double delta, int d_x, int d_y);
234  static int Filter_Canny (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, double thres_low, double thres_high, bool L2_gradient);
235  static int Filter_Bilateral (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int diameter, int border, double sigma_color, double sigma_space);
236  static int Filter_Gabor (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int border, int out_depth, double sigma, double theta, double lambda, double gamma, double psi, double delta);
237  static int Filter_Eilenstein (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int comp, int size_x, int size_y, bool normalized, double constant);
238  static int Filter_Eilenstein (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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);
239  static int Filter_Eilenstein_Greater_Sum (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x = 3, int size_y = 3, int size_z = 3);
240  static int Filter_Function (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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);
241  static int Filter_Function_8bit (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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);
242  static int Filter_Stat (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Mask, int stat, int border_type = BORDER_CONSTANT);
243  static int Filter_Stat_Circular (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double radius, int stat, int border_type = BORDER_CONSTANT);
244  static int Filter_Stat_Rect (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int stat, int border_type = BORDER_CONSTANT);
245 
246  //Morphology
247  static int Morphology_Elemental (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int morph_type, int elem_type, int elem_size_X, int elem_size_Y, int border_type, int iterations);
248  static int Morphology_Skeleton (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_type, int elem_size_X, int elem_size_Y, int border_type);
249  static int Morphology_Dilation (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_size_X, int elem_size_Y, int elem_size_Z);
250  static int Morphology_Erosion (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_size_X, int elem_size_Y, int elem_size_Z);
251  static int MorphSimple_Circ_Dialtion (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size);
252  static int MorphSimple_Circ_Erosion (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size);
253  static int MorphSimple_Circ_Opening (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size);
254  static int MorphSimple_Circ_Closing (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size);
255  static int Morphology_LocMax_Rect (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_size_X = 3, int elem_size_Y = 3);
256  static int Morphology_Reconstruction (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_Seed, D_VisDat_Obj *pVD_Limit, D_VisDat_Obj *pVD_Mask, double quantil = 1);
257  static int Filter_Maximum_1C (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, size_t mask_size_x, size_t mask_size_y);
258  static int Hysteresis (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Indicator, D_VisDat_Obj *pVD_In_Hysteresis, bool labeling = false);
259 
260  //Math
261  static int Math_1img_Inversion (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
262  static int Math_1img_Addition (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double summmand);
263  static int Math_1img_Subtraction (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double subtrahend);
264  static int Math_1img_Multiplication (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double factor);
265  static int Math_1img_Division (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double divisor);
266  static int Math_1img_Power (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double power);
267  static int Math_1img_Root (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
268  static int Math_1img_Log (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
269  static int Math_2img_Addition (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
270  static int Math_2img_AdditionWeighted (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, double weight_1, double weight_2, double weight_sum);
271  static int Math_2img_Subtraction (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
272  static int Math_2img_SubtractionAbsolute (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
273  static int Math_2img_Multiplication (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, double scale);
274  static int Math_2img_Division (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, double scale);
275  static int Math_2img_BitwiseAnd (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
276  static int Math_2img_BitwiseOr (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
277  static int Math_2img_BitwiseXor (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
278  static int Math_2img_Minimum (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
279  static int Math_2img_Maximum (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
280  static int Math_2img_Compare (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, int comp);
281  static int Math_2img_Function (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function<double (double, double)> function_img1_img2);
282  static int Math_2img_Function_Complex (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function<complex<double> (complex<double> x, complex<double> y)> function_img1_img2);
283  static int Math_2img_Function_8bit (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function<uchar (double, double)> function_img1_img2);
284  static int Math_2img_Function_UnequalSize (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function<double (double, double)> function_img1_img2);
285  static int Math_2img_Function_UnequalSize_8bit (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function<uchar (double, double)> function_img1_img2);
286  static int Math_3img_Addition (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
287  static int Math_3img_Addition (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, double summand);
288  static int Math_3img_Multiplication (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
289  static int Math_3img_Multiplication (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, double factor);
290  static int Math_3img_BitwiseAnd (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
291  static int Math_3img_BitwiseOr (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2);
292  static int Math_4img_Addition (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
293  static int Math_4img_Addition (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, double summand);
294  static int Math_4img_Multiplication (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
295  static int Math_4img_Multiplication (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, double factor);
296  static int Math_4img_BitwiseAnd (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
297  static int Math_4img_BitwiseOr (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3);
298  static int Matrix_Product (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1);
299 
300  //Transformation
301  static int Transformation_Distance (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int metric, int precision, double spacing_x3d = 1.0, double spacing_y3d = 1.0, double spacing_z3d = 1.0);
302  static int Transformation_Fourier (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Re, D_VisDat_Obj *pVD_In_Im, bool complex_input = true, 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);
303  static int Transformation_Watershed (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Marker);
304  static int Transformation_Watershed_Auto (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Marker, bool include_not_seeded, bool conv_8bit, bool exclude_border);
305  static int Transformation_Watershed_Auto (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double distance, bool include_not_seeded, bool conv_8bit, bool exclude_border);
306  static int Transformation_Watershed_Auto (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, double sigma, bool include_not_seeded, bool conv_8bit, bool exclude_border);
307  static int Transformation_Watershed_Custom (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InFill, D_VisDat_Obj *pVD_In2Marker, D_VisDat_Obj *pVD_FG_Mask, int connectivity = 8);
308 
309  //Feature
310  static int Feature_Value (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int feature, int connectivity);
311  static int FeatureContext_Value (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat, int stat, int connectivity = 4);
312  static int Feature_Select (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int feature, double f_min, double f_max, int connectivity);
313  static int FeatureContext_Select (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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);
314  static int Feature_Visualize (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int feature, int connectivity, int thickness, double scale);
315  static int Feature_Connect (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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);
316  static int ValueStat (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InLabel, D_VisDat_Obj *pVD_InValue, int stat, int connectivity = 8);
317  static int ValueStat_Select (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InLabel, D_VisDat_Obj *pVD_InValue, int stat, double thresh_min, double thresh_max, int connectivity = 8);
318 
319  //Geometric
320  static int Geometric_Reduce (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int geometric, int connectivity, int thickness, uchar value);
321 
322  //Comsmetic
323  static int Histogram_Equalize (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
324  static int GammaSpread (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double gamma, double in_min, double in_max, double out_min, double out_max, bool force_8bit);
325  static int GammaSpread_Quantiles (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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);
326  static int Draw_Label_Numbers (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Label, double scale, double thickness, bool center);
327  static int Draw_Label_Numbers_LUT (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Label, vector<double> v_LUT, bool border, double scale, double thickness, bool center, int precision, uchar r = 0, uchar g = 0, uchar b = 0);
328  static int Draw_Label_Text (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Label, QStringList QSL_Labeltexts, bool border, double scale, double thickness, bool center, uchar r = 0, uchar g = 0, uchar b = 0, int connectivity = 4);
329  static int Draw_ContourText (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Target, vector<vector<Point>> vContours, QStringList QSL_Texts, vector<Point2f> vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value);
330  static int Draw_ContourText (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, vector<vector<Point>> vContours, QStringList QSL_Texts, vector<Point2f> vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value);
331 
332  static int OverlayOverwrite (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_Background, D_VisDat_Obj *pVD_Overlay, double intensity_overlay, double intensity_backgr);
333  static int OverlayOverwrite (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_Background, D_VisDat_Obj *pVD_Overlay, uchar r, uchar g, uchar b, double intensity_overlay, double intensity_backgr);
334  static int OverlayOverwrite (D_VisDat_Obj *pVD_Target, D_VisDat_Obj *pVD_Overlay, uchar r, uchar g, uchar b, double intensity_overlay);
335 
336  //Other
337  static int Neighborhood_Configs (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In);
338  static int Euler_Number (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, double *euler_number, D_VisDat_Obj *pVD_In);
339  static int MotionField/* BUGGY!!! :-( */(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_space = 5, int size_time = 3);
340  static int ClassBorder_kNN (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_Class0, D_VisDat_Obj *pVD_Class1, int n);
341  static int HDR (D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int dim_exposures = c_DIM_S, double exp_min = 20, double exp_fac = 2, bool project_do = true, int stat = c_STAT_MEAN_ARITMETIC, bool thres_do = true, double thres_low = 16, double thres_high = 240, double val_default = 0);
342  static int DistancesStat (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, function<double (vector<double>)> F_Stat);
343  static int ZernikeStack (D_VisDat_Obj *pVD_Out, int r_max, int j_max);
344  static int RadiometricStereo (D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, double S1X, double S1Y, double S1Z, double S2X, double S2Y, double S2Z, double S3X, double S3Y, double S3Z, int out_mode);
345  static int InterferometerMichelson (D_VisDat_Obj *pVD_Out, int scene_size_x_px, int scene_size_y_px, int scene_size_z_px, double scale_px2um, double wavelength_um, double dist_source_um, double dist_detector_um, double dist_mirror1_um, double dist_mirror2_um, double angle_mirror1_x, double angle_mirror1_y, double angle_mirror2_x, double angle_mirror2_y, bool intensity_notfield, bool beam_atSO_SO, bool beam_atSO_M1_SO, bool beam_atSO_SP_M2_SP_SO, bool beam_atM1_SO, bool beam_atM1_M1_SO, bool beam_atM2_SP_SO, bool beam_atM2_M2_SP_SO, bool beam_atDE_SP_M1_SO, bool beam_atDE_M2_SP_SO);
346 
347  //Calc
348  static int Calc_MinMax (D_VisDat_Obj *pVD_In, double *min_ext, double *max_ext);
349  static int Calc_Hist_Multi (vector<vector<double>> *vv_hist, D_VisDat_Obj *pVD_In, bool uniform, bool accum, unsigned int class_count, vector<double> *v_min_ext, vector<double> *v_max_ext, vector<double> *v_step_ext);
350  static int Calc_Hist_1C (vector<double> *v_hist, D_VisDat_Obj *pVD_In, bool uniform, bool accum, unsigned int class_count, double *min_ext, double *max_ext, double *step_ext);
351  static int Calc_Hist_1C_8bit (vector<double> *v_hist, D_VisDat_Obj *pVD_In, bool uniform, bool accum);
352  static int Calc_DataVector_1C (vector<double> *v_data_out, D_VisDat_Obj *pVD_In, bool ignore_zeros);
353 
354 };
355 
356 #endif // D_VISDAT_PROC_H
D_VisDat_Proc::Transformation_Fourier
static int Transformation_Fourier(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Re, D_VisDat_Obj *pVD_In_Im, bool complex_input=true, 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_visdat_proc.cpp:6440
D_VisDat_Proc::Math_4img_BitwiseOr
static int Math_4img_BitwiseOr(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
Definition: d_visdat_proc.cpp:6366
D_Img_Proc_2dFactory::Math_2img_Minimum
static function< int(Mat *, Mat *, Mat *)> Math_2img_Minimum()
Definition: d_img_proc_2dfactory.cpp:1347
Mat
cv::Mat Mat
Definition: d_opencv_typedefs.h:28
D_VisDat_Proc::Math_1img_Addition
static int Math_1img_Addition(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double summmand)
Definition: d_visdat_proc.cpp:5744
D_VisDat_Obj::info
QString info()
Definition: d_visdat_obj.cpp:157
D_Img_Proc_2dFactory::Draw_Contours
static function< int(Mat *)> Draw_Contours(vector< vector< Point >> vContours, int line_thickness, double value)
Definition: d_img_proc_2dfactory.cpp:48
ER_okay
@ ER_okay
Definition: d_enum.h:133
D_VisDat_Proc::Save_VD_ToBinaryFile
static int Save_VD_ToBinaryFile(D_VisDat_Obj *pVD_Save, QString QS_SavePath)
Definition: d_visdat_proc.cpp:1243
D_Img_Proc_2dFactory::FeatureContext_Select
static function< int(Mat *, Mat *)> FeatureContext_Select(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_2dfactory.cpp:744
D_Img_Proc_2dFactory::ValueStat_Select
static function< int(Mat *, Mat *, Mat *)> ValueStat_Select(int stat, double thresh_min, double thresh_max, int connectivity=8)
Definition: d_img_proc_2dfactory.cpp:1597
D_VisDat_Proc::Filter_Bilateral
static int Filter_Bilateral(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int diameter, int border, double sigma_color, double sigma_space)
Definition: d_visdat_proc.cpp:5261
D_Img_Proc_2dFactory::Fill_Holes
static function< int(Mat *, Mat *)> Fill_Holes()
Definition: d_img_proc_2dfactory.cpp:332
D_Img_Proc_2dFactory::Math_3img_BitwiseAnd
static function< int(Mat *, Mat *, Mat *, Mat *)> Math_3img_BitwiseAnd()
Definition: d_img_proc_2dfactory.cpp:1681
D_VisDat_Proc::Channels_Split
static int Channels_Split(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int channel)
Definition: d_visdat_proc.cpp:4735
D_Img_Proc_2dFactory::Convert_Color
static function< int(Mat *, Mat *)> Convert_Color(int cvt_mode)
Definition: d_img_proc_2dfactory.cpp:80
BORDER_CONSTANT
const int BORDER_CONSTANT
Definition: d_opencv_typedefs.h:77
D_VisDat_Proc::Calc_DataVector_1C
static int Calc_DataVector_1C(vector< double > *v_data_out, D_VisDat_Obj *pVD_In, bool ignore_zeros)
Definition: d_visdat_proc.cpp:8278
D_Img_Proc_2dFactory::Geometric_Reduce
static function< int(Mat *, Mat *)> Geometric_Reduce(int geometric, int connectivity, int thickness, uchar value)
Definition: d_img_proc_2dfactory.cpp:800
D_VisDat_Slicing::loop_Next
bool loop_Next()
Definition: d_visdat_slicing.cpp:268
D_VisDat_Proc::Feature_Visualize
static int Feature_Visualize(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int feature, int connectivity, int thickness, double scale)
Definition: d_visdat_proc.cpp:6671
CAP_PROP_FRAME_COUNT
const int CAP_PROP_FRAME_COUNT
Definition: d_opencv_typedefs.h:105
D_VisDat_Dim::ForcePosInRange
Vec< int, c_DIM_NUMBER_OF > ForcePosInRange(Vec< int, c_DIM_NUMBER_OF > pos)
Definition: d_visdat_dim.cpp:111
D_VisDat_Dim::size_Y
int size_Y()
Definition: d_visdat_dim.h:60
CAP_PROP_FRAME_WIDTH
const int CAP_PROP_FRAME_WIDTH
Definition: d_opencv_typedefs.h:103
D_VisDat_Dim::size_S
int size_S()
Definition: d_visdat_dim.h:63
D_VisDat_Range::Dim4Range_Offset
Vec< int, c_DIM_NUMBER_OF > Dim4Range_Offset()
Definition: d_visdat_range.h:97
D_VisDat_Proc::Dim_Deserialise
static int Dim_Deserialise(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int dim_from=c_DIM_P, int dim_to=c_DIM_P, int spacing=1)
Definition: d_visdat_proc.cpp:3915
D_VisDat_Proc::Filter_Gabor
static int Filter_Gabor(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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_visdat_proc.cpp:5277
Vec3i
cv::Vec3i Vec3i
Definition: d_opencv_typedefs.h:54
D_VisDat_Proc::Matrix_Product
static int Matrix_Product(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:6378
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_VisDat_Proc::Scale_ToSize
static int Scale_ToSize(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_dim_0, int size_dim_1)
Definition: d_visdat_proc.cpp:4568
D_VisDat_Slicing::loop_Init
bool loop_Init(D_VisDat_Dim dim2loop)
Definition: d_visdat_slicing.cpp:235
D_Img_Proc_2dFactory::Sign2Color
static function< int(Mat *, Mat *)> Sign2Color(bool norm=false)
Definition: d_img_proc_2dfactory.cpp:192
D_Img_Proc_2dFactory::Filter_Laplace
static function< int(Mat *, Mat *)> Filter_Laplace(int size, int border, int out_depth, double scale, double delta)
Definition: d_img_proc_2dfactory.cpp:403
D_Img_Proc_2dFactory::Crop_Rect_Rot
static function< int(Mat *, Mat *)> Crop_Rect_Rot(int x, int y, int width, int height, double angle)
Definition: d_img_proc_2dfactory.cpp:950
D_VisDat_Proc::Filter_RankOrder
static int Filter_RankOrder(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Mask, double quantil)
Definition: d_visdat_proc.cpp:5131
D_VisDat_Proc::Math_2img_Maximum
static int Math_2img_Maximum(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5917
c_DIM_X
@ c_DIM_X
Definition: d_enum.h:235
D_Img_Proc_2dFactory::Convert_Angle2Color_Rad
static function< int(Mat *, Mat *)> Convert_Angle2Color_Rad(uchar Saturation=255, uchar Value=255)
Definition: d_img_proc_2dfactory.cpp:873
D_VisDat_Dim::size_T
int size_T()
Definition: d_visdat_dim.h:62
D_VisDat_Proc::ValueStat_Select
static int ValueStat_Select(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InLabel, D_VisDat_Obj *pVD_InValue, int stat, double thresh_min, double thresh_max, int connectivity=8)
Definition: d_visdat_proc.cpp:6736
D_VisDat_Proc::Filter_Median_Circular
static int Filter_Median_Circular(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double radius)
Definition: d_visdat_proc.cpp:5184
D_VisDat_Proc::ZernikeStack
static int ZernikeStack(D_VisDat_Obj *pVD_Out, int r_max, int j_max)
Definition: d_visdat_proc.cpp:7560
c_COMPLEX2REAL_ABS
@ c_COMPLEX2REAL_ABS
Definition: d_enum.h:976
c_DIM_Z
@ c_DIM_Z
Definition: d_enum.h:237
D_Img_Proc_2dFactory::Pad_Border
static function< int(Mat *, Mat *)> Pad_Border(int size_x, int size_y, int type=BORDER_CONSTANT)
Definition: d_img_proc_2dfactory.cpp:1006
D_Img_Proc_2dFactory::Visualize_to8bit
static function< int(Mat *, Mat *)> Visualize_to8bit(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)
Definition: d_img_proc_2dfactory.cpp:169
D_Img_Proc_2dFactory::Feature_Connect
static function< int(Mat *, Mat *)> Feature_Connect(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_2dfactory.cpp:779
D_VisDat_Proc::PlaneDim_2nd
static int PlaneDim_2nd(int plane_index)
Definition: d_visdat_proc.cpp:37
D_VisDat_Proc::Math_1img_Division
static int Math_1img_Division(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double divisor)
Definition: d_visdat_proc.cpp:5774
D_VisDat_Proc::Insert_atPos
static int Insert_atPos(D_VisDat_Obj *pVD_Target, D_VisDat_Obj *pVD_Source, vector< int > vOffset)
Definition: d_visdat_proc.cpp:2789
D_Img_Proc_2dFactory::Filter_Eilenstein
static function< int(Mat *, Mat *)> Filter_Eilenstein(int comp, int size_x, int size_y, bool normalized, double constant)
Definition: d_img_proc_2dfactory.cpp:489
D_Img_Proc_2dFactory::Labeling
static function< int(Mat *, Mat *)> Labeling(int connectivity, int out_depth)
Definition: d_img_proc_2dfactory.cpp:304
c_PLANE_XY
@ c_PLANE_XY
Definition: d_enum.h:293
Vec2i
cv::Vec2i Vec2i
Definition: d_opencv_typedefs.h:48
D_Img_Proc_2dFactory::Math_2img_BitwiseAnd
static function< int(Mat *, Mat *, Mat *)> Math_2img_BitwiseAnd()
Definition: d_img_proc_2dfactory.cpp:1311
D_Img_Proc_2dFactory::Stitch_Border_abs
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Stitch_Border_abs(int border_R, int border_B, int overlap_R, int overlap_B, Stitcher::Mode mode=Stitcher::SCANS)
Definition: d_img_proc_2dfactory.cpp:1853
D_VisDat_Proc::MotionField
static int MotionField(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_space=5, int size_time=3)
Definition: d_visdat_proc.cpp:7029
D_VisDat_Proc::Shading_Correct
static int Shading_Correct(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Ref)
Definition: d_visdat_proc.cpp:5023
D_Img_Proc_2dFactory::Draw_ContourText
static function< int(Mat *, Mat *)> Draw_ContourText(vector< vector< Point >> vContours, QStringList QSL_Texts, vector< Point2f > vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value)
Definition: d_img_proc_2dfactory.cpp:902
D_VisDat_Proc::Filter_Median_Rect
static int Filter_Median_Rect(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y)
Definition: d_visdat_proc.cpp:5194
c_DIM_T
@ c_DIM_T
Definition: d_enum.h:238
D_VisDat_Proc::Math_2img_Function_Complex
static int Math_2img_Function_Complex(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function< complex< double >(complex< double > x, complex< double > y)> function_img1_img2)
Definition: d_visdat_proc.cpp:5962
D_VisDat_Proc::Draw_ContourText
static int Draw_ContourText(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Target, vector< vector< Point >> vContours, QStringList QSL_Texts, vector< Point2f > vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value)
c_VOLUME_ZTS
@ c_VOLUME_ZTS
Definition: d_enum.h:345
D_VisDat_Slicing::is_2D
bool is_2D()
Definition: d_visdat_slicing.h:61
D_VisDat_Proc::Wrap_VD_SameSizeType
static int Wrap_VD_SameSizeType(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
D_VisDat_Proc::Wrap_3D_img1
static void Wrap_3D_img1(int *ER, D_VisDat_Slice_3D plane, function< int(Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:963
D_Img_Proc_2dFactory::FeatureContext_Value
static function< int(Mat *, Mat *)> FeatureContext_Value(int pt_type1, int pt_type2, double dist_min, double dist_max, int feat, int stat, int connectivity=4)
Definition: d_img_proc_2dfactory.cpp:711
D_VisDat_Proc::Create_VD_SinglePaged
static int Create_VD_SinglePaged(D_VisDat_Obj *pVD_New, QString QS_Path, int DimPage=c_DIM_P, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y)
Definition: d_visdat_proc.cpp:1485
D_Img_Proc_2dFactory::Stitch_Border_abs_custom
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Stitch_Border_abs_custom(int border_R, int border_B, int overlap_R, int overlap_B)
Definition: d_img_proc_2dfactory.cpp:1891
D_VisDat_Proc::Math_2img_Function
static int Math_2img_Function(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function< double(double, double)> function_img1_img2)
Definition: d_visdat_proc.cpp:5938
D_Img_Proc_2dFactory::Math_4img_BitwiseOr
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Math_4img_BitwiseOr()
Definition: d_img_proc_2dfactory.cpp:1839
c_MATH_2D_TO_1D_ZERNIKE_J
@ c_MATH_2D_TO_1D_ZERNIKE_J
Definition: d_enum.h:1067
D_VisDat_Proc::PlaneFromDims
static int PlaneFromDims(int d1, int d2)
Definition: d_visdat_proc.cpp:146
Vec3d
cv::Vec3d Vec3d
Definition: d_opencv_typedefs.h:52
D_VisDat_Proc::Transformation_Watershed
static int Transformation_Watershed(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Marker)
Definition: d_visdat_proc.cpp:6473
ER_dim_2D_only
@ ER_dim_2D_only
Definition: d_enum.h:164
Vec4d
cv::Vec4d Vec4d
Definition: d_opencv_typedefs.h:58
D_VisDat_Proc::Stitch_Border_abs_custom
static int Stitch_Border_abs_custom(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, int border_R, int border_B, int overlap_R, int overlap_B)
Definition: d_visdat_proc.cpp:4228
c_VOLUME_XYS
@ c_VOLUME_XYS
Definition: d_enum.h:331
D_Img_Proc::Convert_8UC1
static int Convert_8UC1(Mat *pMA_Out, Mat *pMA_In)
Definition: d_img_proc.cpp:3406
D_Img_Proc_2dFactory::Filter_Median
static function< int(Mat *, Mat *, Mat *)> Filter_Median()
Definition: d_img_proc_2dfactory.cpp:1157
D_VisDat_Proc::Draw_ContourText
static int Draw_ContourText(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, vector< vector< Point >> vContours, QStringList QSL_Texts, vector< Point2f > vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value)
D_VisDat_Proc::Math_2img_Function_UnequalSize
static int Math_2img_Function_UnequalSize(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function< double(double, double)> function_img1_img2)
Definition: d_visdat_proc.cpp:6006
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_3dFactory::Filter_Function
static function< int(Mat *, Mat *, Mat *)> Filter_Function(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_3dfactory.cpp:44
d_value_distribution_list.h
D_VisDat_Proc::Filter_Stat
static int Filter_Stat(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Mask, int stat, int border_type=BORDER_CONSTANT)
Definition: d_visdat_proc.cpp:5465
D_VisDat_Proc::Copy
static int Copy(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:3406
D_VisDat_Proc::Stitch_Border_rel
static int Stitch_Border_rel(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, double border_R, double border_B, double overlap_R, double overlap_B, Stitcher::Mode mode=Stitcher::SCANS)
Definition: d_visdat_proc.cpp:4196
D_VisDat_Proc::Convert_Color
static int Convert_Color(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int cvt_mode)
Definition: d_visdat_proc.cpp:4607
Vec2w
cv::Vec2w Vec2w
Definition: d_opencv_typedefs.h:50
ER_size_missmatch
@ ER_size_missmatch
Definition: d_enum.h:141
D_Img_Proc_2dFactory::Generate_byValueFunction_Complex
static function< int(Mat *)> Generate_byValueFunction_Complex(int width, int height, function< complex< double >(complex< double > x, complex< double > y)> value_function)
Definition: d_img_proc_2dfactory.cpp:21
Vec4s
cv::Vec4s Vec4s
Definition: d_opencv_typedefs.h:61
Vec4f
cv::Vec4f Vec4f
Definition: d_opencv_typedefs.h:59
D_Img_Proc_2dFactory::ClassBorder_kNN
static function< int(Mat *, Mat *, Mat *)> ClassBorder_kNN(int n)
Definition: d_img_proc_2dfactory.cpp:1539
D_Img_Proc_2dFactory::Math_4img_Addition
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Math_4img_Addition()
Definition: d_img_proc_2dfactory.cpp:1767
D_VisDat_Proc::Create_VD_Single_Raw
static int Create_VD_Single_Raw(D_VisDat_Obj *pVD_New, string path, int width, int height, int out_type)
Definition: d_visdat_proc.cpp:1469
D_VisDat_Proc::RadiometricStereo
static int RadiometricStereo(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, double S1X, double S1Y, double S1Z, double S2X, double S2Y, double S2Z, double S3X, double S3Y, double S3Z, int out_mode)
Definition: d_visdat_proc.cpp:7598
D_VisDat_Proc::Filter_RankOrder_Rect
static int Filter_RankOrder_Rect(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double quantil, int size_x, int size_y)
Definition: d_visdat_proc.cpp:5159
c_DIM_Y
@ c_DIM_Y
Definition: d_enum.h:236
c_PLANE_XS
@ c_PLANE_XS
Definition: d_enum.h:296
D_Img_Proc_2dFactory::Math_2img_BitwiseOr
static function< int(Mat *, Mat *, Mat *)> Math_2img_BitwiseOr()
Definition: d_img_proc_2dfactory.cpp:1323
D_Img_Proc_2dFactory::ValueStat
static function< int(Mat *, Mat *, Mat *)> ValueStat(int stat, int connectivity=8)
Definition: d_img_proc_2dfactory.cpp:1583
D_VisDat_Proc::Math_3img_Multiplication
static int Math_3img_Multiplication(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
Definition: d_visdat_proc.cpp:6259
D_VisDat_Proc::Wrap_2D_img3
static void Wrap_2D_img3(int *ER, D_VisDat_Slice_2D plane, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
Definition: d_visdat_proc.cpp:758
D_VisDat_Range
The D_VisDat_Range class Describes the intersect of two D_VisDat_Dim , so it is a 6D subvolume.
Definition: d_visdat_range.h:46
D_Img_Proc_2dFactory::Filter_Function
static function< int(Mat *, Mat *, Mat *)> Filter_Function(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_2dfactory.cpp:1184
D_Img_Proc_2dFactory::Crop_Rect_Rel
static function< int(Mat *, Mat *)> Crop_Rect_Rel(double x1_rel, double y1_rel, double x2_rel, double y2_rel)
Definition: d_img_proc_2dfactory.cpp:920
Vec3b
cv::Vec3b Vec3b
Definition: d_opencv_typedefs.h:51
D_VisDat_Proc::Threshold_Auto
static int Threshold_Auto(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max, int auto_type)
Definition: d_visdat_proc.cpp:4841
D_VisDat_Dim::size_DimsVec
vector< int > size_DimsVec()
Definition: d_visdat_dim.h:66
ER_dim_out_of_range
@ ER_dim_out_of_range
Definition: d_enum.h:147
D_VisDat_Proc::Histogram_Equalize
static int Histogram_Equalize(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:6777
D_Img_Proc_2dFactory::Math_1img_Multiplication
static function< int(Mat *, Mat *)> Math_1img_Multiplication(double factor)
Definition: d_img_proc_2dfactory.cpp:596
c_VOLUME_TSP
@ c_VOLUME_TSP
Definition: d_enum.h:348
ER_file_not_exist
@ ER_file_not_exist
Definition: d_enum.h:161
D_VisDat_Proc::Channels_Merge
static int Channels_Merge(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, int channels_count, bool channels_use[4])
D_VisDat_Proc::Read_2D_Plane
static int Read_2D_Plane(Mat *pMA_Out, D_VisDat_Obj *pVD_In, D_VisDat_Slice_2D InPlane)
Definition: d_visdat_proc.cpp:2946
c_VOLUME_ZSP
@ c_VOLUME_ZSP
Definition: d_enum.h:347
D_VisDat_Dim::loop_Reset
void loop_Reset()
Definition: d_visdat_dim.h:125
D_Img_Proc_2dFactory::Hysteresis
static function< int(Mat *, Mat *, Mat *)> Hysteresis(bool labeling=false)
Definition: d_img_proc_2dfactory.cpp:1131
Vec2b
cv::Vec2b Vec2b
Definition: d_opencv_typedefs.h:45
D_VisDat_Proc::Wrap_VD_SameSizeType
static int Wrap_VD_SameSizeType(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4)
D_VisDat_Proc::Math_2img_Function_UnequalSize_8bit
static int Math_2img_Function_UnequalSize_8bit(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function< uchar(double, double)> function_img1_img2)
Definition: d_visdat_proc.cpp:6121
D_Img_Proc_2dFactory::Math_1img_Log
static function< int(Mat *, Mat *)> Math_1img_Log()
Definition: d_img_proc_2dfactory.cpp:643
D_Img_Proc_2dFactory::Filter_Canny
static function< int(Mat *, Mat *)> Filter_Canny(int size, double thres_low, double thres_high, bool L2_gradient)
Definition: d_img_proc_2dfactory.cpp:437
D_VisDat_Proc::Math_1img_Multiplication
static int Math_1img_Multiplication(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double factor)
Definition: d_visdat_proc.cpp:5764
D_Img_Proc_2dFactory::Math_2img_Addition
static function< int(Mat *, Mat *, Mat *)> Math_2img_Addition()
Definition: d_img_proc_2dfactory.cpp:1234
D_Img_Proc_2dFactory::Stitch_Border_rel_custom
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Stitch_Border_rel_custom(double border_R, double border_B, double overlap_R, double overlap_B)
Definition: d_img_proc_2dfactory.cpp:1909
D_VisDat_Slice_Nd::QS_pos_nonProcOnly
QString QS_pos_nonProcOnly()
Definition: d_visdat_slice_nd.cpp:171
d_visdat_slice_3d.h
D_Img_Proc_2dFactory::Threshold_Adaptive
static function< int(Mat *, Mat *)> Threshold_Adaptive(int mode, int max, int mask_type, int mask_size, double offset)
Definition: d_img_proc_2dfactory.cpp:257
c_PLANE_YP
@ c_PLANE_YP
Definition: d_enum.h:301
D_VisDat_Proc::Wrap_VD_SameSizeType
static int Wrap_VD_SameSizeType(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
D_VisDat_Proc::FeatureContext_Value
static int FeatureContext_Value(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int pt_type1, int pt_type2, double dist_min, double dist_max, int feat, int stat, int connectivity=4)
Definition: d_visdat_proc.cpp:6603
D_VisDat_Proc::Math_2img_BitwiseAnd
static int Math_2img_BitwiseAnd(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5877
Vec3w
cv::Vec3w Vec3w
Definition: d_opencv_typedefs.h:56
D_VisDat_Proc::Math_2img_Function_8bit
static int Math_2img_Function_8bit(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, function< uchar(double, double)> function_img1_img2)
Definition: d_visdat_proc.cpp:5982
D_VisDat_Proc::MorphSimple_Circ_Dialtion
static int MorphSimple_Circ_Dialtion(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size)
Definition: d_visdat_proc.cpp:5619
c_VOLUME_YTS
@ c_VOLUME_YTS
Definition: d_enum.h:342
D_Img_Proc_2dFactory::Draw_ContourText_InPlace
static function< int(Mat *)> Draw_ContourText_InPlace(vector< vector< Point >> vContours, QStringList QSL_Texts, vector< Point2f > vTextOrigins, int line_thickness, int text_thickness, double text_scale, double value)
Definition: d_img_proc_2dfactory.cpp:61
D_VisDat_Proc::Math_2img_BitwiseOr
static int Math_2img_BitwiseOr(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5887
D_VisDat_Dim
The D_VisDat_Dim class Represents a 6D volume.
Definition: d_visdat_dim.h:49
D_VisDat_Dim::set_size_P
void set_size_P(int P)
Definition: d_visdat_dim.h:95
D_VisDat_Proc::Create_VD_ValueFunction_6D
static int Create_VD_ValueFunction_6D(D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, function< double(double, double, double, double, double, double)> value_function)
Definition: d_visdat_proc.cpp:2201
d_img_proc_3dfactory.h
c_VOLUME_ZTP
@ c_VOLUME_ZTP
Definition: d_enum.h:346
d_visdat_dim.h
Vec4w
cv::Vec4w Vec4w
Definition: d_opencv_typedefs.h:62
D_VisDat_Proc::Write_2D_Plane
static int Write_2D_Plane(D_VisDat_Obj *pVD_Out, Mat *pMA_In, D_VisDat_Slice_2D OutPlane)
Definition: d_visdat_proc.cpp:2303
D_VisDat_Proc::VolumeDims
static vector< int > VolumeDims(int volume_index)
Definition: d_visdat_proc.cpp:141
VideoCapture
cv::VideoCapture VideoCapture
typdef all commonly used OpenCV types
Definition: d_opencv_typedefs.h:24
D_Img_Proc_2dFactory::Crop_Circle
static function< int(Mat *, Mat *)> Crop_Circle(int x, int y, int r)
Definition: d_img_proc_2dfactory.cpp:966
d_component_list_context.h
c_DIM_S
@ c_DIM_S
Definition: d_enum.h:239
D_Img_Proc_2dFactory::Filter_RankOrder_Circular
static function< int(Mat *, Mat *)> Filter_RankOrder_Circular(double quantil, double radius)
Definition: d_img_proc_2dfactory.cpp:534
c_VOLUME_XZP
@ c_VOLUME_XZP
Definition: d_enum.h:335
D_VisDat_Proc::Wrap_2D_img0
static void Wrap_2D_img0(int *ER, D_VisDat_Slice_2D plane, function< int(Mat *pMA_Out)> img_proc, D_VisDat_Obj *pVD_Out)
Definition: d_visdat_proc.cpp:633
D_VisDat_Obj::size_Byte
size_t size_Byte()
Definition: d_visdat_obj.cpp:152
D_VisDat_Dim::loop_SetOffset
void loop_SetOffset(Vec< int, c_DIM_NUMBER_OF > offset)
Definition: d_visdat_dim.h:126
c_PLANE_ZP
@ c_PLANE_ZP
Definition: d_enum.h:304
D_VisDat_Proc::Save_VD_ListFull
static int Save_VD_ListFull(D_VisDat_Obj *pVD_Save, QString QS_Dir, QString QS_ImgName, QString QS_Suffix, int plane2D, bool transVis, 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)
Definition: d_visdat_proc.cpp:1330
D_VisDat_Dim::size_Z
int size_Z()
Definition: d_visdat_dim.h:61
D_Img_Proc_3dFactory::Morphology_Erosion
static function< int(Mat *, Mat *)> Morphology_Erosion(int size_x=3, int size_y=3, int size_z=3)
Definition: d_img_proc_3dfactory.cpp:122
c_PLANE_XZ
@ c_PLANE_XZ
Definition: d_enum.h:294
D_VisDat_Proc::Feature_Value
static int Feature_Value(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int feature, int connectivity)
Definition: d_visdat_proc.cpp:6585
D_Img_Proc_2dFactory::Math_2img_Compare
static function< int(Mat *, Mat *, Mat *)> Math_2img_Compare(int comp)
Definition: d_img_proc_2dfactory.cpp:1371
D_Stat::Function_SingleStat
static function< double(vector< double >)> Function_SingleStat(int stat)
Definition: d_stat.cpp:683
D_Img_Proc_2dFactory::Convert_Depth_NoScaling
static function< int(Mat *, Mat *)> Convert_Depth_NoScaling(int depth)
Definition: d_img_proc_2dfactory.cpp:119
D_VisDat_Proc::Hysteresis
static int Hysteresis(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Indicator, D_VisDat_Obj *pVD_In_Hysteresis, bool labeling=false)
Definition: d_visdat_proc.cpp:5724
D_Img_Proc_3dFactory::Distance_Transformation_EDT
static function< int(Mat *, Mat *)> Distance_Transformation_EDT(double spacing_x=1, double spacing_y=1, double spacing_z=1)
Definition: d_img_proc_3dfactory.cpp:159
D_Img_Proc_2dFactory::Math_2img_AdditionWeighted
static function< int(Mat *, Mat *, Mat *)> Math_2img_AdditionWeighted(double weight_1, double weight_2, double weight_sum)
Definition: d_img_proc_2dfactory.cpp:1246
D_Img_Proc_2dFactory::Draw_Label_Numbers_LUT
static function< int(Mat *, Mat *, Mat *)> Draw_Label_Numbers_LUT(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_2dfactory.cpp:1497
D_VisDat_Proc::Math_1img_Inversion
static int Math_1img_Inversion(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:5735
c_PLANE_XP
@ c_PLANE_XP
Definition: d_enum.h:297
D_VisDat_Proc::PlaneDims
static vector< int > PlaneDims(int plane_index)
Definition: d_visdat_proc.cpp:58
D_VisDat_Proc::Filter_Stat_Circular
static int Filter_Stat_Circular(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double radius, int stat, int border_type=BORDER_CONSTANT)
Definition: d_visdat_proc.cpp:5486
D_VisDat_Proc::Transformation_Watershed_Auto
static int Transformation_Watershed_Auto(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Marker, bool include_not_seeded, bool conv_8bit, bool exclude_border)
Definition: d_visdat_proc.cpp:6490
D_Img_Proc_2dFactory::Scale_Factor
static function< int(Mat *, Mat *)> Scale_Factor(double scale_x, double scale_y)
Definition: d_img_proc_2dfactory.cpp:980
D_VisDat_Proc::Convert_8UC1_binary
static int Convert_8UC1_binary(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:4784
D_VisDat_Proc::Filter_RootMeanSquare
static int Filter_RootMeanSquare(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int border, int out_depth, bool norm)
Definition: d_visdat_proc.cpp:5050
D_Img_Proc_2dFactory::Scale_ToSize
static function< int(Mat *, Mat *)> Scale_ToSize(int size_x, int size_y)
Definition: d_img_proc_2dfactory.cpp:993
MORPH_CLOSE
const int MORPH_CLOSE
Definition: d_opencv_typedefs.h:92
D_Img_Proc_2dFactory::Math_2img_Maximum
static function< int(Mat *, Mat *, Mat *)> Math_2img_Maximum()
Definition: d_img_proc_2dfactory.cpp:1359
D_Img_Proc_2dFactory::Convert_8UC1_binary
static function< int(Mat *, Mat *)> Convert_8UC1_binary()
Definition: d_img_proc_2dfactory.cpp:158
D_VisDat_Proc::Filter_Gauss
static int Filter_Gauss(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int border, double sigma_x, double sigma_y)
Definition: d_visdat_proc.cpp:5073
D_Img_Proc_3dFactory::Filter_Median
static function< int(Mat *, Mat *)> Filter_Median(int size_x=3, int size_y=3, int size_z=3)
Definition: d_img_proc_3dfactory.cpp:80
D_VisDat_Proc::Morphology_Elemental
static int Morphology_Elemental(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int morph_type, int elem_type, int elem_size_X, int elem_size_Y, int border_type, int iterations)
Definition: d_visdat_proc.cpp:5529
D_VisDat_Proc::Threshold_Relative
static int Threshold_Relative(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double base, double thresh_rel)
Definition: d_visdat_proc.cpp:4900
D_VisDat_Proc::Math_4img_Multiplication
static int Math_4img_Multiplication(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
Definition: d_visdat_proc.cpp:6329
D_Img_Proc_2dFactory::Filter_Maximum_1C
static function< int(Mat *, Mat *)> Filter_Maximum_1C(size_t mask_size_x, size_t mask_size_y)
Definition: d_img_proc_2dfactory.cpp:1106
D_VisDat_Obj
The D_VisDat_Obj class Represents a 6D image.
Definition: d_visdat_obj.h:51
D_Img_Proc_2dFactory::Math_3img_Multiplication
static function< int(Mat *, Mat *, Mat *, Mat *)> Math_3img_Multiplication()
Definition: d_img_proc_2dfactory.cpp:1654
D_Img_Proc_2dFactory::Filter_Sobel
static function< int(Mat *, Mat *)> Filter_Sobel(int size, int border, int out_depth, double scale, double delta, int d_x, int d_y)
Definition: d_img_proc_2dfactory.cpp:419
D_VisDat_Proc::Math_1img_Power
static int Math_1img_Power(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double power)
Definition: d_visdat_proc.cpp:5784
D_VisDat_Proc::Math_2img_Addition
static int Math_2img_Addition(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5812
c_PLANE_XT
@ c_PLANE_XT
Definition: d_enum.h:295
D_VisDat_Proc::Threshold_Auto_Otsu
static int Threshold_Auto_Otsu(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max)
Definition: d_visdat_proc.cpp:4853
D_VisDat_Proc::Crop_Rect_Abs
static int Crop_Rect_Abs(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int x, int y, int width, int height)
Definition: d_visdat_proc.cpp:4354
IMREAD_ANYCOLOR
const int IMREAD_ANYCOLOR
Definition: d_opencv_typedefs.h:108
D_Img_Proc_2dFactory::Feature_Value
static function< int(Mat *, Mat *)> Feature_Value(int feature, int connectivity)
Definition: d_img_proc_2dfactory.cpp:698
D_Img_Proc_2dFactory::GammaSpread_Quantiles
static function< int(Mat *, Mat *)> GammaSpread_Quantiles(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_2dfactory.cpp:843
D_VisDat_Proc::Neighborhood_Configs
static int Neighborhood_Configs(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:7004
D_Img_Proc_2dFactory::Filter_Gauss
static function< int(Mat *, Mat *)> Filter_Gauss(int size_x, int size_y, int border, double sigma_x, double sigma_y)
Definition: d_img_proc_2dfactory.cpp:375
D_VisDat_Proc::Create_VD_Single_Constant
static int Create_VD_Single_Constant(D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, int type=CV_8UC1, double value=0)
Definition: d_visdat_proc.cpp:1403
D_Img_Proc_2dFactory::Math_1img_Subtraction
static function< int(Mat *, Mat *)> Math_1img_Subtraction(double subtrahend)
Definition: d_img_proc_2dfactory.cpp:584
D_Img_Proc_3dFactory::Pad_Border
static function< int(Mat *, Mat *)> Pad_Border(int border_size_x, int border_size_y, int border_size_z, int border_type=BORDER_CONSTANT, double border_val=0)
Definition: d_img_proc_3dfactory.cpp:28
D_Img_Proc_2dFactory::Math_1img_Power
static function< int(Mat *, Mat *)> Math_1img_Power(double power)
Definition: d_img_proc_2dfactory.cpp:620
D_VisDat_Slicing::loop3D_SliceByIndex
D_VisDat_Slice_3D loop3D_SliceByIndex(int i)
Definition: d_visdat_slicing.cpp:405
D_VisDat_Proc::InterferometerMichelson
static int InterferometerMichelson(D_VisDat_Obj *pVD_Out, int scene_size_x_px, int scene_size_y_px, int scene_size_z_px, double scale_px2um, double wavelength_um, double dist_source_um, double dist_detector_um, double dist_mirror1_um, double dist_mirror2_um, double angle_mirror1_x, double angle_mirror1_y, double angle_mirror2_x, double angle_mirror2_y, bool intensity_notfield, bool beam_atSO_SO, bool beam_atSO_M1_SO, bool beam_atSO_SP_M2_SP_SO, bool beam_atM1_SO, bool beam_atM1_M1_SO, bool beam_atM2_SP_SO, bool beam_atM2_M2_SP_SO, bool beam_atDE_SP_M1_SO, bool beam_atDE_M2_SP_SO)
Definition: d_visdat_proc.cpp:7625
D_VisDat_Proc::Scale_Factor
static int Scale_Factor(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double scale_dim_0, double scale_dim_1)
Definition: d_visdat_proc.cpp:4543
D_VisDat_Proc::Write_3D_Cuboid
static int Write_3D_Cuboid(D_VisDat_Obj *pVD_Out, Mat *pMA_In, D_VisDat_Slice_3D OutPlane)
Definition: d_visdat_proc.cpp:2515
ER_dim_Y_out_of_range
@ ER_dim_Y_out_of_range
Definition: d_enum.h:151
D_Img_Proc_2dFactory::Feature_Visualize
static function< int(Mat *, Mat *)> Feature_Visualize(int feature, int connectivity, int thickness, double scale)
Definition: d_img_proc_2dfactory.cpp:764
D_VisDat_Proc::Filter_Eilenstein
static int Filter_Eilenstein(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int comp, int size_x, int size_y, bool normalized, double constant)
Definition: d_visdat_proc.cpp:5305
Vec2s
cv::Vec2s Vec2s
Definition: d_opencv_typedefs.h:49
D_VisDat_Proc::Math_3img_BitwiseOr
static int Math_3img_BitwiseOr(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
Definition: d_visdat_proc.cpp:6293
ER_bitdepth_bad
@ ER_bitdepth_bad
Definition: d_enum.h:138
D_VisDat_Proc::Floodfill_Delta
static int Floodfill_Delta(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int seed_x, int seed_y, uchar val_new, uchar val_delta)
Definition: d_visdat_proc.cpp:4527
D_VisDat_Obj::pMA_full
Mat * pMA_full()
Definition: d_visdat_obj.h:61
D_Img_Proc_2dFactory::Threshold_Adaptive_Gauss
static function< int(Mat *, Mat *)> Threshold_Adaptive_Gauss(int size, double sigma, double offset, double scale)
Definition: d_img_proc_2dfactory.cpp:273
D_Img_Proc_2dFactory::Math_2img_Division
static function< int(Mat *, Mat *, Mat *)> Math_2img_Division(double scale)
Definition: d_img_proc_2dfactory.cpp:1298
D_VisDat_Proc::MorphSimple_Circ_Erosion
static int MorphSimple_Circ_Erosion(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size)
Definition: d_visdat_proc.cpp:5633
D_VisDat_Proc::ForceSize
static int ForceSize(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int width, int heigth, int border_type=BORDER_CONSTANT)
Definition: d_visdat_proc.cpp:4490
D_VisDat_Proc::Wrap_2D_img1
static void Wrap_2D_img1(int *ER, D_VisDat_Slice_2D plane, function< int(Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:658
D_VisDat_Proc::Channel_Supression
static int Channel_Supression(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, bool use_r=true, bool use_g=true, bool use_b=true, bool force_3ch=false)
Definition: d_visdat_proc.cpp:4751
D_VisDat_Dim::size_PixelCount
int size_PixelCount()
Definition: d_visdat_dim.cpp:56
D_VisDat_Dim::size_P
int size_P()
Definition: d_visdat_dim.h:64
D_Img_Proc_2dFactory::Transformation_Watershed_Custom
static function< int(Mat *, Mat *, Mat *, Mat *)> Transformation_Watershed_Custom(int connectivity=8)
Definition: d_img_proc_2dfactory.cpp:1613
D_VisDat_Slice_Nd::extended_Dim
int extended_Dim(int ext_number)
Definition: d_visdat_slice_nd.h:63
D_VisDat_Proc::Filter_Median
static int Filter_Median(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x3d_or_xy2d, int size_y=3, int size_z=3)
Definition: d_visdat_proc.cpp:5090
D_VisDat_Proc::Transformation_Watershed_Custom
static int Transformation_Watershed_Custom(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InFill, D_VisDat_Obj *pVD_In2Marker, D_VisDat_Obj *pVD_FG_Mask, int connectivity=8)
Definition: d_visdat_proc.cpp:6566
D_VisDat_Proc::Filter_Maximum_1C
static int Filter_Maximum_1C(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, size_t mask_size_x, size_t mask_size_y)
Definition: d_visdat_proc.cpp:5710
D_VisDat_Proc::VolumeDim_2nd
static int VolumeDim_2nd(int volume_index)
Definition: d_visdat_proc.cpp:89
D_VisDat_Proc::VolumeDim_1st
static int VolumeDim_1st(int volume_index)
Definition: d_visdat_proc.cpp:63
D_Img_Proc_2dFactory::Filter_RootMeanSquare
static function< int(Mat *, Mat *)> Filter_RootMeanSquare(int size_x, int size_y, int border, int out_depth, bool norm)
Definition: d_img_proc_2dfactory.cpp:359
D_VisDat_Proc::Wrap_2D_img4
static void Wrap_2D_img4(int *ER, D_VisDat_Slice_2D plane, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4)
Definition: d_visdat_proc.cpp:837
c_VOLUME_XYT
@ c_VOLUME_XYT
Definition: d_enum.h:330
D_VisDat_Proc::OverlayOverwrite
static int OverlayOverwrite(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_Background, D_VisDat_Obj *pVD_Overlay, double intensity_overlay, double intensity_backgr)
Definition: d_visdat_proc.cpp:6963
c_VOLUME_YTP
@ c_VOLUME_YTP
Definition: d_enum.h:343
D_Img_Proc_2dFactory::Filter_Stat_Rect
static function< int(Mat *, Mat *)> Filter_Stat_Rect(int size_x, int size_y, int stat, int border_type=BORDER_CONSTANT)
Definition: d_img_proc_2dfactory.cpp:519
D_VisDat_Proc::Draw_Label_Numbers
static int Draw_Label_Numbers(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_Label, double scale, double thickness, bool center)
Definition: d_visdat_proc.cpp:6854
D_VisDat_Proc::Create_VD_FromBinaryFile
static int Create_VD_FromBinaryFile(D_VisDat_Obj *pVD_New, QString QS_Path)
Definition: d_visdat_proc.cpp:2272
d_visdat_range.h
D_VisDat_Obj::Dim
D_VisDat_Dim Dim()
Definition: d_visdat_obj.h:72
D_VisDat_Proc::Calc_Hist_Multi
static int Calc_Hist_Multi(vector< vector< double >> *vv_hist, D_VisDat_Obj *pVD_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_visdat_proc.cpp:8024
ER_list_empty
@ ER_list_empty
Definition: d_enum.h:162
D_VisDat_Obj::MA_Type
int MA_Type
Definition: d_visdat_obj.h:87
D_VisDat_Proc::Threshold_Relative_8U
static int Threshold_Relative_8U(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double thresh_rel)
Definition: d_visdat_proc.cpp:4891
D_Img_Proc_2dFactory::Math_4img_Multiplication
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Math_4img_Multiplication()
Definition: d_img_proc_2dfactory.cpp:1796
D_Img_Proc_2dFactory::GammaSpread
static function< int(Mat *, Mat *)> GammaSpread(double gamma, double in_min, double in_max, double out_min, double out_max, bool force_8bit)
Definition: d_img_proc_2dfactory.cpp:826
D_VisDat_Proc::Dim_Pages2Color
static int Dim_Pages2Color(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int p_red=0, int p_green=1, int p_blue=2)
Definition: d_visdat_proc.cpp:4091
c_PLANE_TP
@ c_PLANE_TP
Definition: d_enum.h:306
D_Img_Proc_2dFactory::Draw_Label_Numbers
static function< int(Mat *, Mat *, Mat *)> Draw_Label_Numbers(double scale, double thickness, bool center)
Definition: d_img_proc_2dfactory.cpp:1482
ER_type_bad
@ ER_type_bad
Definition: d_enum.h:136
D_Img_Proc_2dFactory::Threshold_Realtive
static function< int(Mat *, Mat *)> Threshold_Realtive(double base, double thresh_rel)
Definition: d_img_proc_2dfactory.cpp:244
IMREAD_ANYDEPTH
const int IMREAD_ANYDEPTH
Definition: d_opencv_typedefs.h:109
d_img_proc.h
D_VisDat_Proc::Filter_Mean
static int Filter_Mean(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int border, int out_depth, bool norm)
Definition: d_visdat_proc.cpp:5033
c_VOLUME_XYP
@ c_VOLUME_XYP
Definition: d_enum.h:332
D_VisDat_Proc::Filter_Function
static int Filter_Function(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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_visdat_proc.cpp:5371
D_Img_Proc_2dFactory::Math_1img_Division
static function< int(Mat *, Mat *)> Math_1img_Division(double divisor)
Definition: d_img_proc_2dfactory.cpp:608
D_VisDat_Proc::Math_2img_Subtraction
static int Math_2img_Subtraction(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5835
D_Img_Proc_2dFactory::Normalize
static function< int(Mat *, Mat *)> Normalize(int norm, int type, double min, double max)
Definition: d_img_proc_2dfactory.cpp:104
c_VOLUME_YZS
@ c_VOLUME_YZS
Definition: d_enum.h:340
Vec4b
cv::Vec4b Vec4b
Definition: d_opencv_typedefs.h:57
MORPH_ERODE
const int MORPH_ERODE
Definition: d_opencv_typedefs.h:89
D_VisDat_Proc::Save_VD_List
static int Save_VD_List(D_VisDat_Obj *pVD_Save, QString QS_Dir, QString QS_ImgName, QString QS_Suffix, int DimList=c_DIM_S, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y)
Definition: d_visdat_proc.cpp:1296
ER_channel_bad
@ ER_channel_bad
Definition: d_enum.h:144
Vec3f
cv::Vec3f Vec3f
Definition: d_opencv_typedefs.h:53
D_Img_Proc_2dFactory::Channel_Merge
static function< int(Mat *, Mat *, Mat *, Mat *)> Channel_Merge()
Definition: d_img_proc_2dfactory.cpp:1707
D_VisDat_Proc::Transformation_Distance
static int Transformation_Distance(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int metric, int precision, double spacing_x3d=1.0, double spacing_y3d=1.0, double spacing_z3d=1.0)
Definition: d_visdat_proc.cpp:6401
D_VisDat_Proc::Euler_Number
static int Euler_Number(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, double *euler_number, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:7016
D_Img_Proc::TypeIndex_of_Mat
static int TypeIndex_of_Mat(int channels, int depth)
Definition: d_img_proc.cpp:496
c_PLANE_NUMBER_OF
@ c_PLANE_NUMBER_OF
Definition: d_enum.h:308
Vec2f
cv::Vec2f Vec2f
Definition: d_opencv_typedefs.h:47
D_Img_Proc_2dFactory::Math_2img_Subtraction
static function< int(Mat *, Mat *, Mat *)> Math_2img_Subtraction()
Definition: d_img_proc_2dfactory.cpp:1261
D_Img_Proc_2dFactory::Filter_Mean
static function< int(Mat *, Mat *)> Filter_Mean(int size_x, int size_y, int border, int out_depth, bool norm)
Definition: d_img_proc_2dfactory.cpp:343
D_VisDat_Dim::size_X
int size_X()
Definition: d_visdat_dim.h:59
D_VisDat_Proc::Draw_Contours
static int Draw_Contours(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Target, vector< vector< Point >> vContours, int line_thickness, double value)
Definition: d_visdat_proc.cpp:4593
D_VisDat_Proc::Read_3D_Cuboid
static int Read_3D_Cuboid(Mat *pMA_Out, D_VisDat_Obj *pVD_In, D_VisDat_Slice_3D InPlane)
Definition: d_visdat_proc.cpp:3134
D_VisDat_Slicing::loop_SliceCount
int loop_SliceCount()
Definition: d_visdat_slicing.cpp:288
c_VOLUME_XTS
@ c_VOLUME_XTS
Definition: d_enum.h:336
D_VisDat_Dim::size_Dim
int size_Dim(int idx)
Definition: d_visdat_dim.h:65
D_VisDat_Proc::Threshold_Adaptive_Gauss
static int Threshold_Adaptive_Gauss(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, double sigma, double offset, double scale=1)
Definition: d_visdat_proc.cpp:4931
MORPH_OPEN
const int MORPH_OPEN
Definition: d_opencv_typedefs.h:91
D_VisDat_Proc::Geometric_Reduce
static int Geometric_Reduce(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int geometric, int connectivity, int thickness, uchar value)
Definition: d_visdat_proc.cpp:6757
D_VisDat_Proc::Draw_Label_Numbers_LUT
static int Draw_Label_Numbers_LUT(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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_visdat_proc.cpp:6874
D_Img_Proc_2dFactory::Floodfill_Delta
static function< int(Mat *, Mat *)> Floodfill_Delta(int seed_x, int seed_y, uchar val_new, uchar val_delta)
Definition: d_img_proc_2dfactory.cpp:1046
D_VisDat_Slicing::ProcDims_Count
int ProcDims_Count()
Definition: d_visdat_slicing.cpp:190
D_VisDat_Proc::Morphology_Erosion
static int Morphology_Erosion(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_size_X, int elem_size_Y, int elem_size_Z)
Definition: d_visdat_proc.cpp:5591
D_VisDat_Proc::Dim_Project
static int Dim_Project(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int dim_project=c_DIM_X, int stat=c_STAT_MEAN_ARITMETIC, int out_type=CV_64FC1)
Definition: d_visdat_proc.cpp:3745
MORPH_DILATE
const int MORPH_DILATE
Definition: d_opencv_typedefs.h:88
D_Img_Proc_2dFactory::Threshold_Auto
static function< int(Mat *, Mat *)> Threshold_Auto(int mode, int max, int auto_type)
Definition: d_img_proc_2dfactory.cpp:204
D_VisDat_Proc::Create_VD_Single
static int Create_VD_Single(D_VisDat_Obj *pVD_New, QString QS_Path, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y)
Definition: d_visdat_proc.cpp:1413
D_Stat::Function_SingleStat_8bit
static function< uchar(vector< double >)> Function_SingleStat_8bit(int stat)
Definition: d_stat.cpp:1779
D_Img_Proc_2dFactory::Threshold_Value
static function< int(Mat *, Mat *)> Threshold_Value(int mode, int max, int thresh)
Definition: d_img_proc_2dfactory.cpp:218
D_VisDat_Proc::Math_3img_Addition
static int Math_3img_Addition(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
Definition: d_visdat_proc.cpp:6236
D_VisDat_Proc::Wrap_VD
static int Wrap_VD(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
D_Img_Proc_2dFactory::Math_2img_SubtractionAbsolute
static function< int(Mat *, Mat *, Mat *)> Math_2img_SubtractionAbsolute()
Definition: d_img_proc_2dfactory.cpp:1273
D_VisDat_Slicing::is_3D
bool is_3D()
Definition: d_visdat_slicing.h:62
D_VisDat_Proc::Create_VD_PageVector
static int Create_VD_PageVector(D_VisDat_Obj *pVD_New, QFileInfo FI_Path, D_VisDat_Dim DimNew, vector< int > vI_Pages2Load, vector< D_VisDat_Slice_2D > v2D_PageSource_DimsPosTarget, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y)
Definition: d_visdat_proc.cpp:2089
D_VisDat_Range::Dim4Range_DimIntersect
D_VisDat_Dim Dim4Range_DimIntersect()
Definition: d_visdat_range.h:95
D_VisDat_Proc::Labeling
static int Labeling(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int connecivity, int out_depth)
Definition: d_visdat_proc.cpp:4997
c_PLANE_TS
@ c_PLANE_TS
Definition: d_enum.h:305
D_Img_Proc_2dFactory::ForceSize
static function< int(Mat *, Mat *)> ForceSize(int width, int heigth, int border_type=BORDER_CONSTANT)
Definition: d_img_proc_2dfactory.cpp:1020
D_VisDat_Proc::Crop_Rect_Rel
static int Crop_Rect_Rel(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double x1_rel, double y1_rel, double x2_rel, double y2_rel)
Definition: d_visdat_proc.cpp:4323
D_VisDat_Proc::Wrap_3D_img3
static void Wrap_3D_img3(int *ER, D_VisDat_Slice_3D plane, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
Definition: d_visdat_proc.cpp:1063
d_component_analysis.h
CAP_PROP_FRAME_HEIGHT
const int CAP_PROP_FRAME_HEIGHT
Definition: d_opencv_typedefs.h:104
D_VisDat_Proc::Math_2img_BitwiseXor
static int Math_2img_BitwiseXor(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5897
D_VisDat_Proc::Convert_Angle2Color_Rad
static int Convert_Angle2Color_Rad(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InAngleRad, uchar Saturation=255, uchar Value=255)
Definition: d_visdat_proc.cpp:4826
c_VOLUME_XZT
@ c_VOLUME_XZT
Definition: d_enum.h:333
D_Img_Proc_2dFactory::Transformation_Watershed_Auto
static function< int(Mat *, Mat *)> Transformation_Watershed_Auto(double distance, bool include_not_seeded, bool conv_8bit, bool exclude_border)
Definition: d_img_proc_2dfactory.cpp:667
D_VisDat_Proc::Wrap_VD
static int Wrap_VD(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
D_VisDat_Proc::Math_3img_BitwiseAnd
static int Math_3img_BitwiseAnd(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
Definition: d_visdat_proc.cpp:6282
D_Img_Proc_2dFactory::RadiometricStereo
static function< int(Mat *, Mat *, Mat *, Mat *)> RadiometricStereo(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_2dfactory.cpp:1720
D_VisDat_Slice_2D
The D_VisDat_Slice_2D class Represents a 2D slice through a D_VisDat_Obj.
Definition: d_visdat_slice_2d.h:18
D_VisDat_Proc::Calc_Hist_1C_8bit
static int Calc_Hist_1C_8bit(vector< double > *v_hist, D_VisDat_Obj *pVD_In, bool uniform, bool accum)
Definition: d_visdat_proc.cpp:8248
c_STEREO_ALBEDO
@ c_STEREO_ALBEDO
Definition: d_enum.h:1254
Vec2d
cv::Vec2d Vec2d
Definition: d_opencv_typedefs.h:46
D_VisDat_Proc::GammaSpread_Quantiles
static int GammaSpread_Quantiles(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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_visdat_proc.cpp:6822
D_Img_Proc_3dFactory::Morphology_Dilation
static function< int(Mat *, Mat *)> Morphology_Dilation(int size_x=3, int size_y=3, int size_z=3)
Definition: d_img_proc_3dfactory.cpp:108
D_VisDat_Slice_3D
The D_VisDat_Slice_3D class Represents a 3D slice through a D_VisDat_Obj.
Definition: d_visdat_slice_3d.h:18
D_VisDat_Proc
The D_VisDat_Proc class 6D image processing and efficeint loops of image processing performed on stac...
Definition: d_visdat_proc.h:73
D_Img_Proc_3dFactory::Filter_Function_8bit
static function< int(Mat *, Mat *, Mat *)> Filter_Function_8bit(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_3dfactory.cpp:62
d_component_list.h
D_VisDat_Proc::Threshold_Absolute
static int Threshold_Absolute(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double thresh)
Definition: d_visdat_proc.cpp:4875
Vec4i
cv::Vec4i Vec4i
Definition: d_opencv_typedefs.h:60
c_COMPLEX2REAL_RE_IM
@ c_COMPLEX2REAL_RE_IM
Definition: d_enum.h:978
D_VisDat_Proc::Math_4img_Addition
static int Math_4img_Addition(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
Definition: d_visdat_proc.cpp:6304
D_Img_Proc_2dFactory::Math_2img_Function_Complex
static function< int(Mat *, Mat *, Mat *)> Math_2img_Function_Complex(function< complex< double >(complex< double > x, complex< double > y)> function_img1_img2)
Definition: d_img_proc_2dfactory.cpp:1410
D_VisDat_Proc::Wrap_3D_img0
static void Wrap_3D_img0(int *ER, D_VisDat_Slice_3D plane, function< int(Mat *pMA_Out)> img_proc, D_VisDat_Obj *pVD_Out)
Definition: d_visdat_proc.cpp:938
D_VisDat_Proc::Wrap_2D_img2
static void Wrap_2D_img2(int *ER, D_VisDat_Slice_2D plane, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
Definition: d_visdat_proc.cpp:699
c_PLANE_YT
@ c_PLANE_YT
Definition: d_enum.h:299
D_VisDat_Proc::Wrap_3D_img2
static void Wrap_3D_img2(int *ER, D_VisDat_Slice_3D plane, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
Definition: d_visdat_proc.cpp:1004
D_Img_Proc_3dFactory::Euler_Number
static function< int(Mat *, Mat *)> Euler_Number(double *euler_number)
Definition: d_img_proc_3dfactory.cpp:147
D_VisDat_Proc::Math_1img_Root
static int Math_1img_Root(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:5794
D_VisDat_Proc::Morphology_Skeleton
static int Morphology_Skeleton(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_type, int elem_size_X, int elem_size_Y, int border_type)
Definition: d_visdat_proc.cpp:5547
D_Img_Proc_2dFactory::Histogram_Equalize
static function< int(Mat *, Mat *)> Histogram_Equalize()
Definition: d_img_proc_2dfactory.cpp:815
D_VisDat_Slicing
The D_VisDat_Slicing class Describes how a D_VisDat_Obj shall be sliced.
Definition: d_visdat_slicing.h:50
c_SLICE_3D_XYZ
@ c_SLICE_3D_XYZ
Definition: d_enum.h:270
c_PLANE_ZT
@ c_PLANE_ZT
Definition: d_enum.h:302
D_VisDat_Proc::Filter_Laplace
static int Filter_Laplace(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, int border, int out_depth, double scale, double delta)
Definition: d_visdat_proc.cpp:5205
c_VOLUME_XYZ
@ c_VOLUME_XYZ
Definition: d_enum.h:329
D_Img_Proc_2dFactory::Math_3img_Addition
static function< int(Mat *, Mat *, Mat *, Mat *)> Math_3img_Addition()
Definition: d_img_proc_2dfactory.cpp:1627
D_VisDat_Proc::Create_VD_List
static int Create_VD_List(D_VisDat_Obj *pVD_New, QStringList QSL_InPaths, int DimList=c_DIM_S, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y)
Definition: d_visdat_proc.cpp:1549
D_Img_Proc_2dFactory::Channel_Supression
static function< int(Mat *, Mat *)> Channel_Supression(bool use_r=true, bool use_g=true, bool use_b=true, bool force_3ch=false)
Definition: d_img_proc_2dfactory.cpp:143
D_VisDat_Proc::Morphology_LocMax_Rect
static int Morphology_LocMax_Rect(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_size_X=3, int elem_size_Y=3)
Definition: d_visdat_proc.cpp:5675
D_Img_Proc_2dFactory::Load_From_Path_Raw
static function< int(Mat *)> Load_From_Path_Raw(string path, int width, int height, int out_type)
Definition: d_img_proc_2dfactory.cpp:34
d_visdat_slice_2d.h
D_VisDat_Proc::Sign2Color
static int Sign2Color(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, bool norm=false)
Definition: d_visdat_proc.cpp:4719
D_VisDat_Proc::Create_VD_ValueFunction_Complex
static int Create_VD_ValueFunction_Complex(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, function< complex< double >(complex< double > x, complex< double > y)> value_function)
Definition: d_visdat_proc.cpp:2183
D_VisDat_Proc::Create_VD_Video
static int Create_VD_Video(D_VisDat_Obj *pVD_New, QString QS_VideoPath, int DimTime=c_DIM_T, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y, bool force8UC1=false)
Definition: d_visdat_proc.cpp:1730
c_RAND_NORMAL
@ c_RAND_NORMAL
Definition: d_enum.h:1194
ER_other
@ ER_other
Definition: d_enum.h:134
c_VOLUME_YZP
@ c_VOLUME_YZP
Definition: d_enum.h:341
D_Img_Proc_2dFactory::Draw_Label_Text
static function< int(Mat *, Mat *, Mat *)> Draw_Label_Text(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_2dfactory.cpp:1518
D_Img_Proc_2dFactory::Filter_Bilateral
static function< int(Mat *, Mat *)> Filter_Bilateral(int diameter, int border, double sigma_color, double sigma_space)
Definition: d_img_proc_2dfactory.cpp:453
ER_dim_Y_missmatch
@ ER_dim_Y_missmatch
Definition: d_enum.h:152
D_VisDat_Proc::Save_VD_Single
static int Save_VD_Single(D_VisDat_Obj *pVD_Save, QString QS_SavePath, D_VisDat_Slice_2D slice)
Definition: d_visdat_proc.cpp:1274
c_PLANE_YZ
@ c_PLANE_YZ
Definition: d_enum.h:298
D_VisDat_Proc::Dim_Crop
static int Dim_Crop(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Range crop_range)
Definition: d_visdat_proc.cpp:3591
D_VisDat_Proc::D_VisDat_Proc
D_VisDat_Proc()
Definition: d_visdat_proc.cpp:11
D_VisDat_Proc::Filter_Function_8bit
static int Filter_Function_8bit(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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_visdat_proc.cpp:5419
D_Img_Proc_2dFactory::Math_2img_Multiplication
static function< int(Mat *, Mat *, Mat *)> Math_2img_Multiplication(double scale)
Definition: d_img_proc_2dfactory.cpp:1285
D_Img_Proc_2dFactory::Math_4img_BitwiseAnd
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Math_4img_BitwiseAnd()
Definition: d_img_proc_2dfactory.cpp:1825
D_VisDat_Proc::Math_2img_Minimum
static int Math_2img_Minimum(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5907
d_visdat_slicing.h
D_VisDat_Proc::MorphSimple_Circ_Opening
static int MorphSimple_Circ_Opening(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size)
Definition: d_visdat_proc.cpp:5647
D_Img_Proc_2dFactory::DistancesStat
static function< int(Mat *, Mat *)> DistancesStat(function< double(vector< double >)> F_Stat)
Definition: d_img_proc_2dfactory.cpp:861
D_Img_Proc_2dFactory::Math_1img_Root
static function< int(Mat *, Mat *)> Math_1img_Root()
Definition: d_img_proc_2dfactory.cpp:632
D_VisDat_Proc::Math_2img_SubtractionAbsolute
static int Math_2img_SubtractionAbsolute(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1)
Definition: d_visdat_proc.cpp:5845
D_VisDat_Proc::Threshold_Absolute_8U
static int Threshold_Absolute_8U(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max, int thresh)
Definition: d_visdat_proc.cpp:4863
D_Img_Proc_2dFactory::Floodfill_Border
static function< int(Mat *, Mat *)> Floodfill_Border(double new_val)
Definition: d_img_proc_2dfactory.cpp:1034
c_DIM_P
@ c_DIM_P
Definition: d_enum.h:240
D_Img_Proc_2dFactory::Matrix_Product
static function< int(Mat *, Mat *, Mat *)> Matrix_Product()
Definition: d_img_proc_2dfactory.cpp:1423
D_Img_Proc_3dFactory::InterferometerMichelson
static function< int(Mat *)> InterferometerMichelson(int scene_size_x_px, int scene_size_y_px, int scene_size_z_px, double scale_px2um, double wavelength_um, double dist_source_um, double dist_detector_um, double dist_mirror1_um, double dist_mirror2_um, double angle_mirror1_x, double angle_mirror1_y, double angle_mirror2_x, double angle_mirror2_y, bool intensity_notfield, bool beam_atSO_SO, bool beam_atSO_M1_SO, bool beam_atSO_SP_M2_SP_SO, bool beam_atM1_SO, bool beam_atM1_M1_SO, bool beam_atM2_SP_SO, bool beam_atM2_M2_SP_SO, bool beam_atDE_SP_M1_SO, bool beam_atDE_M2_SP_SO)
Definition: d_img_proc_3dfactory.cpp:173
D_VisDat_Proc::MorphSimple_Circ_Closing
static int MorphSimple_Circ_Closing(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size)
Definition: d_visdat_proc.cpp:5661
d_visdat_slice_1d.h
D_VisDat_Range::Dim4Range_Init
void Dim4Range_Init(D_VisDat_Dim *range_in_this_dim)
Definition: d_visdat_range.cpp:57
D_VisDat_Proc::Math_2img_AdditionWeighted
static int Math_2img_AdditionWeighted(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, double weight_1, double weight_2, double weight_sum)
Definition: d_visdat_proc.cpp:5822
D_Img_Proc_2dFactory::Channel_Split
static function< int(Mat *, Mat *)> Channel_Split(int channel)
Definition: d_img_proc_2dfactory.cpp:131
D_Img_Proc_2dFactory::Morphology_LocMax_Rect
static function< int(Mat *, Mat *)> Morphology_LocMax_Rect(int elem_size_X=3, int elem_size_Y=3)
Definition: d_img_proc_2dfactory.cpp:1093
D_VisDat_Proc::Stitch_Border_rel_custom
static int Stitch_Border_rel_custom(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, double border_R, double border_B, double overlap_R, double overlap_B)
Definition: d_visdat_proc.cpp:4259
ER_type_missmatch
@ ER_type_missmatch
Definition: d_enum.h:137
D_VisDat_Proc::Pad_Border
static int Pad_Border(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int size_z, int type=BORDER_CONSTANT, double border_value=0)
Definition: d_visdat_proc.cpp:4435
D_VisDat_Proc::Filter_Canny
static int Filter_Canny(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, double thres_low, double thres_high, bool L2_gradient)
Definition: d_visdat_proc.cpp:5241
MORPH_ELLIPSE
const int MORPH_ELLIPSE
Definition: d_opencv_typedefs.h:87
D_VisDat_Obj::type
int type()
Definition: d_visdat_obj.h:75
D_Img_Proc_2dFactory::OverlayOverwrite
static function< int(Mat *, Mat *)> OverlayOverwrite(uchar r, uchar g, uchar b, double intensity_overlay)
Definition: d_img_proc_2dfactory.cpp:886
c_DIM_NUMBER_OF
@ c_DIM_NUMBER_OF
Definition: d_enum.h:241
ER_VideoCaptureClosed
@ ER_VideoCaptureClosed
Definition: d_enum.h:166
D_Img_Proc_2dFactory::Shading_Correct
static function< int(Mat *, Mat *, Mat *)> Shading_Correct()
Definition: d_img_proc_2dfactory.cpp:1119
D_Img_Proc_2dFactory::Transformation_Distance
static function< int(Mat *, Mat *)> Transformation_Distance(int metric, int precision)
Definition: d_img_proc_2dfactory.cpp:654
D_Img_Proc_2dFactory::Generate_byValueFunction
static function< int(Mat *)> Generate_byValueFunction(int width, int height, function< double(double x, double y)> value_function)
Definition: d_img_proc_2dfactory.cpp:8
d_img_proc_2dfactory.h
D_Img_Proc_2dFactory::Transformation_Fourier
static function< int(Mat *, Mat *, Mat *)> Transformation_Fourier(bool complex_input=true, 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_2dfactory.cpp:1435
D_VisDat_Proc::Morphology_Dilation
static int Morphology_Dilation(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int elem_size_X, int elem_size_Y, int elem_size_Z)
Definition: d_visdat_proc.cpp:5563
D_Img_Proc_2dFactory::Math_1img_Addition
static function< int(Mat *, Mat *)> Math_1img_Addition(double summmand)
Definition: d_img_proc_2dfactory.cpp:572
d_opencv_typedefs.h
D_VisDat_Proc::Filter_Eilenstein
static int Filter_Eilenstein(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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)
D_Img_Proc_2dFactory::Convert_Color2Mono
static function< int(Mat *, Mat *)> Convert_Color2Mono(int col2mono_code)
Definition: d_img_proc_2dfactory.cpp:92
D_VisDat_Obj::pDim
D_VisDat_Dim * pDim()
Definition: d_visdat_obj.h:73
c_PLANE_ZS
@ c_PLANE_ZS
Definition: d_enum.h:303
D_VisDat_Proc::Floodfill_Border
static int Floodfill_Border(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double new_val)
Definition: d_visdat_proc.cpp:4514
c_VOLUME_YSP
@ c_VOLUME_YSP
Definition: d_enum.h:344
D_VisDat_Proc::Create_VD_ListPaged
static int Create_VD_ListPaged(D_VisDat_Obj *pVD_New, QStringList QSL_InPaths, int DimList=c_DIM_S, int DimPage=c_DIM_P, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y)
Definition: d_visdat_proc.cpp:1637
D_Img_Proc_2dFactory::Threshold_RankOrderOffsetHysteresis
static function< int(Mat *, Mat *)> Threshold_RankOrderOffsetHysteresis(double radius, double quantile, double thresh_offset_indicator, double thresh_offset_hysteresis, bool labeling=false)
Definition: d_img_proc_2dfactory.cpp:288
c_CONNECT_CLOSEST
@ c_CONNECT_CLOSEST
Definition: d_enum.h:1266
D_VisDat_Proc::Filter_Sobel
static int Filter_Sobel(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size, int border, int out_depth, double scale, double delta, int d_x, int d_y)
Definition: d_visdat_proc.cpp:5222
D_VisDat_Header
The D_VisDat_Header class Contains the meta data of a D_VisDat_Obj.
Definition: d_visdat_header.h:37
c_VOLUME_XTP
@ c_VOLUME_XTP
Definition: d_enum.h:337
D_VisDat_Proc::ValueStat
static int ValueStat(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_InLabel, D_VisDat_Obj *pVD_InValue, int stat, int connectivity=8)
Definition: d_visdat_proc.cpp:6717
D_VisDat_Proc::Convert_UShort
static int Convert_UShort(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
D_VisDat_Proc::Create_VD_ValueFunction
static int Create_VD_ValueFunction(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, function< double(double, double)> value_function)
Definition: d_visdat_proc.cpp:2165
D_VisDat_Slice_Nd::pos_Dims
Vec< int, c_DIM_NUMBER_OF > pos_Dims()
Definition: d_visdat_slice_nd.cpp:35
D_VisDat_Proc::DistancesStat
static int DistancesStat(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, function< double(vector< double >)> F_Stat)
Definition: d_visdat_proc.cpp:7543
D_Img_Proc_2dFactory::Filter_Stat
static function< int(Mat *, Mat *, Mat *)> Filter_Stat(int stat, int border_type=BORDER_CONSTANT)
Definition: d_img_proc_2dfactory.cpp:1220
D_VisDat_Slicing::loop2D_SliceCurrent
D_VisDat_Slice_2D loop2D_SliceCurrent()
Definition: d_visdat_slicing.cpp:309
D_Img_Proc_2dFactory::Crop_Rect_Abs
static function< int(Mat *, Mat *)> Crop_Rect_Abs(int x, int y, int width, int height)
Definition: d_img_proc_2dfactory.cpp:935
D_VisDat_Proc::Convert_Color2Mono
static int Convert_Color2Mono(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int col2mono_code)
Definition: d_visdat_proc.cpp:4633
ER_dim_missmatch
@ ER_dim_missmatch
Definition: d_enum.h:148
D_VisDat_Proc::Fill_Holes
static int Fill_Holes(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:5014
D_VisDat_Proc::Wrap_VD
static int Wrap_VD(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2)
D_VisDat_Dim::loop_Next
bool loop_Next()
Definition: d_visdat_dim.cpp:151
D_VisDat_Proc::Filter_Eilenstein_Greater_Sum
static int Filter_Eilenstein_Greater_Sum(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x=3, int size_y=3, int size_z=3)
Definition: d_visdat_proc.cpp:5350
ER_dim_X_missmatch
@ ER_dim_X_missmatch
Definition: d_enum.h:150
D_Img_Proc_2dFactory::Morphology_Reconstruction
static function< int(Mat *, Mat *, Mat *, Mat *)> Morphology_Reconstruction(double quantil=1)
Definition: d_img_proc_2dfactory.cpp:1735
d_visdat_obj.h
d_enum.h
D_VisDat_Proc::Math_4img_BitwiseAnd
static int Math_4img_BitwiseAnd(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3)
Definition: d_visdat_proc.cpp:6354
D_VisDat_Dim::isEqual
bool isEqual(D_VisDat_Dim VD_compare)
Definition: d_visdat_dim.cpp:132
D_VisDat_Proc::Create_VD_Random
static int Create_VD_Random(D_VisDat_Obj *pVD_New, D_VisDat_Dim dim_new, int type, double min, double max, double a, double b, double c, double d, double e, double f)
Definition: d_visdat_proc.cpp:2232
D_VisDat_Dim::set_size_Dim
void set_size_Dim(int idx, int val)
Definition: d_visdat_dim.h:96
D_VisDat_Dim::loop_PosCurrent_Offset
Vec< int, c_DIM_NUMBER_OF > loop_PosCurrent_Offset()
Definition: d_visdat_dim.cpp:168
D_VisDat_Proc::Math_2img_Compare
static int Math_2img_Compare(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, int comp)
Definition: d_visdat_proc.cpp:5927
D_Img_Proc_3dFactory::Neighborhood_Configs
static function< int(Mat *, Mat *)> Neighborhood_Configs()
Definition: d_img_proc_3dfactory.cpp:136
D_VisDat_Proc::FeatureContext_Select
static int FeatureContext_Select(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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_visdat_proc.cpp:6646
D_VisDat_Slice_Nd::set_Pos_T
void set_Pos_T(int T)
Definition: d_visdat_slice_nd.h:71
QSL_DimIndices
const QStringList QSL_DimIndices
Definition: d_enum.h:251
D_VisDat_Proc::Wrap_3D_img4
static void Wrap_3D_img4(int *ER, D_VisDat_Slice_3D plane, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4)
Definition: d_visdat_proc.cpp:1142
D_VisDat_Proc::Calc_MinMax
static int Calc_MinMax(D_VisDat_Obj *pVD_In, double *min_ext, double *max_ext)
Definition: d_visdat_proc.cpp:7660
Vec
cv::Vec< T, N > Vec
Definition: d_opencv_typedefs.h:44
D_VisDat_Slicing::ProcDim
int ProcDim(int p)
Definition: d_visdat_slicing.cpp:200
ER_parameter_bad
@ ER_parameter_bad
Definition: d_enum.h:142
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_VisDat_Dim::loop_PosCurrent
Vec< int, c_DIM_NUMBER_OF > loop_PosCurrent()
Definition: d_visdat_dim.h:128
D_Img_Proc_2dFactory::Filter_Stat_Circular
static function< int(Mat *, Mat *)> Filter_Stat_Circular(double radius, int stat, int border_type=BORDER_CONSTANT)
Definition: d_img_proc_2dfactory.cpp:505
D_VisDat_Proc::Stitch_Border_abs
static int Stitch_Border_abs(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In_Main, D_VisDat_Obj *pVD_In_R, D_VisDat_Obj *pVD_In_B, D_VisDat_Obj *pVD_In_BR, int border_R, int border_B, int overlap_R, int overlap_B, Stitcher::Mode mode=Stitcher::SCANS)
Definition: d_visdat_proc.cpp:4164
c_VOLUME_XSP
@ c_VOLUME_XSP
Definition: d_enum.h:338
BORDER_DEFAULT
const int BORDER_DEFAULT
Definition: d_opencv_typedefs.h:78
D_VisDat_Proc::Calc_Hist_1C
static int Calc_Hist_1C(vector< double > *v_hist, D_VisDat_Obj *pVD_In, bool uniform, bool accum, unsigned int class_count, double *min_ext, double *max_ext, double *step_ext)
Definition: d_visdat_proc.cpp:8089
D_VisDat_Proc::Dim_Pick
static int Dim_Pick(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, vector< int > pick_pos)
Definition: d_visdat_proc.cpp:3413
D_VisDat_Proc::Draw_Label_Text
static int Draw_Label_Text(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, D_VisDat_Obj *pVD_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_visdat_proc.cpp:6900
D_Img_Proc_2dFactory::Grab_Color
static function< int(Mat *, Mat *)> Grab_Color(int color_space, int out_mode, vector< uchar > min, vector< uchar > max)
Definition: d_img_proc_2dfactory.cpp:317
D_VisDat_Proc::Math_1img_Log
static int Math_1img_Log(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
Definition: d_visdat_proc.cpp:5803
c_VOLUME_XZS
@ c_VOLUME_XZS
Definition: d_enum.h:334
D_VisDat_Proc::Math_2img_Multiplication
static int Math_2img_Multiplication(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, double scale)
Definition: d_visdat_proc.cpp:5855
D_VisDat_Proc::Color_Grab
static int Color_Grab(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int color_space, int out_mode, vector< uchar > min, vector< uchar > max)
Definition: d_visdat_proc.cpp:4976
D_Img_Proc_2dFactory::Morphology_Skeleton
static function< int(Mat *, Mat *)> Morphology_Skeleton(int elem_type, int elem_size_X, int elem_size_Y, int border_type)
Definition: d_img_proc_2dfactory.cpp:1078
D_VisDat_Proc::Visualize_to8bit
static int Visualize_to8bit(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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)
Definition: d_visdat_proc.cpp:4799
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_VisDat_Proc::Morphology_Reconstruction
static int Morphology_Reconstruction(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_Seed, D_VisDat_Obj *pVD_Limit, D_VisDat_Obj *pVD_Mask, double quantil=1)
Definition: d_visdat_proc.cpp:5695
D_Img_Proc_2dFactory::Feature_Select
static function< int(Mat *, Mat *)> Feature_Select(int feature, double f_min, double f_max, int connectivity)
Definition: d_img_proc_2dfactory.cpp:729
D_VisDat_Proc::Wrap_VD
static int Wrap_VD(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In1, Mat *pMA_In2, Mat *pMA_In3, Mat *pMA_In4)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In1, D_VisDat_Obj *pVD_In2, D_VisDat_Obj *pVD_In3, D_VisDat_Obj *pVD_In4)
D_VisDat_Dim::info
QString info()
Definition: d_visdat_dim.cpp:141
D_VisDat_Slice_Nd::set_Pos_Dim
void set_Pos_Dim(int d, int pos)
Definition: d_visdat_slice_nd.h:74
D_Img_Proc_2dFactory::Math_2img_Function_8bit
static function< int(Mat *, Mat *, Mat *)> Math_2img_Function_8bit(function< uchar(double x, double y)> function_img1_img2)
Definition: d_img_proc_2dfactory.cpp:1397
D_Img_Proc_2dFactory::Math_3img_BitwiseOr
static function< int(Mat *, Mat *, Mat *, Mat *)> Math_3img_BitwiseOr()
Definition: d_img_proc_2dfactory.cpp:1694
D_VisDat_Proc::Wrap_VD
static int Wrap_VD(D_VisDat_Slicing slice, function< int(Mat *pMA_Out)> img_proc, D_VisDat_Obj *pVD_Out)
D_VisDat_Proc::Normalize
static int Normalize(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int norm, int type, double min, double max)
Definition: d_visdat_proc.cpp:4647
D_VisDat_Proc::Create_VD_PageVector_or0
static int Create_VD_PageVector_or0(D_VisDat_Obj *pVD_New, QFileInfo FI_Path, D_VisDat_Dim DimNew, vector< int > vI_Pages2Load, vector< D_VisDat_Slice_2D > v2D_PageSource_DimsPosTarget, int DimImgX=c_DIM_X, int DimImgY=c_DIM_Y, bool full_0_instead=false, int type_if_full_0=CV_8UC1)
Definition: d_visdat_proc.cpp:2146
D_Img_Proc_2dFactory::Math_2img_BitwiseXor
static function< int(Mat *, Mat *, Mat *)> Math_2img_BitwiseXor()
Definition: d_img_proc_2dfactory.cpp:1335
D_Img_Proc_2dFactory::Filter_RankOrder
static function< int(Mat *, Mat *, Mat *)> Filter_RankOrder(double quantil)
Definition: d_img_proc_2dfactory.cpp:1144
ER_dim_X_out_of_range
@ ER_dim_X_out_of_range
Definition: d_enum.h:149
D_Img_Proc_2dFactory::Stitch_Border_rel
static function< int(Mat *, Mat *, Mat *, Mat *, Mat *)> Stitch_Border_rel(double border_R, double border_B, double overlap_R, double overlap_B, Stitcher::Mode mode=Stitcher::SCANS)
Definition: d_img_proc_2dfactory.cpp:1872
ER_dim_T_out_of_range
@ ER_dim_T_out_of_range
Definition: d_enum.h:155
D_Img_Proc_2dFactory::Morphology_Elemental
static function< int(Mat *, Mat *)> Morphology_Elemental(int morph_type, int elem_type, int elem_size_X, int elem_size_Y, int border_type, int iterations)
Definition: d_img_proc_2dfactory.cpp:1061
D_VisDat_Proc::Create_VD_Video_Proc
static int Create_VD_Video_Proc(D_VisDat_Obj *pVD_New, QFileInfo FI_VideoPath, int blur_size, double blur_sigma, int t1_size, function< double(vector< double >)> f_stat_t1, int t2_size, function< double(vector< double >)> f_stat_t2, int t_offset, function< double(double, double)> f_combi, bool force8bit)
Definition: d_visdat_proc.cpp:1873
D_VisDat_Proc::Filter_Stat_Rect
static int Filter_Stat_Rect(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int size_x, int size_y, int stat, int border_type=BORDER_CONSTANT)
Definition: d_visdat_proc.cpp:5507
D_VisDat_Proc::HDR
static int HDR(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int dim_exposures=c_DIM_S, double exp_min=20, double exp_fac=2, bool project_do=true, int stat=c_STAT_MEAN_ARITMETIC, bool thres_do=true, double thres_low=16, double thres_high=240, double val_default=0)
Definition: d_visdat_proc.cpp:7234
D_Img_Proc_2dFactory::Threshold_Absolute
static function< int(Mat *, Mat *)> Threshold_Absolute(double thresh)
Definition: d_img_proc_2dfactory.cpp:232
D_Img_Proc_3dFactory::Filter_Eilenstein_Greater_Sum
static function< int(Mat *, Mat *)> Filter_Eilenstein_Greater_Sum(int size_x=3, int size_y=3, int size_z=3)
Definition: d_img_proc_3dfactory.cpp:94
D_VisDat_Proc::PlaneDim_1st
static int PlaneDim_1st(int plane_index)
Definition: d_visdat_proc.cpp:16
D_VisDat_Proc::VolumeDim_3rd
static int VolumeDim_3rd(int volume_index)
Definition: d_visdat_proc.cpp:115
D_VisDat_Slice_Nd::ER_OutOfrange
int ER_OutOfrange(D_VisDat_Dim dim_container)
Definition: d_visdat_slice_nd.cpp:83
ER_dim_3D_only
@ ER_dim_3D_only
Definition: d_enum.h:165
d_visdat_proc.h
D_VisDat_Proc::ClassBorder_kNN
static int ClassBorder_kNN(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_Class0, D_VisDat_Obj *pVD_Class1, int n)
Definition: d_visdat_proc.cpp:7216
D_Img_Proc_2dFactory::Transformation_Watershed
static function< int(Mat *, Mat *, Mat *)> Transformation_Watershed()
Definition: d_img_proc_2dfactory.cpp:1455
c_VOLUME_YZT
@ c_VOLUME_YZT
Definition: d_enum.h:339
D_VisDat_Proc::Threshold_RankOrderOffsetHysteresis
static int Threshold_RankOrderOffsetHysteresis(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double radius, double quantile, double thresh_offset_indicator, double thresh_offset_hysteresis, bool labeling=false)
Definition: d_visdat_proc.cpp:4953
D_VisDat_Proc::Convert_Depth_NoScaling
static int Convert_Depth_NoScaling(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int depth)
Definition: d_visdat_proc.cpp:4666
D_Img_Proc_2dFactory::Math_1img_Inversion
static function< int(Mat *, Mat *)> Math_1img_Inversion()
Definition: d_img_proc_2dfactory.cpp:561
D_Img_Proc_2dFactory::Math_2img_Function
static function< int(Mat *, Mat *, Mat *)> Math_2img_Function(function< double(double x, double y)> function_img1_img2)
Definition: d_img_proc_2dfactory.cpp:1384
D_VisDat_Proc::Threshold_Adaptive
static int Threshold_Adaptive(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int mode, int max, int mask_type, int mask_size, double offset)
Definition: d_visdat_proc.cpp:4917
D_Img_Proc_2dFactory::Filter_Gabor
static function< int(Mat *, Mat *)> Filter_Gabor(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_2dfactory.cpp:468
c_PLANE_YS
@ c_PLANE_YS
Definition: d_enum.h:300
D_Img_Proc_2dFactory::Filter_RankOrder_Rect
static function< int(Mat *, Mat *)> Filter_RankOrder_Rect(double quantil, int size_x, int size_y)
Definition: d_img_proc_2dfactory.cpp:547
c_SLICE_2D_XY
@ c_SLICE_2D_XY
Definition: d_enum.h:267
D_VisDat_Proc::Filter_RankOrder_Circular
static int Filter_RankOrder_Circular(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double quantil, double radius)
Definition: d_visdat_proc.cpp:5145
d_img_proc_3d.h
D_VisDat_Slicing::loop2D_SliceByIndex
D_VisDat_Slice_2D loop2D_SliceByIndex(int i)
Definition: d_visdat_slicing.cpp:365
D_VisDat_Proc::Math_1img_Subtraction
static int Math_1img_Subtraction(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double subtrahend)
Definition: d_visdat_proc.cpp:5754
c_STAT_MEAN_ARITMETIC
@ c_STAT_MEAN_ARITMETIC
Definition: d_enum.h:740
D_VisDat_Proc::Feature_Select
static int Feature_Select(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int feature, double f_min, double f_max, int connectivity)
Definition: d_visdat_proc.cpp:6626
D_VisDat_Proc::Math_2img_Division
static int Math_2img_Division(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In0, D_VisDat_Obj *pVD_In1, double scale)
Definition: d_visdat_proc.cpp:5866
D_VisDat_Proc::Feature_Connect
static int Feature_Connect(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_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_visdat_proc.cpp:6691
D_Img_Proc_2dFactory::Filter_Function_8bit
static function< int(Mat *, Mat *, Mat *)> Filter_Function_8bit(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_2dfactory.cpp:1202
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_VisDat_Proc::Wrap_VD_SameSizeType
static int Wrap_VD_SameSizeType(D_VisDat_Slicing slice, function< int(Mat *pMA_Out, Mat *pMA_In)> img_proc, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In)
D_VisDat_Proc::Crop_Rect_Rot
static int Crop_Rect_Rot(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int x, int y, int width, int height, double angle)
Definition: d_visdat_proc.cpp:4381
d_stat.h
D_VisDat_Proc::Crop_Circle
static int Crop_Circle(D_VisDat_Slicing slice, D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, int x, int y, int r)
Definition: d_visdat_proc.cpp:4409
Vec3s
cv::Vec3s Vec3s
Definition: d_opencv_typedefs.h:55
c_PLANE_SP
@ c_PLANE_SP
Definition: d_enum.h:307
d_visdat_header.h
ER_empty
@ ER_empty
Definition: d_enum.h:135
D_VisDat_Proc::GammaSpread
static int GammaSpread(D_VisDat_Obj *pVD_Out, D_VisDat_Obj *pVD_In, double gamma, double in_min, double in_max, double out_min, double out_max, bool force_8bit)
Definition: d_visdat_proc.cpp:6793