Halcon机器视觉实验指导书

合集下载

halcon算子较全的中文手册

halcon算子较全的中文手册

1. Halcon算子概述Halcon是一种强大的机器视觉软件,它由MVTec开发,可用于各种工业和非工业应用。

在Halcon中,算子是至关重要的组成部分,它们可以实现图像处理中的各种功能,如滤波、边缘检测、特征提取等。

本文将以算子作为主题,深入探讨Halcon算子的各种特性和用法。

2. Halcon算子的分类Halcon算子可以分为预处理算子、过滤算子、分割算子、匹配算子、测量算子等多个类别。

每个类别都包含了众多的算子,它们可以根据图像处理任务的不同需求进行灵活组合和调用。

3. Halcon算子的特性Halcon算子具有许多独特的特性,如多样的输入输出形式、灵活的参数设置、高效的运算速度等。

这些特性使得Halcon算子在图像处理领域得到广泛应用,并受到了众多工程师和科研人员的喜爱。

4. Halcon算子的使用技巧在使用Halcon算子时,熟练掌握一些技巧和经验是非常重要的。

合理设置算子的参数、选择适当的算法、理解算子的内部原理等,都可以帮助我们更好地使用Halcon算子,提高图像处理的效率和准确性。

通过一些典型的应用案例,我们可以深入了解Halcon算子的实际应用。

这些案例涵盖了工业质检、医疗影像、无人驾驶、智能制造等多个领域,展示了Halcon算子的强大功能和广泛适用性。

6. 我对Halcon算子的个人理解作为一名Halcon用户,我对Halcon算子有着深刻的认识和体会。

我认为Halcon算子不仅仅是图像处理的工具,更是一种思维方式和解决问题的哲学。

通过深入学习和使用Halcon算子,我对图像处理和机器视觉有了全新的认识和理解。

总结与回顾通过本文的全面介绍和深度探讨,我们对Halcon算子有了更加全面和深入的了解。

从算子的分类到使用技巧,再到实际案例分析,我们逐步领略了Halcon算子的强大功能和潜力。

我相信,在今后的工作和研究中,我们可以更好地运用Halcon算子,为图像处理和机器视觉领域的发展做出更大的贡献。

halcon机器视觉试验平台设计方案与研究报告

halcon机器视觉试验平台设计方案与研究报告

halcon机器视觉试验平台设计方案与研究报告一晃十年,机器视觉领域的发展真是日新月异。

今天,我就来给大家分享一下关于halcon机器视觉试验平台的设计方案和研究报告。

准备好了吗?那就开始吧!咱们得明确一下halcon机器视觉试验平台的目的。

这个平台主要是为了帮助工程师和技术人员更好地了解和掌握halcon机器视觉软件的各项功能,提高视觉算法的研发效率。

咱们就一步一步地展开设计方案。

1.平台架构设计高性能处理器:为了保证视觉处理速度,我们选择了IntelCorei7处理器。

大容量内存:视觉处理过程中,内存容量至关重要。

我们选择了16GB内存。

高速存储:为了提高数据处理速度,我们选择了SSD硬盘。

多接口扩展:为了连接各种相机和传感器,我们选择了具备多个USB和GPIO接口的主板。

2.软件系统设计我们来看看软件系统。

这里主要包括两部分:操作系统和halcon 机器视觉软件。

操作系统:为了保证软件的稳定运行,我们选择了Windows10操作系统。

Halcon机器视觉软件:这是我们平台的重点。

我们需要对halcon 软件进行详细的研究,了解其各项功能,以便在试验平台中发挥最大作用。

3.视觉算法研究图像预处理:包括图像滤波、去噪、边缘检测等。

特征提取:包括角点检测、边缘提取、形状描述等。

目标识别:包括模板匹配、形状匹配、颜色识别等。

目标定位:包括单目标定位、多目标定位、姿态估计等。

4.实验方案设计图像预处理实验:研究不同滤波算法对图像去噪效果的影响。

特征提取实验:研究不同特征提取算法对目标识别和定位精度的影响。

目标识别实验:研究不同模板匹配算法对目标识别速度和精度的影响。

目标定位实验:研究不同定位算法对目标定位精度和速度的影响。

5.数据分析与优化性能分析:分析不同算法在处理速度、内存占用等方面的表现。

精度分析:分析不同算法在目标识别、定位等方面的精度。

稳定性分析:分析算法在长时间运行过程中的稳定性。

掌握halcon机器视觉软件的各项功能,为后续项目打下基础。

工业机器视觉基础教程-halcon篇

工业机器视觉基础教程-halcon篇

工业机器视觉基础教程-halcon篇工业机器视觉是指应用机器视觉技术在工业生产中,实现产品质量检测、工业自动化等一系列目标。

而HALCON则是一款功能齐全、具备丰富图像处理库的应用授权软件。

本文将介绍HALCON图像处理中的基本操作和应用。

一、HALCON图像处理的基本操作1.图像加载:使用read_image操作,该操作可以加载多种图像格式的图片文件。

如:read_image(Image, “test.jpg”)。

2.图像显示:使用disp_image操作可以对加载图像进行可视化处理并显示在界面上。

如:disp_image(Image)。

3.图像缩放:resize_image操作可以对图像进行缩放处理,缩放后的图像尺寸可以根据需求调整。

如:resize_image(Image,Image2,800,600,”bilinear”)。

4.图像灰度化:使用rgb1_to_gray操作可以将彩色图像转化为灰度图像。

如:rgb1_to_gray(Image,Image2)。

5.边缘检测:使用edge_image操作可以对图像进行边缘检测,检测出目标区域的轮廓和边缘。

如:edge_image(Image,Image2,”canny”)。

6.形态学操作:morph_operator操作可以对图像进行形态学操作,如膨胀、腐蚀、开、闭等。

如:morph_operator(Image,Image2,”dilation”,5)。

7.颜色分割:color_segmentation操作可以根据像素的颜色信息进行分割处理,一般是针对彩色图像。

如:color_segmentation (Image,Image2,“HSV”,[1, 0,0],[255, 255, 255])。

二、HALCON图像处理的应用1.工业质检:HALCON图像处理可以应用于工业质检领域,在生产线上进行产品质量检测,包括外观、尺寸、缺陷等。

2.智能制造:HALCON图像处理可以实现机器视觉智能制造,根据生产工艺流程和生产数据进行智能制造调节和优化。

机器视觉算法作业指导书

机器视觉算法作业指导书

机器视觉算法作业指导书一、概述机器视觉算法作业旨在帮助学生掌握机器视觉领域的基本概念和常用算法。

本指导书将详细介绍作业要求、任务流程和评分标准。

二、作业要求1. 任务描述在给定的图像数据集上,设计和实现一个机器视觉算法,完成图像分类、目标检测、图像分割或其他相关任务。

学生可以选择自己感兴趣的任务进行研究和实验。

2. 算法实现(1) 学生可以使用Python、C++等编程语言实现算法,但要求代码结构清晰、易读且具备一定的可扩展性。

(2) 算法实现应考虑高效性和准确性,并能处理多种图像数据类型。

3. 实验设计(1) 学生应合理设计实验,包括数据集划分、参数设置、评价指标等。

(2) 实验过程中要注意确保实验结果可重现性,以便他人能够复现和验证实验结果。

4. 实验报告(1) 学生需撰写实验报告,报告内容包括算法描述、实验设计和结果分析等。

(2) 实验报告应清晰明了,逻辑严密,图表清晰,并遵循学校要求的论文写作规范。

三、任务流程1. 确定任务和数据集学生根据自身兴趣和实验需求,选择具体的任务和相应的图像数据集。

2. 算法研究和设计学生应对所选任务进行深入研究,了解该领域的基本理论和常用算法,并设计适合解决所选任务的算法模型。

3. 算法实现和调试学生根据设计的算法模型,使用所选编程语言实现算法,并进行调试和测试,确保算法能够正确运行。

4. 实验设计和实施学生需合理设计实验,包括数据集划分、参数设置和评价指标等。

然后在所选数据集上进行实验,并记录实验结果。

5. 分析和总结学生应对实验结果进行详细分析和总结,评估算法的性能和准确性,并讨论改进方向和可能存在的问题。

6. 撰写实验报告学生应根据实验过程和结果撰写实验报告,报告应包括算法描述、实验设计、结果分析和讨论等内容。

四、评分标准1. 实验结果的准确性和完整性学生需保证实验结果的准确性,包括算法正确实现以及对数据集的准确处理和分析。

2. 算法创新性和改进空间学生的算法设计是否具有创新性,并且能够提出改进策略和可能存在的问题。

Halcon机器视觉一

Halcon机器视觉一

Halcon计算机视觉实验(食品日期检测)⏹实验环境:Windows 7/8/XPHalcon 10.0⏹实验课时:2⏹实验目的:验证性实验,让学生了解识别的整个识别流程,并分析各类参数对于识别结果的影响,学会运用halcon去分析问题,增强对计算机视觉技术中OCR识别了解和掌握。

⏹实验要求:在halcon平台完整测试该部分代码,并分析每行代码,撰写识别过程的实习报告。

包括:识别目的和思路识别中间结果识别的代码及参数的详解实验体会等。

⏹实验内容食品检测- 最佳使用日期这个范例实现的是检测瓶子上的最佳截止日期,参见下图,这个任务要分多步完成。

首先,暗点的区域被提取出来去后期处理,其它淡的组成部分被消除。

threshold (Bottle, RawSegmentation, 0, 95)fill_up_shape (RawSegmentation, RemovedNoise, ’area’, 1, 5)opening_circle (RemovedNoise, ThickStructures, 2.5)fill_up (ThickStructures, Solid)接着,这个被分离出来的区域被分割成独立的字符,即使紧密连在一起的字符也能被分离开来。

opening_rectangle1 (Solid, Cut, 1, 7)connection (Cut, ConnectedPatterns)intersection (ConnectedPatterns, ThickStructures, NumberCandidates)select_shape (NumberCandidates, Numbers, ’area’, ’and’, 300, 9999)sort_region (Numbers, FinalNumbers, ’first_point’, ’true’, ’column’)最后,实际的字符就显示出来了。

基于HALCON的机器视觉系统的研究与实现

基于HALCON的机器视觉系统的研究与实现

基于HALCON的机器视觉系统的研究与实现近年来,机器视觉系统以其高效率、高可靠、低成本的特点在国外取得了广泛的应用。

机器视觉系统适用于众多领域,例如工业自动化、医药业、制造业、农业等,弥补了人类视觉的很多不足。

本文采用德国MVTec公司的专业机器视觉软件HALCON来开发机器视觉系统,提出了相关机器视觉实现方法,并且在机器视觉实验平台上完成了一个弹簧片检测任务。

目前关注较多的是机器视觉系统的硬件部分,而机器视觉软件部分关注较少,一个先进的机器视觉系统除了具有高性能的硬件外,还需要有高性能的软件,虽然说许多常见的开发软件例如Mircosoft的Visual Studio、NI的LabWindows\CVI等等都可以开发机器视觉系统,但是开发周期比较长,针对性较弱,程序的复杂程度较高。

而采用HALCON作为机器视觉和图像处理核心软件,不仅大大缩短了开发周期,降低了开发难度,而且可以参考HALCON提供的众多机器视觉和图像处理例程来针对具体的任务做具体开发。

文章的第一章研究了机器视觉系统的组成、应用现状和发展,并且对机器视觉软件HALCON做了概述。

第二章根据相关要求,选择合适的硬件单元,设计和搭建了VS-ZM1200机器视觉实验平台。

第三章研究了机器视觉中常用的一些图像处理技术,重点讨论了在弹簧片检测任务中所采用的图像处理技术和算法,如图像的增强,分割,边缘检测等。

第四章研究了机器视觉软件,重点研究了HALCON,并且对在Visual C++开发环境下如何使用HALCON编写的程序做了讨论。

第五章介绍了在VS-ZM1200机器视觉实验平台上,使用HALCON和Visual C++开发的一套弹簧片检测系统,该系统完成关于弹簧片的尺寸参数测量和外观参数判别的任务。

第一章:绪论1.1机器视觉概述人类在征服自然、改造自然和推动社会进步的过程中,为了克服自身能力、能量的局限性,发明和创造了许多机器来辅助或代替人类完成任务。

机器视觉作业指导书

机器视觉作业指导书

机器视觉作业指导书一、引言机器视觉作业指导书旨在为学生提供关于机器视觉的基本概念、原理、方法以及实践技巧的指导。

通过本指导书的学习,学生将能够全面了解机器视觉的相关知识,并能够应用所学知识解决实际问题。

二、背景知识1. 机器视觉定义与应用领域机器视觉是指利用摄像机和计算机技术来模拟人类视觉的能力,并对图像或视频进行智能处理和分析的技术领域。

它在工业自动化、医疗诊断、交通管理、安防监控等领域有广泛的应用。

2. 机器视觉基本原理机器视觉基于数字图像处理和模式识别的基本原理,主要包括图像获取、预处理、特征提取、目标检测与跟踪等几个关键步骤。

学生需要掌握图像处理的基本概念和算法,以及常用的模式识别方法。

三、实验指导1. 实验一:图像获取与预处理1. 学生需要准备相机设备,并学会使用相机进行图像的拍摄。

2. 学生需要学习如何进行图像的预处理,包括去噪、增强、平滑等操作。

2. 实验二:特征提取与描述1. 学生需要学习如何从图像中提取出有效的特征,例如边缘、角点、纹理等。

2. 学生需要学习如何用数学描述特征,例如使用特征向量或者特征描述子等。

3. 实验三:目标检测与跟踪1. 学生需要学习目标检测与跟踪的基本概念和方法,例如使用模板匹配、机器学习等技术。

2. 学生需要通过实践掌握如何在图像或视频中检测和跟踪目标。

四、实验报告要求1. 实验目的与背景介绍学生需要在实验报告中清楚地陈述实验目的和所涉及的背景知识,并说明实验的重要性和应用前景。

2. 实验过程与结果分析学生需要详细叙述实验过程,并展示实验结果。

结果分析要求准确、有逻辑性,并结合实验目的进行解释和讨论。

3. 实验总结与心得体会学生需要总结实验的结果和经验,并在心得体会中反思和展望进一步的改进和研究方向。

五、参考资料在完成作业和实验报告的过程中,学生可以参考以下资料:1. 《机器视觉导论》李飞飞等著2. 《计算机视觉:模型、学习和推理》 Simon J. D,等著六、结语机器视觉作业指导书为学生提供了学习机器视觉的基本方法和实践技巧,希望学生通过实验实践和报告撰写的过程,能够深入理解机器视觉的原理和应用,并能够将所学知识应用于实际问题的解决中。

《HALCON机器视觉与算法原理编程实践》第3章硬件环境搭建

《HALCON机器视觉与算法原理编程实践》第3章硬件环境搭建

《HALCON机器视觉与算法原理编程实践》第3章硬件环境搭建文章目录•o▪ 3.1 相机▪▪ 3.1.1 相机的主要参数▪ 3.1.2 相机的种类▪ 3.1.3 相机的接口▪ 3.1.4 相机的选型▪ 3.2 图像采集卡▪ 3.3 镜头▪ 3.4 光源3.1 相机做机器视觉项目的第一步就是图像输入,而图像输入离不开相机。

3.1.1 相机的主要参数1.分辨率。

分辨率是图像像素点数,对图像的质量有很大的影响。

它是决定图像是否清晰的一个重要因素。

也是我们选择工业相机时必看的一项参数。

2.像素深度。

这个参数也在一定程度上影响着图像质量的好坏。

3.最大帧率。

这个参数是相机采取传输图像速率的一个重要的衡量标准,对于一般的面阵相机一般为每秒采集的帧数,对于大多数线阵相机为每秒采集的行数,这是选择工业相机时得考虑的必不可少的一个参数4.曝光方式。

不同的工业相机有着不同的曝光方式。

线阵相机一般采用的是逐行曝光方式,面阵相机一般采用帧曝光和滚动行曝光,还有一些面阵相机才用的是场曝光。

5.像元尺寸。

像元大小和分辨率共同决定了相机的靶面的大小。

而相机靶面有对图像的成像质量有着很大的影响。

一般情况下,像元的尺寸越小,越难制造,但是越小的像元成像的质量也就越高。

6.接口类型。

不同的工业相机有着不同的接口类型。

3.1.2 相机的种类1.按照芯片类型可以分为CCD相机、CMOS相机;2.按照传感器的结构特性可以分为线阵相机、面阵相机;3.4.按照扫描方式可以分为隔行扫描相机、逐行扫描相机;5.按照分辨率大小可以分为普通分辨率相机、高分辨率相机;6.按照输出信号方式可以分为模拟相机、数字相机;7.按照输出色彩可以分为单色(黑白)相机、彩色相机;8.按照输出信号速度可以分为普通速度相机、高速相机;9.按照响应频率范围可以分为可见光(普通)相机、红外相机、紫外相机等。

3.1.3 相机的接口(1)GIGE千兆网接口1.千兆网协议稳定。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

机器视觉软件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: Mi c he l图表的部分页.如果直接使用属性清单而非编程,任务会变得很简单。

可惜由于语言的含糊,这是不可能的。

所以你需要建构具有精确的语法和语义的语言,尽可能接近非正式的描述。

使用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) fi l l_u p(ConnectedRegions, RegionFillUp) select_shape(RegionFillUp, StampCandidates, ’area’,’and’, 10000, 200000)select_shape (StampCandidates,Stamps, ’compactness’, ’and’, 1, 1.5)smallest_rectangle1 (Stamps, Row1, Column1, Row2, Column2)dev_display (Catalog)dev_set_draw (’margin’)dev_set_line_width (3)disp_rectangle1 (WindowID, Row1, Column1, Row2, Column2)由于一些为止的操作符合不熟悉的语法,这个程序咋看起来会很晦涩。

但如果仔细看一下这个操作符,你就会注意以下说明的直接联系。

threshold选择全部图像像素黑暗比值。

connection 合并所有选定像素触摸相互连通区。

selectshape选择区域面积(属性:'面积')在指定区间内。

sm allestrec tangle1计算每个区域的坐标(连续/栏)的包围矩形。

一旦用户熟悉了承操作符和语法、转换就变得很容易。

特别需要指出,对于程序来说,图像或者加工区是否被处理并不重要,你可以使用相同的方法处理他们。

. 由于中间数据结构的内存管理对用户来说是透明的,你可以不必理会它,你可以集中解决图像分析任务。

图5.2邮票分割处理的结果2毛细血管文件名: ve ss el. dev这个例子的任务是分割毛细血管。

尤其,你要把图5.3(图像左)的细胞区域的上、下部分从图像的中央区域区分开。

区界线很模糊,甚至以人的来认识他们都是困难的。

乍看之下,似乎很难找到一个分割准则: 在这两幅图的灰度值既无明显清晰的边界也无明显的不同。

所以用限定操作或边界操作并不是很有用。

解决这一问题的一个方法是利用区域的不同质地:细胞比有血液供应得部分的更有角质化。

强调这种差异,你可以用纹理变换。

变换是线性纹理过滤加大对某些频率所要求的典型纹理。

HALCON的相应操作叫做纹理法则。

你必须指明大小和过滤式。

双方属性确定的频率的性能。

在这个程序里过滤器”el”使用 5 ×5的大小。

在垂直方向和水平方向,它表现了一个平滑推导。

因此在垂直方向是加大结构。

你不可以直接使用计算机的处理结果(图5.3 右),因为他有太多的斑点。

因此,你可以通过一个主要的过滤器产生纹理图像。

通过这你可以的得到所谓的纹理能量(图5.4左)。

图5.4: 毛细血管纹理能源(左)和分割(右)。

选择的过滤面罩在这个计划是非常大的。

面具大小在水平方向和垂直方向为211和61。

采用不对称方式,因为在水平方向上血管是堵塞的。

因此你得到一个图像上下部分比中间部分明亮。

read_image (Image, ’vessel’)texture_laws (Image, Texture, ’el’, 5,5)mean_image (Texture, Energy, 211, 61)bin_threshold (Energy, Vessel)区分这些区域你只要找到合适的门槛。

在这种情况下,我们有两种不同的纹理—门限可以自动发现。

这是有操作符b i n th r e s h o l d完成的,这也同样门限的结果和这样的血管。

图5.4(右)显示了分割的结果。

3 颗粒文件名: p a r t i c l e .dev这个程序示例处理的图像是来自于一个医学程序的处理结果。

它显示载体上的微小颗粒(图 5.5左)。

图5.5:微小颗粒(左)大的物体(右)。

正如其他许多医学应用, 目前已存在的对象必须进行评估统计。

这意味着将有不同的对象按大小或其它属性提取和分类,这样你可以分析他们。

为解决这一问题迈出的重要一步,是相关物件的图像分割。

统计评价为您不妨看看合适的文献统计。

在我们的例子有两个类型的对象:--- 大的,明亮的颗粒--- 小的,暗的颗粒大的,明亮的颗粒由于它们的灰度值不同于它们的背景。

比背景明亮意味着要使用门限方式处理。

你唯一要决定的是指定门限是自动还是使用经验值。

在我们的例子里,一个固定的门限值由于好的对比是非常重要的。

因此,你要有一个好的计算方法:read_image (Particle,’particle’)threshold (Particle, Large, 110, 255)变量其包含所有像素灰度值超过110。

你可以从图5.5右边的图看到。

发现小的,暗的颗粒是很困难的。

指出门限的第一步努力说明没有固定的门限使用与所有的颗粒。

但是如果更仔细的观察你就会发现小的颗粒比它们周围的环境明亮,例如,你可以指定一个合时的门限值对小图像的部分区域是合适的。

现在,把这个发现转化为算法是容易的,一种决定门限的值的本地方法。

另一个可能的解决当地环境的定义由n阶窗口,这种方法在本例中使用。

窗外的平均值作为一个近似的背景强度。

这可以通过选择低通滤波,要么是平均要么是高斯滤波器过滤。

窗口尺寸大小决定于当地的环境,并应约两倍之多对象搜寻。

这样显示平均直径15像素,用口罩面积31。

由此所指定的象素比较原始灰度值的平均数。

减少噪音引起的问题加上一个常量(3)。

适当程序段看起来如下:mean_image (Particle, Mean, 31, 31)dyn_threshold (Particle, Mean, Small, 3,’light’)dynthreshold操作符比较两个像素的图像像素。

可以看到图5.6(左)分割结果。

我们看到,所有的物体被发现. 可惜,边缘的大型粒子和一些非常小的区域,由于噪音的出现也混合在一起出现。

我们一开始尝试压缩边界。

这样做的会产生一个超过允许最大值的常数。

你可以这样做:connection (Small, SmallSingle)select_shape (SmallSingle, ReallySmall, ’area’, ’and’, 1, 300)采用这种方法你也有可能清除掉一些非常小的物体。

你只需要使用selectshape增调用增加最小尺寸。

但是如果你再次检查分割结果,你会发现一些已经造成像素提取第一分割。

因此你应该寻找小颗粒以弥补大的不足。

为了避免分割大颗粒附近的小颗粒,这些都是建立在互补放大。

因此,我们如下修改的程序。

dilation_circle (Large, LargeDilation, 8.5)complement (LargeDilation, NotLarge)reduce_domain (Particle, NotLarge, ParticleRed)mean_image (ParticleRed, Mean, 31, 31)dyn_threshold (ParticleRed, Mean, Small, 3,’light’)图5.6 简单物体(左)和高级分割(右)这种方法显示出两个优点:图5.6 小物体:简单(左)和已经分割的(右)dilation_circle (Large, LargeDilation, 8.5)complement (LargeDilation, NotLarge)reduce_domain (Particle, NotLarge, ParticleRed)mean_image (ParticleRed, Mean, 31, 31)dyn_threshold (ParticleRed, Mean, Small, 3,’light’)这种方式有两种优势:第一,大颗粒的模型可以被用来提取小的颗粒。

这增加了分割的质量;第二,分割的进程被加速,因为分割的第二部分工作建立在部分图像之上。

图5.6的右边图像显示了分割结果。

可惜,图像仍然还有噪音。

为了去掉它们,你要么使用以前说过的使用面积来去除,要么使用opening操作符,我们推荐使用第二种方法,因为它能平滑图像的边界。

opening_circle (Small, SmallClean, 2.5)这里opening操作符使用循环结构,这个操作符所保存的区域最小是一个直径为2.5的区域。

相关文档
最新文档