当前位置: 首页 > news >正文

【零代码】OpenCV C# 快速开发框架演示

上位机OpenCV算法 低代码开发系统化学习

OpenCV开发新范式

OpenCV开发已经进入流程可视化与自动代码生成时代,基于OpenCV实验大师工具软件与OpenCV工作流SDK可以实现快速开发OpenCV算法应用,效率比传统方式提升十倍,同时工作流支持提示词模式的AI代码生成,实现了提示词即代码的AI编程模式OpenCV快速开发,彻底提升了OpenCV开发的生产力与效率,同时工作流内置的边缘模板匹配、卡尺测量等功能SDK一键调用即可实现OpenCV完成边缘模板匹配、卡尺测量。

上位机OpenCV算法 低代码开发系统化学习
在这里插入图片描述
在这里插入图片描述

集成开发使用指南

OpenCV快速开发工具集官方项目地址
下载地址:

https://gitee.com/opencv_ai/opencv_workflow

OpenCV实验大师工具软件下载地址

https://gitee.com/opencv_ai/opencv_workflow/blob/master/oemts_win10_p311_installer.zip

OpenCV工作流SDK下载地址

https://gitee.com/opencv_ai/opencv_workflow/blob/master/oemts_workflow_engine_lib.zip

安装与配置

安装OpenCV实验大师工具软件,首先需要安装Python SDK3.11。安装好以后直接把下载好的【OpenCV实验大师工具软件】解压缩到下面的目录:
在这里插入图片描述
然后打开requiremennts.txt文件,copy第四行
在这里插入图片描述
在当前路径下打开控制台窗口,请确认一下,然后粘贴执行
在这里插入图片描述
安装完成,直接输入startup.bat,点击回车运行
在这里插入图片描述
启动界面如下:
在这里插入图片描述
点击 菜单栏【帮助】-》【项目案例】选择 双击打开第5个或者第14个项目案例。第五个轮廓分析案例打开演示如下:
在这里插入图片描述
第14个案例打开-》点击右上角【运行】显示如下:
在这里插入图片描述

保存工作流文件

点击工具栏中第二个图标【保存图标】,在弹出的保存文件对话框中选择适合的保存路径(注意,千万别有中文路径跟空格)
在这里插入图片描述
点击【保存按钮】即可保存工作流文件。

OpenCV工作流SDK调用

SDK下载地址如下,分别支持Python、C#、C++三种语言调用

https://gitee.com/opencv_ai/opencv_workflow

在这里插入图片描述
C++ SDK调用 - 依赖OpenCV4.10
请先配置好OpenCV4.10 + VS2022 C++开发环境,参考视频教程:

https://www.bilibili.com/video/BV12srpYJE7M/?

下载对应的C++ SDK,在VS2022中先配置好包含目录、库目录、链接器配置,然后把相关DLL文件拷贝到OpenCV4.10的x64bin目录中。调用代码如下:

#include "main_workflow.h"
#include <iostream>
#include <fstream>int main(int argc, char** argv) {std::shared_ptr<QTongCoreCVWorkFlow> engine(new QTongCoreCVWorkFlow());bool succ = engine->initWorkFlow("match_template_demo.vm", //替换工作流文件"ba8e9ea82fb37f1722ad2d9f4962e7e4");if(!succ) {std::cout<<"Could not load workflow file here..."<<std::endl;return -1;}// 替换你的测试图像cv::Mat frame = cv::imread("4156.bmp");cv::namedWindow("OpenCV实验大师 C++工作流引擎演示", cv::WINDOW_NORMAL);cv::Mat result;std::vector<std::string> logs;engine->run_workflow(frame, result, logs);cv::imshow("OpenCV实验大师 C++工作流引擎演示", result);cv::waitKey(0);cv::destroyAllWindows();return 0;
}

运行结果如下:
在这里插入图片描述
C# SDK代码演示
C# 预先依赖安装好OpenCVCSharpe4.10 开发包,然后把相关DLL拷贝到执行的bin目录下**(是个上位机开发者都知道我在说什么!)**
运行代码如下:

using OpenCvSharp;
using qiantong_oemst;class OpenCVWorkFlowDemo
{static void Main(string[] args){// 1. create intancesIntPtr myInstance = OEMTSWorkflowHelper.workflowClassInit2();// 2. load workflow vm filebool succ = OEMTSWorkflowHelper.loadVMConfigFile(myInstance,"D:/match_template_demo.vm".ToCharArray(),"ba8e9ea82fb37f1722ad2d9f4962e7e4".ToCharArray());// 3. run workflow with input imageMat src = Cv2.ImRead("D:/images/222.jpg");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();// 5. destory instance and otherssrc.Dispose();dst.Dispose();OEMTSWorkflowHelper.deleWorkflowInstance(myInstance);}
}

在这里插入图片描述
总结:
只需要调用几行OpenCV工作流SDK接口代码,就可以实现在C#上位机中完成各种OpenCV算法的集成调用,非常容易上手。通过调用几行相同的OpenCV工作流SDK接口代码即可实现C#上位机跟OpenCV算法的集成。更多参考资料猛戳这里 《OpenCV4 C# 系统化开发》

http://www.dtcms.com/a/348984.html

相关文章:

  • 在 Docker 容器中查看 Python 版本
  • C语言第十二章自定义类型:结构体
  • LangChain RAG系统开发基础学习之文档切分
  • Python核心技术开发指南(016)——表达式
  • 多线程——认识Thread类和创建线程
  • 【记录】Docker|Docker镜像拉取超时的问题、推荐的解决办法及安全校验
  • FPGA时序分析(四)
  • asio的线程安全
  • 使用Cobra 完成CLI开发 (一)
  • 3.1 存储系统概述 (答案见原书 P149)
  • C++ string自定义类的实现
  • 【论文阅读 | arXiv 2025 | WaveMamba:面向RGB-红外目标检测的小波驱动Mamba融合方法】
  • 上科大解锁城市建模新视角!AerialGo:从航拍视角到地面漫步的3D城市重建
  • 深度剖析Spring AI源码(三):ChatClient详解,优雅的流式API设计
  • R60ABD1 串口通信实现
  • 在 Ubuntu 24.04 或 22.04 LTS 服务器上安装、配置和使用 Fail2ban
  • 【Qwen Image】蒸馏版与非蒸馏版 评测小结
  • 第3篇:配置管理的艺术 - 让框架更灵活
  • 多线程下单例如何保证
  • [身份验证脚手架] 前端认证与个人资料界面
  • 2025.8.18-2025.8.24第34周:有内耗有挣扎
  • Spring Cloud 快速通关之Sentinel
  • 遥感机器学习入门实战教程|Sklearn案例⑩:降维与分解(decomposition 模块)
  • [e3nn] 等变神经网络 | 线性层o3.Linear | 非线性nn.Gate
  • 动态规划--编译距离
  • AI代码生成器全面评测:六个月、500小时测试揭示最强开发助手
  • Redis 高可用篇
  • 51单片机-实现定时器模块教程
  • GaussDB 数据库架构师修炼(十八) SQL引擎-统计信息
  • 用 WideSearch 思路打造「零幻觉、全覆盖」的多 Agent 信息收集器