专利名称:二维曲线色阶比对方法
技术领域:
本发明涉及一种二维曲线色阶比对方法。
背景技术:
三坐标测量机是在工业、科研中被广泛应用于对产品进行测量的一种测量装置, 一般的 测量方法是将被测物件置于三坐标测量空间,利用三坐标测量机的接触探头沿被测物件的表 面经过编程的路径逐点捕捉数据,根据捕捉的数据分析被测物件的标准曲线品质。然而,随 着产品标准曲线造型越来越复杂,如手机、MP3、 MP4,传统的测量方法获得的测量数据很难 反映标准曲线的真实情况,测量速度慢且效率较低。
发明内容
鉴于以上内容,有必要提供一种二维曲线色阶比对系统,能够对复杂标准曲线进行检测 ,提高标准曲线检测效率及精度。
鉴于以上内容,还有必要提供一种二维曲线色阶比对方法,能够对复杂标准曲线进行检 测,提高标准曲线检测效率及精度。
一种二维曲线色阶比对系统,该二维曲线色阶比对系统安装在计算机中,所述计算机与 数据库相连,所述的数据库中储存有待检测物件的二维标准曲线数据及扫描的点云数据,其 中,所述的二维曲线色阶比对系统包括接收模块,用于接收用户从数据库导入的标准曲线 数据和点云数据;对齐模块,用于根据接收的标准曲线数据与点云数据将点云与标准曲线对 齐;所述接收模块,还用于接收公差设置信息及颜色设置信息;计算模块,用于根据对齐后 的标准曲线数据和点云数据计算对齐后点云中各点到该标准曲线的最近距离,并得到点云中 各点到标准曲线上的最近点;编号模块,用于根据所述最近点在标准曲线的顺序,对点云中 各点进行序列化编号,使点云中每个点都有一个编号;生成模块,用于根据所述点的编号将 点云中的各点以线段连接起来,生成该物件的实际曲线;颜色标识模块,用于根据点云中各 个点到标准曲线的最近距离所属的公差分段区间标识上述实际曲线的颜色。
一种二维曲线色阶比对方法,该方法包括以下步骤(a)接收用户从数据库导入的标 准曲线数据和点云数据;(b)根据所述标准曲线数据及点云数据将点云与标准曲线对齐;
(c)接收公差设置信息及颜色设置信息;(d)根据对齐后的标准曲线数据和点云数据计算 对齐后点云中各点到该标准曲线的最近距离,并得到点云中各点到标准曲线上的最近点;(e)根据所述最近点在标准曲线上的顺序,对点云中各点进行序列化编号,使点云中每个点 都有一个编号;(f)根据所述点的编号将点云中的点以线段连接起来,生成该物件的实际 曲线;(g )根据点云中各个点到标准曲线的最近距离所属的公差分段区间标识上述实际曲 线的颜色。
相较于传统的三坐标量测机的测量方法,本发明提供的二维曲线色阶比对方法可根据扫 描物件得到的点云的点与物件的CAD模型的标准曲线的最近距离所属的不同公差分段区间用 不同颜色标示CAD模型的标准曲线,并对CAD模型的标准曲线加以处理,生成直观的检测报告 ,提高了对复杂标准曲线进行检测的精度和速度。
图l是本发明二维曲线色阶比对系统较佳实施例的应用环境图。
图2是图1中二维曲线色阶比对系统的功能模块图。
图3是本发明二维曲线色阶比对方法较佳实施例的主流程图。
图4是图3中步骤S 104的细化流程图。
图5是步骤S110得出的曲线检测报告图。
具体实施例方式
如图1所示,是本发明二维曲线色阶比对系统较佳实施例的应用环境图。该二维曲线色 阶比对系统200安装在计算机20中,所述计算机20与数据库10连接,该计算机20还连接有显 示设备30。
数据库10用于储存物件的标准CAD模型的标准曲线数据(以下简称标准曲线数据)、扫 描物件得到的点云数据以及标准曲线检测过程中产生的数据。在本较佳实施例中,所述标准 曲线数据和点云数据都是在二维的平面下产生的,点云中各点的坐标都是二维的。
二维曲线色阶比对系统200接收标准曲线数据和点云数据,接收用户的公差设置和颜色 设置信息,根据接收的标准曲线数据与点云数据将点云与标准曲线对齐,根据对齐后的标准 曲线数据和点云数据计算点云中的各点到标准曲线的最近距离,根据各最近距离所落入的公 差区间用不同颜色显示该标准曲线。此外,二维曲线色阶比对系统200还用于依据处理后的 标准曲线数据生成检测报告。
显示设备30提供一显示界面用于显示标准曲线、扫描物件得到的点云、利用该系统对标 准曲线进行检测得到的不同颜色标示的标准曲线和检测报告。
如图2所示,是图l中二维曲线色阶比对系统的功能模块图。所述二维曲线色阶比对系统 200包括接收模块210、对齐模块211、计算模块212、编号模块213、生成模块214、颜色标识
6模块215、分组模块216及比较模块217。本发明所称的模块是完成一特定功能的计算机程序 段,比程序更适合于描述软件在计算机中的执行过程,因此在本发明以下对软件描述中都以 模块描述。
其中,所述接收模块210用于接收用户从数据库10导入的标准曲线数据和点云数据。 所述对齐模块211用于根据接收的标准曲线数据与点云数据将点云与标准曲线对齐。用 户在绘制标准曲线数据时,有一个对应坐标系,扫描物件的轮廓所得到的点云也在一个设定 的坐标系中,在本实施例中,采用坐标对齐或迭代方法对齐两个坐标系。具体而言,坐标对 齐法
1. 在标准曲线图形上用最小二乘法拟合三个元素(如面,线,原点)构建基准面,基 准轴,基准原点创建坐标系得到坐标变换4*4 (即该矩阵有4行、4列)单位矩阵matl。
2. 在扫描得到的点云相同位置上拟合三个元素(如面,线,原点)构建基准面,基准 轴,基准原点创建坐标系得到坐标变换扭4单位矩阵mat2。
3. 点云对象变换到基准坐标系中变换矩阵matTrans = matl * mat2。
4. 将点云所有点坐标与matTrans相乘得到对齐后的坐标。
迭代法根据拟牛顿公式对函数f(x)进行迭代,得到最小函数f(x):
其中,(Xl, Yl, Zl)及(X2, Y2, Z2)分别为对齐后点云的坐标及该点到标准曲线上 最近点的坐标,n为点云的数目。
所述接收模块210还用于接收公差设置信息及颜色设置信息。在本较佳实施例中,公差 指的是点云与标准曲线对齐后点云中的点到标准曲线的最近距离的值的波动范围。所述公差 设置信息包括允许的最大上公差值(如0.350)、允许的最大下公差值(如-0.350)及公 差的分段区间,如将允许的最大上公差值与允许的最大下公差值确定的区间[O. 350, -O. 350]分成若干个公差区间[-0. 350, -0.300], [-0.300, -0.250],…,
,
。所述颜色设置信息包括不同公差区间的颜色, 一般从冷色(蓝色)到暖 色(红色)逐渐变化,如公差区间[-O. 350, -0. 300]的颜色为深蓝,公差区间[-O. 300, -0.250]的颜色为天蓝,公差区间
的颜色为粉红,公差区间
的颜色为深红,大于允许的最大上公差值得区间
的颜色为紫色,小于允许的 最大下公差值的区间[-03, -0. 350]的颜色为咖啡色。所述计算模块212用于根据对齐后的标准曲线数据和点云数据计算对齐后点云中各点到 该标准曲线的最近距离,并得到点云中各点到标准曲线上的最近点。所述点云中的点与最近 点的距离即为最近距离。
所述编号模块213用于根据所述最近点在标准曲线的顺序,对点云中各点进行序列化编 号,使点云中每个点都有一个编号。具体而言,用户在画标准曲线时,都有一个起始点,以 该起始点为顺时针或者逆时针方向,对每个最近点按照在标准曲线上等分点之间顺序进行从 小到大编号,每个最近点的编号即为对应实际点云的点的编号。
所述生成模块214用于根据所述点的编号将点云中的点以直线连接起来,生成该物件的 实际曲线。具体而言,假设点云中有四个点,每个点的编号分别为l、 2、 3、 4,若标准曲线 是封闭的曲线,则将按照编号的顺序将上述四个点连接起来,则分别有线段l-2, 2-3, 3-4 ,4-1,形成一个封闭的曲线,若标准曲线不是封闭的曲线,则不将起始点和结尾点连接起 来,分别有线段l-2, 2-3, 3-4,形成一个不封闭的曲线,由点云中所有的点连接的曲线为 该点云组成的实际曲线。
所述颜色标识模块215用于根据点云中各个点到标准曲线的最近距离所属的公差分段区 间标识出上述实际曲线的颜色。具体而言,由于实际曲线由各个点之间的连接的线段组成, 因此每一个线段的颜色标识出之后,实际曲线的颜色也能够清楚地显示出来,实际曲线中点 之间连接的线段的颜色由点的颜色决定,例如,有两个相邻的点,分别为l、 2,假设点l到 标准曲线的最近距离落在红色的公差段,则该点l的颜色为红色,点2到标准曲线的最近距离 落在咖啡色的公差段,则该点2的颜色为咖啡色,而线段l-2的颜色为红色一半,咖啡色一半 ;假设点1和点2的颜色都为红色,则线段l-2的颜色为红色。
所述分组模块216用于将点云中经过编号的点进行分组。在本较佳实施例中,分组的方 式是根据实际曲线的曲率变化来分组。在其他实施例中,用户也可以根据其它方式进行分组 ,例如,取某一段固定的编号分组,假设取编号1到100为一组,取101到200为下一组。通过 分组可以将实际曲线分为很多线段,得到实际曲线的分段变化趋势。
所述比较模块217还用于比较每一组中各个点到标准曲线的最近距离,以得到每组中最 近距离的最大值及最小值。
所述生成模块214用于在实际曲线中标出上述每组中点到标准曲线最近距离的最大值及 最小值,之后与标准曲线一起输出,生成一个检测报告。如图5所示,为根据所述二维曲线 色阶比对方法得出某一物件的检测报告。
如图3所示,是本发明二维曲线色阶比对方法较佳实施例的主流程图。
8首先,步骤S101,接收模块210接收用户从数据库10导入的标准曲线数据和点云数据。 步骤S102,对齐模块211根据接收的标准曲线数据与点云数据将点云与标准曲线对齐。 用户在绘制标准曲线数据时,有一个对应坐标系,扫描物件的轮廓所得到的点云也在一个设 定的坐标系中,在本实施例中,采用坐标对齐或迭代方法对齐两个坐标系。具体而言,坐标 对齐法
1. 在标准曲线上用最小二乘法拟合三个元素(如面,线,原点)构建基准面,基准轴 ,基准原点创建坐标系得到坐标变换4*4 (即该矩阵有4行、4列)单位矩阵matl。
2. 在扫描得到的点云相同位置上拟合三个元素(如面,线,原点)构建基准面,基准 轴,基准原点创建坐标系得到坐标变换扭4单位矩阵mat2。
3. 点云对象变换到基准坐标系中变换矩阵matTrans = matl * mat2。
4. 将点云所有点坐标与matTrans相乘得到对齐后的坐标。
迭代法根据拟牛顿公式对函数f(x)进行迭代,得到最小函数f(x):
其中,(Xl, Yl, Zl)及(X2, Y2, Z2)分别为对齐后点云的坐标及该点到标准曲线上 最近点的坐标,n为点云的数目。
步骤S103,接收模块210接收公差设置信息及颜色设置信息。在本较佳实施例中,公差 指的是点云与标准曲线对齐后点云中的点到标准曲线的最近距离的值的波动范围。所述公差 设置信息包括允许的最大上公差值(如0.350)、允许的最大下公差值(如-0.350)及公 差的分段区间,如将允许的最大上公差值与允许的最大下公差值确定的区间[O. 350, -O. 350]分成若干个公差区间[-0. 350, -0.300], [-0.300, -0.250],…,
,
。所述颜色设置信息包括不同公差区间的颜色, 一般从冷色(蓝色)到暖 色(红色)逐渐变化,如公差区间[-O. 350, -0. 300]的颜色为深蓝,公差区间[-O. 300, -0.250]的颜色为天蓝,公差区间
的颜色为粉红,公差区间
的颜色为深红,大于允许的最大上公差值得区间
的颜色为紫色,小于允许的 最大下公差值的区间[-03, -0. 350]的颜色为咖啡色。
步骤S104,计算模块212根据对齐后的标准曲线数据和点云数据计算对齐后点云中各点 到该标准曲线的最近距离(具体步骤将在图4中详细描述),并得到点云中各点到标准曲线 上的最近点。所述点云中的点与最近点的距离即为最近距离。步骤S 105,编号模块213根据所述最近点在标准曲线的顺序,对点云中各点进行序列化 编号,使点云中每个点都有一个编号。具体而言,用户在画标准曲线时,都有一个起始点, 以该起始点为顺时针或者逆时针方向,对每个最近点按照在标准曲线上等分点之间顺序进行 从小到大编号,每个最近点的编号即为对应实际点云的点的编号。
步骤S106,生成模块214根据所述点的编号将点云中的点以线段连接起来,生成该物件 的实际曲线。具体而言,假设点云中有四个点,每个点的编号分别为l、 2、 3、 4,若标准曲 线是封闭的曲线,则将按照编号的顺序将上述四个点连接起来,则分别有线段l-2, 2-3, 3-4, 4-1,形成一个封闭的曲线,若标准曲线不是封闭的曲线,则不将起始点和结尾点连接 起来,分别有线段l-2, 2-3, 3-4,形成一个不封闭的曲线,由点云中所有的点连接的曲线 为该点云组成的实际曲线。
步骤S107,颜色标识模块215根据点云中各个点到标准曲线的最近距离所属的公差分段 区间标识上述实际曲线的颜色。具体而言,由于实际曲线由各个点之间的连接的线段组成, 因此每一个线段的颜色标识出之后,实际曲线的颜色也能够清楚地显示出来,实际曲线中点 之间连接的线段的颜色由点的颜色决定,例如,有两个相邻的点,分别为l、 2,假设点l到 标准曲线的最近距离落在红色的公差段,则该点l的颜色为红色,点2到标准曲线的最近距离 落在咖啡色的公差段,则该点2的颜色为咖啡色,而线段l-2的颜色为红色一半,咖啡色一半 ;假设点1和点2的颜色都为红色,则线段l-2的颜色为红色。
步骤S108,分组模块216将点云中经过编号的点进行分组。在本较佳实施例中,分组的 方式是根据曲线曲率的变化来分组。在其他实施例中,用户也可以根据其它方式进行分组, 例如,取某一段固定的编号分组,假设取编号1到100为一组,取101到200为下一组。通过分 组可以将实际曲线分为很多线段,得到实际曲线的分段变化趋势。
步骤S109,比较模块217比较每一组中各个点到标准曲线的最近距离,以得到每组中最 近距离的最大值及最小值。
步骤SllO,在实际曲线中标出上述每组中点到标准曲线最近距离的最大值及最小值,之 后与标准曲线一起输出,生成模块217生成一个检测报告。如图5所示,为根据所述二维曲线 色阶比对方法得出某一物件的检测报告。
如图4所示,是图3中步骤S 104中计算对齐后点云中各点到标准曲线的最近距离的细化流 程图(在本实施例中,以计算点云中的某一点为例)。首先,步骤S201,根据点云数据中所 有点的坐标,求得该物件的点云中的最小区域点ptlMin的坐标(ptlMin[x], ptlMin[y])及 最大区域点ptlMax的坐标(ptlMax[x], ptlMax[y]),进而可以得到由(ptlMin[x],pt皿n[y]) 、 (pt皿n[x], ptlMax[y]) 、 (pt皿n[x], ptlMax[y]) 、 (ptlMax[x], ptlMax[y])组成的该物件的点云包围盒boxR。 一般而言,该点云的包围盒为正方形或者长 方形。
步骤S202,将该包围盒划分成多个长方形或者正方形(在本实施例中,以长方形为例) 。利用计算机绘制的标准曲线是由一个个像素点组成,通过坐标计算点云中点到标准曲线上 像素点的最近距离,之后比较得出一个最小的距离,为了避免点云中每个点都和标准曲线上 的像素点进行计算,将包围盒划分成很多个长方形,在长方形内计算点到像素点的距离,可 以大大提高运算时间和效率。划分长方形的数量由用户设定,通常,根据测试结果,能够最 快速的计算出点云中各点到标准曲线的最近距离,是使点云中的每一个点都只落在一个长方 形内。
步骤S203,选择一个包含点云中点的最小长方形内,判断是否存在标准曲线的像素点。 步骤S204,若该最小长方形内没有像素点,将寻找标准曲线的像素点的范围扩大,取与
该长方形相邻的所有最小长方形,组成一个更大的长方形,直到在该更大的长方形内有标准
曲线的像素点为止。
步骤S205,在存在标准曲线像素点的该长方形内,根据点云中点的坐标计算该点到该长 方形内寻找到的上述标准曲线像素点的距离。具体而言,假设某一个长方形内点云中的点为 A,该长方形内有2个标准曲线像素点为B、 C,则分别计算A到B的距离,A到C的距离,之后对 这两个距离进行比较,以得出一个最小距离,所得出的距离就是A点到标准曲线的最近距离
步骤S206,比较该点到上述标准曲线像素点的距离,得出一个最小距离,即为该点到标 准曲线的最近距离。
在步骤S203中,若该最小长方形内有标准曲线的像素点,则直接转到步骤S205。 最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照以上 较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技 术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
权利要求
1.一种二维曲线色阶比对系统,该二维曲线色阶比对系统安装在计算机中,所述计算机与数据库相连,其特征在于,所述的数据库中储存有待检测物件的二维标准曲线数据及扫描的点云数据,其中,所述的二维曲线色阶比对系统包括接收模块,用于接收用户从数据库导入的标准曲线数据和点云数据;对齐模块,用于根据接收的标准曲线数据与点云数据将点云与标准曲线对齐;所述接收模块,还用于接收公差设置信息及颜色设置信息;计算模块,用于根据对齐后的标准曲线数据和点云数据计算对齐后点云中各点到该标准曲线的最近距离,并得到点云中各点到标准曲线上的最近点;编号模块,用于根据所述最近点在标准曲线的顺序,对点云中各点进行序列化编号,使点云中每个点都有一个编号;生成模块,用于根据所述点的编号将点云中的各点以线段连接起来,生成该物件的实际曲线;及颜色标识模块,用于根据点云中各个点到标准曲线的最近距离所属的公差分段区间标识上述实际曲线的颜色。
2 如权利要求l所述的二维曲线色阶比对系统,其特征在于,所述 标准曲线数据包括组成该标准曲线像素点的坐标,所述点云数据包括点云上各点的坐标。
3 如权利要求l所述的二维曲线色阶比对系统,其特征在于,所述 曲线检测程序还包括分组模块,用于将点云中经过编号的点进行分组。
4 如权利要求3所述的二维曲线色阶比对系统,其特征在于,所述 曲线检测程序还包括比较模块,还用于比较每一组中各个点到标准曲线的最近距离,以得 到每组中最近距离的最大值及最小值。
5 如权利要求4所述的二维曲线色阶比对系统,其特征在于,所述 曲线检测程序还包括所述生成模块,还用于在实际曲线中标出上述每组中点到标准曲线最近距离的最大值及最小值,之后与标准曲线一起输出,生成一个检测报告。
6. 一种二维曲线色阶比对方法,其特征在于,该方法包括以下步骤(a)接收用户从数据库导入的标准曲线数据和点云数据;(b )根据所述标准曲线数据及点云数据将点云与标准曲线对齐;(c)接收公差设置信息及颜色设置信息;(d )根据对齐后的标准曲线数据和点云数据计算对齐后点云中各点到该标准曲线的最 近距离,并得到点云中各点到标准曲线上的最近点;(e) 根据所述最近点在标准曲线上的顺序,对点云中各点进行序列化编号,使点云中 每个点都有一个编号;(f) 根据所述点的编号将点云中的点以线段连接起来,生成该物件的实际曲线;及(g )根据点云中各个点到标准曲线的最近距离所属的公差分段区间标识上述实际曲线 的颜色。
7.如权利要求6所述的二维曲线色阶比对方法,其特征在于,步骤 (b)中对齐的方法为将标准曲线的坐标系与点云的坐标系重合为一个坐标系。
8.如权利要求6所述的二维曲线色阶比对方法,其特征在于,其中 在步骤(g)之后还包括以下步骤(h) 将点云中经过编号的点进行分组;(i) 比较每一组中各个点到标准曲线的最近距离,以得到每组中最近距离的最大值及最小值;及(j)在实际曲线中标出上述每组中点到标准曲线最近距离的最大值及最小值,之后与 标准曲线一起输出,生成一个检测报告。
9.如权利要求6所述的二维曲线色阶比对方法,其特征在于,其中 步骤(d)包括以下步骤(dl)根据点云数据中所有点的坐标,求得该物件的点云中的最小区域点的坐标( ptlMin[x], ptlMin[y])及最大区域点ptlMax的坐标(ptlMax[x], ptlMax[y]),进而可以 得至U由点(pt皿n[x], pt皿n[y]) 、 (pt皿n[x], ptlMax[y]) 、 (pt皿n[x], ptlMax[y]) 、 (ptlMax[x], ptlMax[y])组成的该物件的点云包围盒;(d2)将该包围盒划分成多个区域;(d3)选择一个包含点云中点的最小区域,判断该最小区域是否存在标准曲线的像素(d4)若该最小区域内没有像素点,将寻找标准曲线的像素点的范围扩大,取与该区 域相邻的所有最小区域,组成一个更大的区域,直到在该更大的区域内有标准曲线的像素点 为止;(d5)在存在标准曲线像素点的该区域内,根据点云中点的坐标计算该点到该区域内 寻找到的上述标准曲线像素点的距离;及(d6)比较该点到上述标准曲线像素点上的距离,得出一个最小距离,即为该点到标 准曲线的最近距离。
10.如权利要求6所述的二维曲线色阶比对方法,其特征在于,所述 标准曲线数据包括组成该标准曲线像素点的坐标,所述点云数据包括点云上各点的坐标。
全文摘要
本发明提供一种二维曲线色阶比对方法,该方法可根据扫描物件得到的点云的点与物件的CAD模型的标准曲线的最近距离所属的不同公差分段区间用不同颜色标示CAD模型的标准曲线,并对CAD模型的标准曲线加以处理,生成直观的检测报告,提高了对复杂标准曲线进行检测的精度和速度。
文档编号G01B21/20GK101581579SQ20081030160
公开日2009年11月18日 申请日期2008年5月16日 优先权日2008年5月16日
发明者吴新元, 张旨光 申请人:鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司