数据转换方法和装置以及姿势测量装置的制作方法

文档序号:2603441阅读:131来源:国知局
专利名称:数据转换方法和装置以及姿势测量装置的制作方法
技术领域
本发明涉及使用姿势传感器测量物体的姿势的技术。
背景技术
近年来,正在盛行研究以现实空间与虚拟空间的不存在接缝的结合为目的的复合现实感(MRMixed Reality)。进行复合现实感的展示的图像显示装置,由显示在用摄像机等的摄像装置所拍摄的现实空间的图像中重叠描绘了按照摄像装置的位置以及姿势而生成的虚拟空间的图像(例如,计算机图形所描绘的虚拟物体或者文字信息等)的图像的装置来实现。
作为这样的图像显示装置的应用,人们期待作为虚拟空间图像在拍摄了城市街道的现实空间的图像中重叠显示所包含的著名建筑物等的名称或索引的导航,或者在拍摄了大厦的建造预定地的图像中重叠显示预定建造的大厦的计算机图形图像的景观模拟等。
对于这些应用的共同要求,在于如何正确地进行现实空间与虚拟空间之间的对位,以往进行了大量的努力。为了正确地进行现实空间与虚拟空间之间的对位,可以将用于生成虚拟空间的图像的摄像机参数(内部参数以及外部参数)总是与摄像装置的摄像机参数保持一致。如果摄像装置的内部参数已知,则复合现实感中的对位的问题归结为求出摄像装置的外部参数,即,现实空间中设定的基准坐标系中的摄像装置的位置以及姿势的问题。
作为求出在现实空间中设定的基准坐标系中的摄像装置的位置以及姿势的方法,例如在T.Hllerer,S.Feiner,and J.Pavlik,Situateddocumentariesembedding multimedia presentations in the real word,Proc.International Symposium on Wearable Computers’99,pp.79-86,1999.中,提出了通过并用使用了姿势传感器的摄像装置的姿势测量和由全球测位系统等进行的摄像装置的位置测量而得到摄像装置的位置和姿势。
在这种方法中使用的姿势传感器的代表性的传感器,有TOKIMEC株式会社的TISS-5-40或者美国InterSense公司的InertiaCube2。这些姿势传感器主要由检测3个轴方向的角速度的旋转传感器和检测3个轴方向的加速度的加速度传感器构成,通过这些测量值的组合测量3个轴的姿势(方位角,俯仰角,滚动角)。一般,仅由旋转传感器得到的角度信息仅是姿势对于某个时刻的姿势的相对变化,而这些姿势传感器的特征在于,通过由加速度传感器测量地球的重力方向,对于倾斜角(即,俯仰角和滚动角)能够得到以重力方向为基准的绝对角。
姿势传感器输出的姿势测量值与基准坐标系无关,表示传感器自定义的传感器坐标系中的传感器自身的姿势。传感器坐标系,例如在上述的TISS-5-40的情况下,把重力方向(下方向)定义为Z轴,把由该Z轴确定的X-Y平面上的传感器初始化时的传感器的正面方向定义为X轴。另外,在InertiaCube2的情况下,把重力方向(下方向)定义为Z轴,把在由该Z轴确定的X-Y平面上,内置的地磁传感器在进行传感器初始化时表示的北方向定义为X轴。这样,由姿势传感器得到的姿势测定值一般并不是作为要取得的信息的基准坐标系中的测量对象物体(在展示复合现实感的图像显示装置的情况下是拍摄装置)的姿势本身。
即,不能够把由姿势传感器得到的姿势测量值原样地作为基准坐标系中的测量对象物的姿势,而需要进行某些坐标变换。具体地讲,需要把传感器自身的姿势转换为测量对象物体的姿势的坐标变换,以及把传感器坐标系中的测量对象物体的姿势转换为基准坐标系中的姿势的坐标变换。
另外,在本说明书中,把用于进行使传感器自身的姿势转换为测量对象物体的姿势的坐标变换的数据称为偏置(offset)数据。另外,把用于进行使传感器坐标系中的测量对象物体的姿势转换为基准坐标系中的姿势的坐标变换的数据称为调整(alignment)数据。
以下,以展示复合现实感的一般的图像显示装置为例,说明利用作为以重力方向为基准的绝对角可测量倾斜角的姿势传感器,将测量对象物体的姿势进行测量的姿势测量方法的现有技术。特别是,说明以往的调整数据的设定方法和利用方法。
图1是表示展示复合现实感的一般的图像显示装置的结构的图。
在头部安装单元100中固定着摄像机110、显示单元120以及姿势传感器130。
姿势传感器130测量传感器坐标系中的姿势传感器130自身的姿势,输出3个自由度的姿势测量值。姿势传感器130,例如由上述的TISS-5-40或InertiaCube2构成。
姿势计算单元140由姿势传感器130输入姿势测量值,按照未图示的内部存储器保持的调整数据和偏置数据,对姿势测量值进行坐标变换,计算基准坐标系中的摄像机110的姿势,作为姿势信息输出到图像生成单元150。
图像生成单元150,按照由姿势计算单元140输入的姿势信息,以及从未图示的位置计算单元(例如,全球定位系统的接收装置)输入的、在基准坐标系中的摄像机110的位置信息,生成与摄像机110的位置和姿势相对应的虚拟图像,把其重叠并输出到从摄像机110输入的实际拍摄图像上。显示单元120输入图像生成单元150输出的图像,并显示这些图像。
依照以上的结构,未图示的观察者(即,头部安装单元100的安装者),观察到在眼前所配置的显示单元120上所显示的、合成了实际拍摄图像(现实空间的图像)和虚拟图像(虚拟空间的图像)的图像。
下面,用图2说明在姿势计算单元140中,计算基准坐标系中的摄像机110的姿势的方法。
首先,说明图2中的变量。
RWV表示基准坐标系200(固定在现实空间中的坐标系)中的摄像机110的姿势。
RWT;表示基准坐标系200中的传感器坐标系210的姿势。
RTS表示传感器坐标系210中的姿势传感器130的姿势。
RSV表示从姿势传感器130观看的摄像机110的姿势。
另外,在本说明书中,用3×3矩阵RAB记述坐标系A中的对象B的姿势。这里,RAB是从对象B定义的坐标系B向坐标系A转换的坐标变换矩阵,是定义坐标系B中的坐标PB=(XB,YB,ZB)T转换为坐标系A中的坐标PA=(XA,YA,ZA)T的转换式,即定义PA=RAB·PB。就是说,基准坐标系200中的摄像机110的姿势RWV也能够称为用于把摄像机坐标系220中的坐标PV=(XV,YV,ZV)T转换为基准坐标系200中的坐标PW=(XW,YW,ZW)T的坐标变换矩阵(PW=RWV·PV)。
这时,RWT、RTS、RSV以及RWV的关系能够用(公式A)表示。
RWV=RWT·RTS·RSV……(公式A)在(公式A)中,RTS相当于从姿势传感器130向姿势计算单元140的输入数据,RWV相当于来自姿势计算单元140的输出数据,RSV相当于偏置数据,RWT相当于调整数据。姿势计算单元140使用从姿势传感器130输入的RTS和内部存储器保持的RSV以及RWT,根据(公式A)计算RWV,把它们向图像生成单元150输出。
从而,为了进行现实空间与虚拟空间的正确对位,需要通过某些方法把正确的RSV以及RWT设定在姿势计算单元140的内部存储器中。
偏置数据RSV的数值只要姿势传感器130与摄像机110的相对姿势的关系不发生变化,则总是恒定的。在图1所示的图像显示装置的情况下,由于两者都固定在头部安装单元100上,因此偏置数据的导出作业可以仅在头部安装单元100中设置姿势传感器130和摄像机110时来进行。一般地,由于姿势的测量对象物体和打算测量该物体的姿势传感器为了保持刚体性而被固定,因此偏置数据的导出作业可以仅在测量对象物体中设置姿势传感器时进行。
同样地,如果基准坐标系200与传感器坐标系210的相对姿势的关系不发生变化,则调整数据RWT的值也总是恒定,其导出作业可以仅在定义了基准坐标系200时进行。但是,实际上,如上所述,例如,在TISS-5-40的情况下,由于依赖于传感器初始化时的姿势传感器130的姿势而确定传感器坐标系210,所以如果传感器初始化时的姿势传感器130的姿势不同,则传感器坐标系210成为不同的坐标系。另外,在InertiaCube2的情况下,由于依赖于传感器初始化时地磁传感器指示的北方向而确定传感器坐标系210,所以取决于传感器初始化时的磁环境的变化,传感器坐标系210成为不同的坐标系。
因此,为了不变更地使用一次导出的调整数据,必须具备总是在相同的姿势或者相同的磁环境下进行姿势传感器130的初始化这一条件。
作为不需要该限制的一个方法,有记载在本申请人以前申请的日本特开2003-132374号公报中的方法。以下,说明该现有方法。
在没有设置上述限制的情况下,传感器坐标系210的定义根据把姿势传感器130初始化时的姿势或者磁环境等而变化。从而,调整数据的适宜的值并不恒定,需要在姿势传感器130的每次初始化时进行再次导出。在该现有方法中,通过做到容易导出调整数据,即使在传感器坐标系210发生变化的情况下,也能够测量正确的姿势。
一般地,作为以重力方向为基准的绝对角可测量倾斜角的姿势传感器,具有将传感器坐标系210的一个轴设定为重力方向(或者其反方向)的特征。例如,在TISS-5-40或者InertiaCube2中,如图3所示,传感器坐标系210的Z轴被设定在重力方向。在以下的说明中,用传感器坐标系210的Z轴来表示重力方向。
在本现有方法中,为了做到容易导出调整数据,限定基准坐标系200的设计自由度。具体地讲,如图3所示,可仅将通过使传感器坐标系210沿着方位方向旋转才能表达的姿势定义为基准坐标系200的姿势。换言之,必须将把基准坐标系200的Z轴定义为重力方向的条件规定为设计基准坐标系200时的必要条件。
在这样的必要条件下,如果设计基准坐标系200,则基准坐标系200与传感器坐标系210的Z轴的方向保持一致。因此,作为把传感器坐标系210中的姿势转换为基准坐标系200中的姿势所需要的数据的调整数据RWT,能够根据表示方位方向的旋转的旋转矩阵进行表示。换言之,调整数据RWT能够仅由表示关于Z轴的旋转角的1个标量φWT表达。即成为RWT=cosφWT-sinφWT0sinφWTcosφWT0001]]>……(公式B)如上所述,调整数据的适宜的值并不恒定,需要在姿势传感器130的每次初始化时再次导出。在本现有方法中,由于调整数据仅根据φWT定义,因此在姿势传感器130的每次初始化时必须再次导出的值仅为一个标量φWT。
例如,在姿势传感器130的初始化以后,在观察显示在显示单元120上的图像(在实际拍摄图像上重叠了虚拟图像的图像)的同时,可以经由操纵杆等未图示的输入装置,对话式地增减姿势计算单元140保持的φWT值,使得可以正确地进行实际拍摄图像与虚拟图像的对位。由于该作业使发生变化的变量为1个,另外,变量的自由度是1,因此能够非常容易地进行。
这样,在本现有方法中,通过限定基准坐标系200的设计自由度,做到容易再次导出调整数据,不设置必须总是在相同的姿势或相同的磁环境下进行姿势传感器130的初始化的限制,能够进行正确的姿势测量。
然而在该方法中,具有不能够自由地设计基准坐标系的问题。因此,限制了应用的设计自由度。另外,在已经具有独立的基准坐标系的现存的应用中存在难以适用本方法的限制。

发明内容
本发明是鉴于以上课题而产生的,其目的在于,在基准坐标系的设计方面不产生制约,并且能够容易地再次导出调整数据。
上述目的可通过以下的数据转换方法实现,该数据转换方法将由姿势传感器定义的传感器坐标系中的姿势数据、转换成与传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,具有第1设定步骤,设定表示基准坐标系中的重力方向的第1调整数据;第2设定步骤,设定表示传感器坐标系和基准坐标系之间的方位方向的相差角度的第2调整数据;输入步骤,输入传感器坐标系中的姿势数据;以及转换步骤,基于表示传感器坐标系中的重力方向的数据,以及第1、第2调整数据,将在输入步骤输入的传感器坐标系中的姿势数据,转换成基准坐标系中的姿势数据。
另外,上述目的还可通过以下的数据转换方法实现,该数据转换方法将由姿势传感器定义的传感器坐标系中的姿势数据、转换成与传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,具有求第1坐标变换的步骤,该第1坐标变换用于根据基准坐标系中的重力方向和传感器坐标系中的重力方向,使传感器坐标系的重力方向与基准坐标系中的重力方向一致;求第2坐标变换的步骤,该第2坐标变换以世界坐标系中的重力方向为旋转轴,进行传感器坐标系的坐标值与基准坐标系之间的方位方向的相差角度旋转;输入步骤,输入传感器坐标系中的姿势数据;以及转换步骤,使用第1坐标变换和第2坐标变换,将在输入步骤输入的传感器坐标系中的姿势数据、转换成基准坐标系中的姿势数据。
另外,上述目的还可通过以下的数据转换装置实现,一种数据转换装置,该数据转换装置将由姿势传感器定义的传感器坐标系中的姿势数据、转换成与传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,具有第1设定装置,设定表示基准坐标系中的重力方向的第1调整数据;第2设定装置,设定表示传感器坐标系和基准坐标系之间的方位方向的相差角度的第2调整数据;输入装置,输入传感器坐标系中的姿势数据;以及转换装置,基于表示传感器坐标系中的重力方向的数据,以及第1、第2调整数据,将在输入装置输入的传感器坐标系中的姿势数据,转换成基准坐标系中的姿势数据。
另外,上述目的还可通过以下的数据转换装置实现,该数据转换装置将由姿势传感器定义的传感器坐标系中的姿势数据、转换成与传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,具有求第1坐标变换的装置,该第1坐标变换用于根据基准坐标系中的重力方向和传感器坐标系中的重力方向,使传感器坐标系的重力方向与基准坐标系中的重力方向一致;求第2坐标变换的装置,该第2坐标变换以世界坐标系中的重力方向为旋转轴,进行传感器坐标系的坐标值与基准坐标系之间的方位方向的相差角度旋转;输入装置,输入传感器坐标系中的姿势数据;以及转换装置,使用第1坐标变换和第2坐标变换,将在输入装置输入的传感器坐标系中的姿势数据、转换成基准坐标系中的姿势数据。
另外,上述目的还可通过姿势测量装置实现,该姿势测量装置的特征在于,具有姿势传感器和本发明的数据转换装置,测量基准坐标系中的物体的姿势。


附图包含在说明书中并构成其一部分,用于阐述本发明的实施方式,并与其描述一起说明本发明的原理。
图1是表示进行复合现实感的展示的一般的图像显示装置的功能结构的图。
图2是说明计算基准坐标系中的摄像机的姿势的方法的图。
图3是说明现有方法中的基准坐标系与传感器坐标系的关系的图。
图4是表示作为本发明的第1实施方式的图像显示装置的功能结构的图。
图5是表示可作为本发明的实施方式中的处理部利用的计算机的基本结构的图。
图6是表示本发明的第1实施方式中的图像显示装置进行的处理的流程图。
图7是表示作为本发明的第2实施方式的图像显示装置的功能结构的图。
图8是表示本发明第2实施方式中的图像显示装置进行的处理的流程图。
图9是表示作为本发明的第3实施方式的姿势测量装置的功能结构的图。
具体实施例方式
以下,参照附图详细地说明本发明的优选实施方式。
<第1实施方式>
下面将参照附图对本发明的优选实施例进行详细说明。
在本实施方式中,说明把本发明的姿势测量方法应用在展示复合现实感的图像显示中的情况。
图4表示本实施方式中的图像显示装置的装置结构。如该图所示,本实施方式中的图像显示装置作为相当于图1所示的图像显示装置中的姿势计算单元140的结构元件,是作为结构元件具有姿势计算单元440的结构。另外,作为结构元件添加第1调整数据设定单元410以及第2调整数据设定单元420。另外,由于头部安装单元100,摄像机110,显示单元120,姿势传感器130、以及图像生成单元150的动作与图1所示的图像显示装置相同,因此省略说明。另外,在本实施方式中,将头部安装单元100以外的结构作为处理部400使用。
姿势计算单元440在其未图示的内部存储器中保存表示基准坐标系200中的重力的方向的第1调整数据,和表示传感器坐标系210与基准坐标系200之间的方位方向的相差角度(关于重力方向的轴(重力轴)的旋转角)的第2调整数据。另外,在内部存储器中,由于姿势传感器130与摄像机110的相对姿势没有发生变化,因此用于把姿势传感器130的姿势转换为摄像机110的姿势的坐标变换矩阵RSV(即,偏置数据)保持为已知的值。姿势计算单元440使用内部存储器保持的第1和第2调整数据,计算使用图2说明的坐标变换矩阵RWT。关于第1和第2调整数据的具体结构,以及由第1和第2调整数据计算RWT的方法将在后面详细说明。
姿势计算单元440进一步地使用计算出的RWT,内部存储器保持的RSV和从姿势传感器130输入的RTS,与姿势计算单元140同样地根据(公式A)计算RWV,把结果输出到图像生成单元150。
第1调整数据设定单元410读出存储在未图示的外部存储装置中的第1调整数据,进行把该数据设定在姿势计算单元440的内部存储器中的处理。
第2调整数据设定单元420具有接受来自操作者的指令输入的未图示的指令输入单元,根据所输入的指令进行变更保持在姿势计算单元440的内部存储器中的第2调整数据的值的处理。
另外,图4中构成处理部400的姿势计算单元440,第1调整数据设定单元410,第2调整数据设定单元420、以及图像生成单元150中的每一个都既可以构成为独立的装置,也可以用软件实现其一部分或者全部,通过由一个或者多个计算机的CPU的运行,来实现其功能。在本实施方式中,各部分(姿势计算单元440、第1调整数据设定单元410、第2调整数据设定单元420、以及图像生成单元150)全部通过软件实现,而且设在一台计算机内运行。
图5是表示通过运行软件实现第1调整数据设定单元410,第2调整数据设定单元420,图像生成单元150中的每一个的、可作为处理部400利用的计算机的基本结构例的图。
CPU501使用保存在RAM502或者ROM503中的程序或者数据进行该计算机整体的控制,并且,运行实现姿势计算单元440、第1调整数据设定单元410、第2调整数据设定单元420、图像生成单元150的每一个的软件,发挥各部分的功能。
RAM502具备暂时存储从外部存储装置507或者存储介质驱动器508下载的程序或者数据的区域,并且,具备CPU501进行各种处理所需要的工作区域。例如,起到上述姿势计算单元440的未图示的内部存储器的作用。
ROM503一般保存计算机启动时运行的软件程序或设定数据等。键盘504和鼠标505是上述未图示的输入装置的一个例子,操作者使用这些设备,能够把各种指示输入到CPU501中。例如,键盘504和鼠标505作为第2调整数据设定单元420的指令输入单元(后述)而发挥作用。
GPU(Graphics Processing Unit图形处理单元)506是用于进行绘图处理的处理器,还具有向CRT或者液晶监视器等显示装置输出图像的功能。在本实施方式中,GPU506向显示单元120进行图像输出。
外部存储装置507是作为硬盘等大容量信息存储装置而发挥功能的装置,在这里保存OS(操作系统)或者发挥姿势计算单元440、第1调整数据设定单元410、第2调整数据设定单元420、图像生成单元150的每一个的作用的软件程序等。另外,在本实施方式的说明中,在这里还保存说明是“已知的”的信息。
存储介质驱动器508根据来自CPU501的指示读出存储在CD-ROM或者DVD-ROM等可移动存储介质中的程序或者数据,输出到RAM502或者外部存储装置507。
I/F509用于连接姿势传感器103或摄像机110,各个输出经由I/F509取入到RAM502中。总线510连接计算机内部的各个部分。
图6是通过CPU501运行软件程序实现的本实施方式中的图像显示装置的处理的流程图。另外,假设在进行图6所示的处理之前,已经从外部存储装置507或者存储介质驱动器508等把用于实现姿势计算单元440、第1调整数据设定单元410、第2调整数据设定单元420以及图像生成单元150的各个功能的软件程序下载到RAM502中。
在步骤S610中,第1调整数据设定单元410读出例如保存在插入到存储介质驱动器508内的存储介质中的第1调整数据,在RAM502上定义的预定变量中设定该值。第1调整数据由表示基准坐标系200的重力的方向的三维矢量gw=(gwx,gwy,gwz)构成。另外,例如在存储介质驱动器508中的存储介质中,以遵从预定格式的数据文件等形态,作为第1调整数据预先保存按照基准坐标系200的设计的三维矢量gw的值,该值能够根据需要进行变更。
在步骤S620中,第2调整数据设定单元420在经由指令输入单元进行了来自操作者的指令输入时,按照所输入的指令,变更保持在RAM502上定义的预定变量中的第2调整数据的值。第2调整数据由表示传感器坐标系210与基准坐标系200之间的方位方向的相差角度(关于重力方向的轴(重力轴)的旋转角)的一个标量φWT构成。指令的输入例如能够通过点击鼠标505的右键仅使φWT的值增加规定值(例如1度),通过点击鼠标505的左键仅使φWT的值减少规定值,或者通过键盘504的数字键直接输入φWT的增减值等来进行。
该第2调整数据的调整,例如使显示单元120显示在图像生成单元150中调整用的图像(在实际拍摄图像上重叠了虚拟图像的图像),操作者能够边观察显示单元120,边使用鼠标505或者键盘504对话式地进行,使得正确地进行实际拍摄图像与虚拟图像的对位。由于该作业使变化的变量为1个,另外变量的自由度是1,因此能够非常容易地进行。
另外,在最初执行步骤S620时,由于没有计算在调整用图像的显示时所需要的转换R1(后述),因此,例如不检验是否有使用者的输入而直接转移到步骤S630。
在步骤S630中,姿势计算单元440使用保持在RAM502中的第1和第2调整数据,计算把传感器坐标系210中的姿势转换为基准坐标系200中的姿势的坐标变换矩阵RWT。以下,说明其计算处理的详细过程。
把表示传感器坐标系210中的重力方向的三维矢量记为gs。由于本实施方式中的传感器的Z轴表示重力方向,因此取gs=(0,0,1)。在本实施方式中,设gs的值作为已知的值预先保持在RAM502中。
首先,姿势计算单元440根据表示传感器坐标系中的重力方向的矢量gs与作为表示基准坐标系200中的重力方向的矢量的第1调整数据gw的点积gs·gw,计算两个矢量构成的角度β。另外,根据gs与第1调整数据gw的叉积,计算由两个矢量构成的平面的法线矢量n=gs×gw。但是,在β的值是大约180度的情况(在本实施方式中,即,gw是大约(0,0,-1)的情况)下,由于n的值不稳定,因此作为法线矢量n设定与gs正交的适当的常数矢量(在本实施方式中,例如取(0,1,0))。
接着,姿势计算单元440计算进行以法线矢量n为旋转轴,以角度β为旋转角的坐标变换的坐标变换矩阵R1。即,转换R1是传感器坐标系的重力方向gs与世界坐标系的重力方向gw的转换。由于给出旋转轴和旋转角时的坐标变换矩阵的计算方法是众所周知的,因此省略详细的说明。
接着,姿势计算单元440计算进行以第1调整数据gw为旋转轴,以第2调整数据为旋转角的坐标变换的坐标变换矩阵R2。由于给出旋转轴和旋转角时的坐标变换矩阵的计算方法是众所周知的,因此省略详细的说明。
最后,姿势计算单元440根据R2与R1的积,即RWT=R2·R1……(公式C)来计算坐标变换矩阵RWT。
根据以上过程,在步骤S630中计算坐标变换矩阵RWT。
在步骤S640中,姿势计算单元440经由I/F509从姿势传感器100输入姿势测量值RTS。
在步骤S650中,姿势计算单元440使用在步骤S630中计算出的RWT、在步骤S640中输入的RTS、以及作为已知值保持的RSV,根据(公式A)来计算出RWV(即,基准坐标系200中的摄像机110的姿势)。
在步骤S660中,图像生成单元150经由I/F509,从摄像机110输入实际拍摄图像,在该图像上重叠描绘基于在步骤S630中计算出的摄像机110的姿势和从未图示的位置测量装置输入的摄像机110的位置的虚拟图像,并进行输出。
在步骤S670中,CPU501判定是否有程序的结束指示,如果没有结束指示,则反复执行步骤S620以后的处理。在给出了结束指示的情况下,结束执行程序。
根据以上过程,能够不限制基准坐标系的设计自由度,容易地进行从传感器坐标系向基准坐标系的转换所需要的调整数据的设定。
<第2实施方式>
在上述第1实施方式中,说明了TISS-5-40或者InertiaCube2那样,使用以重力方向为Z轴的姿势传感器的情况,而本发明的适用范围并不限于利用这种传感器的结构。如果是传感器坐标系与重力方向相关联而设定的姿势传感器,则本发明的姿势测量方法对任何传感器都能够适用。
在本实施方式中,说明当展示复合现实感的图像显示装置具备重力方向设定为Z轴以外的姿势传感器时,适用本发明的姿势测量方法的情况。
图7示出本实施方式中的图像显示装置的装置结构。如该图所示,本实施方式中的图像显示装置,作为结构元件,具有相当于图4所示的图像显示装置的姿势计算单元440的作为结构元件的姿势计算单元740,和相当于姿势传感器130的作为结构元件的姿势传感器730。另外,作为结构元件还添加了第3调整数据设定单元720。另外,由于头部安装单元100,摄像机110,显示单元120,图像生成单元150,第1调整数据设定单元410以及第2调整数据设定单元420的动作与图4所示的图像显示装置相同,因此省略说明。
姿势传感器730是进行传感器坐标系的重力方向是Z轴以外的设计的姿势传感器,测量传感器坐标系中的姿势传感器730自身的姿势,输出3个自由度的姿势测量值。在本实施方式中,作为例子,假定姿势传感器730的传感器坐标系中的重力方向是-Y轴,进行以下的说明。
姿势计算单元740与姿势计算单元440相同,在该未图示的内部存储器中,保持着表示基准坐标系200中的重力方向的第1调整数据,表示传感器坐标系210与基准坐标系200之间的方位方向的相差角度(关于重力方向的轴(重力轴)的旋转角)的第2调整数据φWT。另外,在内部存储器中,与姿势计算单元440相同,作为已知的值保持着用于把姿势传感器730的姿势转换为摄像机110的姿势的坐标变换矩阵RSV(即,偏置数据)。除去这些数据以外,姿势计算单元740还保持着表示传感器坐标系210中的重力方向的第3调整数据。姿势计算单元740使用内部存储器保持的第1、第2以及第3调整数据,计算坐标变换矩阵RWT。关于第3调整数据的具体结构,或者从第1、第2以及第3调整数据计算RWT的方法,在后面说明详细过程。
姿势计算单元740进而与姿势计算单元440同样地,使用计算出的RWT,内部存储器保持的RSV和从姿势传感器130输入的RTS,根据(公式A)计算RWV,把结果输出到图像生成单元150。
第3调整数据设定单元720读出存储在未图示的外部存储装置中的第3调整数据,进行把该数据设定在姿势计算单元740的内部存储器中的处理。
另外,图7中构成处理部700的姿势计算单元740、第1调整数据设定单元410、,第2调整数据设定单元420、第3调整数据设定单元720、以及图像生成单元150中的每一个都既可以构成独立的装置,也可以用软件实现其一部分或者全部,通过由一个或者多个计算机的CPU运行,可实现其功能。在本实施方式中,各部分(姿势计算单元440,第1调整数据设定单元410,第2调整数据设定单元420,第3调整数据设定单元720以及图像生成单元150)全部由软件实现,而且在一台计算机内运行。
通过运行软件实现姿势计算单元740、第1调整数据设定单元410、第2调整数据设定单元420、第3调整数据设定单元720、以及图像生成单元150中的每一个的、能够作为处理部700利用的计算机与第1实施方式相同,具有图5所示的结构。
图8是通过CPU501运行软件程序实现的、本实施方式中的图像显示装置的处理的流程图。另外,在进行以下的处理之前,设已经从外部存储装置507或者存储介质驱动器508等把用于实现姿势计算单元740、第1调整数据设定单元410、第2调整数据设定单元420、第3调整数据设定单元720、以及图像生成单元150的各个功能的软件程序下载到RAM502中。另外,由于用与图6相同的号码所表示的步骤(S610,S620,S640,S650,S660,S670)的处理内容的任何一个都与第1实施方式相同,因此省略说明。
在步骤S810中,第3调整数据设定单元720,读出例如保存在存储介质驱动器508内的存储介质中的第3调整数据,在RAM502上定义的预定变量中设定该值。第3调整数据由表示传感器坐标系210中的重力方向的三维矢量gs=(gsX,gsY,gsZ)构成。另外,在存储介质中,以遵从预定格式的数据文件等形态,作为第3调整数据,预先保存对应于姿势传感器730规格的三维矢量gs的值(在本例中是(0,-1,0)),能够根据需要来进行变更。
在步骤S830中,姿势计算单元740使用保存在RAM502中的第1、第2以及第3调整数据,计算把传感器坐标系210中的姿势转换为基准坐标系200中的姿势的坐标变换矩阵RWT。与步骤S630的区别仅在于作为已知的值在RAM502中不是预先保持gs的值,而是保持在步骤S810中由第3调整数据设定单元720所设定的值,其它的处理内容是相同的。
根据以上过程,与姿势传感器中固有的传感器坐标系的规格无关,能够容易地进行从传感器坐标系向基准坐标系的转换所需要的调整数据的设定。
<第3实施方式>
上述实施方式把本发明的姿势测量装置及其方法用在展示复合现实感的图像显示装置中,而本发明的姿势测量装置以及姿势测量方法,还能够在使用姿势传感器进行物体的姿势测量的各种用途中使用。
图9示出本实施方式的姿势测量装置的装置结构例。如该图所示,本实施方式中的姿势测量装置由计算机900和与第1实施方式相同的姿势传感器130构成。
姿势传感器130固定在任意的测量对象物体910上。
计算机900作为相当于第1实施方式中的姿势计算单元440的结构元件,具有姿势计算单元940。另外,与第1实施方式相同,作为结构元件具有第1调整数据设定单元410和第2调整数据设定单元420。
姿势计算单元940与姿势计算单元440相同,从由第1调整数据设定单元410和第2调整数据设定单元420设定的第1和第2调整数据,计算坐标变换矩阵RWT。姿势计算单元940进而与姿势计算单元440相同,使用计算出的RWT、内部存储器保持的RSV、从姿势传感器130输入的RTS,根据(公式A),计算基准坐标系中的测量对象物体910的姿势RWV。
在第1实施方式中,姿势计算单元140向图像生成单元150输出计算出的姿势RWV。在本实施方式中,姿势计算单元940经过未图示的I/F,向任意的设备输出计算出的姿势RWV。或者,姿势计算单元940把计算出的姿势RWV向在计算机900的内部并行运行的任意的应用程序传送。
另外,在本实施方式中,调整第2调整数据时所需要的调整用图像的生成和显示,由其它的应用程序进行。这种情况下,向其它的应用程序供给计算出的姿势RWV等在第2调整数据的调整时所需要的参数。
根据以上过程,在使用姿势传感器进行物体的姿势测量的各种用途中,能够取得基准坐标系中的测量对象物体的姿势。
<变形例1>
在上述实施方式中,第1调整数据设定单元410通过读出保存在存储介质驱动器508中的第1调整数据,取得了应该在RAM502上的变量中设定的第1调整数据的值。然而,取得第1调整数据的值的方法并不限于该方法。例如,通过在用于实现第1调整数据设定单元410的功能的软件程序中直接编码第1调整数据的值,也能够取得该值。另外,也可以在步骤S610中,操作者经过键盘504等直接输入该值。另外,还可以存储在外部存储装置507中,经由计算机网络从其它的计算机来获得。
<变形例2>
在上述的实施方式中,虽然独立于姿势传感器130(730)的计算机具备姿势计算单元440(740),但是,由于在姿势传感器130(730)自身或者其附属装置中也具有与姿势计算单元440(740)同等的功能,也能够得到本发明的效果。这种情况下,姿势传感器或者其附属电路,必须具备输入来自第1至第3调整数据设定单元中所需要单元的调整数据的功能。
<变形例3>
在上述实施方式中,根据第1调整数据设定单元410作为第1调整数据设定的、表示基准坐标系200中的重力方向的矢量gw和表示传感器坐标系210中的重力方向的矢量gs,来计算坐标变换矩阵R1。但是,第1调整数据不一定是基准坐标系200中的重力方向gw。例如,也可以是另外存在由基准坐标系200中的重力方向gw和传感器坐标系210中的重力方向gs来计算坐标变换矩阵R1的计算装置、第1调整数据设定单元410把坐标变换矩阵R1作为第1调整数据设定在姿势计算单元440中的结构。这种情况下,在步骤S630中省略由gw和gs计算坐标变换矩阵R1的处理。
同样,也可以是还存在从基准坐标系200中的重力方向gw和传感器坐标系210中的重力方向gs计算旋转轴(法线矢量)n和旋转角β的计算装置,第1调整数据设定单元410把旋转轴n以及旋转角β作为第1调整数据设定在姿势计算单元440中的结构。这种情况下,在步骤S630中,省略从基准坐标系200中的重力方向gw和传感器坐标系210中的重力方向gs计算旋转轴n和旋转角β的处理。
这样,在用其它的装置计算坐标变换矩阵R1或者旋转轴n和旋转角β的情况下,可以进行构成,使得姿势计算单元例如把计算所必需的参数(gs,gw)供给到该装置中来得到计算结果。
另外,在本变形例中,即使由第1调整数据设定单元410设定了操作者通过其它装置导出的R1或者n和β,也能够得到同样的结果。另外,R1的设定还可以通过能表达旋转矩阵的其它记述方法(例如用由滚动角,俯仰角,偏航角构成的欧拉角表达)指定,这一点是十分明确的。
如以上说明的那样,如果依据本发明,则由于能够容易地设定用于把传感器坐标系中的姿势转换为任意的基准坐标系中的姿势所需要的调整数据,因此在具有独立的基准坐标系的应用程序中,能够容易进行正确的姿势测量。
<其它的实施方式>
在上述第3实施方式中,只说明了使用在第1实施方式中说明的姿势测定方法的姿势测定装置,但是,当然也能够同样地用在第2实施方式中说明的姿势测定方法。这种情况下,计算机900包括第3调整数据设定单元720。
另外,在上述的实施方式中,只说明了包括头部安装单元或者姿势传感器的结构,但是,只要能够得到测定值或者拍摄图像,就不需要具有姿势传感器或者摄像机,另外如果不需要图像显示功能,如第3实施方式所示的那样,也不需要显示单元或者图像生成单元。
在上述的实施方式中,仅说明了由一台设备构成的处理部,但是,也能够通过由多台设备构成相同功能的系统来实现。
另外,本发明还包括以下情况通过把实现上述实施方式的功能的软件程序(在实施方式中,与图6、图8的任一个以上所示的流程图相对应的程序),从记录介质直接或者使用有线/无线通信,供给到具有能够运行该程序的计算机的系统或者装置中,该系统或者装置的计算机运行该供给的程序,从而实现同等的功能。
因此,为了用计算机实现本发明的功能处理,供给、下载到该计算机中的程序代码自身也实现本发明。就是说,用于实现本发明的功能处理的程序代码自身也包括在本发明中。
这种情况下,如果具有程序的功能,则与目标代码、按照解释程序所运行的程序、以及供给到OS的原本数据等程序的形态无关。
作为用于供给程序的记录介质,例如有软盘、硬盘、磁带等磁记录介质,MO、CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-R、DVD-RW等光/光磁记录介质,非易失性的半导体存储器等。
作为使用了有线/无线通信的程序的供给方法,可以举出以下方法在计算机网络上的服务器中存储形成本发明的计算机程序本身,或者包括压缩、自动安装功能的文件等,可以在客户计算机上成为形成本发明的计算机程序的数据文件(计算机数据文件),在有连接的客户计算机中下载计算机数据文件。这种情况下,还能够把程序数据文件分割到多个程序段文件中,把程序段文件配置在不同的服务器中。
即,对于多个使用者,下载用于由计算机实现本发明的功能处理的程序数据文件的服务器装置也包含在本发明中。
另外,还可以把本发明的程序加密,保存在CD-ROM等存储介质中,分配给使用者,对于满足预定条件的使用者例如通过经由互联网从主页下载,供给解码的密钥信息,通过使用该密钥信息运行加密了的程序,安装到计算机上,也能够实现本发明的功能。
另外,除去通过计算机运行读出的程序,实现上述实施方式的功能以外,根据该程序的指示,在计算机上工作的OS等进行实际处理的一部分或者全部,通过该处理也能够实现上述实施方式的功能。
进而,从记录介质读出的程序,在写入到插在计算机上的功能扩展槽或者与计算机连接的功能扩展单元所具备的存储器中以后,根据该程序的指示,该功能扩展槽或者功能扩展单元具备的CPU等进行实际处理的一部分或者全部,通过该处理也能够实现上述实施方式的功能。
另外,当然,通过把记录了实现上述实施方式的功能的软件程序代码的存储介质(或者记录介质)供给到系统或者装置中,该系统或者装置的计算机(CPU或者MPU),读出并运行保存在存储体中的程序代码,也能够达到本发明的目的。这种情况下,从存储介质读出的程序代码自身实现上述实施方式的功能,存储该程序代码的存储介质构成本发明。另外,不仅是通过计算机运行读出的程序代码,来实现上述实施方式的功能的情况,而且根据该程序代码的指示,在计算机上工作的操作系统(OS)等进行实际处理的一部分或者全部,通过该处理实现上述实施方式的功能的情况当然也包括在内。
在不脱离本发明的精神和范围的前提下,可以有许多明显不同的实施方式,因此,可以理解,本发明不限于上述具体实施方式

,而在下面的权利要求中加以限定。
权利要求
1.一种数据转换方法,将由姿势传感器定义的传感器坐标系中的姿势数据转换成与上述传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,包括第1设定步骤,设定表示上述基准坐标系中的重力方向的第1调整数据;第2设定步骤,设定表示传感器坐标系和上述基准坐标系之间的方位方向的相差角度的第2调整数据;输入步骤,输入上述传感器坐标系中的姿势数据;以及转换步骤,基于表示上述传感器坐标系中的重力方向的数据和上述第1、上述第2调整数据,将在上述输入步骤输入的上述传感器坐标系中的姿势数据转换成上述基准坐标系中的姿势数据。
2.一种数据转换方法,将由姿势传感器定义的传感器坐标系中的姿势数据转换成与上述传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,包括求第1坐标变换的步骤,该第1坐标变换用于根据上述基准坐标系中的重力方向和上述传感器坐标系中的重力方向,使上述传感器坐标系中的重力方向与上述基准坐标系中的重力方向一致;求第2坐标变换的步骤,该第2坐标变换以上述世界坐标系中的重力方向为旋转轴,进行上述传感器坐标系的坐标值与上述基准坐标系之间的方位方向的相差角度旋转;输入步骤,输入上述传感器坐标系中的姿势数据;以及转换步骤,使用上述第1坐标变换和上述第2坐标变换,将在上述输入步骤输入的上述传感器坐标系中的姿势数据转换成上述基准坐标系中的姿势数据。
3.根据权利要求1或权利要求2所述的数据转换方法,其特征在于,还包括设定表示上述传感器坐标系中的重力方向的数据的步骤。
4.根据权利要求1或权利要求2所述的数据转换方法,其特征在于,上述传感器坐标系的坐标轴之一与重力方向相同。
5.根据权利要求1或权利要求2所述的数据转换方法,其特征在于,在上述输入步骤输入的姿势数据是表示上述姿势传感器的姿势的姿势数据,上述转换步骤还包括将表示上述姿势传感器的姿势的姿势数据转换成表示安装了上述姿势传感器的摄像装置的姿势的姿势数据的步骤,进而,还包括图像生成步骤,生成在上述摄像装置拍摄出的实际拍摄图像上重叠了使用上述基准坐标系中的上述摄像装置的位置数据和在上述转换步骤转换的上述基准坐标系中的上述摄像装置的姿势数据而生成的图像的重叠图像;显示步骤,显示上述重叠图像。
6.一种数据转换装置,将由姿势传感器定义的传感器坐标系中的姿势数据转换成与上述传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,包括第1设定装置,设定表示上述基准坐标系中的重力方向的第1调整数据;第2设定装置,设定表示传感器坐标系和上述基准坐标系之间的方位方向的相差角度的第2调整数据;输入装置,输入上述传感器坐标系中的姿势数据;以及转换装置,基于表示上述传感器坐标系中的重力方向的数据和上述第1、上述第2调整数据,将在由上述输入装置输入的上述传感器坐标系中的姿势数据转换成上述基准坐标系中的姿势数据。
7.一种数据转换装置,将由姿势传感器定义的传感器坐标系中的姿势数据转换成与上述传感器坐标系不同的基准坐标系中的姿势数据,其特征在于,包括求第1坐标变换的装置,该第1坐标变换用于根据上述基准坐标系中的重力方向和上述传感器坐标系中的重力方向,使上述传感器坐标系的重力方向与上述基准坐标系中的重力方向一致;求第2坐标变换的装置,该第2坐标变换以上述世界坐标系中的重力方向为旋转轴,进行上述传感器坐标系的坐标值与上述基准坐标系之间的方位方向的相差角度旋转;输入装置,输入上述传感器坐标系中的姿势数据;以及转换装置,使用上述第1坐标变换和上述第2坐标变换,将在由上述输入装置输入的上述传感器坐标系中的姿势数据转换成上述基准坐标系中的姿势数据。
8.根据权利要求6或权利要求7所述的数据转换装置,其特征在于,由上述输入装置输入的姿势数据是表示上述姿势传感器的姿势的姿势数据,上述转换装置还包括将表示上述姿势传感器的姿势的姿势数据转换成表示安装了上述姿势传感器的摄像装置的姿势的姿势数据的装置,进而,还包括图像生成装置,生成在上述摄像装置拍摄出的实际拍摄图像上重叠了使用上述基准坐标系中的上述摄像装置的位置数据和由上述转换装置转换的上述基准坐标系中的上述摄像装置的姿势数据而生成的图像的重叠图像;显示装置,显示上述重叠图像。
9.一种姿势测量装置,其特征在于,包括姿势传感器和权利要求6或权利要求7所述的数据转换装置,测量上述基准坐标系中的物体的姿势。
全文摘要
本发明提供一种数据转换方法和装置以及姿势测量装置。姿势传感器(130)测量传感器坐标系中的姿势传感器(130)本身的姿势,输出姿势测量值。第1调整数据设定单元(410),读出记录于未图示的外部存储装置上的、表示基准坐标系中的重力方向的第1调整数据,并将该数据设定在姿势计算单元(940)上。第2调整数据设定单元(420),从未图示的指令输入单元,根据操作者输入的指令,将表示传感器坐标系与基准坐标系之间的方位方向的相差角度的第2调整数据设定在姿势计算单元(940)上。姿势计算单元(940)利用第1和第2调整数据,基于从姿势传感器(130)输入的姿势测量值,计算基准坐标系中的物体的姿势,并输出该结果。
文档编号G09G5/36GK1604015SQ2004100810
公开日2005年4月6日 申请日期2004年9月30日 优先权日2003年9月30日
发明者佐藤清秀, 穴吹真秀 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1