机器视觉与图像工程
以Halcon为主线的机器视觉研究,从环境配置、基本操作到示例分析、项目实战
AustinXavery
无志者,常立志
展开
-
第4章 4.3.5 图像校正
利用投影变换实现图像校正,解决摄像头不总是垂直被拍摄物体所致的影像变形的问题,如几何形变/梯形形变原创 2021-02-03 16:34:49 · 209 阅读 · 0 评论 -
第4章 4.3.4 灰度插值
用到了“开运算”?代码* 打开或关闭程序执行期间,将图标输出对象的自动输出切换到图形窗口dev_update_window('off')* Switches the update of the variable window during program execution on or off.dev_update_var('off')* Switch time measurement for operators on or off.dev_update_time('off')* Sw原创 2021-02-03 16:14:37 · 258 阅读 · 0 评论 -
第4章 4.3 几何变换
写在前面 前期的几篇写的太啰嗦了,各种代码和贴图,像流水账,关键学习效率太低,不连贯! 本期开始,计划简要记录图像的几何变换,包括平移、转置、镜像、选装、缩放等;用于改正图像采集系统的系统误差和仪器(成像角度、透视关系及镜头自身原因)的随机误差,需要用到插值方法仿射变换适用场景:算子: affine_trans_image()其中,变换矩阵定义的算子为 hom_mat2d_identity(),有无必要采用不同的插值方法或变换...原创 2021-02-03 15:22:27 · 252 阅读 · 0 评论 -
第4章 预处理 4.2 直方图处理
意义表示图像的灰度分布,可以 描述图像的概貌和质量,所以,拿到一幅要处理的图像,不妨先统计其灰度直方图,观察期灰度分布特点(判断图像是否合理的利用了全部被允许的灰度级范围),再进一步处理(或许可以用于统计学生成绩分布,只是分数区间为[0,100]而已)用途 人为改变一幅图像的灰度直方图,使之整体均匀分布或者成为某个特定的形状以满足特定的增强效果,也就是图像灰度直方图的均衡化或规定化处理方法方法一:图形化界面实现 灰度直方图统计方法二:gray_histo();...原创 2021-02-02 15:41:03 · 196 阅读 · 0 评论 -
第4章 预处理 4.1灰度变换
线性灰度变换read_image()中选择图像时,可以双击“浏览”选择图像read_image(Image,'C:/Users/Administrator/Pictures/高01.jpg')* Close the active graphics window.dev_close_window()get_image_size(Image,Width,Height)dev_open_window_fit_size(0,0,Width,Height,-1,-1,WindowHandle)原创 2021-02-02 15:12:04 · 308 阅读 · 0 评论 -
【飞桨】环境配置
(故意)写在前面:我开始问题主要还是飞桨安装的版本不对,应该装2.0现在因为本机开始安装了cuda的10.0,以及配套的cudnn,所以安装飞桨也安装的与10.0cude对应的飞桨,现在可以import到包了原创 2021-02-02 12:13:29 · 745 阅读 · 0 评论 -
3.4 区域转化为二进制图像和Label图像
代码* Image Acquisition 01: Code generated by Image Acquisition 01read_image (Image, 'C:/Users/Administrator/Pictures/高01.jpg')copy_image(Image,DupImage)*区域生长regiongrowing(DupImage,Regions,3,3,1,100)*区域转化为二进制图像:二值图像,区域生长为前景,其余为背景region_to_bin(Region原创 2021-01-29 15:05:56 · 188 阅读 · 0 评论 -
3.4.3 区域与图像的平均灰度值
代码* Image Acquisition 01: Code generated by Image Acquisition 01read_image (Image, 'C:/Users/Administrator/Pictures/gao06.jpg')* 区域生长,使用一个3*3的模板元素生长,容差为6,最小值为100,两个模板中心灰度差值不大于容差则合并为一个区域* 因为模板大于1个像素,所以一般要先用该模板做低通滤波regiongrowing(Image,Regions,3,3,6,10原创 2021-01-29 14:47:13 · 2844 阅读 · 0 评论 -
3.4 图像读取、显示和转换
基本流程:用到的算子(以及算子中的重要参数释义):算子菜单的方式算子 -Image -read_image()read_image (Image, 'printer_chip/printer_chip_01') 默认为读取一幅示例图像,支持多种图像格式,详见help查询帮助可知,该算子可以从本地文件读取一幅图像到变量image中或者读取多张到变量images中,也可以设置搜索路径* Reading an im...原创 2021-01-29 10:48:22 · 770 阅读 · 1 评论 -
【补充,实时调整】Halcon学习之路——策略篇
1、明确学习的目的和目标;2、从Halcon的功能模块了解Halcon的前世今生(与其他图像处理软件的地位关系),用武之地;3、从一个简单的项目入手(不妨找本教材和教学大纲跟学练习),以此了解常用算子并做测试;4、吃透软件自带的N多示例,先读懂(善于利用帮助手册),总结开发流程,对于每个示例达到关闭书本能够自己复现的程度!!!...原创 2021-01-28 13:14:59 · 215 阅读 · 0 评论 -
【Halcon学习之路】图像采集助手
写在前面:1、相机选型是否需要考虑同步采集还是异步采集?是否根据工程决定?那么在学习时,选择哪一种较好?2、注释方法:新起一行,顶头用*标识3、查看帮助:在算子名字上右键-帮助,即可打开算子的使用说明Halcon菜单——助手——第一个菜单项资源选项卡中提供两种获取图像的方式:一种是用相机获取;一种是读取本地图像文件初学者可以利用本地文件来学习,暂不建议购买相机,等你坚持下来了,吃透了其中的示例,再买相机也不迟第二个选项卡“连接”,需要在“资源”选项卡中选择“图像获取.原创 2021-01-28 13:08:56 · 1069 阅读 · 1 评论 -
第2章 H的数据结构
本章涉及一些基本的图像知识以及一些常用的H函数与算子等,建议粗略了解,略读,了解每个概念能做什么事儿即可,以后用到的时候再详查!涉及的概念有:点、线、区域、行程、轮廓、句柄等...原创 2021-01-20 10:40:46 · 293 阅读 · 0 评论 -
第1章 机器视觉和HALCON机器视觉软件
机器视觉的基本概念,应用场景、开发流程开发流程:算法部分在H中开发,应用程序用IDE,如VS开发(所以需要掌握C/C#等,当然现在的也支持python了)还可以结合QT开发(一种图形化界面快速开发工具包)H中的算法可以导出目标程序语言的代码,通过#include/import等导入IDE中发布时,需要导入H的算法库还要考虑厂家的软硬件环境是否达标等因素,提供兼容性更好的软件。...原创 2021-01-20 10:37:58 · 166 阅读 · 0 评论 -
初识Halcon
参考https://blog.csdn.net/liubing8609/article/details/8922784参考的该博客貌似汉化的,而且不太友好,比如调用call翻译成了呼叫,开发翻译成了发展等等写在前面:几年前接触Halcon,但是一直没坚持学习下来,唉,无知者常立志!HALCON是当今 machine vision 技术的代表,它总是以最新科技为基础,提供了现今市场中最强大的 vision library。除了提供了完整的标准 machine vision 功能,还有一系列..原创 2021-01-20 10:29:08 · 177 阅读 · 0 评论 -
Halcon20.11深度学习版安装与配置
参考资料:https://www.51halcon.com/thread-4476-1-1.html提示:Deep Learning版本安装前提是必须安装了Full Version或Runtime Version版本!请优先安装windows主程序,然后安装深度学习核心Core文件,再安装深度学习数据Data文件下载下载地址:http://www.ihalcon.com/read-7605-1.html发现里面各个版本都有,选择比较新的支持机器学习和深度学习的版本,这里是20.11.原创 2021-01-20 10:01:57 · 14949 阅读 · 6 评论