Halcon学习笔记2
图像预处理
一般来说,我们采集到的图像会有一些小黑点,小斑点,不平滑等因素会会影响我们后期的算法,此时就需要我们对其图片进行预处理。
下面是一些预处理基本算子:
1、消除噪声:mean_image/binomial_filter
a)mean_image(Image,ImageMean,MaskWidth,MaskHeight)
参数:
Image:输入图像
ImageMean:输出图像
MaskWidth:遮掩的宽度【要过滤的宽度】
默认值: 9
建议值: 3, 5, 7, 9, 11, 15, 23, 31, 43, 61, 101
典型区域值: 1 ≤ MaskWidth ≤ 501
MaskHeight:遮掩的高度【要过滤的高度】
默认值: 9
建议值: 3, 5, 7, 9, 11, 15, 23, 31, 43, 61, 101
典型区域值: 1 ≤ MaskHeight ≤ 501
2)binomial_filter(Image,ImageBinomial,MaskWidth,MaskHeight)
参数:
Image :输入图像
ImageBinomial:输出图像
MaskWidth :遮掩的宽度【要过滤的宽度】
默认值: 5
可选值: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37
MaskHeight :遮掩高度【要过滤的高度】
默认值: 5
可选值: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37
2、抑制小斑点或者细线:median_image
a)median_image(Image,ImageMedian,MaskType,Radius,Margin)
参数:
Image:输入图像
ImageMedian:输出图像
MaskType:掩饰类型
Filter mask type.
默认值: 'circle'
可选值: 'circle', 'square'
可选值 (为计算机设备): 'square'
Radius :半径
默认值: 1
可选值 (为计算机设备): 1, 2
建议值: 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 15, 19, 25, 31, 39, 47, 59
典型区域类型值: 1 ≤ Radius ≤ 4095
Margin :
边界处理.
默认值: 'mirrored'
可选值 (为计算机设备): 'mirrored'
建议值: 'mirrored', 'cyclic', 'continued', 0, 30, 60, 90, 120, 150, 180, 210, 240, 255
3、平滑:smooth_image
smooth_image(Image,ImageSmooth,Filter,Alpha)
参数:
Image :输入图像
ImageSmooth:输出图像
Filter :过滤
默认值: 'deriche2'
可选值: 'deriche1', 'deriche2', 'gauss', 'shen'
Alpha :
过滤参数: 小值导致强烈的平滑(亦然用 bei 'gauss').
默认值: 0.5
建议值: 0.1, 0.2, 0.3, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 4.0, 5.0, 7.0, 10.0
典型的范围值: 0.01 ≤ Alpha ≤ 50.0
最小增量: 0.01
建议增加: 0.1
限制: Alpha > 0
4、保存边缘的平滑:anisotropic_diffusion
anisotropic_diffusion(Image,ImageAniso,Mode,Contrast,Theta,Iterations)
参数:
Image:输入图像
ImageAniso:输出图像
Mode:
扩散系数函数的振幅
默认值: 'weickert'
可选值: 'parabolic', 'perona-malik', 'weickert'
Contrast:
对比,差别
默认值: 5.0
建议值: 2.0, 5.0, 10.0, 20.0, 50.0, 100.0
限制: Contrast > 0
Theta:
时间步
默认值: 1.0
建议值: 0.5, 1.0, 3.0
限制: Theta > 0
Iterations:
迭代次数
默认值: 10
建议值: 1, 3, 10, 100, 500
限制: Iterations >= 1
Halcon学习笔记2的更多相关文章
- Halcon学习笔记之支持向量机(二)
例程:classify_halogen_bulbs.hdev 在Halcon中模式匹配最成熟最常用的方式该署支持向量机了,在本例程中展示了使用支持向量机对卤素灯的质量检测方法.通过这个案例,相信大家可 ...
- Halcon学习笔记之支持向量机(一)
例程:class_overlap_svm.hdev 说明:这个例程展示了如何用一个支持向量机来给一幅二维的图像进行分类.使用二维数据的原因是因为它可以很容易地联想成为区域和图像.本例程中使用了三个互相 ...
- halcon学习笔记——机器视觉工程应用的开发思路【转】
转自:http://www.cnblogs.com/hanzhaoxin/archive/2013/02/15/2912879.html 机器视觉工程应用主要可划分为硬件和软件两大部分. 硬件:工程应 ...
- Halcon学习笔记——条形码的定位与识别
一维码的原理与结构 条码基本原理是利用条纹和间隔或宽窄条纹(间隔)构成二进制的”0“和”1“,反映的是某种信息. 一维条码数据结构,分四个区域.组成分别为静区.起始/终止符.校验符.数据符. 一维条码 ...
- Halcon学习笔记——机器视觉应用工程开发思路及相机标定
机器视觉应用工程开发思路 机器视觉应用工程主要可划分为两大部分,硬件部分和软件部分. 1.硬件部分,硬件的选型至关重要,决定了后续工作是否可以正常开展,其中关键硬件部分包括:光源,相机以及镜头. 2. ...
- Halcon学习笔记1
转:https://www.cnblogs.com/hanzhaoxin/archive/2013/02/15/2912879.html 机器视觉工程应用主要可划分为硬件和软件两大部分. 硬件:工程应 ...
- halcon学习笔记——(11)Image,region,xld初步
一 读取的3种方式: 读取单张的图片: read_image( image,'filename') //image 是输出对象,后面是输入文件的路径和名称 读取多图: 1,申明一个数组,分别保存路径 ...
- Halcon学习笔记之缺陷检测(二)
例程:detect_indent_fft.hdev 说明:这个程序展示了如何利用快速傅里叶变换(FFT)对塑料制品的表面进行目标(缺陷)的检测,大致分为三步: 首先,我们用高斯滤波器构造一个合适的滤波 ...
- Halcon学习笔记之缺陷检测(一)
例程:surface_scratch.hdev 说明:这个程序利用局部阈值和形态学处理提取表面划痕 代码中绿色部分为个人理解和注释,其余为例程中原有代码 *surface_scratch.hdev:e ...
- HALCON学习笔记
2019-2-2: 硬件选型--->镜头光源相机选型第一讲.avi: 高斯公式:1/u+1/v=1/f u:物距 v:像距 f:焦距 线放大倍率:像高/物高 或者 像距/物距 镜头需要掌握 ...
随机推荐
- Getting Started with the Intel Media SDK
By Gael Hofemeier on March 19, 2015 Follow Gael on Twitter: @GaelHof Media SDK Developer’s Guide Med ...
- python 高性能web框架 gunicorn+gevent
参考链接: http://rfyiamcool.blog.51cto.com/1030776/1276364/ http://www.cnblogs.com/nanrou/p/7026789.html ...
- 洛谷P4316绿豆蛙的归宿——期望
题目:https://www.luogu.org/problemnew/show/P4316 期望水题,从终点向起点推,因为是DAG,所以拓扑序推过去即可. 代码如下: #include<ios ...
- 【转】构建Maven项目自动下载jar包
原文地址:https://blog.csdn.net/gfd54gd5f46/article/details/54973954 使用Maven 自动下载jar包 右键单击项目,将项目 转换成Maven ...
- 探究final在java中的作用
目录 一. final修饰变量 1. 基础: final修饰基本数据类型变量和引用数据类型变量. 2. 进阶: 被final修饰的常量在编译阶段会被放入常量池中 3. 探索: 为什么局部/匿名内部类在 ...
- vector理解一波~~~
Vector: 头文件: #include<vector> using namespacestd; 定义: vector<类型>q;//类同于 "类型 q[];&q ...
- 51单片机 HC05蓝牙模块
一.注意事项 1.烧写程序时,要把蓝牙tx,rx信号线拔掉,对烧写程序有影响. 2.执行HC05集命令时,均以\r\n结尾.串口中断若选择“发送新行”时,不用添加\r\n.原理相同. 二.准备软硬件 ...
- P5024 保卫王国
传送门 我现在还是不明白为什么NOIPd2t3会是一道动态dp-- 首先关于动态dp可以看这里 然后这里就是把把矩阵给改一改,改成这个形式\[\left[dp_{i-1,0},dp_{i-1,1}\r ...
- 如何通过Gitalk评论插件,5分钟为你的博客快速集成评论功能
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- layui开始时间小于结束时间
直接上代码 // var endDate= laydate.render({ // elem: '#end_time',//选择器结束时间 // type: 'datetime', // min:&q ...