Emgu CV
Open Source .NET bildebehandlingsbibliotek
C# API gjør det mulig for programvareutviklere å ta bilder fra enten kamera eller videofil, støtte for geometrisk transformasjon og mye mer.
Emgu CV er en åpen kildekode på tvers av plattformer .NET-omslag til OpenCV-bildebehandlingsbiblioteket som gir programvareutviklere muligheten til å utføre enkel og avansert bildeoppretting og manipulering i sine egne .NET-apper. Det kan enkelt kjøres på Windows, Linux, Mac OS, iOS og Android.
Emgu CV er en ren C#-implementering som kan brukes på flere forskjellige språk, inkludert C#, VB.NET, C++ og IronPython. Biblioteket har inkludert flere viktige funksjoner knyttet til bildebehandling som å generere et nytt bilde, modifisere bilder, ta bilder fra enten kamera eller videofil, skrive bilder til videoformat, Bakgrunnssegmentering, støtte for geometrisk transformasjon, støtte for optisk tegngjenkjenning, bildesammenføyning , og mange flere.
Komme i gang med Emgu CV
For å kjøre prosjektet ditt med Emgu CV, må du først og fremst installere .NET runtime. Etter det kan du manuelt laste ned depotet fra GitHub. Bruk følgende kommando for å installere den.
Installer Emgu CV via GitHub
git clone https://github.com/emgucv/emgucv.git
Opprette og administrere bilde via .NET
Det gratis Emgu CV-biblioteket gjør det mulig for programvareprogrammerere å lage apper som enkelt kan lage og behandle bilder. Du kan enkelt lage et bilde, men det anbefales å lage et bildeobjekt. Ved å bruke den administrerte klassen kan du ha flere fordeler som automatisk minnebehandling, automatisk søppelinnsamling og inneholder avanserte metoder som generisk operasjon på bildepiksler, konvertering til Bitmap, og så videre. Du kan enkelt justere størrelsen, bruke farger, angi bildedybde og mye mer
Lag bilde via .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");
}
Trafikkskiltdeteksjon via .NET API
Åpen kildekode Emgu CV API har inkludert støtte for å oppdage trafikksing med letthet ved å bruke .NET-kommandoer. Biblioteket hjelper utviklere med å oppdage stoppskilt fra bilder tatt av kameraer som er en viktig del av det autonome kjøretøynavigasjonssystemet. Det er veldig nyttig og kan hjelpe bilen til å navigere seg trygt i et urbant miljø. I det første trinnet må utviklere trekke ut røde åttekanter av trafikksignalene, og de kan bruke SURF for å matche funksjoner i kandidatregionen for å matche den.
Utfør bildesting via CSharp
Emgu CV-biblioteket hjelper utviklere å utføre bildesammenføyning i sine egne apper ved å bruke C#-kode. Det er en veldig nyttig prosess for å kombinere flere fotografiske bilder for å generere et segmentert panorama eller høyoppløselig bilde. Biblioteket krever bare et par linjer med kode for å utføre det, men det er viktig å huske at for nøyaktige resultater kreves nesten nøyaktige overlappinger mellom bilder og identiske eksponeringer.
Utfør Image Stitching via .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
}