微信公眾號:OpenCV學堂
關注獲取更多計算機視覺與深度學習知識
OpenCV C# 環境搭建
VS2022 + OpenCVCSharp4.10配置安裝與測試
OpenCV官方的開發包至今還不支持C#語言SDK,但是C#有個著名的開源OpenCV Wapper庫支持- opencvsharp,github地址如下:
https://github.com/shimat/opencvsharp
從VS2022中直接安裝,截圖如下:


代碼測試
安裝好OpenCVCSharp開發包支持以后,直接創建一個C#語言的控制臺空項目,然后創建一個cs文件,把下面的代碼直接貼進去
using OpenCvSharp;class Program{static void Main(){using var src = new Mat("D:/lena.png", ImreadModes.Grayscale);using var dst = new Mat();Cv2.Canny(src, dst, 50, 200);using (new Window("src image", src))using (new Window("dst image", dst)){Cv2.WaitKey();}}}

OpenCV實驗大師工作流SDK v1.4.1 下載地址:
https://gitee.com/opencv_ai/opencv_workflowOpenCV實驗大師工具軟件1.4.1 安裝指南點擊這里
OpenCV工作流引擎SDK
OpenCV低代碼開發工作流引擎SDK,支持C++、C#、Python,實現80%的OpenCV開發工作零代碼,OpenCV開發效率提升十倍。OpenCV低代碼開發工作流引擎支持找點、找邊、找線段、找圓、找輪廓、支持圖像預處理、圖像增強、形態學習處理、邊緣模板匹配、卡尺測量,最新版本賴于OpenCV4.10。同時C++版本已經支持YOLO11全系模型推理,三行代碼實現模型部署。主要應用場景是機器視覺領域,安防監控、生物與醫學圖像處理領域。

配置與測試
首先從VS2022工具中安裝好OpenCVSharp4.10依賴nuget包。然后新建一個C#控制臺空項目,驗證運行成功以后直接把以下三個文件copy到bin目錄下

把OEMTSWorkflowHelper.cs與Program.cs 文件復制過去,直接運行,顯示如下:


低代碼開發使用
打開OpenCV實驗大師工具軟件

點擊工作流設計,導入測試圖像,設計如下得工作流

命名為find_boxes.vm然后保存工作流文件。點擊菜單欄 【代碼】-》【導出代碼】

直接點擊【Export】然后就會在指定目錄(目錄可以通過【選項】->【用戶設置】查看或者修改)下得到生成的C#代碼文件。
using OpenCvSharp;using qiantong_oemst;class OpenCVWorkFlowDemo{static void Main(string[] args){IntPtr myInstance = OEMTSWorkflowHelper.workflowClassInit2();bool succ = OEMTSWorkflowHelper.loadVMConfigFile(myInstance,"find_defect.vm".ToCharArray(),"ba8e9ea82fb37f1722ad2d9f4962e7e4".ToCharArray());// please check and replace your image file pathMat src = Cv2.ImRead("4156.bmp");Mat dst = new Mat(src.Size(), src.Type());int w = src.Cols;int h = src.Rows;OEMTSWorkflowHelper.runWorkflow(myInstance, src.CvPtr, dst.CvPtr, w, h);Cv2.ImShow("OpenCV學堂-OpenCV工作流C#演示", dst);Cv2.WaitKey(0);Cv2.DestroyAllWindows();src.Dispose();dst.Dispose();OEMTSWorkflowHelper.deleWorkflowInstance(myInstance);}}
直接修改對應的vm文件為保存的find_boxes.vm,修改測試圖像文件名稱
"find_defect.vm".ToCharArray(),修改為:
"D:/find_boxes.vm".ToCharArray(),測試圖像
Mat src = Cv2.ImRead("4156.bmp");修改為:
Mat src = Cv2.ImRead("D:/images/vm_test/contour_edge.png");然后直接運行:

全程零代碼實現OpenCV C# 開發實現二值圖像輪廓分析。從此我又相信OpenCV可以跟C#一起開發了。
上位機與機器視覺開發者必備技能
系統化掌握OpenCV C# SDK與工作流引擎開發,課程包含數十個OpenCV實現的機器視覺常見案例,代碼行數超過3000+,課件、代碼、資料均可下載。支持答疑!現在購買還可以獲取團購優惠:

推薦閱讀
玩轉YOLOv8~YOLO11全系模型從訓練到推理就靠它了
C#上位機開發專屬OpenCV系統化教程
C#中輕松實現OpenCV算法零代碼開發
深度學習系統化學習路線圖專題(2025版本)
【零代碼】OpenCV C# 快速開發框架演示
正式發布|OpenVINO2025深度學習與大模型部署教程
C#上位機開發專屬OpenCV系統化教程
