发明内容
本申请实施例提供一种双坐标系对应关系建立系统及方法,以实现将两个副镜头获取的瞳孔位置与目标位置在世界坐标系下的差异,转化为马达的移动步长。
为了解决上述技术问题,本申请实施例是这样实现的:
为了解决上述技术问题,本申请实施例提供了一种双坐标系对应关系建立系统,所述系统包括:眼底相机镜头组、马达、第一工件、第二工件和数据处理装置,其中,所述眼底相机镜头组包括主镜头和两个副镜头,所述第一工件为工作距离长度的探针,所述第二工件包括平板和设置于所述平板上的N个高度不同的圆柱体结构,在所述圆柱体结构远离所述平板的一侧设置有十字叉结构,N为大于1的正整数,所述工作距离长度等于所述主镜头物距大小;
在建立坐标系对应关系之前,将所述第一工件安装于所述主镜头的前端,并将所述第二工件固定于所述主镜头的摄像面的前端;
所述马达,用于在进入工作模式之后,控制所述主镜头移动,以使所述第一工件对准所述第二工件上的多个基准位置;所述基准位置所述十字叉的中心;
所述数据处理装置,用于获取所述多个基准位置的第一坐标,及所述第一工件对准所述多个基准位置时的第二坐标,并基于所述第一坐标和所述第二坐标建立双目系统中的世界坐标系与马达坐标系之间的对应关系;
其中,所述第一坐标为所述基准位置在双目系统中的世界坐标系下的坐标,所述第二坐标为所述第一工件在马达坐标系下的坐标。
可选地,所述两个副镜头,用于对所述第二工件进行图像拍摄,得到所述多个基准位置对应的基准图像;
所述数据处理装置,还用于根据所述基准图像,获取所述多个基准位置处的第一坐标,及所述第一工件在所述多个基准位置处的第二坐标。
可选地,所述数据处理装置,还用于根据所述第一坐标和所述第二坐标,确定所述世界坐标系与所述马达坐标系对应的坐标转换参量,并基于所述坐标转换参量,建立所述世界坐标系与所述马达坐标系之间的对应关系;
其中,所述坐标转换参量包括:转化矩阵和平移向量。
可选地,所述数据处理装置,具体用于根据预设算法对所述第一坐标和所述第二坐标进行处理,得到调整参量,并基于所述调整参量,建立所述世界坐标系与所述马达坐标系之间的对应关系。
为了解决上述技术问题,本申请实施例提供了一种双坐标系对应关系建立方法,应用于上述任一项所述的坐标系对应关系建立系统,所述方法包括:
获取第二工件上多个基准位置的第一坐标;
获取第一工件对准所述多个基准位置时的第二坐标;所述第一坐标为所述基准位置在双目系统中世界坐标系下的坐标,所述第二坐标为所述第一工件在马达坐标系下的坐标;
基于所述第一坐标和所述第二坐标,建立双目系统中的所述世界坐标系与所述马达坐标系之间的对应关系。
可选地,所述基于所述第一坐标和所述第二坐标,建立双目系统中的所述世界坐标系与所述马达坐标系之间的对应关系,包括:
根据所述第一坐标和所述第二坐标,确定所述世界坐标系与所述马达坐标系对应的坐标转换参量;
根据所述坐标转换参量,建立所述世界坐标系与所述马达坐标系之间的对应关系。
可选地,所述根据所述第一坐标和所述第二坐标,确定所述世界坐标系与所述马达坐标系对应的坐标转换参量,包括:
根据预设算法对所述第一坐标和所述第二坐标进行处理,得到调整参量;
基于所述调整参量,建立所述世界坐标系与所述马达坐标系之间的对应关系。
可选地,在所述基于所述第一坐标和所述第二坐标,建立双目系统中所述世界坐标系与所述马达坐标系之间的对应关系之后,还包括:
在需要将所述主镜头从第一位置移动至第二位置的情况下,根据所述对应关系,确定所述第一位置对应的马达起始位置,及所述第二位置对应的马达结束位置;
通过所述马达控制所述主镜头从所述马达起始位置移动至所述马达结束位置。
为了解决上述技术问题,本申请实施例提供了一种电子设备,包括:
存储器、数据处理装置及存储在所述存储器上并可在所述数据处理装置上运行的计算机程序,所述计算机程序被所述数据处理装置执行时实现上述任一项所述的双坐标系对应关系建立方法。
为了解决上述技术问题,本申请实施例还提供了一种可读存储介质,当所述存储介质中的指令由电子设备的数据处理装置执行时,使得电子设备能够执行上述任一项所述的双坐标系对应关系建立方法。
在本申请实施例中,通过设计第一工件和第二工件,结合双目系统获取的第二工件上多个基准位置的第一坐标,获取第一工件对准多个基准位置时的第二坐标,结合多个基准位置对应的坐标建立双目系统中世界坐标系与马达坐标系之间的对应关系,从而可以将眼底相机上的两个副镜头获取的瞳孔位置与主镜头移动的目标位置在世界坐标系下的差异,转化为马达的移动步长,实现了眼底相机的自动定位,为眼底相机的主镜头移动提供精准的视觉导航。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
参照图1,示出了本申请实施例提供的一种双坐标系对应关系建立系统的结构示意图,如图1所示,该双坐标系对应关系建立系统100可以包括:眼底相机镜头组110、马达120、第一工件130、第二工件140和数据处理装置150,其中,眼底相机镜头组110可以包括主镜头和两个副镜头,主镜头和两个副镜头刚性固定。
接下来,结合图2和图3对第一工件和第二工件进行如下描述。
参照图2,示出了本申请实施例提供的第一工件的示意图,如图2所示,第一工件130的核心部分为一个长度为理论设计工作距离(WD)长度的探针,该探针可以为刚体等材质的探针。
参照图3,示出了本申请实施例提供的第二工件的示意图,如图3所示,第二工件140可以平板和设置平板上的N个高度不同的圆柱体结构,其中,N为大于1的正整数,在圆柱体结构远离平板的一侧设置有十字叉结构。圆柱体结构上的十字叉结构可以是通过在形成圆柱体结构之后,镶嵌于圆柱体结构上的,也可以是通过对圆柱体结构的一侧进行刻蚀得到的,对于十字叉结构的形成方式可以根据业务需求而定,本实施例对此不加以限制。
在需要建立双目系统中世界坐标系与马达坐标系之间的对应关系之前,可以将第一工件安装于主镜头的前端,如图2所示,可以将第一工件固定于主镜头的前端,以作为对准装置。并将第二工件与眼底相机的相对位置进行固定,相对位置即为主镜头的前端,且所述第二工件与所述主镜头间隔预设距离。
马达120可以用于在进入工作模式之后,控制主镜头移动,以使第一工件130对准第二工件140上的多个基准位置,该基准位置为十字叉结构的中心。
数据处理装置150可以用于获取多个基准位置的第一坐标,及第一工件对准在多个基准位置时的第二坐标,并基于第一坐标和第二坐标建立双目系统中的世界坐标系与马达坐标系之间的对应关系,其中,第一坐标为基准位置在双目系统中世界坐标系下的坐标,第二坐标为第一工件在马达坐标系下的坐标。
在具体实现中,可以在多个基准位置处,采用眼底相机110上的两个副镜头对第二工件进行图像拍摄,以得到多个基准位置对应的基准图像,即在每个基准位置处对应于两幅图像,分别是两个副镜头拍摄的图像,然后,通过数据处理装置对每个基准位置对应的两幅图像进行程序处理,从而可以得到每个基准位置的第一坐标,即每个基准位置在双目系统中世界坐标系下的坐标,并记录第一工件对准每个基准位置时的坐标,即第一工件在马达坐标系下的位置,具体地,控制马达移动主镜头,将第一工件的顶端对准第二工件上的十字叉结构的中心位置,此时,可以记录第一工件对应的坐标。
在本申请的一种具体实现方式中,数据处理装置150还可以用于根据第一坐标和第二坐标确定世界坐标系与马达坐标系对应的坐标转换参量,并基于坐标转换参量建立世界坐标系与马达坐标系之间的对应关系,其中,坐标转换参量可以包括转化矩阵和平移向量。
在实际应用中,采集的第一坐标和第二坐标会存在误差,导致有限次数的坐标数据使解析产生较大的误差,因此,本实施例采用优化的方式,可以通过多组坐标数据得到更精准的估计。具体地,数据处理装置150具体可以用于预设算法(如最小均方差算法等)对第一坐标和第二坐标进行处理,以得到调整参量,并基于调整参量建立世界坐标系与马达坐标系之间的对应关系。
对于上述过程可以进行如下详细描述。
在具体实现中,可以将世界坐标系与马达坐标系通过以下矩阵进行关联,如下述公式(1)所示:
上述公式(1)中,(Xw,Yw,Zw)为世界坐标系下的坐标,(X,Y,Z)为马达坐标系下的坐标;
(TX,TY,TZ)为平移向量;
为转化矩阵。
对上述公式(1)进行转化,可以得到如下述公式(2)、公式(3)和公式(4)的表示:
其中,[R11 R12 R13 TX]T、[R21 R22 R23 TY]T、[R31 R32 R33 TZ]T为需要求解的参量,对于求解过程可以结合计算[R11 R12 R13 TX]T进行如下描述:
在实际应用中,可以采集多组坐标数据,即X和(Xw,Yw,Zw),得到的坐标数据如下:
......
......
由于上述需要求解的参量包含四个待求解参数,则通过4组数组进行求解,但是实际操作过程中,采集数据会存在误差,导致有限的4次数据采集结果会使解析解产生较大的误差。因此可以采用采用优化的方法,通过多组数据的采集,得到对参数的更加精准估计。
其中,上述坐标数据的采集过程可以为:通过设置于眼底相机的主镜头前端的探针工件,对准第二工件上的多个基准位置,获取多个基准位置对应的第一坐标,及探针工件位于多个基准位置时的第二坐标,第一坐标为基准位置在双目系统中世界坐标系下的坐标,第二坐标为第一工件在马达坐标系下的坐标,此时,可以结合多个基准位置对应的第一坐标和第二坐标形成上述坐标数据。
在本实施例中,可以采用最小均方差误差,对上述参数进行估计,则记采集的n组数据为:
采用最小均方误差估计方法即可求解得到:
同理,可以求解得到[R21 R22 R23 TY]T和[R31 R32 R33 TZ]T。
结合求解得到对三组参数,可以获取上述记载的转化矩阵和平移向量,基于转化矩阵和平移向量即可建立马达坐标系与世界坐标系之间的对应关系。
本申请实施例可以解决双坐标系标定的问题,并配合工装设计,实用性较强。
本申请实施例提供的双坐标系对应关系建立系统,通过设计第一工件和第二工件,结合多个基准位置处对第二工件拍摄的图像,获取第二工件上的多个基准位置坐标(即多个基准位置在世界坐标系下的坐标),及第一工件对准多个基准位置时在马达坐标系下的坐标,结合多个基准位置处的坐标建立双目系统中世界坐标系与马达坐标系之间的对应关系,从而可以将眼底相机上的两个副镜头获取的瞳孔位置与主镜头移动的目标位置在世界坐标系下的差异,转化为马达的移动步长,实现了眼底相机的自动定位,为眼底相机的主镜头移动提供精准的视觉导航。
实施例二
参照图4,示出了本申请实施例提供的一种双坐标系对应关系建立方法的步骤流程图,该双坐标系对应关系建立方法可以应用于上述实施例一中的双坐标系对应关系建立系统,如图4所示,该双坐标系对应关系建立方法具体可以包括如下步骤:
步骤401:获取第二工件上的多个基准位置的第一坐标。
本申请实施例可以应用于建立双目系统中世界坐标系与马达坐标系之间的对应关系的场景中。
本实施例可以应用于上述实施例一种的双坐标系对应关系建立系统。
在需要建立双目系统中世界坐标系与马达坐标系之间的对应关系之前,可以将第一工件安装于主镜头的摄像面一侧,如图2所示。
基准位置即为平板上的圆柱体结构形成的十字叉位置。
在具体实现中,可以在多个基准位置处,采用眼底相机上设置的两个副镜头对第二工件进行图像拍摄,得到多个基准位置对应的基准图像,然后对每个基准位置对应的两幅基准图像进行程序处理,即可以得到第二工件上的每个基准位置的第一坐标,该第一坐标即为多个基准位置在双目系统中世界坐标系下的坐标。
步骤402:获取第一工件对准所述多个基准位置时的第二坐标;所述第一坐标为所述基准位置在双目系统中世界坐标系下的坐标,所述第二坐标为所述第一工件在马达坐标系下的坐标。
在实际应用中,在进行基准位置对准时,可以通过控制马达移动眼底相机上的主镜头,将第一工件的顶端对准第二工件的十字叉结构的中心(紧贴),此时,可以记录第一工件对应的坐标,该坐标即为第一工件在对准基准位置时的马达坐标系下的坐标。
在获取第一坐标和第二坐标之后,执行步骤403。
步骤403:基于所述第一坐标和所述第二坐标,建立双目系统中的所述世界坐标系与所述马达坐标系之间的对应关系。
在获取第一坐标和第二坐标之后,可以基于第一坐标和第二坐标,建立双目系统中的世界坐标系与马达坐标系之间的对应关系,具体地,可以根据最小均方差算法对第一坐标和第二坐标进行处理,以得到调整参量,然后结合调整参量建立双目系统中世界坐标系与马达坐标系之间的对应关系,对于该过程可以参见上述实施例一对应部分的描述,本实施例在此不再加以赘述。
本申请实施例通过结合预设算法(如最小均方差算法等)对采集的坐标数据进行优化,可以提高标定双坐标系对应关系的转换参量的精度。
在建立双目系统中世界坐标系与马达坐标系之间的对应关系之后,可以根据该对应关系将获取的瞳孔位置转换为主镜头在马达坐标系中需要移动的步长,具体地,可以结合下述具体实现方式进行如下详细描述。
在本申请的一种具体实现方式中,在上述步骤403之后,还可以包括:
步骤S1:在需要将所述主镜头从第一位置移动至第二位置的情况下,根据所述对应关系,确定所述第一位置对应的马达起始位置,及所述第二位置对应的马达结束位置。
在本实施例中,马达起始位置是指主镜头在马达坐标系中的初始位置,马达结束位置是指主镜头在马达坐标系中的需要移动到的位置。
第一位置是指主镜头所处的初始位置,第二位置是指主镜头需要移动到的位置。
在本示例中,第一位置和第二位置可以是通过眼底相机上的两个副镜头获取的位置,在具体实现中,通过两个副镜头进行拍摄,可以得到主镜头所处的初始位置,即第一位置,在主镜头当前所处的位置不适合进行眼底图像的采集时,可以获取主镜头需要移动到的位置,即第二位置。
可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本示例的唯一限制。
在获取第一位置和第二位置之后,可以根据上述步骤建立的世界坐标系与马达坐标系之间的对应关系,确定出主镜头对应的马达起始位置和马达结束位置。
在获取到马达起始位置和马达结束位置之后,执行步骤S3。
步骤S2:通过所述马达控制所述主镜头从所述马达起始位置移动至所述马达结束位置。
在获取到主镜头对应的马达起始位置和马达结束位置之后,可以通过马达控制主镜头从马达起始位置移动至马达结束位置,进而实现了两个副镜头确定的瞳孔位置转换为马达所需移动的步长,可以实现眼底相机的自动定位。
本申请实施例提供的双坐标系对应关系建立方法,通过获取第二工件上的多个基准位置的第一坐标,获取第一工件对准多个基准位置时的第二坐标,第一坐标为基准位置在双目系统中世界坐标系下的坐标,第二坐标为第一工件在马达坐标系下的坐标,基于第一坐标和第二坐标,建立双目系统中的世界坐标系与马达坐标系之间的对应关系。本申请实施例通过获取多个基准位置在双目系统中世界坐标系下的坐标,及第一工件在对准多个基准位置时的马达坐标系下的坐标,建立双目系统中世界坐标系与马达坐标系之间的对应关系,从而可以将眼底相机上的两个副镜头获取的瞳孔位置与主镜头移动的目标位置在世界坐标系下的差异,转化为马达的移动步长,实现了眼底相机的自动定位,为眼底相机的主镜头移动提供精准的视觉导航。
另外地,本申请实施例还提供了一种电子设备,包括:存储器、数据处理装置及存储在所述存储器上并可在所述数据处理装置上运行的计算机程序,所述计算机程序被所述数据处理装置执行时实现上述双坐标系对应关系建立方法。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被数据处理装置执行时实现上述双坐标系对应关系建立方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(RandomAccess Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
本领域普通技术人员可以意识到,结合本申请实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。