环境搭建
安装Visual Studio (Community版)
变量与数据类型
学习基本数据类型:int, double, bool等
运算符与表达式
掌握算术运算符、赋值运算符、比较运算符
流程控制
掌握if, else if, else 和 switch 语句
数组、字符串与类与对象
学习一维数组的声明和初始化
封装与属性
理解封装的概念。学习使用public, private访问修饰符。
继承与多态
理解继承(:)的概念。学习base关键字的使用
集合与泛型
学习常用集合类型,解泛型的概念和优势。
异常处理与文件I/O
学习如何使用try-catch-finally来处理异常
Windows窗体应用入门
了解Windows Forms应用程序
WinForms数据绑定与简单业务
学习如何将控件的数据与类的属性关联
定位与查找工具
CogPMAlignTool定位,CogBlobTool斑点分析
测量与检测工具
CogCaliperTool(卡尺工具 - 边缘检测之王),CogFixtureTool(坐标框架具)
几何创建与查找工具
CogCreate系列工具(几何创建)CogFind工具(几何查找)
相机选型和相机连接配置
相机选型,支架搭建,相机连接CogAcqFifoTool
图像形态学处理
形态学是处理Blob的利器。理解膨胀(扩大白色区域)、腐蚀(缩小白色区域)、开运算(去噪点)、闭运算(补洞)的作用。
字符识别 OCR
光学字符识别流程:图像预处理 -> 字符定位 -> 分割 -> 识别。学习训练字体(Font)和设置字符集的技巧。
二维码识别
学习读取一维条码和二维码(如DataMatrix, QR Code)。理解“静区”的重要性以及应对打光不佳、表面弯曲的策略。
C#集成基础
在Visual Studio中创建WinForms项目,添加VisionPro引用。拖放CogJobManager、CogDisplay控件
C#结果提取与参数控制
学习用C#代码从CogJobManager的结果中提取具体数据(如PMAlign的坐标、Caliper的测量值、OCR的文本、DataCode的字符串)。
C#深度集成开发
控件集成与界面设计,工具调用与结果提取,流程与逻辑控制
平台环境搭建
认识HDevelop(交互式开发环境)和Halcon的.NET库(用于C#集成)。
核心数据结构
1. HImage -> 相当于VisionPro的ICogImage;2. HRegion -> 相当于二值图、Blob区域;3. HXLD
(轮廓) ->
Halcon特色,表示亚像素精度的边缘、线、圆等。
“语法”与编程模式
Halcon是过程式的(一步步调用算子),而VisionPro是配置式的(配置工具属性)。学习算子的命名规律(gen_, create_, find_,
draw_,
get_)。掌握dev_开头的窗口控制算子。
图像采集与预处理
学习open_framegrabber连接相机(但实际C#项目中更多用官方提供的HalconDotNet库或第三方SDK采图)。
复习预处理算子:rgb1_to_gray, emphasize, mean_image等。
标定(复习与强化)
学习Halcon的标定流程:
find_calib_object(找标定板)->calibrate_cameras(计算参数)-> image_points_to_world_plane(坐标转换)。
模板匹配(王者归来)
基于形状的匹配 create_shape_model -> 类似CogPMAlignTool;
基于变形部件的匹配 create_deformable_model -> Halcon绝活,用于形变、柔软物体
Blob分析与形态学
threshold -> 分割,connection -> 连通域,select_shape ->
特征筛选。这一套组合拳相当于CogBlobTool。
形态学算子(opening_circle, closing_rectangle1)直接通用
测量与拟合
1. gen_measure_rectangle2 -> 创建测量句柄(定义找边区域)。
2. measure_pos -> 执行找边,返回边缘点。
3. fit_line_contour_xld -> 将找到的边缘点拟合成线。
OCR与二维码
OCR -> Halcon的OCR识别同样需要先训练字体或使用预训练的字体分类器。
"create_data_code_2d_model -> 创建二维码模型,find_data_code_2d ->
寻找二维码,相当于CogDataCodeTool。"
一维测量与缺陷检测
一维测量:measure_pairs -> 不仅可以找边,还可以找边对(如齿轮齿距)。
缺陷检测:学习使用频域滤波(fft_image, gen_gauss_filter)或纹理滤波(texture_laws)来处理复杂背景下的缺陷检测
C#项目集成基础
在Visual Studio中为项目添加HalconDotNet的引用(halcondotnet.dll)。
理解HOperatorSet(算子类)和HDevEngine(脚本引擎类)两种调用方式。
导出与调用HDevEngine
在HDevelop中将调试好的程序导出为.hdev脚本文件。
在C#中使用HDevEngine直接调用这个外部脚本文件,并传入/传出参数
导出与调用:导出C#代码
另一种方式:在HDevelop中,将程序导出为C#代码。你会得到一大段包含了所有算子的C#代码。可以直接复制粘贴到你的项目中。
参数交互与性能优化
学习如何在C#中动态修改Halcon算子的参数
图像采集与预处理
图像输入,相机采图,滤波去噪,对比度增强,色彩转换
传统视觉算法
Blob 分析,几何匹配 & 位置修正,测量,OCR/OCV
深度学习算法
图像分类,目标检测,语义分割,深度学习工作流学习
流程逻辑与通信控制
逻辑控制,通信与IO,数据管理与显示
环境搭建与插件安装
安装Python,配置VS Code及Python插件。核心: 学习使用pip和虚拟环境(python -m venv venv)。
Python语法速成
对比C#快速学习: 变量、列表(list)、字典(dict)、条件判断(if)、循环(for/in)。
函数与模块
Python函数、模块和文件操作,NumPy库学习(数组创建、操作、数学运算)。
OpenCV图像基础
OpenCV安装与图像基本操作(读取、显示、保存、像素操作)。
OpenCV图像处理操作
几何变换、滤波、形态学操作,边缘检测、轮廓检测、直方图
机器学习基础
机器学习基础概念和OpenCV中的机器学习模块(KNN、SVM)
OpenCV深度学习
使用OpenCV的DNN模块(加载预训练模型,进行图像分类)
深度学习框架
PyTorch入门(安装、基本操作),构建一个简单的CNN模型(用于手写数字识别)
深度学习框架实战
项目实战(使用预训练模型进行目标检测或人脸识别)