Emgu CV 

 
 

Бібліотека обробки зображень .NET з відкритим кодом 

C# API дозволяє розробникам програмного забезпечення отримувати зображення з камери чи відеофайлу, підтримує геометричне перетворення та багато іншого.

Emgu CV — це міжплатформна оболонка .NET із відкритим вихідним кодом для бібліотеки обробки зображень OpenCV, яка дає розробникам програмного забезпечення можливість виконувати просте та розширене створення зображень і маніпулювання ними у власних програмах .NET. Його можна легко запускати в Windows, Linux, Mac OS, iOS і Android.

Emgu CV — це чиста реалізація на C#, яку можна використовувати кількома різними мовами, включаючи C#, VB.NET, C++ і IronPython. Бібліотека містить кілька важливих функцій, пов’язаних із обробкою зображень, наприклад створення нового зображення, зміна зображень, захоплення зображень із камери чи відеофайлу, запис зображень у відеоформат, сегментація фону, підтримка геометричної трансформації, підтримка оптичного розпізнавання символів, зшивання зображень. , і багато іншого.

Previous Next

Початок роботи з Emgu CV

Щоб запустити свій проект за допомогою Emgu CV, перш за все, вам потрібно встановити середовище виконання .NET. Після цього ви можете вручну завантажити репозиторій із GitHub. Використовуйте наступну команду, щоб встановити його.

Встановіть Emgu CV через GitHub

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

Створення зображення та керування ним через .NET

Безкоштовна бібліотека Emgu CV дозволяє програмістам створювати програми, які можуть легко створювати та обробляти зображення. Ви можете легко створити зображення, але пропонується створити об’єкт зображення. Використовуючи керований клас, ви можете мати кілька переваг, таких як автоматичне керування пам’яттю, автоматичне збирання сміття та містить розширені методи, такі як загальні операції з пікселями зображення, перетворення на Bitmap тощо. Ви можете легко налаштувати розмір, застосувати колір, визначити глибину зображення та багато іншого

Створення зображення через .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");
  }
  

Виявлення дорожніх знаків через .NET API

Emgu CV API з відкритим кодом містить підтримку для легкого визначення трафіку за допомогою команд .NET. Бібліотека допомагає розробникам виявляти знаки зупинки на зображеннях, зроблених камерами, що є важливою частиною навігаційної системи автономного автомобіля. Це дуже корисно та може допомогти автомобілю безпечно пересуватися в міському середовищі. На першому кроці розробникам потрібно витягти червоні восьмикутники сигналів світлофора, і вони можуть використовувати SURF, щоб зіставити функції в регіоні-кандидаті, щоб відповідати йому.

Виконайте зшивання зображень через CSharp

Бібліотека Emgu CV допомагає розробникам зшивати зображення у власних програмах за допомогою коду C#. Це дуже корисний процес для об’єднання кількох фотографічних зображень для створення сегментованої панорами або зображення з високою роздільною здатністю. Для цього бібліотеці потрібна лише пара рядків коду, але важливо пам’ятати, що для отримання точних результатів потрібні майже точні перекриття між зображеннями та однакові експозиції.

Виконайте зшивання зображень через .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 
  }
 Українська