自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 用几何定位实现平移

*******图像不变,平移ROIdev_set_draw('margin')**读取图像(模板图像)read_image(Image,'D:/halcon学习/image/模组/模组/1.bmp')**产生检测ROIgen_rectangle1(Rectangle,848,237,1001,941)**产生模板区域gen_circle(Circle,5

2016-04-19 22:02:08 1058 1

原创 三种方式实现显示模板轮廓

三种方式实现显示模板轮廓第一种方法:用 vector_angle_to_rigid算子计算仿射变换矩阵,然后对模板轮廓进行变换。在实际当中,进行仿射变换最经常、最简单的方法是使用算子vector_angle_to_rigid。第二种方法:定义仿射变换矩阵,然后逐个添加要进行的变换项,然后对模板轮廓进行变换。第三种方法:调用HDevelop封装的函数dev_display_shape

2016-04-19 21:31:42 4897

原创 仿射变换

1.仿射变换有:平移、旋转、缩放、斜切。2.要进行仿射变换,必须先获取变换矩阵。要获取变换矩阵,必须先获取特征点坐标、角度等信息,几何匹配和bolb是获取特征点的高效方法,除此之外还有其它方法,只要能稳定的求出特征点即可。3.仿射变换流程   (1.)获取特征点坐标、角度   (2.)计算仿射变换矩阵   (3.)对图像、区域、轮廓进行仿射变换4.根据特征点、角度计算仿射变

2016-04-18 22:24:02 20474 5

原创 图像的滤波

1.图像的平滑:图像平滑的主要目的是减少图像的噪声。(1)smooth_image(Image:ImageSmooth:Filter,Alpha:)         功能描述:使用递归滤波器对图像进行平滑(高斯滤波使用非递归滤波器)         参数:         Image(输入参数):输入图像;         ImageSmooth(输出参数):滤波后的图像;

2016-01-20 16:42:48 1005

原创 图像的几何变换

1.图像的旋转   算子:rotate_image(Image:ImageRotate:Phi,Interpolation)   功能描述:围绕图像中心旋转图像。   参数:   Image(输入参数):输入图像;   ImageRotate(输出参数):旋转后图像;   Phi(输入参数):旋转角度(单位:角度);   Interpolation(输入参数):插值算法

2016-01-13 15:50:12 587

转载 模板匹配算法简介

模板匹配是数字图像处理的重要组成部分之一。把不同传感器或同一传感器在不同时间、不同成像条件下对同一景物获取的两幅或多幅图像在空间上对准,或根据已知模式到另一幅图中寻找相应模式的处理方法就叫做模板匹配。    简单而言,模板就是一幅已知的小图像。模板匹配就是在一幅大图像中搜寻目标,已知该图中有要找的目标,且该目标同模板有相同的尺寸、方向和图像,通过一定的算法可以在图中找到目标,确定其坐标位置

2016-01-13 15:23:44 2349

原创 图像的点运算

1.灰度直方图:2.灰度的先行变换:3.直方图均衡化   算子:equ_histo_image(Image:ImageEquHisto)   参数:   Image(输入参数):输入图像;   ImageEquHisto(输出参数):均衡化后图像;4.图像反转处理5.图像的加法运算    算子:add_image(Image1,Image2:ImageResul

2016-01-12 17:00:23 545

原创 灰度的线性变换

相关函数:scale_image、scale_image_max  1.scale_image(Image:ImageScale:Mult,Add:)     功能描述:对图像灰度值进行先行变换。     参数:     Image(输入参数):输入(原始)图像;     ImageScale(输出参数):变换后的结果图像;     Mult(输入参数):系数;   

2016-01-12 15:57:43 1420

原创 灰度直方图使用实例

*读取图像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 3391

原创 灰度直方图

相关算子有:gray_histo、gen_region_histo、histo_to_thresh.  (1,)gray_histo(Regions,Image:::AbsoluteHisto,RelativeHisto)        功能描述:计算区域内的灰度值分布(灰度直方图)        参数:        Regions(输入参数):计算直方图的区域;     

2016-01-12 15:44:53 4103

原创 3.5.3元组的基本操作

操作及功能                                                   算子t:=[t1,t2]:连接元组                                                          tuple_concati:=|t|:获取元组t的元素个数                                    

2016-01-08 16:47:31 797

原创 3.5.2赋值运算

1.assign(Input,Result):  赋值运算表示为:Result:=Input2.insert(Input,Value,Index,Result):用于对元组元素进行赋值  参数说明:Input:执行插入操作的元组                   Value:插入的新数值                   Index:被插入的索引位置         

2016-01-08 16:32:34 274

原创 3.5.8比较操作

操作及功能      算子t1t1>t2:大于              tuple_greatert1t1>=t2:大于等于     tuple_greater_equalt1=t2:相等               tuple_equalt1#t2:不相等            tuple_not_equal

2016-01-08 16:23:18 234

原创 3.5.12数学函数

操作及功能                                        算子min(t):返回元组的最小元素             tuple_minmin2(t1,t2):计算两个元组对应元素的最小值    tuple_min2max(t):返回一个元组的最大元素     tuple_maxmax2(t1,t2):计算两个元组对应元素的最大值    tuple

2016-01-08 16:01:17 320

原创 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 276

转载 机器视觉中的blob分析基本概念

Blob分析(Blob Analysis)是对图像中相同像素的连通域进行分析,该连通域称为Blob。经二值化(Binary Thresholding)处理后的图像中色斑可认为是blob。Blob分析工具可以从背景中分离出目标,并可以计算出目标的数量、位置、形状、方向和大小,还可以提供相关斑点间的拓扑结构。在处理过程中不是对单个像素逐一分析,而是对图像的行进行操作。图像的每一行都用游程长度编码(RL

2016-01-06 17:11:45 823

转载 halcon自动全局阈值与动态阈值分割方法

自动全局阈值分割方法:1、统计直方图2、寻找出现频率最高的灰度值3、把比最高频率灰度值或者比它大或小一定灰度阶的灰度值作为阈值分割图像例:read_image(Image,'particle')gray_histo(Image,Image,AbsoluteHisto,RelativeHiso)PeakGray:=sort_index(Abso

2016-01-06 17:10:41 1761

转载 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 1772

转载 Halcon学习备忘六(拟合圆的一种方法)

对于圆形区域,我们想拟合出它的圆形轮廓或者其他的圆,我们可以用如下的方法拟合出来:(1)、如果该区域是一个圆环区域的话,那就运行骨架算子skeleton得到圆环区域的骨架,然后用gen_contours_skeleton_xld生成骨架轮廓。如果该区域是圆形区域,那么可以用产生区域轮廓算子gen_contour_region_xld()产生圆形轮廓。(2)、有了轮廓后可以先用seg

2016-01-06 17:07:04 1484

转载 halcon学习备忘四(Region的选择处理与信息的多样化显示)

1、Region的选择与处理通过threshold阈值分割以及在connection和select_shape完后,我们可以得到一些被选择出来的区域Region,接下来想要对这些Region逐个处理,以达到某些目的。那么我们如何逐个选择呢?方法很简单,就是先计数Region的个数,然后for循环遍历每个区域,在循环里面根据Index选择Region。例如:count_obj

2016-01-06 17:06:06 642

转载 halcon学习备忘五(图像选择,剪切,obj循环,ocr识别)

1、在分割完轮廓线或者其他一些线条后,我们需要进行一些筛选来获得我们想要的曲线,我们可以通过以下的算子来进行(1).select_contours_xld( )  可以通过该算子设定筛选标准,比如根据线的长度contour_length或者曲率curvature来直接进行选择 。(2).get_contour_global_attrib_xld( ) 通过该算子获得曲线的全局参数,

2016-01-06 17:05:26 1271

转载 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 670

转载 halcon学习备忘二(图像相减算子)

在我们编写halcon程序中可能常会用到图像相减算子sub_image,例如在做高斯高通滤波的时候,最后的结果是要用原图像减去滤波后的图像才能得到锐化图像。该算子的参数形式如下:sub_image(ImageMinuend , ImageSubtrahend : ImageSub : Mult , Add :)第一个参数是被减图像,第二个参数是减数图像,第三个参数是结果图像,第四个

2016-01-06 17:02:20 924

转载 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 1037

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除