1. Produse
  2.   Imagine
  3.   .NET
  4.   Emgu CV 

Emgu CV 

 
 

Biblioteca de procesare a imaginilor .NET cu sursă deschisă 

C# API le permite dezvoltatorilor de software să capteze imagini fie din cameră, fie din fișierul video, suport pentru transformarea geometrică și multe altele.

Emgu CV este un wrapper .NET multiplatformă cu sursă deschisă pentru biblioteca de procesare a imaginilor OpenCV, care oferă dezvoltatorilor de software capacitatea de a crea și manipula imagini simple și avansate în propriile aplicații .NET. Poate fi rulat fără probleme pe Windows, Linux, Mac OS, iOS și Android cu ușurință.

Emgu CV este o implementare C# pură care poate fi folosită în mai multe limbi diferite, inclusiv C#, VB.NET, C++ și IronPython. Biblioteca a inclus câteva caracteristici importante legate de procesarea imaginilor, cum ar fi generarea unei noi imagini, modificarea imaginilor, capturarea imaginilor fie de pe cameră, fie din fișierul video, scrierea imaginilor în format video, Segmentarea fundalului, suport pentru transformarea geometrică, Suport pentru recunoașterea optică a caracterelor, Cusătura imaginii , si multe altele.

Previous Next

Noțiuni introductive cu Emgu CV

Pentru a rula proiectul folosind Emgu CV, în primul rând, trebuie să instalați .NET runtime. După aceea, puteți descărca manual depozitul de pe GitHub. Utilizați următoarea comandă pentru a o instala.

Instalați Emgu CV prin GitHub

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

Crearea și gestionarea imaginii prin .NET

Biblioteca gratuită de CV Emgu permite programatorilor de software să creeze aplicații care pot crea și procesa imagini cu ușurință. Puteți crea o imagine cu ușurință, dar este sugerat să construiți un obiect imagine. Folosind clasa gestionată puteți avea mai multe avantaje, cum ar fi gestionarea automată a memoriei, colectarea automată a gunoiului și conține metode avansate precum operarea generică pe pixelii imaginii, conversia în Bitmap și așa mai departe. Puteți ajusta cu ușurință dimensiunea, aplicați culoarea, specificați adâncimea imaginii și multe altele

Creați imagine prin .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");
  }
  

Detectarea semnelor de trafic prin .NET API

API-ul Emgu CV cu sursă deschisă a inclus suport pentru detectarea traficului cu ușurință folosind comenzile .NET. Biblioteca ajută dezvoltatorii să detecteze semnele de oprire din imaginile capturate de camere, care este o parte importantă a sistemului de navigație al vehiculului autonom. Este foarte util și poate ajuta automobilul să se deplaseze singur în siguranță într-un mediu urban. În primul pas, dezvoltatorii trebuie să extragă octagoane roșii ale semnalelor de trafic și pot folosi SURF pentru a potrivi caracteristicile din regiunea candidată pentru a o potrivi.

Efectuați cusătura imaginii prin CSharp

Biblioteca Emgu CV îi ajută pe dezvoltatori să realizeze cusături de imagini în propriile aplicații folosind codul C#. Este un proces foarte util pentru combinarea mai multor imagini fotografice pentru a genera o panoramă segmentată sau o imagine de înaltă rezoluție. Biblioteca necesită doar câteva linii de cod pentru ao efectua, dar este important să rețineți că pentru rezultate precise sunt necesare suprapuneri aproape exacte între imagini și expuneri identice.

Efectuați cusătura imaginii prin .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 
  }
 Română