blavince's BLOG

Giving is a reward in itself.

0%

NuGet 套件管理員

Visual studio 提供強大的整合環境, 利用 NuGet 快速地引入第三方的套件.

前言

通常開發專案時引用第三方套件需要一些相關設定, 但透過 Nuget 套件管理員能讓我們很輕鬆地將其引入使用. 這裡引入 OpenCvSharp (OpenCv 的.NET wrapper) 及 ZXing (Barcode/ QRcode library) 做讀入照片並解碼的需求.

本文

  1. 開啟 NuGet
  2. 第三方套件:
    • OpenCvSharp
    • ZXing
  3. 實例

1. 開啟 NuGet

點擊 工具(T)NuGet套件管理員(N)管理方案的 NuGet套件(N)… 打開頁面, 如下圖:

2. 第三方套件:

  • OpenCvSharp3:
  1. 搜尋列輸入「OpenCvSharp3」
  2. 選擇「OpenCvSharp3-AnyCPU」
  3. 勾選專案
  4. 安裝

  • ZXing:
    搜尋列輸入「ZXing」後和上述步驟一樣,

3. 實例

加入 OpenCvSharp,

1
using OpenCvSharp;

讀入照片並顯示,

1
2
3
4
Mat src = Cv2.ImRead("d://barcode.png");
//Cv2.NamedWindow("src");
//Cv2.ResizeWindow("src", width, height);
Cv2.ImShow("src", src);

barcode.png

加入 ZXing,

1
using ZXing;

解碼讀入的照片,

1
2
3
4
BarcodeReader reader = new BarcodeReader();
reader.Options.CharacterSet = "UTF-8";
Result[] results = reader.DecodeMultiple(OpenCvSharp.Extensions.BitmapConverter.ToBitmap(src));
Console.WriteLine("Result is: " + results[0]);

結論: 透過 NuGet 可以很簡單的 using 就使用 OpenCvSharp 及 ZXing 來完成讀入圖片進行影像處理或解碼的需求.