- 博客(21)
- 收藏
- 关注
原创 图像的滤波
1.图像的平滑:图像平滑的主要目的是减少图像的噪声。(1)smooth_image(Image:ImageSmooth:Filter,Alpha:) 功能描述:使用递归滤波器对图像进行平滑(高斯滤波使用非递归滤波器) 参数: Image(输入参数):输入图像; ImageSmooth(输出参数):滤波后的图像;
2016-01-20 16:42:48 1032
原创 图像的几何变换
1.图像的旋转 算子:rotate_image(Image:ImageRotate:Phi,Interpolation) 功能描述:围绕图像中心旋转图像。 参数: Image(输入参数):输入图像; ImageRotate(输出参数):旋转后图像; Phi(输入参数):旋转角度(单位:角度); Interpolation(输入参数):插值算法
2016-01-13 15:50:12 626
转载 模板匹配算法简介
模板匹配是数字图像处理的重要组成部分之一。把不同传感器或同一传感器在不同时间、不同成像条件下对同一景物获取的两幅或多幅图像在空间上对准,或根据已知模式到另一幅图中寻找相应模式的处理方法就叫做模板匹配。 简单而言,模板就是一幅已知的小图像。模板匹配就是在一幅大图像中搜寻目标,已知该图中有要找的目标,且该目标同模板有相同的尺寸、方向和图像,通过一定的算法可以在图中找到目标,确定其坐标位置
2016-01-13 15:23:44 2390
原创 图像的点运算
1.灰度直方图:2.灰度的先行变换:3.直方图均衡化 算子:equ_histo_image(Image:ImageEquHisto) 参数: Image(输入参数):输入图像; ImageEquHisto(输出参数):均衡化后图像;4.图像反转处理5.图像的加法运算 算子:add_image(Image1,Image2:ImageResul
2016-01-12 17:00:23 564
原创 灰度的线性变换
相关函数:scale_image、scale_image_max 1.scale_image(Image:ImageScale:Mult,Add:) 功能描述:对图像灰度值进行先行变换。 参数: Image(输入参数):输入(原始)图像; ImageScale(输出参数):变换后的结果图像; Mult(输入参数):系数;
2016-01-12 15:57:43 1450
原创 灰度直方图使用实例
*读取图像read_image(Image,'clip')*产生直方图gray_histo(Image,Image,AbsoluteHisto, RelativeHisto)*产生直方图区域gen_region_histo(Region, RelativeHisto, 255, 255, 1)*根据直方图求分割阈值histo_to_thresh(RelativeHist
2016-01-12 15:55:59 3417
原创 灰度直方图
相关算子有:gray_histo、gen_region_histo、histo_to_thresh. (1,)gray_histo(Regions,Image:::AbsoluteHisto,RelativeHisto) 功能描述:计算区域内的灰度值分布(灰度直方图) 参数: Regions(输入参数):计算直方图的区域;
2016-01-12 15:44:53 4128
原创 3.5.2赋值运算
1.assign(Input,Result): 赋值运算表示为:Result:=Input2.insert(Input,Value,Index,Result):用于对元组元素进行赋值 参数说明:Input:执行插入操作的元组 Value:插入的新数值 Index:被插入的索引位置
2016-01-08 16:32:34 293
原创 3.5.8比较操作
操作及功能 算子t1t1>t2:大于 tuple_greatert1t1>=t2:大于等于 tuple_greater_equalt1=t2:相等 tuple_equalt1#t2:不相等 tuple_not_equal
2016-01-08 16:23:18 244
原创 3.5.12数学函数
操作及功能 算子min(t):返回元组的最小元素 tuple_minmin2(t1,t2):计算两个元组对应元素的最小值 tuple_min2max(t):返回一个元组的最大元素 tuple_maxmax2(t1,t2):计算两个元组对应元素的最大值 tuple
2016-01-08 16:01:17 367
原创 3.5.13其它函数
操作及功能 对应算子sort(t):升序排列 tuple_sortsort_index(t):将元组排序,并返回元组的索引 tuple_sort_indexinverse(t):将元组进行转置变换 tuple_inverseis_number(v):检测一个值是否是数字 tuple_is_numbernumb
2016-01-08 15:24:40 289
转载 机器视觉中的blob分析基本概念
Blob分析(Blob Analysis)是对图像中相同像素的连通域进行分析,该连通域称为Blob。经二值化(Binary Thresholding)处理后的图像中色斑可认为是blob。Blob分析工具可以从背景中分离出目标,并可以计算出目标的数量、位置、形状、方向和大小,还可以提供相关斑点间的拓扑结构。在处理过程中不是对单个像素逐一分析,而是对图像的行进行操作。图像的每一行都用游程长度编码(RL
2016-01-06 17:11:45 868
转载 halcon自动全局阈值与动态阈值分割方法
自动全局阈值分割方法:1、统计直方图2、寻找出现频率最高的灰度值3、把比最高频率灰度值或者比它大或小一定灰度阶的灰度值作为阈值分割图像例:read_image(Image,'particle')gray_histo(Image,Image,AbsoluteHisto,RelativeHiso)PeakGray:=sort_index(Abso
2016-01-06 17:10:41 1779
转载 Halcon一些功能算子
Chapter 1 :Classification1.1 Gaussian-Mixture-Models1.add_sample_class_gmm功能:把一个训练样本添加到一个高斯混合模型的训练数据上。2.classify_class_gmm功能:通过一个高斯混合模型来计算一个特征向量的类。3. clear_all_class_gmm功能:清除所有高斯混合模型。4
2016-01-06 17:09:14 1862
转载 Halcon学习备忘六(拟合圆的一种方法)
对于圆形区域,我们想拟合出它的圆形轮廓或者其他的圆,我们可以用如下的方法拟合出来:(1)、如果该区域是一个圆环区域的话,那就运行骨架算子skeleton得到圆环区域的骨架,然后用gen_contours_skeleton_xld生成骨架轮廓。如果该区域是圆形区域,那么可以用产生区域轮廓算子gen_contour_region_xld()产生圆形轮廓。(2)、有了轮廓后可以先用seg
2016-01-06 17:07:04 1574
转载 halcon学习备忘四(Region的选择处理与信息的多样化显示)
1、Region的选择与处理通过threshold阈值分割以及在connection和select_shape完后,我们可以得到一些被选择出来的区域Region,接下来想要对这些Region逐个处理,以达到某些目的。那么我们如何逐个选择呢?方法很简单,就是先计数Region的个数,然后for循环遍历每个区域,在循环里面根据Index选择Region。例如:count_obj
2016-01-06 17:06:06 665
转载 halcon学习备忘五(图像选择,剪切,obj循环,ocr识别)
1、在分割完轮廓线或者其他一些线条后,我们需要进行一些筛选来获得我们想要的曲线,我们可以通过以下的算子来进行(1).select_contours_xld( ) 可以通过该算子设定筛选标准,比如根据线的长度contour_length或者曲率curvature来直接进行选择 。(2).get_contour_global_attrib_xld( ) 通过该算子获得曲线的全局参数,
2016-01-06 17:05:26 1315
转载 halcon学习备忘三(数组的一些常用操作算子)
1、求数组元素的最大值tuple_max(Array,Max)2、求数组元素的最小值tuple_min(Array,Min)3、求数组元素的平均值tuple_mean(Array,Mean)4、求数组元素的绝对值tuple_abs(Array,Abs)5、两个数组相加tuple_add(Array1,Array2,Sum)
2016-01-06 17:03:42 712
转载 halcon学习备忘二(图像相减算子)
在我们编写halcon程序中可能常会用到图像相减算子sub_image,例如在做高斯高通滤波的时候,最后的结果是要用原图像减去滤波后的图像才能得到锐化图像。该算子的参数形式如下:sub_image(ImageMinuend , ImageSubtrahend : ImageSub : Mult , Add :)第一个参数是被减图像,第二个参数是减数图像,第三个参数是结果图像,第四个
2016-01-06 17:02:20 969
转载 halcon学习备忘一(循环读图、多窗口显图、读写硬盘里图)
一、循环读取硬盘中的图片学习halcon例程可以看到当我们需要循环读取硬盘中某个位置的图片进行处理时,而在for循环里面只写一句read_image(),那么只需要将图片命名格式统一成例如Image_01、Image_02这样的格式,再在read_image()里面加入约束格式就好了。例子:Path:='E:/Image_'for f:=1 to 2 by 1
2016-01-06 16:43:38 1094
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人