Improved debug part
This commit is contained in:
parent
50c3a4b381
commit
b3497eac20
33
main.cpp
33
main.cpp
@ -56,9 +56,8 @@ int main()
|
|||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
CImg<unsigned char> inputImg("lena.bmp");
|
CImg<unsigned char> inputImg("lena.bmp");
|
||||||
#endif
|
|
||||||
|
|
||||||
CImgDisplay dispBase(inputImg,"Image de base");
|
CImgDisplay dispBase(inputImg,"Image de base");
|
||||||
|
#endif
|
||||||
|
|
||||||
std::vector<Euclidean> vectEMax, vectEMin;
|
std::vector<Euclidean> vectEMax, vectEMin;
|
||||||
std::vector<int> w;
|
std::vector<int> w;
|
||||||
@ -260,6 +259,16 @@ int main()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Smooth of the lower envelope
|
||||||
|
for(unsigned int i = 0; i < vectEMax.size(); i++) {
|
||||||
|
double sum = Sum(imgMin, vectEMin[i].getX() - ((w[i] + 1) / 2), vectEMin[i].getY() - ((w[i] + 1) / 2), w[i]);
|
||||||
|
for (int k = vectEMin[i].getX() - ((w[i] - 1) / 2); k < vectEMin[i].getX() + ((w[i] + 1) / 2); k++) {
|
||||||
|
for (int l = vectEMin[i].getY() - ((w[i] - 1) / 2); l < vectEMin[i].getY() + ((w[i] + 1) / 2); l++) {
|
||||||
|
newImgMin(k, l) = (1./(w[i]*w[i])) * sum;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
printf("- Envelopes\n");
|
printf("- Envelopes\n");
|
||||||
|
|
||||||
@ -278,23 +287,13 @@ int main()
|
|||||||
}
|
}
|
||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
#endif
|
#else
|
||||||
|
|
||||||
// Smooth of the lower envelope
|
|
||||||
for(unsigned int i = 0; i < vectEMax.size(); i++) {
|
|
||||||
double sum = Sum(imgMin, vectEMin[i].getX() - ((w[i] + 1) / 2), vectEMin[i].getY() - ((w[i] + 1) / 2), w[i]);
|
|
||||||
for (int k = vectEMin[i].getX() - ((w[i] - 1) / 2); k < vectEMin[i].getX() + ((w[i] + 1) / 2); k++) {
|
|
||||||
for (int l = vectEMin[i].getY() - ((w[i] - 1) / 2); l < vectEMin[i].getY() + ((w[i] + 1) / 2); l++) {
|
|
||||||
newImgMin(k, l) = (1./(w[i]*w[i])) * sum;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Display images for max and min
|
// Display images for max and min
|
||||||
CImgDisplay dispMax(imgMax,"Image de Max");
|
CImgDisplay dispMax(imgMax,"Image de Max");
|
||||||
CImgDisplay dispMin(imgMin,"Image de Min");
|
CImgDisplay dispMin(imgMin,"Image de Min");
|
||||||
CImgDisplay dispEMax(newImgMax,"Image de enveloppe Max");
|
CImgDisplay dispEMax(newImgMax,"Image de enveloppe Max");
|
||||||
CImgDisplay dispEMin(newImgMin,"Image de enveloppe Min");
|
CImgDisplay dispEMin(newImgMin,"Image de enveloppe Min");
|
||||||
|
#endif
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
// Part 2: Average //
|
// Part 2: Average //
|
||||||
@ -318,20 +317,22 @@ int main()
|
|||||||
}
|
}
|
||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
#endif
|
#else
|
||||||
|
|
||||||
CImgDisplay dispMoyenne(imgMoyenne,"Image Moyenne");
|
CImgDisplay dispMoyenne(imgMoyenne,"Image Moyenne");
|
||||||
|
#endif
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
// Partie 3: Deletion //
|
// Partie 3: Deletion //
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#ifndef DEBUG
|
||||||
CImg<unsigned char> imgFin(inputImg - imgMoyenne);
|
CImg<unsigned char> imgFin(inputImg - imgMoyenne);
|
||||||
CImgDisplay dispFin(imgFin,"Image Finale");
|
CImgDisplay dispFin(imgFin,"Image Finale");
|
||||||
|
|
||||||
while (!dispBase.is_closed()) {
|
while (!dispBase.is_closed()) {
|
||||||
dispBase.wait();
|
dispBase.wait();
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user