-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEdgeDetectionUnsigned.cpp
More file actions
91 lines (70 loc) · 2.6 KB
/
Copy pathEdgeDetectionUnsigned.cpp
File metadata and controls
91 lines (70 loc) · 2.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include "CImg.h"
#include "Global.h"
#include "Commons.h"
#include "ComputeGradient.h"
#include "continuousscaleComputation.h"
#include <iostream>
#include <string>
#include <time.h>
using namespace std;
using namespace cimg_library;
int main() {
string curimagefile;
while(true){
cout<<"Enter Image Name: ";
cin>>curimagefile;
cout<<"Enter dimension of the image: ";
cin>>Xdim>>Ydim;
confidence=0.05;
bool b=true;
gaussvar=1;
int kernelsize=7;
cout<<"Enter gaussian kernel size: ";
cin>>kernelsize;
cout<<"Enter stdV for the gaussian kernel: ";
cin>>gaussgradvar;
cout<<"Enter Color Gaussian variance: ";
cin>>colorgaussvar;
cout<<"Enter maximum Scale: ";
cin>>maxscale;
cout<<"Enter Sampling Rate: ";
cin>>sampling_rate;
cout<<"Enter Noise standard deviation: ";
cin>>snr;
snr*=3;
// cout<<"Enter the pixel of interest: ";
// cin>>Xc>>Yc;
// cout<<"Enter intermediate scale: ";
// cin>>intermediatescale;
string sfname=basepath+"gradMap.txt";
sout.open(sfname.c_str());
no_of_interpolating_points=3;
imagefilename=basepath+curimagefile;
scaleimagename=basepath+"scale-"+curimagefile+".jpg";
gradientimagename=basepath+"scale-gradient-"+curimagefile;
gaussgradientimagename=basepath+"point-gradient-"+curimagefile;
sordergradientimagename=basepath+"sogradient-"+curimagefile;
sorderscaleimagename=basepath+"soscale-"+curimagefile;
gradientcolorimagename=basepath+"scale-gradientcolor-"+curimagefile;
gausscolorimagename=basepath+"point-gradient-color-"+curimagefile;
//CImg<unsigned short> jpgimage(imagefilename.c_str());
//Xdim=jpgimage.width();
// Ydim=jpgimage.height();
cout<<"Image Size: "<<Xdim<< " X "<<Ydim<<"\n";
allocateMemory(Xdim,Ydim);
allocateGradientImageMemory(Xdim,Ydim);
initializeKernels(kernelsize);
//print_Kernel();
//readImage<unsigned short>(jpgimage,image);
readImagefile(imagefilename,image);
cout<<"Variance: "<<snr<<"\n";
gradienthresh=snr;
cout<<"confidence: "<<confidence<<"\n";
cout<<"Base threshold: "<<compute_threshold(6)<<"\n";
//interpolatingpoint_weight=butterworth(0.5,1,2);
compute_Gradient(image,Xdim,Ydim,true);
compute_scale_Gradient_with_continuous_interpolation(image,Xdim,Ydim,b);
sout.close();
}
return 0;
}