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
|
int main( int argc, char** argv ) {
IplImage* img = 0;
IplImage* img2 = 0;
// Charger image originale
img = cvLoadImage( "../Moon.jpg", 0);
// create image
img2 = cvCreateImage(cvSize(img->width,img->height), IPL_DEPTH_32F ,1);
// Appliquer filtre laplacien
cvLaplace(img, img2);
//Enregistrer l'image
cvSaveImage("../test.jpg",img2);
cout << "Image width : " << img2->width << "\n";
cout << "Image height : " << img2->height << "\n";
cout << "-----------------------------------------\n";
// Parcourir l'image pixel par pixel
CvScalar pixel;
for(int row = 1; row < ((cvGetSize(img2).height)-1); ++row) {
for (int col = 1; col < ((cvGetSize(img2).width)-1); ++col) {
pixel = cvGet2D(img2,row,col);
if((pixel*cvGet2D(img2,row-1,col))<0) // Je peux pas utiliser l'opérateur * ici et je sais pas pk ??
{
}
}
// creation de la fenetre
cvNamedWindow("Aprés traitement", CV_WINDOW_AUTOSIZE);
cvMoveWindow("Aprés traitement", 650, 100);
// show the image
cvShowImage("Avant traitement", img );
cvShowImage("Aprés traitement", img2 );
// wait for a key
cvWaitKey(0);
cvDestroyWindow("Avant traitement");
cvDestroyWindow("Aprés traitement");
cvReleaseImage(&img);
cvReleaseImage(&img2);
return 0;
} |
Partager