Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CAPTURER UNE IMAGE DEPUIS UNE WEBCAM


Information sur la source

Catégorie :Multimédia Source .NET ( DotNet ) Classé sous : webcam, capture, image Niveau : Débutant Date de création : 24/06/2007 Date de mise à jour : 25/06/2007 21:42:24 Vu / téléchargé: 13 996 / 1 669

Note :
8,5 / 10 - par 2 personnes
8,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

Description

Bonjour tous le monde, comme je cherchais une source permettant de capturer une image depuis une webcam, et comme je n'ai trouvé qu'une seule source en C#, qui ne faisait pas tout à fait ce que j'attendais j'ai cherché un petit peu sur VBfr et j'ai trouvé une source de manu222 (http://www.vbfrance.com/codes/CAPTURE-IMAGE-DANS-FLUX-VIDEO-WEBCAM_40449.aspx"), qui me semblais la plus adéquate. Ce petit programme est donc une "traduction" en C# auquel j'ai fait quelque rapides modifications.
C'est donc une form C# toute bete, avec 2 PictureBox l'une pour prévisualiser l'image, la deuxième pour afficher l'image capturée. On peux ensuite sauvegarder l'image. Ce code peut être réutilisé pour n'importe quel besoin.
En réalité tout est fait dans les deux dll DirectX.Capture et DShowNET (qui ne sont PAS des dll de Microsoft contrairement a ce que leur nom pourrai évoquer! Même si elles sont très pratique ! :))
Pour conclure un code vraiment simple qui utilise une bibliothèque facile d'accès pour capturer une image depuis une webcam!
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

24 juin 2007 23:16:01 :
Petite mise à jour des commentaires ;)
24 juin 2007 23:25:43 :
Amélioration de l'accessibilité (en gros on peux maintenant voir n'importe quel fichier et pas seulement le .sln !)
24 juin 2007 23:30:40 :
Meme raison que précédent, sauf que cette fois ca va marcher (j'espere) et apres je n'y touche plus jusqu'a avoir vos commentaire ! :)
25 juin 2007 21:19:20 :
Ajout de commentaires aux normes pour les fonctions de WebcamAction.cs
25 juin 2007 21:42:24 :
Reorganisation du dossier de projet. Ajout d'un répertoire lib. Pointilleux ce soir!

Commentaires et avis

signaler à un administrateur
Commentaire de olivierbalagizi le 03/07/2007 10:48:41

salut.
Un petit problème que je rencontre en utilisant cette source: chaque fois que je lance l'application pour la première fois, tout fonctionne correctement. si j'arrête le programme et le redemarre, je suis obligé de débrancher ma webcam et de la reconnecter sinon un message d'erreur "Values does not fall within the expected range" apparait. Comment corriger ce problème?

merci d'avance

signaler à un administrateur
Commentaire de Shad78 le 03/07/2007 16:19:11

Salut,
j'ai eu ce petit probleme également en changeant de configurations pendant l'execution du programme, c'est pourquoi j'ai verouillé l'acces au combobox une fois les configurations choisies. En revanche je n'ai pas (encore) eu le meme probleme que toi. Alors probleme dans la dll ou dans mon code, je ne sais pas encore, mais je vais regarder ca, merci de ton commentaire.

signaler à un administrateur
Commentaire de angel_of_tower le 17/11/2007 18:01:58 7/10

Bonne source
je m'en suis servis pour faire un détecteur de mouvement
mais l'image est inversé
peut être il y à une solution
si il y a une astuce je suis preneur
merci @+.

signaler à un administrateur
Commentaire de sourdingue le 21/02/2008 12:29:19

Je remercie celui qui a fait cela car c'est exactement ce que je voulais... pour un mini executable que j'ai en tête. Ca me facilitera le traitement et recherche image...Merci.
C'est vrai que l'image est inversée (simple capture d'image) mais dans mon cas cela ne me gène pas.
Le source marche très bien avec moi: je n'ai pas eu de soucis d'image comme avec d'autres sources récupéré sur des projets de cours.

Merci. @+

signaler à un administrateur
Commentaire de econs le 19/04/2008 16:41:16 administrateur CS


Pour ceux qui voudraient inverser l'image, voici une solution :

J'ai modifié la méthode ci-dessous :




        void CaptureInfo_FrameCaptureComplete(PictureBox Frame)
        {

            Graphics g = Graphics.FromImage(pictureBox2.Image);

            Matrix mm1 = new Matrix();
            mm1 = new Matrix(-1, 0, 0, -1, 0, 0);



            GraphicsPath gp = new GraphicsPath();

            Image imgpic = (Image)Frame.Image.Clone();
            mm1.Translate(imgpic.Width, imgpic.Height, MatrixOrder.Append);

            gp.AddPolygon(new Point[] { new Point(0, imgpic.Height), new Point(imgpic.Width, imgpic.Height), new Point(0, 0) });
            gp.Transform(mm1);

            PointF[] pts = gp.PathPoints;
            g.DrawImage(imgpic, pts);

            pictureBox2.Refresh();

        }



avec les using qui vont bien :

using System.Drawing.Drawing2D;
using System.Drawing.Imaging;



Quelques explications ici :
http://www.codeproject.com/KB/GDI-plus/matrix_transformation.aspx
http://msdn2.microsoft.com/en-us/library/8667dchf.aspx


L'image est tout d'abord inversée horizontalement, puis translatée en X et en Y.

--> A noter (petit défaut pour l'instant), que pictureBox1.Image et pictureBox2.Image ne doivent pas être null en démarrant la procédure, sinon, badaboum. Mais çà s'arrange très facilement.

signaler à un administrateur
Commentaire de econs le 19/04/2008 16:44:18 administrateur CS 10/10

Et cette source m'a beaucoup servi, je la note ;o)
Merci et bonne continuation.

signaler à un administrateur
Commentaire de cristallin le 08/03/2009 01:25:59

Bravo et merci pour ce code.
Trés utile

signaler à un administrateur
Commentaire de pierrehenri56 le 29/04/2009 12:19:43

Tout d'abord, merci pour cette superbe source !
Par contre j'ai un problème lorsque je veux faire une deuxième acquisition d'image ma webcam reste activée et une erreur système apparaît. J'aurais aimé savoir par quel moyen désactiver la cam lorsque la capture a été faite (le voyant de la cam reste tout le temps allumé). Merci d'avance !

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Capture image avec webcam en c# [ par fabialf ] Quelqu'un aurait-il le code de base pour faire une simple photo avec une webcam en c#.j'utilise la dll "DirectX.Capture" Capture d'une image via un webcam, sans utiliser TWAIN [ par Naze ] Hello!Est-ce que quelqu'un connait une méthode SIMPLE (en c#) pour capturer une image via une webcam (du style Video for Windows)? j'ai déjà trouvé pa traitement d'image [ par DavDav02 ] Bonjour à tous, J'ai un projet qui consiste à effectuer une capture d'image à l'aide d'une webcam branchée en usb (voir code ci de capture d'une image à partire de la video [ par smaouiomar ] Bonjour. J'ai pas trouvé de solution pour capturer une image à partir d'une video déja recupéré de ma web cam avec windows media encoder9.quelqu'un pe Capture et sauvegarde de video venant d'une webcam [ par mice35 ] Salut à tout le monde ,J'aimerai  realiser sous C#  une application  pour la capture,l'affichage  et la sauvegarde des videos venant d'une webcam.je s Capture d'un picturebox à sa MAJ "visuelle" [ par GUNNM4575 ] Bonjour à vous,Je dois prendre une photo, avec une webcam, l'image d'un picturebox que je viens de changer.Cela doit être fait le plus rapidement poss pda capture webcam [ par hicham_899 ] bonjour a tousj'ai developpée une application sur de capture webcam sur C#.net et aprés j'ai essaye de créer la même interface avec la même code sur P Capture d'image d'une page Web (Expert needed !) [ par karnalta ] Bonjour à tous, Voilà j'aurai vraiment besoin d'un petit coup de main ;)Je voudrais effectuer des printscreens de sites internet, j'arrive a faire cel Problème de capture d'image toutes les X secondes [ par oo7jb5 ] Bonjour,Je souhaite réaliser une application en C# et pour cela j'ai besoin d'un algorithme me permettant de capturer toutes les X secondes une image Capture audio [ par locus ] Bonjour,j'essaie de faire un logiciel de visioconference avec une webcam pour acquerir un savoir faire.Pour cela je me sers de directshow.net et la li


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,125 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.