Giới thiệu
Xử lý ảnh và thị giác máy là lĩnh vực mà ngày nay được phát triển và ứng dụng rất rộng rãi trong nhiều lĩnh vực khác nhau nhờ vào sự phát triển ngày càng mạnh mẽ của các hệ thống máy tính, các thuật toán và công trình nghiên cứu khác nhau của nhiều nhà khoa học trên thế giới.
Bài viết này giới thiệu về EmguCV và hướng dẫn cách tích hợp EmguCV vào .NET.
EmguCV là gì?
- Là một cross platform .NET, một thư viện xử lý hình ảnh mạnh mẽ dành riêng cho các ngôn ngữ .NET, cho phép gọi được chức năng của OpenCV là từ .NET.
- Tương thích ngôn ngữ như: C#, VB, VC ++, Iron Python...
- Wrapper có thể được biên dịch bởi Visual Studio, Xamarin Studio và Unity.
- Có thể chạy trên Windows, Linux, Mac OS X, iOS, Android và Windows Phone.
Lợi thế của EmguCV
- EmguCV được viết hoàn toàn bằng C#, có thể chạy trên bất kỳ nền tảng hỗ trợ bao gồm iOS, Android, Windows Phone, hệ điều hành Mac OS và Linux.
- EmguCV có thể được sử dụng với nhiều ngôn ngữ khác nhau như C#, VB.NET, C ++ và Iron Python.
- Nhận dạng ảnh: nhận dạng khuôn mặt, các vật thể, ...
- Xử lý ảnh: khử nhiễu, điều chỉnh độ sáng, ...
- Nhận dạng cử chỉ.
- Hỗ trợ tài liệu XML và intellisense.
- Có thể sử dụng
class Image
hoặc gọi thẳng xuống các hàm của OpenCV. - ...
Tích hợp vào .NET
Bước 1: Cài đặt các Tools
- Visual Studio C#
- EmguCV: Download EmguCV phiên bản mới nhất tại địa chỉ https://sourceforge.net/projects/emgucv/files/emgucv/.

Bước 2: Thiết lập trong project
Thêm control của EmguCV vào Toolbox.

Hộp thoại .NET Framwork Components > Browse...

Chọn tới thư mục chứa EmguCV\emgucv-windows-universal_version\bin\Emgu.CV.UI.dll > Open.

Trong Filter: Gõ emgucv > Chọn tất cả các control hiện ra > OK.

Kết quả trong Toolbox sẽ có các control.

Khởi tạo project

Right mouse click > Solution Explorer > Add Reference Manager.

Trong hộp thoại Reference Manger > Framework > Browse...

Tìm đến thư mục chứa EmguCV > emgucv-windows-universal_version\bin > Chọn các file .dll

Tìm tới thư mục chứa EmguCV\emgucv-windows-universal_version\bin\x64 > Copy file .dll.

Tìm tới thư mục chứa project\Tên_project \Tên_project\bin\Debug: Copy tất cả các file .dll ở trên vào đây.

Công việc thiết lập EmguCV trong project đã xong, trong project có đoạn code sau:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Emgu.CV; using Emgu.CV.Structure; using Emgu.CV.UI; namespace EmguCVExample { public partial class Form1 : Form { private Image<Bgr, Byte> image; //1 public Form1() { InitializeComponent(); image = new Image<Bgr, Byte>("stdio.png"); //2 CvInvoke.Imshow("Hello Stdio.vn", image); //3 CvInvoke.WaitKey(0); } } }
Phân tích
- Khai báo biến chứa ảnh.
- Truy cập và lấy hình ảnh, mặc định hình ảnh chứa trong thư mục bin\Debug của project. Nếu muốn thay đổi đường dẫn, thay đổi tên đường dẫn. Ví dụ: E:\\emgucv\\image.
- Hiển thị màn hình và vẽ hình ảnh.
Build và run project EmguCV
Nếu gặp lỗi trong quá trình build, có thể phiên bản đang sử dụng phù hợp với x64.

Nhấn chuột phải > Solution Explorer > Properties > Trong hộp thoại hiện ra chọn Build* > Platform target > x64.

Kết quả
