一种三维自动相机轨迹的平滑处理方法技术

技术编号:15641314 阅读:105 留言:0更新日期:2017-06-16 11:22
本发明专利技术涉及计算机技术领域,公开了一种三维自动相机轨迹的平滑处理方法,包括以下步骤:(1)获取用户给定一条运动轨迹;(2)对这条运动轨迹进行分析,确定需要进行插值点计算的点及插值点个数;(3)计算插值点对原运动轨迹中的点进行替换;(4)使用变换后的运动轨迹进行不断的相机变换。解决了使用用户任意设置的相机运动轨迹在三维场景中不断变换相机并实时成像来模拟在三维场景中的观察过程时变换更平滑。本发明专利技术通过对用户设置的相机运动轨迹进行分析,确定是否需要插值替换,需要替换时,使用二次贝塞尔曲线方程计算插值点并替换原有关键点,使整条运动轨迹在转折时更趋向于曲线,使相机沿运动轨迹变换时更平滑、场景更加美观。

【技术实现步骤摘要】
一种三维自动相机轨迹的平滑处理方法
本专利技术涉及三维
,特别是涉及一种三维自动相机轨迹的平滑处理方法。
技术介绍
通过把三维模型数据放置在三维空间中来搭建三维场景,用户需要在搭建后的三维场景中进行观察。这个观察的过程,通常使用不断的相机变化并实时成像的方式来模拟。这个相机不断变化的过程,组成了相机的一条运动轨迹。用户可以任意编辑一条运动轨迹,通过相机自动变换来达到对场景进行观察的目的。而一条任意编辑的运动轨迹,会在相机变换时带来视觉上的跳变,视觉体验非常差。因此需要提供一种处理的方式使运动轨迹更加平滑,使用户得到更好的视觉体验。
技术实现思路
本专利技术针对现有技术中运动轨迹在运动时会产生跳变的缺点,提供了一种三维自动相机轨迹的平滑处理方法。为了解决上述技术问题,本专利技术通过下述技术方案得以解决。一种三维自动相机轨迹的平滑处理方法,包括如下步骤:(1)获取用户给定的一条运动轨迹,包括运动轨迹中若干个有先后顺序的关键点;(2)对步骤(1)获取的运动轨迹进行分析,从第二个关键点开始,对每一个关键点的连接轨迹的夹角计算,前一个关键点指向该关键点的连线方向为第一方向,该关键点指向后一个关键点的连线方向为第二方向,第一方向和第二方向形成夹角;通过用户给定的每个关键点角度变换的阀值,对夹角的角度进行判断存在多少个插值点,每超过一个阀值的,则增加一个插值点个数,直到无法增加,最后确定插值点的个数;(3)根据步骤(2)的判断确定需要进行插值计算并且确定需要插值的关键点个数;使用二次贝塞尔曲线方程,计算各关键点的位置,计算公式如下:B(t)=(1-t)2P0+2t(1-t)P1+t2P2,t∈[0,1]其中P0为需要替换的关键点,P1为前一个关键点,P2为后一个关键点,将1按插值点个数进行等分为t的值,B(t)为插值点;(4)通过步骤(1)中用户给定的运动轨迹与步骤(3)中进行插值关键点替换后,得到一条运动轨迹;相机沿这条轨迹进行不断的变换,通过用户设定的速度,换算为每一次变换的距离,每两个关键点之间为一条直线,从一个关键点起步,沿直线不断变换相机位置至下一个关键点为止,到达关键点时同时变换相机的朝向,然后继续沿直线向下一个关键点变换相机的位置,直至到达最后一个关键点结束。作为优选,步骤(1)中,顺序规则为运动过程中经过关键点的先后。作为优选,步骤(4)中,换算过程为通过当前的帧率换算,帧率单位为帧/s,帧率从系统中可获取,速度由用户设定,速度单位为km/s,换算为km/帧,每一帧可变换一次。本专利技术由于采用了以上技术方案,具有显著的技术效果:本专利技术解决了使用用户任意设置的相机运动轨迹在三维场景中,不断变换相机并实时成像来模拟在三维场景中的观察过程时变换更平滑。通过对用户设置的相机运动轨迹进行分析,确定是否需要插值替换。如需要替换时,使用二次贝塞尔曲线方程计算插值点并替换原有关键点,使整条运动轨迹在转折时更趋向于曲线,使相机沿运动轨迹变换时更平滑,使场景更加美观、三维场景视觉体验更好。附图说明图1是本专利技术一种三维自动相机轨迹的平滑处理方法的流程示意图;图2是本专利技术一种三维自动相机轨迹的平滑处理方法中获取的轨迹示意图;图3是本专利技术一种三维自动相机轨迹的平滑处理方法中轨迹夹角的示意图;图4是本专利技术一种三维自动相机轨迹的平滑处理方法中生成和连接插值点的效果示意图;图5是本专利技术一种三维自动相机轨迹的平滑处理方法中将全部轨迹连接的效果示意图。具体实施方式下面结合附图与实施例对本专利技术作进一步详细描述。如图1至图5所示,一种三维自动相机轨迹的平滑处理方法,包括如下步骤:(1)获取用户给定的一条运动轨迹,包括运动轨迹中若干个有先后顺序的关键点,顺序规则为运动过程中经过关键点的先后;(2)对步骤(1)获取的运动轨迹进行分析,从第二个关键点开始,对每一个关键点的连接轨迹的夹角计算,前一个关键点指向该关键点的连线方向为第一方向,该关键点指向后一个关键点的连线方向为第二方向,第一方向和第二方向形成夹角;通过用户给定的每个关键点角度变换的阀值,对夹角的角度进行判断存在多少个插值点,每超过一个阀值的,则增加一个插值点个数,直到无法增加,最后确定插值点的个数;(3)根据步骤(2)的判断确定需要进行插值计算并且确定需要插值的关键点个数;使用二次贝塞尔曲线方程,计算各关键点的位置,计算公式如下:B(t)=(1-t)2P0+2t(1-t)P1+t2P2,t∈[0,1]其中P0为需要替换的关键点,P1为前一个关键点,P2为后一个关键点,将1按插值点个数进行等分为t的值,B(t)为插值点;(4)通过步骤(1)中用户给定的运动轨迹与步骤(3)中进行插值关键点替换后,得到一条运动轨迹;相机沿这条轨迹进行不断的变换,通过用户设定的速度,换算为每一次变换的距离,换算过程为通过当前的帧率换算,帧率单位为帧/s,帧率从系统中可获取,速度由用户设定,速度单位为km/s,换算为km/帧,每一帧可变换一次;每两个关键点之间为一条直线,从一个关键点起步,沿直线不断变换相机位置至下一个关键点为止,到达关键点时同时变换相机的朝向,然后继续沿直线向下一个关键点变换相机的位置,直至到达最后一个关键点结束。本专利技术解决了使用用户任意设置的相机运动轨迹在三维场景中不断变换相机并实时成像来模拟在三维场景中的观察过程时变换更平滑。未进行平滑处理的运动轨迹,每两个关键点间是一条直线轨迹,而从一条直线轨迹变换为下一条直线轨迹时,如果相机的朝向变换角度比较大,会出现画面跳变的效果,给用户较差的视觉感受。通过对用户设置的相机运动轨迹进行分析,确定是否需要插值替换。如需要替换时,使用二次贝塞尔曲线方程计算插值点并替换原有关键点,使整条运动轨迹在转折时更趋向于曲线,使相机沿运动轨迹变换时更平滑,使场景更加美观、三维场景视觉体验更好。实施例1获取用户给定如图2所示的一条运动轨迹;如图3所示,对这条运动轨迹进行分析,实心黑点为关键点,顺序从左到右进行排序,从第二个关键点开始,每一个关键点计算前一个关键点指向这个关键点的连线方向与这个关键点指向后一个关键点的连线方向形成的夹角。用户给定每个关键点角度变换的上限为10度,除第4个关键点外,都需要进行插值,如图4所示,计算得到的插值点若干B0、B1…B4,原路径为P0-P1-P2,使用插值点替换关键点,替换为P0-B0-B1-…B4-P2,剩下关键点也按照上述操作。如图5所示,然后剩下所有未替换的关键点与这些插值点从左到右两两连接,最终得到了一条平滑的运动轨迹。总之,以上所述仅为本专利技术的较佳实施例,凡依本专利技术申请专利范围所作的均等变化与修饰,皆应属本专利技术专利的涵盖范围。本文档来自技高网...
一种三维自动相机轨迹的平滑处理方法

【技术保护点】
一种三维自动相机轨迹的平滑处理方法,其特征在于,包括如下步骤:(1)获取用户给定的一条运动轨迹,包括运动轨迹中若干个有先后顺序的关键点;(2)对步骤(1)获取的运动轨迹进行分析,从第二个关键点开始,对每一个关键点的连接轨迹的夹角计算,前一个关键点指向该关键点的连线方向为第一方向,该关键点指向后一个关键点的连线方向为第二方向,第一方向和第二方向形成夹角;通过用户给定的每个关键点角度变换的阀值,对夹角的角度进行判断存在多少个插值点,每超过一个阀值的,则增加一个插值点个数,直到无法增加,最后确定插值点的个数;(3)根据步骤(2)的判断确定需要进行插值计算并且确定需要插值的关键点个数;使用二次贝塞尔曲线方程,计算各关键点的位置,计算公式如下:B(t)=(1‑t)

【技术特征摘要】
1.一种三维自动相机轨迹的平滑处理方法,其特征在于,包括如下步骤:(1)获取用户给定的一条运动轨迹,包括运动轨迹中若干个有先后顺序的关键点;(2)对步骤(1)获取的运动轨迹进行分析,从第二个关键点开始,对每一个关键点的连接轨迹的夹角计算,前一个关键点指向该关键点的连线方向为第一方向,该关键点指向后一个关键点的连线方向为第二方向,第一方向和第二方向形成夹角;通过用户给定的每个关键点角度变换的阀值,对夹角的角度进行判断存在多少个插值点,每超过一个阀值的,则增加一个插值点个数,直到无法增加,最后确定插值点的个数;(3)根据步骤(2)的判断确定需要进行插值计算并且确定需要插值的关键点个数;使用二次贝塞尔曲线方程,计算各关键点的位置,计算公式如下:B(t)=(1-t)2P0+2t(1-t)P1+t2P2,t∈[0,1]其中P1为需要替换的关键点,P0为前一个关键点,P2为后...

【专利技术属性】
技术研发人员:季惟婷俞蔚
申请(专利权)人:浙江科澜信息技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1