Je suis en train de travailler sur le livre "Learning OpenCV" de la série O'Reilly et j'essaie d'effectuer un échantillon de détection de bord.Canny détection de bord - images en niveaux de gris toujours à venir en tant que 3 canaux, inutilisable?
Toute image en niveaux de gris que je choisis semble avoir 3 canaux, et à ma connaissance, canny ne fonctionne qu'avec des images à canal unique, donc cela échoue toujours. J'utilise même les images fournies par OpenCV.
Voici mon code ..
IplImage* doCanny(IplImage* in, double lowThresh, double highThresh, double aperture)
{
if(in->nChannels != 1)
return(0); //canny only handles gray scale images
IplImage* out = cvCreateImage(cvSize(in->width, in->height), IPL_DEPTH_8U, 1);
cvCanny(in, out, lowThresh, highThresh, aperture);
return(out);
};
IplImage* img = cvLoadImage("someGrayscaleImage.jpg");
IplImage* out = doCanny(img, 10, 100, 3);
Pourquoi cela me donne toujours des images 3 canaux? Comment puis-je resoudre ceci?
génial, merci! Je n'ai pas réalisé que ce paramètre était en défaut. – cvcentral
cette page est une bonne page pour OpenCV. Je l'ai toujours utilisé quand je travaillais avec openCV avant – vodkhang