机器视觉软件HALCON 实验指导书 目录 实验1 HALCON 概述,应用范例 实验2 HDevelop 介绍,操作编程范例 实验3 HALCON 编程接口 ,高级语言编程 实验4 HALCON 数据结构,采集硬件接口 实验5 HALCON 采集硬件配置 ,图像采集 实验6 HALCON 二维测量,配准测量与识别定位 实验7 HALCON 一维测量,尺寸测量 实验8 HALCON 三维测量,3D 重建测量 实验1 HALCON 概述,应用范例 实验2 HDevelop 介绍,操作编程范例 1 邮票分割 文件名: stamps.dev 第一个例子进行文件分析任务。图5 .1 展示了部分邮票目录页。它描述了两种不同的邮票:以图形描述为主和以文字描述为主。 为了使用这个例子,必须把文字描述转化为计算机所能理解的形式。你可能使用OCR 编程方式,你很快发现由于邮票的图形描述会导致大多数的可使用模块产生错误。于是另一项任务必须要进行预处理:对所有的邮票进行转化 (例如,把邮票转化为灰色有价值的纸),这样就可以使用OCR 处理邮票的剩余部分了。 当创造一个应用程序来解决这种问题,对要处理的对象进行特征提取是非常有帮助的。这个任务可以为新手提供解决的这类问题一些的经验。 一般而言,特征提取有如下步骤:邮票比纸要黑。 邮票包含图像的部分不重叠。 邮票具有最大最小尺寸。 邮票是长方形的。 图5.1: Michel图 表 的 部 分 页 . 如 果 直 接 使 用 属 性 清 单 而 非 编 程 , 任 务 会 变 得 很 简 单 。 可 惜 由 于 语 言 的 含 糊 , 这 是 不 可 能 的 。 所以 你 需 要 建 构 具 有 精 确 的 语 法 和 语 义 的 语 言 ,尽 可 能 接 近 非 正 式 的 描 述 。 使 用 HDevelop 语 法 , 一个 通 常 的 程 序 看 起 来 如 下 : dev_close_window () read_image (Catalog, ’swiss1.tiff’) get_image_pointer1 (Catalog, Pointer, Type, Width, Height) dev_open_window (0, 0, Width/2, Height/2, ’black’, WindowID) dev_set_part (0, 0, Height-1, Width-1) dev_set_draw (’fill’) threshold (Catalog, Dark, 0, 110) dev_set_colored (6) connection (Dark, ConnectedRegions) fill_up (ConnectedRegions, RegionFillUp) select_shape (RegionFillUp, StampCandidates, ’area’, ’and’, 100...