MVTec HALCON 是世界上最全能的机器视觉软件.世界各地的用户从HALCON为快速开发图像分析和机器视觉程序的灵活架构获益匪浅.HALCON 提供了超过1100多种具备突出性能控制器的库,如模糊分析,形态,模式匹配,3D校正等.HALCON支持多个操作系统,编程语言和截获设备从而保护了你的投资.
背景:今天我一个朋友问题,Halcon和OpenCV的全局阈值函数threshold实现结果不一样,怎么办?
本文主要介绍基于基于形态学+连通域处理实现粘连物体的分割与计数方法,并对比Halcon与OpenCV实现差异。
OpenCv中,相机标定所使用的标定图案分为棋盘格、对称圆形及非对称圆形特征图、ArUco板和ChArUco板等。在OpenCV的官方例程中,采用的是棋盘格图案,因为其操作简单、快速,标定精度满足一般应用场景的需求。对于标定精度要求高的场景,则一般采用圆形标定图案。本文主要介绍如何使用圆形标定图案(对称和非对称)完成相机的标定,并将OpenCv标定结果与Halcon标定结果进行对比分析。
Halcon中对应的例子为inspect_bottle_mouth.hdev,用于检测酒瓶瓶口是否出现破损等缺陷情形,检测效果如下:
听师兄推荐了一个叫做Halcon的软件,经过几天找找资料,把环境装好了。 Halcon机器视觉软件是德国MVtec公司开发的一套完善的标准的机器视觉算法包,拥有应用广泛的机器视觉集成开发环境。相比于opencv,Halcon有自己的开发环境并且支持可视化窗口,在欧洲和日本比较流行,当然它们还有一个最大的区别,Halcon是收费的。。。 Halcon的学习论坛:http://www.ihalcon.com
本文主要介绍基于基于距离变换+分水岭算法实现粘连物体的分割与计数方法,并对比Halcon与OpenCV实现差异。
机器视觉就是利用机器代替人眼做出测量和判断,在应用层面上,目前主要用来做系统集成或二次开发的较多,可以概括为以下四个部分: 1、检查。 外观及缺陷检测,主要利用模板匹配。 2、识别。 生物特征识别(人脸、语音、指纹、虹膜),目标识别(车牌识别,射频识别等),条码识别(一维码、二维码),字符识别,纹理识别等。识别的最终目的主要是为了分类,这里需要利用大数据训练学习,需要借助深度学习。 3、测量。 几何尺寸测量(长、宽、高、周长、面积、体积等),圆或者椭圆(圆心、半径、轮廓、角度、尺寸等);测量必须先标定
(1) Halcon Python接口使用文档(官网说明已经告诉你在下面pdf的Part IV),打开pdf从13章节开始介绍;
当需要做一些图像处理方面的学习和研究的时候,首要任务就是选择一套合适的图像处理类库,本文主要简单介绍下各家图像库的一些优缺点。OpenCV,Intel IPP,Halcon,MATLAB ,OpenGL,EmguCv,AForge.net,CxImage,FreeImage,paintlib,AGG,IPL,visDSK。不足之处,还请大家多多提建议,多谢!欢迎微信关注公众号“智能算法”,带您体验不一样的人生。 1. OpenCV 简介:OpenCV全称是:Open Source Computer
但是,当需要做一些图像处理方面的学习和研究的时候,首要任务就是选择一套合适的图像处理类库,这期我们主要简单介绍下各家图像库的一些优缺点。OpenCV,Intel IPP,Halcon,MATLAB ,OpenGL,EmguCv,AForge.net,CxImage,FreeImage,paintlib,AGG,IPL,visDSK。不足之处,还请大家多多提建议,多谢!
本期来用OpenCV实现Halcon中一个简单的PCB印刷缺陷检测实例。
最近研究了一下opencv的 MorphologyEx这个函数的替代功能, 他主要的特点是支持任意形状的腐蚀膨胀,对于灰度图,速度基本和CV的一致,但是 CV没有针对二值图做特殊处理,因此,这个函数对二值图的速度和灰度是一样的,但是这个函数,如果使用的话,估计大部分还是针对二值图像,因此,我对二值图做了特别优化,速度可以做到是CV这个函数的4倍左右。
导读 本文主要介绍一个复杂背景下缺陷检测的实例,并将Halcon实现转为OpenCV。 实例来源 实例来源于51Halcon论坛的讨论贴: https://www.51halcon.com/foru
Halcon中对应的例子为novelty_detection_dyn_threshold.hdev,如下:
1、坏点检测主要用于检测sensor的坏点,本程序主要基于halcon算子c++程序以及opencv库编写而成,可以实现检测坏点,并统计坏点簇面积(连续坏点像素个数)。
本期文章继续介绍缺陷检测专题的第三个案例,用OpenCV实现Halcon中一个物体凸缺陷检测的实例,前两个案例链接如上↑↑↑。
最近有朋友在研究Halcon中gen_gabor的函数,和我探讨,因为我之前也没有怎么去关注这个函数,因此,前前后后大概也折腾了有一个星期去模拟实现这个东西,虽然最终没有实现这个函数,但是也是有所收获,这里做一点总结,也算是最这个函数有个完美的收尾吧。
key: value, 在下一行来写对象的属性和值的关系;注意缩进m, 对象还是k: v的方式
Halcon 中的图像数据结构为 HImage, OpenCV 中的图像为 Mat,使用中经常需要相互转换的情况,本文记录转换方式。 转换规则 halcon、opencv 和 C++图像内存数据处理机制有差异,在进行相互转换的时候需要注意内存数据排列问题,否则可能出现花图或者多出黑边等现象。 Halcon 的 HImage 和 OpenCV 的 Mat 都是连续存储图像数据的,HImage 存储数据是每个通道的数据存在一起的, Mat 的数据是一个像素点中的多个通道数据连续存在一起的。 单通道图像如
双边滤波(bilateral filter, BF)的思想是利用当前图像的纹理信息结合高斯滤波核为每个像素提供单独的平滑滤波器,以达到在保留图像边缘的同时执行平滑操作。
之前介绍了 OpenCV 的 remap 函数,Halcon 中也有类似函数 MapImage,本文介绍 MapImage,并将 OpenCV 的 remap 转换为 MapImage。 map_image 函数使用 map_image(Image, Map : ImageMapped : : ) 其中: Image: 需要被映射修改的图像 Map: 映射矩阵 ImageMapped: 映射结果 可以看到核心在于 Map 矩阵如何定义和使用。 Map 为和原始图像一样大小的 5 通道图像,第一个通道格
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
本文给大家分享一个电感元件定位实例,并附Halcon和OpenCV实现步骤和代码。
1、halcon软件提供的是快速的图像处理算法解决方案,不能提供相应的界面编程需求,需要和VC++结合起来构造MFC界面,才能构成一套完成的可用软件。 2、机器视觉在工业上的需求主要有二维和三维方面的 二维需求方面有:⑴识别定位;(2)OCR光学字符识别;(3)一维码、二维码识别及二者的结合;(4)测量类(单目相机的标定);(5)缺陷检测系列;(6)运动控制,手眼抓取(涉及手眼标定抓取等方面) 三维需求方面:(1)摄像机双目及多目标定(2)三维点云数据重构 3、要成为一名合格的机器视觉工程师必须具备以下三个方面的知识 (1)图像处理涉及以下几大领域: A、图像处理的基本理论知识(图像理论的基础知识) B、图像增强(对比度拉伸、灰度变换等) C、图像的几何变换(仿射变换,旋转矩阵等) D、图像的频域处理(傅里叶变换、DFT、小波变换、高低通滤波器设计) E、形态学(膨胀、腐蚀、开运算和闭运算以及凸壳等) F、图像分割(HALCON里的Blob分析) G、图像复原 H、运动图像 I、图像配准(模板匹配等) J、模式识别(分类器训练,神经网络深度学习等) 比较好的参考书籍有 经典教材:冈萨雷斯的《数字图像处理》及对应的MATLAB版 杨丹等编著《MATLAB图像处理实例详解》 张铮等编著《数字图像处理与机器视觉——Visual C++与MATLAB实现》
对Core模块大量像素级别的操作函数与Imgproc中大量图像处理函数做了整体优化,速度又有提升
异常:ModuleNotFoundError: No module named 'cv2'
本文主要介绍一个复杂背景下OCR数字提取识别实例,并将Halcon实现转为OpenCV。
计算机视觉市场巨大而且持续增长,且这方面没有标准API,如今的计算机视觉软件大概有以下三种:
Halcon中对应的例子为check_blister.hdev,用于检测药片包装中是否有错的药片或漏装的药片,检测效果如下:
OpenCV Halcon 开发语言 C++、C#(emgu)、Python、Ruby、MATLAB等语言 C,C++,C#,Visual basic和Delphi等语言 应用场合 侧重计算机视觉领域,侧重研究领域 侧重机器视觉领域,侧重应用领域 费用 免费 收费 开放性及版本更新速度 开源(可看底层源码),版本和功能更新慢 商业软件(底层代码封装),版本和功能更新快 对使用者的门槛 偏科研,有难度,有深度,完全从底层开发,对使用者门槛高,开发效率低,开发慢 偏工程应用,使用封装好的功能函数,对使用者门
【1】扩充图像。由于这里的只有部分圆弧,为方便后续检测圆和ROI截取,我们先将原图扩大:
对于工业应用来说,往往需要用到形状匹配来达到定位功能,VisionPro的PatMax算法,Halcon的形状匹配算法都是基于边缘的模版匹配。halcon中的形状匹配具有良好的鲁棒性,稳定,准确,快速的特点。opencv中虽然也有形状匹配算法,但是,是基于七阶不变矩来计算轮廓相似度,具有旋转缩放不变性。因此,无法求出目标形状的旋转和缩放系数。并且对于形状变换不大的轮廓也很难区分开,比如圆形和正方形。
本期将介绍并演示C++ OpenCV使用PaddleOCR做文字识别的步骤与效果。
本文将介绍使用OpenCV实现多角度模板匹配的详细步骤 + 代码。(来源公众号:OpenCV与AI深度学习)
本文主要介绍一个计算器显示数字识别的OCR实例,基于OpenCV和EasyOCR/PaddleOCR。
实例来源于Halcon例程color_fuses.hdev--classify fuses by color
原文链接:https://www.cnblogs.com/DOMLX/p/11835642.html
OpenCV这么简单为啥不学——2、逐帧播放视频(VideoCapture函数、waitKey函数、0xFF == ord('1'))
Halcon例程中有一个焊点检测例程ball.hdev,大家可以在例程中搜索查看,如下是实例使用的测试图和运行结果图:
Calibration是机器人开发者永远的痛。虽然说方法说起来几十年前就有,但每一个要用摄像头的人都还是要经过一番痛苦的踩坑,没有轻轻松松拿来就效果好的包。其实人类不就是个手眼协调的先进“机器人”吗,O(∩_∩)O哈哈~
原文链接:https://www.cnblogs.com/DOMLX/p/11773260.html
在构建机器视觉系统时,开发人员可以选择众多知名公司的商用软件包。然而,在选择这类软件时,重要的是理解这些软件提供的功能、支持的硬件以及如何轻松地配置这样的软件,以解决特定的机器视觉任务。
概述 OpenCV是一个开放源代码的计算机视觉应用平台,由英特尔公司研发中心俄罗斯团队发起该项目,开源BSD证书,OpenCV的目标是实现实时计算机视觉,,是一个跨平台的计算机视觉库。从开发之日起就得到了迅猛发展,获得了众多公司和业界大牛的鼎力支持与贡献,因为是BSD开源许可,因此可以免费应用在科研和商业应用领域。 历史 OpenCV从立项之日起到现在不过短短的十几年时间,已经席卷整个业界,得到众多著名企业的大力支持,其中包括大名鼎鼎机器人公司Willow Garage与搜索引擎起家的Google。下面几个
OpenCV这么简单为啥不学——1.4、基础标识绘制(绘制线line函数、rectangle函数绘制四边形、circle函数绘制圆形、putText函数绘制文字、putText绘制中文文字)
领取专属 10元无门槛券
手把手带您无忧上云