合集-Halcon视觉算子基础

摘要:什么是机器视觉?由于当前社会人力成本越来越昂贵,机器取代人力是大势所趋,自动化的发展也随之越来越快 。当制造公司需 要一双手和一对 眼睛的时候却不得不雇佣一个人的苦恼日益加重,而传统的机器设计和电气自动化的发展,解决一双手的问题已经渐渐得到了缓解,现在就到了需要解决一双眼睛的时候,机器视觉的出现和广泛应用也随着到来 阅读全文
posted @ 2023-04-19 14:07 扩视机器视觉培训学院 阅读(766) 评论(0) 推荐(0)
摘要:Halcon软件安装与界面简介1. 下载Halcon17版本到到本地 2. 双击安装包后 3. 步骤如下 1.2 Halcon软件安装 界面分为四大块 1. Halcon的五个助手 1) 图像采集助手:与相机连接,设定相机参数,采集图像 2) 标定助手:九点标定或是其它的标定,生成标定文件及内参外参,可以将像素单位转换为长度单位 阅读全文
posted @ 2023-04-19 14:14 扩视机器视觉培训学院 阅读(723) 评论(0) 推荐(0)
摘要:Halcon中的算子2.1什么是算子? 算子就是由Halcon开发团队对图像处理的算法进行封装为方法由我们使用,作用就是对图像数据进行处理 2.2算子的格式? 算子名称(图像输入参数,图像输出参数,控制输入参数,控制输出参数) 算子结构中的四种参数被三个冒号分割开,一个算子中可能这四种参数不会都存在,但是参数的次序不会 阅读全文
posted @ 2023-04-19 14:16 扩视机器视觉培训学院 阅读(603) 评论(0) 推荐(0)
摘要:Halcon 数据类型与Halcon保留小数点 and 元素相关操作HTuple类型: 既可以表示的类型有int,double、float、string,既可以表示单个值; 可以是容器; 可以是数组,数组遍历时需要有下标,如:变量名称[下标] 字符串表示:tuple:='扩视机器视觉' Tuple:表示变量,自定义名称 “:=“:为赋值符号,将右边的值赋值给左边变量 阅读全文
posted @ 2023-04-19 14:18 扩视机器视觉培训学院 阅读(1159) 评论(0) 推荐(0)
摘要:Halcon循环及条件分支2.8 循环 While循环:只要满足条件就一直循环 示例: b:=0 //初始化值 while (n>10) //判断如果条件成立就一直执行 里面的语句 b:=b+1 //b加1后重新赋值给b **等待 wait_seconds (1) endwhile For循环: 示例: f:=0 //初始化 阅读全文
posted @ 2023-04-19 14:21 扩视机器视觉培训学院 阅读(373) 评论(0) 推荐(0)
摘要:Halcon图像处理的思维观察图像->确定目标区域->去除不相关的干扰->缩小目标范围->找到目标 缩小目标区域时保证其稳定性 不被变换的图像干扰 算子只是工具 会使用即可 不必追究根底 研究算子是算法工程师的活 我们捡现成的就行 任何工具只有用的多了才会熟练 正所谓熟练生巧 唯熟尔 关键就是要多练习 切记勿眼高手低 想要达 阅读全文
posted @ 2023-04-19 14:22 扩视机器视觉培训学院 阅读(261) 评论(0) 推荐(0)
摘要:Halcon图像处理基础 三种图像数据类型   图像创建相关函数 图像读取储存相关函数 图像转换相关函数图像: 灰度图像:黑白色组成的图像,组成图像的每个像素的值用灰度值表示,范围为0-255;以128为界限 越偏向0越黑 越偏向255越白 彩色图像:彩色图像的每个像素是由三基色红,蓝,绿组成,每个色的范围0-255,三色又称为三通道 区域: 如果说图像是用灰度值描述像素点,区域就可以用0或1来描述像 阅读全文
posted @ 2023-04-19 14:26 扩视机器视觉培训学院 阅读(553) 评论(0) 推荐(0)
摘要:Halcon图像中的字体设定 字体颜色设定 显示样式设定 信息显示图像中的字体设定set_display_font 算子:set_display_font( : : WindowHandle, Size, Font, Bold, Slant : ) 示例:set_display_font (200000, 24, 'mono', 'true', 'false') 阅读全文
posted @ 2023-04-19 14:27 扩视机器视觉培训学院 阅读(1047) 评论(0) 推荐(0)
摘要:图像分割相关算子图像分割介绍,先定位一个大的特征->内部特征->分割 灰度直方图:如下图所示 阈 值 分 割: threshold全局固定阈值分割 算子:threshold(Image : Region : MinGray, MaxGray : ) 示例:threshold (GrayImage, Regions, 阅读全文
posted @ 2023-04-19 14:28 扩视机器视觉培训学院 阅读(253) 评论(0) 推荐(0)
摘要:Halcon区域集合运算及变换集合运算 将多个区域连接为一个区域:union1 算子:union1(Region : RegionUnion : : ) 示例:union1 (ConnectedRegions, RegionUnion) ConnectedRegions(输入对象):输入多个区域 RegionUnion(输出对象 阅读全文
posted @ 2023-04-19 14:29 扩视机器视觉培训学院 阅读(1589) 评论(0) 推荐(0)
摘要:Halcon形态学处理初级开运算opening 以输入的参数形成的区域为基准,对目标区域进行模拟放置,能将参数形成的区域填满的保留,填不满开掉去除 先腐蚀后膨胀 作用 祛杂点 扩展链接:https://blog.csdn.net/qq_31671139/article/details/113184854 算子:opening 阅读全文
posted @ 2023-04-19 14:29 扩视机器视觉培训学院 阅读(386) 评论(0) 推荐(0)
摘要:Halcon画 ROI 区域及区域生成 保存区域,读取区域  生成空对象,向空对象中添加对象画 ROI 区域并生成区域 画draw_?circle/ellipse/rectangle1/rectangle2/line, 生成一个的区域gen_?circle/ellipse/rectangle1/rectangle2/line 画··········· 算子:draw_circle( : : 阅读全文
posted @ 2023-04-19 14:31 扩视机器视觉培训学院 阅读(1805) 评论(0) 推荐(0)
摘要:Halcon区域间距离点到点 distance_pp 算子:distance_pp( : : Row1, Column1, Row2, Column2 : Distance) 示例:distance_pp (10, 10, 100, 100, Distance) 10(输入参数1):输入第一个点的行坐标 10(输入参数2 阅读全文
posted @ 2023-04-19 14:31 扩视机器视觉培训学院 阅读(407) 评论(0) 推荐(0)
摘要:Halcon图像的 BLOB 分析处理几何变换 &刚性仿射变换平移 move_region 缩放 zoom_region 镜像 mirror_region 倒置 transpose_region 6.2仿射变换 刚性仿射变换 vector_angle_to_rigid 对图像,区域进行仿射变换 算子:vector_angle_to_rigid( : : Row 阅读全文
posted @ 2023-04-20 11:55 扩视机器视觉培训学院 阅读(351) 评论(0) 推荐(0)
摘要:Halcon图像的一维码二维码识别7.1识别一维码的流程和方法 一维码的码制: 一维条码即指条码条和空的排列规则,常用的一维码的码制包括:EAN 码、39 码、 交叉 25 码、UPC 码、128 码、93 码,ISBN 码,及 Codabar (库德巴码)等 识别过程: 创建条形码模型 create_bar_code_model 阅读全文
posted @ 2023-04-20 11:48 扩视机器视觉培训学院 阅读(622) 评论(0) 推荐(0)
摘要:Halcon图像滤波&中值滤波&&高斯滤波&图像加减均值滤波:mean_image 算子:mean_image(Image : ImageMean : MaskWidth, MaskHeight :) 示例:mean_image (Image5, ImageMean1, 3, 3) Image5(输入对象):输入灰度图像 ImageMean1(输出对 阅读全文
posted @ 2023-04-23 15:59 扩视机器视觉培训学院 阅读(1103) 评论(0) 推荐(0)
摘要:Halcon图像的 OCR 识别&训练字符2.1识别 OCR 的流程和方法 处理图像使得数字或是字母为白底黑字->创建字符识别句柄->识别->清除句柄 算子:read_ocr_class_mlp( : : FileName : OCRHandle) 示例:read_ocr_class_mlp ('Document_0-9A-Z_NoRej. 阅读全文
posted @ 2023-04-24 11:59 扩视机器视觉培训学院 阅读(1971) 评论(0) 推荐(0)
摘要:Halcon图像灰度值运算&图像截取及合并&灰度特征值介绍灰度膨胀运算gray_dilation_rect 算子gray_dilation_rect(Image : ImageMax : MaskHeight, MaskWidth : ) 示例:gray_dilation_rect (Image, ImageMax, 11, 11) Image(输入对象) 阅读全文
posted @ 2023-04-25 11:57 扩视机器视觉培训学院 阅读(1200) 评论(0) 推荐(0)
摘要:Halcon中打开相机相机示例1.用 halcon 的采集助手抓图 阅读全文
posted @ 2023-04-27 18:11 扩视机器视觉培训学院 阅读(107) 评论(0) 推荐(0)
摘要:Halcon相机标定及畸变矫正5.1相机标定过程 畸变矫正和图像坐标系向世界坐标系转换 九点标定: gen _caltab(行个数, 列个数, 圆形之间的间距单位M, 圆的半径与圆心间距之间的比值, 生成的文件名称caltab.descr', 'caltab.ps') 生成标定板的描述文件进行保存 CameraParameter 阅读全文
posted @ 2023-04-27 18:16 扩视机器视觉培训学院 阅读(1384) 评论(0) 推荐(0)
摘要:Halcon  XLD 生成提取&测量及特征筛选6.1XLD 的生成和提取 XLD 的创建 生成圆轮廓gen_circle_contour_xld 算子:gen_circle_contour_xld( : ContCircle : Row, Column, Radius, StartPhi, EndPhi, PointOrder, Resolut 阅读全文
posted @ 2023-04-28 11:57 扩视机器视觉培训学院 阅读(1677) 评论(0) 推荐(0)
摘要:Halcon轮廓的分割,合并及圆&矩形&线拟合变换 平滑轮廓:smooth_contours 算子:smooth_contours_xld(Contours : SmoothedContours : NumRegrPoints : ) 示例:smooth_contours_xld (Border, SmoothedContours, 11) B 阅读全文
posted @ 2023-05-01 16:28 扩视机器视觉培训学院 阅读(3210) 评论(0) 推荐(0)
摘要:Halcon XLD 轮廓操作,轮廓交集补集8.1获取轨迹的图像数据 获取轮廓坐标 get_contour_xld 算子:get_contour_xld(Contour : : : Row, Col) 示例:get_contour_xld (Contours4, Row26, Col) Contours4(输入对象):输入轮廓对象 Row26 阅读全文
posted @ 2023-05-02 13:49 扩视机器视觉培训学院 阅读(1261) 评论(0) 推荐(0)
摘要:Halcon模板匹配之形状匹配,缩放比匹配,相关性匹配是什么是模板匹配? 模板就是一副已知的小图像,而模板匹配就是在一副大图像中搜寻目标,已知该图中有要找的目标,且该目标同模板有相同的尺寸、方向和图像元素,通过一定的算法可以在图中找到目标,确定其坐标位置 模板匹配的参数介绍: 1. 图像金字塔:Numberlever 2. 起始角度:AngleStar 阅读全文
posted @ 2023-05-07 11:56 扩视机器视觉培训学院 阅读(2221) 评论(0) 推荐(1)
摘要:C# 简介,环境搭建,C#变量与常量a) 什么是C#? C#是由C和C++衍生出来的一种安全的、稳定的、简单的面向对象编程语言 b) 它有什么用? 可以快速稳定的控制调动硬件 c) 为什么要学习C#? 视觉检测,运动控制,调用硬件需要用到c# 并且halcon与c#联合可以快速部署稳定功能强大的检测程序 1.2 Visual Stud 阅读全文
posted @ 2023-05-16 15:33 扩视机器视觉培训学院 阅读(119) 评论(0) 推荐(0)
摘要:C#程序结构1. C# 命名空间 a) 类名是不能重名的。 b) 但类是面向对象语言的基本单位。数量会上万,为了像变量的作用域一样将类分隔开,需要使用命名空间。 c) 命名空间类似于文件夹,不同文件夹下的文件可以同名,同理不同命名空间下的类也可以同名。并且命名空间的作用域不像语句块,不会延申到子命名空间。 d) 阅读全文
posted @ 2023-05-16 15:37 扩视机器视觉培训学院 阅读(111) 评论(0) 推荐(0)
摘要:C# 程序编写规范2. 命名规范 通常来讲,名称是以意思相近的英文描述而命名的;例如:一个打开连接的方法 => open connection => OpenConnection(); 到达 看其名,知其意 的效果;提高代码的可读性和理解性。 1) Pascal (大驼峰)命名方式 命名空间、类、接口、抽象类、结构体 阅读全文
posted @ 2023-05-16 15:40 扩视机器视觉培训学院 阅读(121) 评论(0) 推荐(0)
摘要:C#变量与常量1. 变量的基本概念 一个变量只不过是提供程序操作的存储区的名字,在C#中每个变量都有一个特定的类型,类型决定了变量的大小和布局,范围内的值可以存储在内存中,可以对变量进行一系列的操作 2. 变量的声明及赋值 a) 声明变量 b) 变量的赋值 c) 变量的作用域(方法中) C#五个修饰符的权限 修饰 阅读全文
posted @ 2023-05-16 15:44 扩视机器视觉培训学院 阅读(86) 评论(0) 推荐(0)
摘要:C# 表达式与运算符3.1 表达式 1.赋值表达式 由赋值运算符(=)连接起来的式子叫做赋值表达式,例如:a=a+1。变量可以重新赋值,老值不复存在。 小扩展:有一种复合赋值运算符,例如: Int num=10; num=num+10; 可以写成: Int num=10; num+=10; 2.算术表达式 由算术运算符 阅读全文
posted @ 2023-05-17 16:18 扩视机器视觉培训学院 阅读(65) 评论(0) 推荐(0)
摘要:C# 字符与字符串的增删改查4.1 字符类Char 的使用 1. Char 类概述 C#中的char数据类型:代表单个字符 • char类型,BLC名称System.Char。 • 取值范围对应Unicode字符集 • 占两个字节 2. Char 类的使用 tostring 将此实例的值转换为其等效的字符串表示 char类型可 阅读全文
posted @ 2023-05-17 16:22 扩视机器视觉培训学院 阅读(118) 评论(0) 推荐(0)
摘要:C# 流程控制语句1. if 语句 for (int i = 0; i < 10; i++) { if (i == 5) { continue; } else if (i == 8) { MessageBox.Show("今天是晴天"); break; } MessageBox.Show("i=:" + i.ToSt 阅读全文
posted @ 2023-05-18 14:36 扩视机器视觉培训学院 阅读(56) 评论(0) 推荐(0)
摘要:C# 数组和集合1.1 数组概述 数组从字面上理解就是存放一组数,但在 C# 语言中数组存放的并不一定是数字,也可以是 其他数据类型。 数组的特点: 1.在一个数组中存放的值都是同一数据类型的。 2.数组中某个指定的元素是通过索引来访问的。 3.所有的数组都是由连续的内存位置组成的。 4.数组从零开始建立索引,即数 阅读全文
posted @ 2023-05-18 14:38 扩视机器视觉培训学院 阅读(190) 评论(0) 推荐(0)
摘要:C# 属性和方法1. 属性 属性的概述 属性是提供对对象或类的特性进行访问的成员。属性提供功能强大的方法将声明信息与C#代码(类型,方法,属性等)相关联。属性的设置包括字符串的长度,字体的大小,窗口的焦点,用户的名字等。 使程序员可以创造新的声明信息的种类,称为属性。属性是对现实世界中实体特征的抽象,是为访问自定义 阅读全文
posted @ 2023-05-18 14:41 扩视机器视觉培训学院 阅读(137) 评论(0) 推荐(0)
摘要:C# 结构和类8.1 结构 1. 结构概述 在 C# 中,结构体是值类型数据结构。它使得一个单一变量可以存储各种数据类型的相关数据。struct 关键字用于创建结构体 2. 结构的使用 3. 一般来说结构体的定义要放在class的外面或class的里面,尽量不放在Main的里面。 struct 自定义类型名 { 阅读全文
posted @ 2023-05-18 14:45 扩视机器视觉培训学院 阅读(133) 评论(0) 推荐(0)