1. Produkte
  2.   Bild
  3.   .NET
  4.   Emgu CV 

Emgu CV 

 
 

Open-Source-.NET-Bildverarbeitungsbibliothek 

Die C#-API ermöglicht es Softwareentwicklern, Bilder entweder von einer Kamera oder einer Videodatei aufzunehmen, geometrische Transformationen zu unterstützen und vieles mehr.

Emgu CV ist ein plattformübergreifender Open-Source-.NET-Wrapper für die OpenCV-Bildverarbeitungsbibliothek, der Softwareentwicklern die Möglichkeit gibt, einfache und erweiterte Bilderstellung und -bearbeitung in ihren eigenen .NET-Apps durchzuführen. Es kann problemlos unter Windows, Linux, Mac OS, iOS und Android ausgeführt werden.

Emgu CV ist eine reine C#-Implementierung, die in mehreren verschiedenen Sprachen verwendet werden kann, darunter C#, VB.NET, C++ und IronPython. Die Bibliothek enthält mehrere wichtige Funktionen im Zusammenhang mit der Bildverarbeitung, z. B. das Erstellen eines neuen Bildes, das Ändern von Bildern, das Erfassen von Bildern von einer Kamera oder einer Videodatei, das Schreiben von Bildern in das Videoformat, die Hintergrundsegmentierung, die Unterstützung geometrischer Transformationen, die Unterstützung der optischen Zeichenerkennung und das Zusammenfügen von Bildern , und viele mehr.

Previous Next

Erste Schritte mit Emgu CV

Um Ihr Projekt mit Emgu CV auszuführen, müssen Sie zunächst die .NET-Laufzeitumgebung installieren. Danach können Sie das Repository manuell von GitHub herunterladen. Verwenden Sie den folgenden Befehl, um es zu installieren.

Installieren Sie Emgu CV über GitHub

git clone https://github.com/emgucv/emgucv.git

Image über .NET erstellen und verwalten

Die kostenlose Emgu-CV-Bibliothek ermöglicht Softwareprogrammierern, Apps zu erstellen, die Bilder einfach erstellen und verarbeiten können. Sie können ganz einfach ein Bild erstellen, aber es wird empfohlen, ein Bildobjekt zu erstellen. Mit der verwalteten Klasse können Sie mehrere Vorteile haben, wie z. B. automatische Speicherverwaltung, automatische Garbage Collection, und enthält erweiterte Methoden wie generische Operationen für Bildpixel, Konvertierung in Bitmap usw. Sie können ganz einfach die Größe anpassen, Farbe anwenden, Bildtiefe festlegen und vieles mehr

Bild erzeugen über .NET


  //Create an image of 400x200 of Blue color
  using (Image img = new Image(400, 200, new Bgr(255, 0, 0))) 
  {
    //Create the font
    MCvFont f = new MCvFont(CvEnum.FONT.CV_FONT_HERSHEY_COMPLEX, 1.0, 1.0);
    //Draw "Hello, world." on the image using the specific font
    img.Draw("Hello, world", ref f, new Point(10, 80), new Bgr(0, 255, 0)); 
    //Show the image using ImageViewer from Emgu.CV.UI
    ImageViewer.Show(img, "Test Window");
  }
  

Verkehrszeichenerkennung über .NET API

Die Open-Source-Emgu-CV-API bietet Unterstützung für die einfache Erkennung von Verkehrssignalen mithilfe von .NET-Befehlen. Die Bibliothek hilft Entwicklern, Stoppschilder aus Bildern zu erkennen, die von Kameras aufgenommen wurden, was ein wichtiger Bestandteil des autonomen Fahrzeugnavigationssystems ist. Es ist sehr nützlich und kann dem Auto helfen, sich sicher in einer städtischen Umgebung zurechtzufinden. Im ersten Schritt müssen Entwickler rote Achtecke der Ampeln extrahieren und sie können SURF verwenden, um Merkmale auf der Kandidatenregion abzugleichen.

Führen Sie das Zusammenfügen von Bildern über CSharp durch

Die Emgu-CV-Bibliothek hilft Entwicklern beim Zusammenfügen von Bildern in ihren eigenen Apps mithilfe von C#-Code. Es ist ein sehr nützliches Verfahren zum Kombinieren mehrerer fotografischer Bilder, um ein segmentiertes Panorama oder ein hochauflösendes Bild zu erzeugen. Die Bibliothek erfordert nur ein paar Codezeilen, um sie auszuführen, aber es ist wichtig, daran zu denken, dass für genaue Ergebnisse nahezu exakte Überlappungen zwischen Bildern und identischen Belichtungen erforderlich sind.

Führen Sie Image Switching über .NET


    using (Stitcher stitcher = new Stitcher(
    //This indicate if the Stitcher should use GPU for processing. 
    //There is currently a bug in Open CV such that GPU processing cannot produce the correct result. 
    //Must specify false as parameter. Hope this will be fixed soon to enable GPU processing
    false 
    ))
  {
    Image result = stitcher.Stitch(sourceImages);
    // code to display or save the result 
  }
 Deutsch