精华内容
下载资源
问答
  • 亚像素精度轮廓

    2021-04-10 22:25:18
      我们平常大多数时候讨论的数据结构都是像素精度的,通常,因为某些应用中需要达到比图像像素分辨率更高的精度,因此从图像中提取亚像素精度数据是很重要的。亚像素数据可以通过亚像素预置分割或亚像素边缘提取...

      参考链接:https://zhidao.baidu.com/question/252224657.html

      我们平常大多数时候讨论的数据结构都是像素精度的,通常,因为某些应用中需要达到比图像像素分辨率更高的精度,因此从图像中提取亚像素精度数据是很重要的。亚像素数据可以通过亚像素预置分割或亚像素边缘提取获得。这些处理得到的结果可以用亚像素精度轮廓来表示。轮廓可以被描绘成多边形,一组排序后的控制点(ri,ci)(r_{i},c_{i})的集合,排序是用来说明哪些控制点是彼此相连接的。由于轮廓提取是基于像素网格的,所以轮廓上控制点之间的距离约为一个像素。在计算机里,轮廓只是用浮点数表示的横、纵坐标构成的数组来表示的。轮廓有多种空间拓扑结构,轮廓可以是闭的或是开的,闭合轮廓通常使用同一个坐标来表示轮廓上的第一个点和最后一个点或使用一个特色属性来表示。

      亚像素准确度提取边缘依赖于对图像采集设备的精心挑选,设备应满足如下条件:(1)灰度值响应应该是线性的,并进行辐射标定(2)镜头像差应该非常小,使用单色光避免色差的影响。

    亚像素预置分割
      阈值分割的处理结果不能是一个区域,因为区域是像素精度的。为此,适当表示结果的适当数据结构应该是亚像素精度轮廓。此轮廓表示图像中两个区域之间的边界,这两个区域中一个区域的灰度值大于灰度值阈值gsubg_{sub},而另一个区域的灰度值小于gsubg_{sub},为获取这个边界我们必须将图像的离散转换成一个连续函数,例如通过双线性插值完成这种转换。从概念上,亚像素精度阈值分割处理的结果就可以用常量函数g(r,c)=gsubg(r,c)=g_{sub}与图像函数f(r,c)f(r,c)相交得到。
    亚像素边缘提取
      由于准确度和精确度常被混淆,使用精确度时,我们说明的是平均起来看,某提取值与若干次提取值的平均值接近程度,精确度估量的是我们能提取某值时可重复的程度,正式名称是可重复性。另一方面,我们使用准确度时,我们说明的是平均起来看,提取值与真实值接近程度。测量可以是相当准确的,但又是不可重复的。
      如果采用统计学的观点,可将提取值视为随机变量。这样,值得精确度可由值得方差计算:V[x]=σx2V[x]=\sigma_{x}^2。如果提取值是精确的,那么其方差就小。另一方面,准确度能用期望值E[X]E[X]与真值T之间的差来描述:T=E[x]TT=|E[x]-T|
      边缘位置的方差σe2=3σn28a2\sigma_{e}^2=\frac{3\sigma_{n}^2}{8a^2}(此结果是利用连续图像解析推导,也适用于离散图像,当信噪比a2σn232\frac{a^2}{\sigma_{n}^2}\leqslant\frac{3}{2}时,σe12\sigma_{e}\geqslant\frac{1}{2},该条件在实际应用中能轻松满足),因此Canny滤波器是亚像素的,同理,Deriche和Lanser滤波器将分别返回方差:σe2=5σn264a2\sigma_{e}^2=\frac{5\sigma_{n}^2}{64a^2}σe2=3σn216a2\sigma_{e}^2=\frac{3\sigma_{n}^2}{16a^2}.

    展开全文
  • 机器视觉在工业产品质量控制中的应用越来越广,针对LED晶粒的质量检测问题,提出了一种基于亚像素精度阈值分割的方法进行LED晶粒图像的识别。首先通过图像增强及预处理,然后通过基于亚像素精度的阈值分割方法进行...
  • 亚像素精度图像配准

    2014-03-26 20:44:41
    学习图像处理的时候用的,亚像素精度的决策方法
  • 亚像素精度轮廓表示图像中两个区域之间的边界,这两个区域中一个区域的灰度值大于灰度值阈值g_sub而另一个区域的灰度值小于g_sub。为获取这个边界,我们必须将图像的离散表示转换成一个连续函数。
  • 友发来两个小项目,要求亚像素精度。突然想问几个问题:1、何为亚像素?2、何为亚像素精度?3、使用亚像素测量,系统应注意什么?1、何谓亚像素?面阵摄像机的成像面以像素为最小单位。例如某CMOS摄像芯片,其像素...

    友发来两个小项目,要求亚像素精度。突然想问几个问题:1、何为亚像素?2、何为亚像素精度?3、使用亚像素测量,系统应注意什么?

    1、何谓亚像素?

    面阵摄像机的成像面以像素为最小单位。例如某CMOS摄像芯片,其像素间距为5.2微米。摄像机拍摄时,将物理世界中连续的图像进行了离散化处理。到成像面上每一个像素点只代表其附近的颜色。至于“附近”到什么程度?就很困难解释。两个像素之间有5.2微米的距离,在宏观上可以看作是连在一起的。但是在微观上,它们之间还有无限的更小的东西存在。这个更小的东西我们称它为“亚像素”。实际上“亚像素”应该是存在的,只是硬件上没有个细微的传感器把它检测出来。于是软件上把它近似地计算出来。为了最大限度利用图像信息来提高分辨率,有人提出了Sub-Pixel概念。意思是说,在两个物理像素之间还有像素,称之为Sub-Pixel,如果原始图像是n行m列的,希望做k细分的Sub-Pixel,这样就有新的行N和列M,有N = k*nM = k*m原来相邻4个像素包含的区域现在变成了(k+1)*(k+1)的区域了;要填满这个(k+1)*(k+1)的区域,从一个小正方形映照到一个大正方形。

    2、何谓亚像素精度?

    亚像素精度是指相邻两像素之间细分情况。输入值通常为二分之一,三分之一或四分之一。这意味着每个像素将被分为更小的单元从而对这些更小的单元实施插值算法。例如,如果选择四分之一,就相当于每个像素在横向和纵向上都被当作四个像素来计算。

    由上图可知,检测结果为对“插值后图像”处理的结果,由于图像分辨率提高了一倍,故用于表示小圆直径的像素数量也增加了一倍,这就是一阶亚像素元技术。我们在每两个像素之间插值一个像素,这样本来是120万像素的图像,插值后的实际处理图像就是240万像素了,相当于把一个像素拆分为1/2,同理依次有1/3拆分、1/4拆分等,一些优秀的算法甚至可以达到1/100拆分,同时还能保证处理速度。亚像素元技术相对于传统方案,检测精度是提升了1倍吗?

    3、3、使用亚像素测量,系统应注意什么?

    在图像上,通过算法对图像插值,是不存在任何问题的。然而,一个重大的误差来源是,成像系统。

    a、如果摄像机没有进行几何标定,以亚像素准确度提取边缘是无意义的。假设在整个视野内某镜头的畸变小于1%,这意味着对于一幅640x480图象,边缘偏移4像素。

    b、图象透视失真造成的影响。任何时候如果在安装摄像机时不能保证其垂直于被测物体,那么都会引发透视失真。如果对摄像机进行了标定,确定了摄像机内方位参数以及被测物体所在平面的外方位参数,那么通过此标定就能将图象中得到的测量结果转换成世界坐标上的测量结果。

    为了得到准确的亚像素精度级的测量,首先摄像机和图象采集设备的灰度值响应应该是线形的。为了保证这个前提,应对摄像机进行辐射标定。此外,被选用的镜头其像差(如彗差和像散应该非常小)。还应该使用单色光以避免色差的影响。另外,摄像机的填充因子应该尽可能的大以避免“盲点”的影响。最后,应对相继进行几何标定以获取有意义的测量结果。

    Halcon实践

    1、亚像素精度阈值分割

    threshold_sub_pix(Image : Border : Threshold : )

    2、亚像素轮廓查找

    edges_sub_pix(Image : Edges : Filter, Alpha, Low, High : )

    zero_crossing_sub_pix(Image : ZeroCrossings : : )

    #转载请注明出处 www.skcircle.com 《少有人走的路》勇哥的工业自动化技术网站。如果需要本贴图片源码等资源,请向勇哥索取。

    展开全文
  • 亚像素精度阈值分割

    2019-07-04 15:48:13
    采用插值的方式(如:双线性插值),扩大数据集,再进行阈值分割,这样就得到了亚像素精度的阈值分割

    采用插值的方式(如:双线性插值),扩大数据集,再进行阈值分割,这样就得到了亚像素精度的阈值分割

    展开全文
  • 靶标特征点提取亚像素精度阈值分割算法研究,赵洛彬,杨瑞峰,以视觉测量中摄像机标定的圆阵列靶标特征点提取为研究对象,提出一种亚像素精度阈值分割算法,用于圆阵列平面靶标标定特征点的精
  • 一种快速结构光条纹中心亚像素精度提取方法
  • 使用两张数字散斑图像,在亚像素精度下计算散斑位移,灰度梯度或者说其他方式的也可以 ,不需要曲面拟合法
  • Halcon之以亚像素精度测量圆和矩形 在读取一张含有圆形和矩形的图片(如图所示)后,通过画圆或者画矩形确定图片中圆、矩形的大体位置,然后利用计量模型在具有挑战性的条件下轻松地以亚像素精度测量圆和矩形。 ...

    Halcon之以亚像素精度测量圆和矩形

      在读取一张含有圆形和矩形的图片(如图所示)后,通过画圆或者画矩形确定图片中圆、矩形的大体位置,然后利用计量模型在具有挑战性的条件下轻松地以亚像素精度测量圆和矩形。
    在这里插入图片描述

    算法如下:

    dev_update_off ()
    read_image (Image, 'C:/Users/asus-pc/Desktop/测试图.png')
    get_image_size (Image, Width, Height)
    dev_close_window ()
    dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle)
    set_display_font (WindowHandle, 14, 'mono', 'true', 'false')
    dev_display (Image)
    
    *画圆和矩形,粗劣的确定圆和矩形的位置
    draw_circle (WindowHandle, Row1, Column1, Radius1) 
    draw_rectangle2 (WindowHandle, Row2, Column2, Phi2, Length1, Length2)
    
    * 定义圆的近似位置和测量公差,即将之前确定的大概位置的参数赋值
    CircleInitRow := [Row1]
    CircleInitColumn := [Column1]
    gen_cross_contour_xld (Cross1, CircleInitRow, CircleInitColumn, 6, 0.785398)
    CircleInitRadius := [Radius1]
    CircleRadiusTolerance := 12//圆半径的测量公差
    
    * 定义矩形的近似位置和测量公差
    RectangleInitRow := [ Row2]
    RectangleInitColumn := [Column2]
    RectangleInitPhi := [Phi2]
    RectangleInitLength1 := [Length1]
    RectangleInitLength2 := [Length2]
    RectangleTolerance := 10//矩形测量公差
    * gen_cross_contour_xld (Cross1, RectangleInitRow, RectangleInitColumn, 6, 0.785398)
    * 
    * 编制计量模型数据结构
    create_metrology_model (MetrologyHandle)
    *
    * 可以不必预先设置图像宽度,但如果提前设置,可以改善第一次测量的运行时间。
    set_metrology_model_image_size (MetrologyHandle, Width, Height)
    *  
    * 将计量矩形对象添加到上述定义的模型中
    add_metrology_object_rectangle2_measure (MetrologyHandle, RectangleInitRow, RectangleInitColumn, RectangleInitPhi, RectangleInitLength1, RectangleInitLength2, RectangleTolerance, 5, .5, 1, [], [], MetrologyRectangleIndices)
    
    * 将计量圆对象添加到上述定义的模型中
    add_metrology_object_circle_measure (MetrologyHandle, CircleInitRow, CircleInitColumn, CircleInitRadius, CircleRadiusTolerance, 5, 1.5, 2, [], [], MetrologyCircleIndices)
    
    * 可以在一个调用中度量每个度量对象的多个圆/矩形/线/椭圆实例。因为我们喜欢测量每个对象的两个圆,所以我们将'num_instances'设置为2。
    set_metrology_object_param (MetrologyHandle, MetrologyCircleIndices, 'num_instances', 2)//该参数指定每个计量对象成功匹配的实例的最大数量,在此之后,匹配将停止
    * 
    * 将“measure_transition”设置为“uniform”确保只返回一致的圆,即只有从亮到暗的边,或者从暗到亮的边。
    set_metrology_object_param (MetrologyHandle, MetrologyCircleIndices, 'measure_transition', 'uniform')
    
    * 设置最低分数可以使结果更加可靠
    set_metrology_object_param (MetrologyHandle, MetrologyCircleIndices, 'min_score', .9)
    * 
    * 执行测量
    * 
    apply_metrology_model (Image, MetrologyHandle)//测量并拟合一个计量模型中所有计量对象的几何形状
    * 
    get_metrology_object_result (MetrologyHandle, MetrologyRectangleIndices, 'all', 'result_type', 'all_param', RectangleParameter)
    * 提取参数以提高可读性
    Sequence := [0:5:|RectangleParameter| - 1]//定义五个序列
    RectangleRow := RectangleParameter[Sequence]
    RectangleColumn := RectangleParameter[Sequence + 1]
    RectanglePhi := RectangleParameter[Sequence + 2]
    RectangleLength1 := RectangleParameter[Sequence + 3]
    RectangleLength2 := RectangleParameter[Sequence + 4]
    * 
    *查看圆的测量结果
    get_metrology_object_result (MetrologyHandle, MetrologyCircleIndices, 'all', 'result_type', 'all_param', CircleParameter)
    * 提取参数以提高可读性
    Sequence := [0:3:|CircleParameter| - 1]
    CircleRow := CircleParameter[Sequence]
    CircleColumn := CircleParameter[Sequence + 1]
    CircleRadius := CircleParameter[Sequence + 2]
    * 
    * 显示结果
    * 
    * 得到测量轮廓
    get_metrology_object_result_contour (Contours, MetrologyHandle, 'all', 'all', 1.5)
    * 
    * 得到测量区域的轮廓和边缘点的坐标,作为拟合圆和矩形的基础
    get_metrology_object_measures (Contour, MetrologyHandle, 'all', 'all', Row1, Column1)
    gen_cross_contour_xld (Cross, Row1, Column1, 6, 0.785398)
    * 显示相应结果
    Color := ['gray','cyan','green']
    dev_display (Image)
    dev_set_line_width (1)
    dev_set_color (Color[0])
    dev_display (Contour)
    dev_set_color (Color[1])
    dev_display (Cross)
    dev_set_line_width (2)
    dev_set_color (Color[2])
    dev_display (Contours)
    Message := Color[2] + ': Measurement result'
    Message[1] := Color[1] + ': Edge candidate points'
    Message[2] := Color[0] + ': Measure regions'
    disp_message (WindowHandle, Message, 'window', 12, 12, 'black', 'true')
    stop ()
    * 清除数据
    clear_metrology_model (MetrologyHandle)
    

    程序执行结果:
    在这里插入图片描述

    展开全文
  • 亚像素精度(8篇论文)

    2011-08-04 12:40:35
    本人看过的比较有启发性的N片亚像素精度图像处理方面的论文。很具有参考价值,欢迎下载
  • 原标题:HALCON中级篇:边缘提取(亚像素精度)边缘提取(亚像素精度)除了应用边缘滤波器去得到边缘振幅,进而得到边缘的传统方法,HALCON提供了可返回亚像素精度的XLD轮廓的一步算子。除此之外,不仅边缘还有线段也可...
  • 针对Harris-Laplace、Hessian-Laplace等角点检测算法重复率低、易漏检以及实时性差等问题,在充分研究Harris-Laplace、Hessian-Laplace和图像像素间的相似性的基础上,提出了一种具有亚像素精度的仿Hessian-Laplace...
  • 1. Harris角点检测角点检测被...角点的性质一阶导数(即灰度的梯度)的局部最大所对应的像素点;两条及两条以上边缘的交点;图像中梯度值和梯度方向的变化速率都很高的点;角点处的一阶导数最大, 二阶导数为0, 它...
  • 从图像中以亚像素精度检索ROI区域 函数原型 getRectSubPix(image, patchSize, center, patch=None, patchType=None) image:输入图像 patchSize:获取感兴趣区域矩形的大小 center:感兴趣区域矩形在原图像中...
  • 【计算机视觉】像素、亚像素精度

    千次阅读 2019-07-10 15:32:44
    亚像素是软件上对物理分辨率的近似优化结果。 例如:某CMOS成像芯片,其像素间距为4.5um。在成像时,对物理世界中连续的图像进行了离散化处理,这时成像面上每一个像素点只代表其附近的颜色。 而两个像素之间有...
  • 快速提取图像亚像素边缘坐标,以及梯度,用于对边缘形状描述,可以用于后续模板匹配
  • 目标:在具有挑战性的条件下,使用计量模型以亚像素精度测量圆和矩形 思路为:       1.创建计量模型模板       2.根据先验知识生成相关图形形状,如...
  • 提出了一种基于贝塞尔边缘模型的亚像素边缘检测算法. 该算法首先在原有的贝塞尔点扩散函数中引 入修正参数t ,并与理想边缘模型卷积,获得可修正的贝塞尔边缘灰度模型;然后,利用图像边缘的信息对该模 型进行最小二乘...
  • 将图像进行平移变换,然后利用一种三步法对两幅图像进行匹配,效果还不错,可以达到亚像素
  • 亚像素精度运动估计插值部分

    千次阅读 2018-07-26 16:09:05
    以A(0,0)点附近的亚像素点为例,a(0,0),b(0,0),c(0,0)可以用水平方向的整像素点计算得出,d(0,0),h(0,0),n(0,0)可以用垂直方向上的整像素点计算得出。  如1/4位置点a(0,0) = -A(-3,0) + 4A(...
  • 概述 在现实世界中,角点对应...一提到角点检测,最常用的方法莫过于Harris角点检测,opencv中也提供了Harris角点检测的接口,即cornerHarris(),但是Harris角点检测存在很多缺陷(如角点是像素级别的,速度较慢等)...
  • https://blog.csdn.net/u011574296/article/details/73823569
  • 1. Harris角点检测 角点检测被定义两条边的交点, 在实际应用...一阶导数(即灰度的梯度)的局部最大所对应的像素点; 两条及两条以上边缘的交点; 图像中梯度值和梯度方向的变化速率都很高的点; 角点处的一阶导数最...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 454
精华内容 181
关键字:

亚像素精度