boulanouar45
Messages postés1Date d'inscriptionsamedi 26 décembre 2009StatutMembreDernière intervention25 septembre 2008
-
25 sept. 2008 à 13:02
cs_zanzan
Messages postés32Date d'inscriptionlundi 3 février 2003StatutMembreDernière intervention25 juillet 2012
-
22 avril 2009 à 08:56
slt tout le monde
voila mon probleme est le suivant: j'ai developpé un progrmme en C++ qui permet la detection du visage dans un flux de Webcam en recourant aux fonction de la bibliotheque opncv. quand un visage est detecte, il est cerné par un rectangle. maintent je veux extraire la partie cernée du visage et la sauvegarder dans un fichier à part pour pouvoir lui appliquer un programme de reconnaissance. le probleme c'est que je sais pas comment extraire cette partie à l'aide d'un progrmme C++
Warium
Messages postés36Date d'inscriptionjeudi 27 mars 2008StatutMembreDernière intervention27 janvier 2010 29 sept. 2008 à 07:00
Salut.
A mon avis , vous recuperez le debut puis la fin du rectangle (x,y), puis vous copierez pixel par pixel (de (Xdeb,Ydeb) jusqu'a (Xfin,Yfin)) dans un autre Device context dynamique, puis vous sauvegardez ce dernier.
Merci
cs_zanzan
Messages postés32Date d'inscriptionlundi 3 février 2003StatutMembreDernière intervention25 juillet 2012 22 avril 2009 à 08:53
Zan salut - peut etre sa peut t'aider
tu travailles sur Bitmap ImgSourceb
// tu créés une image depuis une autre image
Image img = new Image(ImgSource);
// tu charges le detecteur de harr avec son fichier xml - celui que tu veux - il y en a plusieurs disponible
HaarCascade objectToDetect = new HaarCascade("haarcascade_profileface.xml");
// Tu convertis l'image à scruter en nb Image<gray, byte=""> gray = img.Convert<gray, byte="">().PyrDown().PyrUp();
// Affichage
foreach (MCvAvgComp face in gray.DetectHaarCascade(objectToDetect)[0])
{
// j'encadre la zone de reconnaissance
img.Draw(face.rect, new Bgr(Color.White), 1);
// c'est là que tu as le rectangle de ta zone ou il y a un visage
}
// Sauvegarde du résultat dans l'image
ImgSourceb = img.ToBitmap();
cs_zanzan
Messages postés32Date d'inscriptionlundi 3 février 2003StatutMembreDernière intervention25 juillet 2012 22 avril 2009 à 08:56
Zan salut - peut etre sa peut t'aider tu travailles sur Bitmap ImgSourceb
// tu créés une image depuis une autre image Image
img = new Image(ImgSource);
// tu charges le detecteur de harr avec son fichier xml
// celui que tu veux - il y en a plusieurs disponible
HaarCascade objectToDetect = new HaarCascade("haarcascade_profileface.xml");
// Tu convertis l'image à scruter en nb
Image gray = img.Convert().PyrDown().PyrUp();
// Affichage
foreach (MCvAvgComp face in gray.DetectHaarCascade(objectToDetect)[0])
{
// j'encadre la zone de reconnaissance
img.Draw(face.rect, new Bgr(Color.White), 1);
// c'est là que tu as le rectangle de ta zone ou il y a un visage : face.rect
}
// Sauvegarde du résultat dans l'image
ImgSource = img.ToBitmap();