- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何使用HALCON开发机器视觉应用推荐
如何使用HALCON开发机器视觉应用三步法使用HALCON进行视觉应用开发1. 使用HDvelop进行图像检测,视觉方法验证,以及最终的视觉方法开发;2. 完整的应用通过使用如Microsoft Visual Studio之类的编程环境来开发;3. 将HALCON库和代表解决方案的生成应用装载到目标机或发送给客户。HALCON的基本结构主体部分为图像处理库,由大量的算子组成。用户也可以通过使用Extension Package的方式实施自己的算子。HALCON提供了Image Acquisition Interface的通用接口用于访问图像获取设备。Halcon中的Operators(算子)HALCAN库通过使用Operator(算子)来完成任意类型的功能。多达1600个算子算子之间不存在层级划分,从软件结构的角度来看,所有算子处于同一级。算子有逻辑上的分组。可以通过提供给C++,.NET,COM的类来直接看到。算子有标准化的规则,来调度输入和输出参数。算子的设计遵循开放的原则,你可以创建自己的算子。参数和数据结构两种基本的参数类型:iconic数据(images,regions,XLD contours)和control数据(integers,strings,handles等)每个算子的参数按照标准的顺序进行排练:input iconic,output iconic,input control和output control。对于一个给定的算子,不是所有的参数组都是必须的,然而,顺序是相同的。每个算子都与一个自描述接口算子的输入参数从来不会修改,这使得算子的语义非常清晰和简单。开放结果允许访问内部数据并整合外部数据。所有2D图像处理必须的数据结构,如多通道图像,区域,轮廓,元组等,都通过使用一种非常有效的实施来予以直接支持。ImagesImages属于iconic(符号)数据一幅图像的主体部分是通道,以及包含灰度值(不同像素类型)的矩阵对于每一张图像,Domain指定图像的哪一部分用于处理,类似于ROI。Domain是一种HALCON 区域(region),可以非常方便的进行定义,从简单的矩形到一些未连接的像素。像素数据(Pixel Data)像素数据几乎可为任何类型,从8-bit的灰度值到浮点数。图像通道(Image Channels)一个通道代表一个图像矩阵,每张图像可以有任意数目的通道数,同一幅图像中的所有通道尺寸相同。最常见的是单通道灰度图像以及三通道的彩色图像(如RGB)。坐标系统(Coordinate System)图像左上角为坐标原点(0,0),每个像素以row,和column表示其坐标,坐标值的范围从(0,0)到(height-1,width-1),每个像元的尺寸为1,第一个像素的中心坐标为(0,0),因此第一个像素的范围从(-0.5,-0.5)到(0.5, 0.5)。区域RegionsRegions属于iconic数据;Regions定义为一堆像素的集合。他们的坐标范围不受图像大小的限制。区域的像素不需要连接在一起,也就是任意形状的像素集合都可以成为一个region,如果要让相连接的像素成为一个region,只需呼叫运算子connection即可。可通过运算子set_system配合参数‘clip region’来设定区域的尺寸限制在图像大小范围内应用中允许设定的区域数目不限制XLDsXLDs是eXtended Line Description的缩写,包含所有基于轮廓和多边形的数据;XLDs属于iconic数据;亚像素精度的算子如edges_sub_pix以XLD数据的方式返回轮廓;一个轮廓是一个系列的2D控制点,通过线段连接。通常,控制点之间的距离为1个像素。句柄HandlesHandles属于control数据;Handles是到复杂数据结构的引用,如一个到图像获取设备的连接,或者一个基于形状的匹配的模型。考虑到效率和数据安全的因素,不是整个数据结构而只是句柄在算子之间被传递;Handles是唯一的整数值;句柄使用的例子包括图像窗口,文件,socket,图像获取设备,OCR,OCV,测量,匹配等。HALCON与并行编程HALCON支持并行编程(如多线程程序),多个线程可以同时调用同一个HALCON算子。如果运行在多处理器或多核硬件上,HALCON将自动并行化算子。并行机制基于将数据(如待处理的图像)分布到运行在不同处理器上的多个线程(称为数据并行化)。例如,对于一个包含四个处理器板卡上的滤波操作,图像将划分成四块,并通过四个线程(执行相同的滤波算子)并行处理。这种并行非常高效,因为图像无需拷贝,使用HALCON进行并行编程的详细信息可以参考Programmer’s Guide,第二章,17页。HALCON
原创力文档


文档评论(0)