用于计算拍摄对象的运动轨迹的方法、系统及存储介质与流程

文档序号:20833630发布日期:2020-05-22 16:35阅读:172来源:国知局
用于计算拍摄对象的运动轨迹的方法、系统及存储介质与流程

本发明涉及一种用于计算拍摄对象的运动轨迹的方法、系统及非易失性计算机可读取的存储介质。



背景技术:

为了使高尔夫球手(golfer)即便在闹市等地方也能够以低廉的费用虚拟地享受高尔夫运动,虚拟高尔夫系统正在广泛普及。这种虚拟高尔夫系统的基本概念是,如果高尔夫球手击打高尔夫球,在该击打之后获取多个拍摄高尔夫球的图像,基于该轨迹、间隔,大小等,测定关于高尔夫球的物理量,模拟高尔夫球的运动,并将模拟结果显示于显示器上。

目前,为了掌握如上所述的高尔夫球的物理量、尤其,高尔夫球的运动方向或运动速度,适用如下技术:利用同步的多个摄像头来同时拍摄高尔夫球,并利用关于该所拍摄的高尔夫球图像的绝对或相对的位置或高尔夫球图像的大小的信息。

然而,根据如上所述的现有技术,只有在多个摄像头之间实现完整的同步化,才能够准确地掌握高尔夫球的物理量。然而,实际上,因通信延迟等多种变数,导致频繁发生同步化或多或少失败的情况,且必然需要两台以上的摄像头,因此存在摄像头数量导致费用增加的问题。另外,目前也介绍了部分只利用一个摄像头的技术,但存在高尔夫球的物理量的测定误差变大的问题。

为此,本发明人在此提出即使使用一个摄像头,也能够简便、准确的计算高尔夫球的运动轨迹的新颖且进步的技术。



技术实现要素:

本发明的目的在于,解决所有上述的现有技术中的问题。

另外,本发明的另一目的在于,仅使用一个摄像头准确地计算拍摄对象的运动轨迹。

另外,本发明的又一目的在于,以低成本准确地计算拍摄对象的运动轨迹。

用于实现所述目的的本发明的代表性的结构如下。

根据本发明的一方式,提供一种用于计算拍摄对象的运动轨迹的方法,其包括:利用一个影像模块,获取关于所述拍摄对象的至少三个图像的步骤;以及参照所获取的所述至少三个图像,基于至少三个位置的各位置和经过配置有所述一个影像模块的位置的至少三条虚拟线,来计算所述拍摄对象的运动轨迹的步骤,所述至少三个位置是在背景上以所述一个影像模块的视点为基准投射所述拍摄对象来确定的。

除此以外,还提供用于实现本发明的其他方法、其他系统以及存储有用于执行所述方法的计算机程序的计算机可读取的存储介质。

根据本发明,仅使用一个摄像头,能够准确地计算拍摄对象的运动轨迹。

根据本发明,以低成本也能够准确地计算拍摄对象的运动轨迹。

附图说明

图1是示出本发明一实施例的用于计算拍摄对象的运动轨迹的整体系统的概略结构的图。

图2是详细示出本发明一实施例的计算系统200的内部结构的图。

图3和图4是关于根据本发明的一实施例计算拍摄对象的轨迹的过程的概念图。

图5是例示性示出本发明一实施例的计算系统200适用于外部系统的情况的图。

附图标记说明

100:通信网

200:计算系统

210:图像获取部

220:轨迹计算部

230:通信部

240:控制部

300:影像模块

具体实施方式

关于下述的对本发明的详细说明,参照例示性示出的附图说明能够实施本发明的特定实施例。对这些实施例进行详细说明,以使本领域技术人员能够充分实施本发明。本发明的多种实施例应理解为,虽然不同,但无需相互排他。例如,本说明书中记载的特定形状、结构及特性在不脱离本发明的主旨和范围的基础上能够从一实施例变更为另一实施例。另外,应理解为,各实施例内的个别构成要素的位置或者配置也在不脱离本发明的主旨和范围的基础上能够进行变更。因此,后述的详细说明不是限定本发明,本发明的范围应概括权利要求书的权利要求所要求保护的范围和与其等同的所有范围。附图中类似的附图标记在多个方面上表示相同或者类似的构成要素。

以下,参照附图对本发明的各种优选实施例进行详细说明,以使本发明所述技术领域的普通技术人员能够容易地实施本发明。

整体系统的结构

图1是示出本发明一实施例的用于计算拍摄对象的运动轨迹的整体系统的概略结构的图。

如图1所示,本发明一实施例的整体系统可包括通信网100、计算系统200及影像模块300。

首先,本发明一实施例的通信网100不限于有线通信或无线通信等通信方式,可包括局域网(lan;localareanetwork)、城域网(man;metropolitanareanetwork)、广域网(wan;wideareanetwork)等多种通信网。优选地,本说明书中所说的通信网100可以为公知的互联网或者万维网(www;worldwideweb)。然而,通信网100不必局限于此,其一部分还可包括公知的有线、无线数据通信网、公知的电话网或者公知的有线、无线电视通信网。

例如,通信网100作为无线数据通信网,其至少一部分可实现无线射频(rf;radiofrequency)通信、无线网络(wifi)通信、高速数据网络(lte等)通信,蓝牙通信(更具体而言,蓝牙低功耗(ble;bluetoothlowenergy)通信)、红外线通信、超声波通信等现有的通信方法。

接着,本发明一实施例的计算系统200可以为具备存储单元,且搭载有微处理器,具备运算能力的数字设备。这种计算系统200可以为服务器系统。

根据本发明的一实施例,计算系统200可执行如下功能:利用下述的一个影像模块300,可获取有关拍摄对象的至少三个图像,参照这些至少三个图像,基于至少三个位置与配置有影像模块300的位置的位置关系,计算在基准空间内的拍摄对象的运动轨迹,所述至少三个位置是在以与影像模块300面对面的方式存在的背景上,以影像模块300的视点(viewpoint)为基准投射拍摄对象来确定的。

本发明一实施例的基准空间可以是包括在计算系统200中作为基准的规定的三维坐标系上定义的空间的概念。

关于本发明的计算系统200的结构和功能,以下进行更仔细的说明。一方面,关于计算系统200进行如上说明,这种说明只是例示,本领域技术人员可知根据需要计算系统200中所要求的功能或构成要素的至少一部分可在外部系统(未图示)内实现或者可设置在外部系统内。

接着,本发明的一实施例的影像模块300可执行如下功能:可通过通信网100与计算系统200连接,按照规定的时间或规定帧的间隔对拍摄对象进行拍摄,从而获取拍摄对象的图像。在这种影像模块300中可包括二维或者三维摄像头、红外线或者紫外线摄像头等。

计算系统的结构

以下,对实现本发明时执行重要功能的计算系统200的内部结构及各构成要素的功能进行说明。

图2是详细示出本发明一实施例的计算系统200的内部结构的图。

如图2所示,计算系统200可包括图像获取部210、轨迹计算部220、通信部230及控制部240。根据本发明的一实施例,图像获取部210、轨迹计算部220、通信部230及控制部240中至少一部分可以为与影像模块300进行通信的程序模块。这种程序模块可以以运作系统、应用程序模块或者其他程序模块的形态设于计算系统200中,可物理性的存储于各种公知的存储装置中。另外,这种程序模块可存储于能够与计算系统200进行通信的远程存储装置中。一方面,这种程序模块可执行根据本发明以下说明的特定业务或可概括特定抽象数据类型的例程、子例程、程序、对象、组件、数据结构等,但不限定于此。

首先,本发明一实施例的图像获取部210可执行利用一个影像模块300获取有关拍摄对象的至少三个图像的功能。

具体而言,图像获取部210可通过一个影像模块300按照规定的时间或规定帧的间隔获取拍摄对象的图像。根据一实施例,如上的间隔可根据影像模块300的拍摄周期(例如,每秒传输帧数(fps;framepersecond))设置。

一方面,通过图像获取部210获取的拍摄对象图像可优选为从拍摄对象开始运动的时间点(timing)在充分短的时间(即拍摄对象的速度比其起始的速度仅稍微减少所需的时间)内获取的图像。该情况下,为了方便,可以假设拍摄对象以直线轨迹运动,在该轨迹内的运动速度均相同。

接着,本发明一实施例的轨迹计算部220可执行如下功能:参照通过图像获取部210获取的至少三个图像,基于至少三个位置的各位置和经过配置有影像模块300的位置的至少三条虚拟线,来计算拍摄对象的运动轨迹,所述至少三个位置是在以与影像模块300面对面的方式存在的背景上,以影像模块300的视点为基准投射拍摄对象来确定的虚拟线。

具体而言,轨迹计算部220可确定至少两个由如上的至少三条虚拟线中的任意两个构成的虚拟线对(pair),基于该所确定的至少两条虚拟线对及关于与各虚拟线对相对应的图像获取时间间隔的信息,来计算拍摄对象的运动轨迹。例如,关于由第一虚拟线及第二虚拟线构成的虚拟线对,与图像获取时间间隔相关的信息可以是获取与第一虚拟线相对应的图像的时间点和获取与第二虚拟线相对应的图像的时间点之间的间隔。

以下,进一步参照图3和图4进行说明。图3和图4是关于根据本发明的一实施例计算拍摄对象的轨迹的过程的概念图。

如图3和图4所示,分别将与影像模块300面对面存在的背景310和从该背景310垂直地朝向影像模块300的直线设为x轴和y轴,由此进行简单的图形化。该情况下,可分别设置配置有影像模块的坐标(即(0,a))和拍摄对象在开始运动之前所在的坐标(即(x0,0))。

通过图像获取部210,在相同的时间间隔的时间点t1、t2、t3及t4分别依次获取第一至第四图像301、302、303、304,由此,轨迹计算部200可将与第一至第四图像301、302、303、304相应的拍摄对象的运动轨迹假设为虚拟直线lt311。这种lt311的对应式可设为y=mx-mx0。

一方面,可将第一图像301中以影像模块300的视点为基准投射拍摄对象来确定的背景中的位置与经过配置有影像模块300的位置的虚拟直线l1312的对应式设为y=-ax/x1+a,可将第二图像302中以影像模块300的视点为基准投射拍摄对象来确定的背景中的位置与经过配置有影像模块300的位置的虚拟直线l2313的对应式设为y=-ax/x2+a,可将第三图像303中以影像模块300的视点为基准投射拍摄对象来确定的背景中的位置与经过配置有影像模块300的位置的虚拟直线l3314的对应式设为y=-ax/x3+a,可将第四图像304中以影像模块300的视点为基准投射拍摄对象来确定的背景中的位置与经过配置有影像模块300的位置的虚拟直线l4315的对应式设为y=-ax/x4+a。

轨迹计算部210可选择至少两个由上述的四条虚拟线,即由l1312、l2313、l3314及l4315中任意两个构成的虚拟线对。例如,可选择l1312及l2313的虚拟线对和l2313及l3314的虚拟线对。此时,可将lt311和l1312、l2313和l3314各自之间的交点的x坐标分别以xp1=x0+(a-ax0/x1)/(m+a/x1),xp2=x0+(a-ax0/x2)/(m+a/x2)及xp3=x0+(a-ax0/x3)/(m+a/x3)来计算。由于与l1312及l2313的虚拟线对相应的时间间隔和与l2313及l3314的虚拟线对相应的时间间隔均相同,因此xp1和xp2之间的距离与xp2和xp3之间的距离相同,由此轨迹计算部200可计算m。由此,轨迹计算部200能够计算lt311,进而能够计算拍摄对象的运动轨迹。

以上,为了方便,对与虚拟线对对应的时间间隔相同的情况进行了说明,但通过设为xp1和xp2之间的距离与xp2和xp3之间的距离之比,等于获取第一图像301的时间点和获取第二图像302的时间点的时间间隔与获取第二图像302的时间点和获取第三图像303的时间点的时间间隔之比,即使在与虚拟线对对应的时间间隔不同的情况下,也能够计算拍摄对象的运动轨迹。

一方面,以上的实施例中,以二维方式分析并说明了计算拍摄对象的运动轨迹的过程,但针对这种过程在能够实现本发明的目的的范围内可适用其他分析方法,例如,将这种过程括成一维方式进行分析或者扩成三维方式进行分析等。

另外,轨迹计算部220还可参照如上计算出的拍摄对象的运动轨迹和影像模块300的拍摄的时间间隔,来计算拍摄对象的运动方向和/或运动速度。例如,轨迹计算部220可将拍摄对象的运动轨迹内特定的坐标之间的距离按照与该特定的坐标相对应的影像模块300的拍摄时间间隔进行划分,由此简单计算拍摄对象的运动速度。

接着,本发明的一实施例的通信部230可执行实现与图像获取部210及轨迹计算部220的数据接受和发送的功能。

最后,本发明一实施例的控制部240可执行控制图像获取部210、轨迹计算部220及通信部230间的数据流的功能。即,本发明的控制部240控制来自计算系统200的外部或者向计算系统200的数据流或者计算系统200的各构成要素间的数据流,从而使图像获取部210、轨迹计算部220及通信部230能够执行各自股固有功能。

图5是例示性示出本发明一实施例的计算系统200适用于外部系统的情况的图。

如图5所示,本发明一实施例的计算系统200可假设为设置于现有的虚拟高尔夫模拟系统400中。该情况下,拍摄对象可以为高尔夫球。

首先,用户使用高尔夫球杆击打位于击球区的高尔夫球501时,虚拟高尔夫模拟系统400可以仅使用一个摄像头300获取包括高尔夫球的三个图像。

之后,虚拟高尔夫模拟系统400可参照如上获取的图像,基于三个位置的各位置和经过配置有摄像头300的位置的三条虚拟线510、520、530,来计算高尔夫球的运动轨迹,所述三个位置是在以与摄像头300面对面的方式存在的背景310上,以摄像头300的视点为基准投射高尔夫球来确定的。

之后,虚拟高尔夫模拟系统400可基于上面计算的运动轨迹,计算有关高尔夫球的运动方向、运动速度等的信息,可根据所计算出的该信息,执行有关高尔夫球的运动的模拟,通过显示器(未图示)提供该模拟结果。

以上说明的本发明的实施例可以通过多种计算机构成要素执行的程序命令语言的方式实现并存储于计算机可读取的存储介质。所述计算机可读取的存储介质可单独或者组合包括程序命令语言、数据文件、数据结构等。存储于所述计算机可读取的存储介质的程序命令语言可以是为了本发明而特别设计并构成的命令语言或者可以是计算机软件领域的技术人员公知并可使用的命令语言。计算机可读取的存储介质的例子中,可包括硬盘、软盘及磁带等磁介质、cd-rom及dvd等光存储介质、光磁软盘(flopticaldisk)等磁光碟媒体(magneto-opticalmedium)以及rom、ram、闪存等为了存储并执行程序命令语言而特别构成的硬件装置。程序命令语言的例子中,还包括由编辑者制作的机械语言编码以及使用解释器等能够通过计算机执行的高级语言编码。为了执行本发明的处理,硬盘装置可变更为一个以上的软件模块,也可以为相反情况。

以上,通过具体构成要素等特定事项和限定的实施例及附图,对本发明进行了说明,但这只是为了帮助对本发明的更全面的理解而提供的,本发明并非由所述实施例限定,本发明所属技术领域的普通技术人员可从这种记载进行多种修改和变更。

因此,本发明的思想并非局限于以上说明的实施例,随附的权利要求书以及与该权利要求书等同或者可由此等价变更的所有范围均属于本发明的思想范畴。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1