一种将3d动画转化为gif动态图的方法及其装置制造方法

文档序号:6628745阅读:252来源:国知局
一种将3d动画转化为gif动态图的方法及其装置制造方法
【专利摘要】本申请实施方式提供了一种将3D动画转化为GIF动态图的方法及装置。该方法包括:确定3D动画中各个关键帧图片的播放时点;在播放3D动画过程中,在当前时点到达一个关键帧图片的播放时点时,截取该播放时点对应的3D动画图片,将该3D动画图片作为与该播放时点对应的关键帧图片;按照各个关键帧图片的产生顺序进行GIF编码,以生成GIF动态图,并在进行GIF编码之前,确定各个关键帧图片在GIF动态图中需要保留的时长,其中:所述时长为需要确定保留时长的关键帧图片与其紧邻的下一个关键帧图片各自对应的播放时点之差的绝对值。本申请实施方式可以使由3D动画转化而成的GIF动态图更接近3D动画,提高了显示效果。
【专利说明】—种将3D动画转化为GIF动态图的方法及其装置

【技术领域】
[0001]本申请的实施方式涉及信息数据处理【技术领域】,尤其涉及一种将3D动画转化为GIF动态图的方法及其装置。

【背景技术】
[0002]3D动画相对于平面动画而言,能够给用户带来更丰富、更有趣味的用户体验,这样的优势使其广泛应用于需要使用动画的各类场景之中。但是,无论是在3D动画的制作层面,还是播放层面,甚至存储层面,其相对于平面动画都更为复杂和消耗资源。比如,对于3D动画的播放,通常情况下,播放时必须依赖与该3D动画对应的特定引擎环境,如果变换该特定引擎环境或者不使用该特定引擎环境将可能无法播放,或者即使能够播放,但播放出来的效果也较差,从而不能准确地、较佳地还原“3D动画”。还比如,对于3D动画的存储,由于3D动画为了增强用户体验,在画质、色彩、亮度等方面使用了更细粒度的数据来刻画3D动画,导致3D动画就同样的动画内容相对于平面动画具有更大的数据量,占用更多的存储资源。因此,基于3D动画存在的上述这些缺陷,在3D动画领域迫切需要一种既能保持3D动画现有的特殊优势,又能在一定程度上克服3D动画缺陷的新技术。


【发明内容】

[0003]为了解决上述问题,本申请实施方式提供了一种将3D动画转化为GIF动态图的方法及其对应的装置,以便使3D动画的现有优势得到合理的保留且避免或减少现有存在的缺陷。
[0004]本申请实施方式提供的将3D动画转化为GIF动态图的方法包括:
[0005]确定3D动画中各个关键帧图片的播放时点,所述各个关键帧图片能够共同反映所述3D动画的概貌;
[0006]在播放3D动画过程中,在当前时点到达一个关键帧图片的播放时点时,截取该播放时点对应的3D动画图片,将该3D动画图片作为与该播放时点对应的关键帧图片;
[0007]按照各个关键帧图片的产生顺序进行GIF编码,以生成GIF动态图;
[0008]所述方法还包括:在进行GIF编码之前,确定各个关键帧图片在GIF动态图中需要保留的时长,以生成GIF动态图,其中:所述时长为需要确定保留时长的关键帧图片与其紧邻的下一个关键帧图片各自对应的播放时点之差的绝对值。
[0009]优选地,在得到关键帧图片之后,对关键帧图片进行GIF编码之前,所述方法还包括:
[0010]检测所述关键帧图片上是否存在目标对象,如果存在,则将所述关键帧图片中的所述目标对象边缘部分的颜色值修改为预定的颜色值。
[0011]优选地,在得到关键帧图片之后,对关键帧图片进行GIF编码之前,所述方法还包括根据播放GIF动态图的目标设备的要求对所述关键帧图片进行预处理,使GIF动态图适应相应的目标设备或目标设备所对应的用户。
[0012]进一步优选地,所述根据播放GIF动态图的目标设备的要求对关键帧图片进行预处理具体包括:
[0013]根据播放GIF动态图的目标设备的显示要求,调整所述关键帧图片的大小;和/或,根据播放GIF动态图的目标设备的存储要求,选择关键帧图片对应的色盘大小,和/或,根据播放GIF动态图的目标设备的播放要求,采用滤镜对关键帧图片进行处理。
[0014]进一步优选地,根据播放GIF动态图的目标设备的显示要求,调整所述关键帧图片的大小具体包括:获取目标设备的显示屏大小参数,根据所述显示屏大小参数对所述关键帧图片进行放大或缩小处理;和/或,
[0015]根据播放GIF动态图的目标设备的存储要求,选择关键帧图片对应的色盘大小具体包括:获取目标设备的存储能力大小参数,在存储能力大于第一预定阀值时选择色盘数量大于第二预定阀值的色盘,在存储能力小于第一预定阀值时选择色盘数量小于第二预设阀值的色盘;和/或,
[0016]根据播放GIF动态图的目标设备的播放要求,采用滤镜对关键帧图片进行处理具体包括:获取目标设备的播放风格,根据所述播放风格采用滤镜对关键帧图片进行亮度、锐度、素描效果和/或卡通画效果的调整。
[0017]本申请实施方式还提供了一种将3D动画转化为GIF动态图的装置。该装置包括:时点确定单元、图片截取单元和动态图生成单元以及时长确定单元,其中:
[0018]所述时点确定单元,用于确定3D动画中各个关键帧图片的播放时点,所述各个关键帧图片能够共同反映所述3D动画的概貌;
[0019]所述图片截取单元,用于在播放3D动画过程中,在当前时点到达一个关键帧图片的播放时点时,截取该播放时点对应的3D动画图片,将该3D动画图片作为与该播放时点对应的关键巾贞图片;
[0020]所述动态图生成单元,用于按照各个关键帧图片的产生顺序进行GIF编码,以生成GIF动态图;
[0021]所述时长确定单元,用于在进行GIF编码之前,确定各个关键帧图片在GIF动态图中需要保留的时长,以生成GIF动态图,其中:所述时长为需要确定保留时长的关键帧图片与其紧邻的下一个关键帧图片各自对应的播放时点之差的绝对值。
[0022]优选地,所述装置还包括颜色值调整单元,用于在得到关键帧图片之后,对关键帧图片进行GIF编码之前,检测所述关键帧图片上是否存在目标对象,如果存在,则将所述关键帧图片中的所述目标对象边缘部分的颜色值修改为预定的颜色值。
[0023]优选地,所述装置还包括预处理单元,用于在得到关键帧图片之后,对关键帧图片进行GIF编码之前,根据播放GIF动态图的目标设备的要求对所述关键帧图片进行预处理,使GIF动态图适应相应的目标设备或目标设备所对应的用户。
[0024]进一步优选地,预处理单元包括第一预处理子单元和/或第二预处理子单元,以及,和/或第三预处理子单元,其中:
[0025]所述第一预处理子单元,用于根据播放GIF动态图的目标设备的显示要求,调整所述关键帧图片的大小;
[0026]所述第二预处理子单元,用于根据播放GIF动态图的目标设备的存储要求,选择关键帧图片对应的色盘大小;
[0027]所述第三预处理子单元,用于根据播放GIF动态图的目标设备的播放要求,采用滤镜对关键帧图片进行处理。
[0028]进一步优选地,所述第一预处理子单元具体用于获取目标设备的显示屏大小参数,根据所述显示屏大小参数对所述关键帧图片进行放大或缩小处理;和/或,
[0029]所述第二预处理子单元具体用于获取目标设备的存储能力大小参数,在存储能力大于第一预定阀值时选择色盘数量大于第二预定阀值的色盘,在存储能力小于第一预定阀值时选择色盘数量小于第二预设阀值的色盘;和/或,
[0030]所述第三预处理子单元具体用于获取目标设备的播放风格,根据所述播放风格采用滤镜对关键帧图片进行亮度、锐度、素描效果和/或卡通画效果的调整。
[0031]本申请的实施方式先确定3D动画中各关键帧图片的播放时点,在播放时截取播放时点对应的3D动画图片,然后按照顺序进行GIF编码和保留时长的确定,以生成GIF动态图。与现有技术相比,本申请实施方式改变3D动画性质,将其由3D动画转换为GIF动态图,而GIF动态图为3D动画中关键帧,使3D动画的主要信息在改变性质后不会出现丢失,从而保持了 3D动画的现有优势。另一方面,在将3D动画转化为GIF动态图的过程中,GIF动态图仅是确定的播放时点上对应的3D动画,就同样动画内容需要的动画帧的数量减少,从而避免或减少了对存储资源的过度消耗。此外,将3D动画转化为GIF动态图之后,使3D动画播放过程中必须与特定引擎环境相绑定的紧耦合关系得到减弱或消除,从而打破了特定引擎环境对3D动画应用的限制。

【专利附图】

【附图说明】
[0032]通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
[0033]图1为将3D动画转化为GIF动态图的方法的一个实施例的流程图;
[0034]图2为将3D动画转化为GIF动态图的方法的又一个实施例的流程图;
[0035]图3为将3D动画转化为GIF动态图的装置实施例的组成框图。

【具体实施方式】
[0036]下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本申请的公开更加透彻和完整,并且能够将本申请公开的范围完整地传达给本领域的技术人员。
[0037]参见图1,该图示出了本申请提供的将3D动画转化为GIF动态图的一个实施例的流程,该流程包括:
[0038]步骤Sll:确定3D动画中各个关键帧图片的播放时点,所述各个关键帧能够共同反映所述3D动画的概貌;
[0039]3D动画可以由连续的帧图片组成,这些帧数据的时间化(即随着时间流动按照帧数据的先后进行播放)过程即会出现3D动画表现的内容。在组成3D动画中帧数据中,本实施例仅选取其中对于建立GIF动态图所需要的那些帧数据,这里称为关键帧图片。在实际应用过程中,可以根据实际情况采用多种具体的方式进行关键帧图片的确定。比如,在一个3D动画中,某个帧图片为大多数观看者关注,则可以将其设定为该3D动画的一个关键帧。在某些情况下,为了便于自动化进行上述操作,可以设置一定的阀值,然后计算3D动画中各个帧图片的关注度值,当关注度值大于或等于该预定的阀值时,将该关注度值对应的帧图片确定为关键帧图片。实际上,无论采用哪种确定关键帧图片的方式,只要这些关键帧图片作为整体能够较好地反映3D动画的概貌,也就是说,没有丢失3D动画本来需要传达给观看者的信息,即可解决本申请的技术问题。在确定了关键帧图片后,即可确定关键帧图片在3D动画中的播放时点,从而为后续利用该播放时点进行相关操作打下了基础。
[0040]这里还需要说明的是确定关键帧图片与确定播放时点之间的关系,在上述说明中,作为一种实现方式,强调了在确定关键巾贞图片之后,再确定该关键巾贞图片在3D动趣中的播放时点,但是,实际应用过程可以采用相反的过程。比如,在3D动画中,如果已能确定反映3D动画概貌的帧图片集中在某个时间点上或者分散在某些时间点上,则可以直接确定播放时点,这些播放时点对应的帧图片即可作为关键帧图片。当然,在实际应用过程中,还可以对这些播放时点上对应的多个帧图片进行筛选,而仅仅留下那些各方面均能满足用户要求的帧图片,从而将其确定为关键帧图片。实际上,除了这种确定关键帧图片与确定关键帧图片的播放时点之间具有先后关系之外,它们还可以是同时的,这时确定关键帧图片的过程与确定播放时点的过程本质上为同一过程。比如,在3D动画播放过程中,本实施例的实施者直接通过专用工具在3D动画中指定关键帧图片,而指定的关键帧图片自动地将其对应的播放时点记录下来,这样即同时确定关键帧图片和关键帧图片的播放时点。
[0041]此外,这里的播放时点可以采用多种表现形式来表示。在本申请中播放时点的作用包括触发3D动画图片的截取操作、GIF编码时的时序以及确定截取3D动画图片的保留时间,这些用途决定了播放时点主要性质为相对时点即可,也就是说,播放时点并不一定是与当前时间对应的绝对时间,比如,可以以第一个播放时点为起点时间,第二个播放时点的时点为相对于第一个播放时点的时点,如果第一个播放时点的时间为设定为0,经过T时长后到达第二个播放时点,那么第二个播放时点的时间为T。依次类推。
[0042]步骤S12:在播放3D动画过程中,在当前时点到达一个关键帧图片的播放时点时,截取该播放时点对应的3D动画图片,将该3D动画图片作为与该播放时点对应的关键帧图片;
[0043]通过前述步骤确定一个关键帧图片的播放时点后,可以实际地进行3D动画的播放,在播放过程中,如果时间进行到前述步骤确定的播放时点上,则触发对当前时点对应的3D动画的截取操作,这些截取到的3D动画也就是说关键帧图片。通过这种方式,将3D动画中全部的关键帧图片截取下来。这里需要强调的一点是尽管在本实施例中,本步骤位于前一个步骤之后,但是,这并不意味着本申请只能这样实施,而实际上,在某些情况下,对关键帧图片的截取操作可能与步骤S12在(几乎)相同的时刻发生。比如,当采取前述的在3D动画播放过程中进行关键帧图片的确定和播放时点的确定的方式,确定关键帧图片时,就是确定播放时点之时,确定播放时点之时,也就是触发进行截取3D动画图片之时。总之,前述两个步骤之间可以表现为先后、同时等关系,只要在实际应用过程中,不妨碍本申请发明目的实现,均可以被接受。
[0044]步骤S13:按照各个关键帧图片的产生顺序进行GIF编码,以生成GIF动态图,并在进行GIF编码之前,确定各个关键帧图片在GIF动态图中需要保留的时长,以生成GIF动态图,其中:所述时长为需要确定保留时长的关键帧图片与其紧邻的下一个关键帧图片各自对应的播放时点之差的绝对值。
[0045]通过前述步骤截取到关键帧图片后,即可对这些关键帧图片进行处理,处理的方式在本实施例中可以体现为两种方式:一是进行GIF编码;二是进行保留时间的确。GIF动态图的保留时间是在动态图播放过程中某个GIF动态图需要保持的时长,该时长可以通过该时长的两个端点时间进行求差运算得到。比如,第i个关键帧图片的播放时点为Ti,第i+1个关键帧图片的播放时点为Ti+1,那么第i个关键帧图片的保留时长TTi = Tw-Ti0对于步骤S12与步骤S13的关系,在实际应用过程中,也可能并不如本实施例描述的方式这么简单。在一个3D动画中,截取出来的关键帧图片的数量可能较多,这种情况下,如果等到将全部的关键帧图片截取出来之后,再进行GIF编码、保留时间的确定等操作,将使得生成GIF动态图的效率较低,而且,为了后续生成GIF动态图,还需要将前期截取的关键帧图片进行保存,占用存储空间。为此,在实际应用过程中的一种做法是步骤S12截取获得一个关键帧图片之后,即进行步骤S13的GIF编码等操作,在截取到下一个关键帧图片后,又针对该下一个关键帧图片进行操作,也就是说,两个步骤之间可以是循环往复(或嵌套式)的多次进行。需要注意的是,在本实施例中对确定各关键帧图片在GIF动态图中的保留时长是放在本步骤中进行的,但是,该操作只要在关键帧图片生成之后,甚至在其之前,即可进行,t匕如,可以放在步骤S13之前。
[0046]本实施例的方式先确定3D动画中各关键帧图片的播放时点,在播放时截取播放时点对应的3D动画图片,然后按照顺序进行GIF编码和保留时长的确定,以生成GIF动态图。与现有技术相比,本实施例能够取得至少如下的技术效果:
[0047]首先,在解决问题的整体思路上,本实施例大胆突破就3D动画本身进行改进以寻求解决方案的常规模式,而是改变3D动画的性质,将其由3D动画转化为GIF动态图,这种改变为保持3D动画的现有优势、克服目前的缺陷提供了新途径。
[0048]其次,在本实施例的实施过程中,将3D动画转化为GIF动态图的做法,并非直接将3D动画的各帧图像直接转化为GIF动态图,而是仅将那些能够反映3D动画关键信息的关键帧,作为生成GIF动态图的基础,而这些3D动画关键帧的集合作为整体共同反映了 3D动画的概貌,这样,将3D动画转化为GIF动态图后,3D动画本身具有的主要信息没有丢失,仍然保持在生成的GIF动态图之中,从而这一 3D动画性质的改变使3D动画现有的优势得到较好的保留。
[0049]再次,在将3D动画转化为GIF动态图的过程中,用于生成GIF动态图的3D动画图片仅是确定的播放时点上对应的3D动画,从而生成的GIF动态图也仅仅是与这些时点对应的动画,而不是3D动画的每帧图片,这样,如果就同样动画内容而言,GIF动态图的帧数量相比3D动画的帧数量,将大为减少,使用于存储这些GIF动态图的存储资源得到节约。
[0050]又次,通过本实施例的方式,将3D动画转化为GIF动态图之后,在对其进行播放时,仅仅采用通常的播放装置(软件)即可实现播放,也就是说,本实施例的转化操作使3D动画播放过程必须与特定引擎环境相绑定的紧耦合关系得到减弱或消除,从而打破了特定引擎环境对3D动画应用的限制,有利于3D动画内容的广泛传播。
[0051]此外,在本实施例中,由于确定的GIF动态图的保留时长为需要确定保留时长的关键帧与其紧邻的下一个关键帧各自对应的播放时点之差的绝对值,使GIF动态图的播放总体时长与3D动画的播放总体时长无多大差别,只不过在3D动画播放过程中,一个关键帧图片播放到下一个关键帧图片还存在其它帧图片,而本实施例中仅仅将前一个关键帧图片保留播放至下一个关键帧图片出现,而这种差别可能在人眼视觉差之内,或者丢失的信息仅仅是两个关键帧图片之间的不重要的帧图片。而且,这种方式使两两关键帧图片之间的时长可能不相同,而是真实反映关键帧图片在3D动画中本来的播放位置,从而使得播放GIF图片与播放原来的3D动画没有特别的差异,播放流畅,不会出现“卡顿”等现象,效果较佳。
[0052]在上述实施例中,描述了本申请的基本实施过程,但是,在实际应用过程中,基于各种应用需要,还可以对上述实施例进行各个层面上的优化、改进,以取得更好的技术效果O
[0053]比如,在通过实施例中的步骤S12截取到关键帧图片后,如果该关键帧图片中包含有目标对象,比如,衣物、人头发型等。由于这些目标对象的存在,通常情况下,会在这些目标对象物的边缘部分呈现不同的透明值,从而在关键帧图片上存在边缘噪点,这在3D动画的播放过程中,基于每帧图片的连续性,这些噪点对播放效果的影响不大,甚至可以忽略,而在GIF动态图的播放过程中,每个关键帧图片将保留到下一个关键帧图片的出现,噪点对播放效果的影响将会凸显,使观看者的用户体验效果差。为了避免这种情况,本申请优选先对从关键帧图片中找出目标对象物,将该目标对象物的色彩值设置为边缘色彩值,比如设置为白色边缘ARGB (255.0, 255.0, 255.0, 255.0),然后,将该目标对象物的边缘向外部扩展预定宽度,再进行半透明的融合计算。经过融合后的最终图像会在目标对象物的边缘形成预定色彩的“描边效果”。通过这种方式,消除了目标对象物的噪点,使得目标对象物的“描边效果”与原来的目标对象物过渡自然。
[0054]对上述实施例的改进方式还可以按照如下的方式进行,即在得到关键帧图片之后,对关键帧图片进行GIF编码之前,上述实施方式还可以包括根据播放GIF动态图的目标设备的要求对所述关键帧图片进行预处理,使GIF动态图适应相应的目标设备或目标设备所对应的用户。这里的预处理的具体方式与目标设备本身状况或目标设备对应用户对播放GIF动态图有何种具体要求有关系,也就是说,如果由于目标设备本身状况对播放GIF动态图存在一定的限制性要求,那么对关键帧图片进行的预处理结果则应当满足这种限制性要求,如果控制目标设备的用户对播放GIF动态图存在一定的特殊要求,那么对关键帧图片进行的预处理结果应当能够满足这种特殊要求。此外,还需要说明的是,这里的目标设备可以从硬件上来观察,也可以从软件角度观察。比如,当从软件角度观察时,目标设备的要求可以是运行在目标设备上的播放GIF动态图的一个功能模块或一个软件应用的要求等。下面示例性地进行说明:
[0055]当需要播放GIF动态图的目标设备对显示有特定要求时,则应当采取能够达到这种要求的预处理方式。如前所述,这里的要求可以是来自用户的定制性、私人化的要求,也可以来自目标设备本身设备在硬件或软件上能力上的限制性要求,还可以是按照既定的显示策略自动化生成的特定要求。比如,原来播放3D动画的设备为电脑,现在将其转化为GIF动态图后,要在移动终端上进行播放,由于移动终端的分辨能力可能不同于电脑,那么,通过预处理过程工作,在播放GIF动态图时就需要能够适应这种由于移动终端本身的状况带来的对播放GIF动态图的限制性要求。还比如,3D动画原来在电脑设备上的分辨率为“MXN”,现在,控制移动终端的用户明确希望播放出来的GIF动态图的分辨率应当达到“AXB”,那么,通过预处理工作,在播放GIF动态图时就需要能够满足这种定制化的要求。一种通过预处理满足目标设备要求的预处理方式可以是:先获取目标设备的显示屏大小参数,然后根据所述显示屏大小参数对所述关键帧图片进行放大或缩小处理。
[0056]当用来存储GIF动态图的存储设备或传输GIF动态图的带宽资源受到限制时,可以根据播放GIF动态图的目标设备的存储要求(同样地,这里的存储要求可以是由于目标设备本身的存储能力产生的要求,也可以是根据控制目标设备的用户对存储提出的特定要求,或者其它原因产生的要求),选择关键帧图片对应的色盘大小,选择不同的色盘,其颜色空间不同,颜色空间越小,需要的存储空间越小,占用的传输带宽资源也越小,也就是通过色盘的选择可以实现对关键帧图片的压缩,从而在颜色的真彩度与存储空间(占用的带宽资源)之间获得一个平衡。色盘可以根据实际情况选择256、128、64、32等。选择的具体方式可以是这样的:先获取目标设备的存储能力大小参数,然后对该存储能力进行判断,如果该存储能力大于第一预定阀值时,则选择色盘数量大于第二预定阀值的色盘,如果该存储能力小于第一预定阀值时,则选择色盘数量小于第二预设阀值的色盘。
[0057]当播放GIF动态图的目标设备(输出平台)对播放的具体风格有要求时,则可以根据播放GIF动态图的目标设备的播放要求(同样地,这里的播放要求可以是由于目标设备本身的播放能力产生的要求,也可以是根据控制目标设备的用户对播放GIF动态图提出的特定要求,或者其它原因产生的要求),采用滤镜对关键帧图片进行处理。比如,目标设备需要播放的图片满足亮度、锐化、素描效果、卡通画效果等特定风格,则可以对关键帧图片进行相应的处理,使其满足或适应这些要求。一种具体的处理方式可以这样实现:先获取目标设备的播放风格,然后根据所述播放风格采用滤镜对关键帧图片进行亮度、锐度和/或素描效果的调整。
[0058]为了更清楚地说明本申请的技术方案、技术特征,下面给出一个更为详细的实施例。参见图2,该图示出了本申请的将3D动画转化为GIF动态图的又一个实施例的流程。该流程包括:
[0059]步骤S21:确定3D动画中关键帧图片的播放时间点;
[0060]比如,在3D动画中设定所要截取的每一帧关键帧图片的播放时间点分别为I^k1,k2,……,kn,设定3D动画的最后一帧关键图片的播放时间点为K ;
[0061]步骤S22:确定各个关键帧图片的保留时长;
[0062]比如,为每一巾贞关键巾贞图片的确定的保留时长分别为td, tj, t2,......, tn,其中:
[0063]t0 = kfko, ti = Vk1, t2 = k3-k2,......, tn = K-kn ;
[0064]步骤S23:在3D动画播放过程中截取关键帧图片;
[0065]比如,在播放3D动画的过程中,当播放到步骤S21中确定的关键帧图片时点1?, k1;k2,……,kn时,正在播放的关键帧图片就会被截图保留,当动画播放完毕后,就会得到所截取的一系列关键帧图片Itl, I1,12,……,In ;
[0066]步骤S24:根据目标设备的不同播放要求压缩关键帧图片到相应的大小;
[0067]步骤S25:根据目标设备的不同风格要求选择相应的滤镜对关键帧图片进行处理;
[0068]步骤S26:对关键帧图片的噪点进行处理;
[0069]步骤S27:根据目标设备的不同存储要求选择大小合适的色盘;
[0070]步骤S28:对每一帧关键帧图片按照生成的顺序进行GIF编码,以生成GIF动态图。
[0071 ] 上述内容详细介绍了本申请的将3D动画转化为GIF动态图的方法的实施例,相应地,本申请还提供了一种将3D动画转化为GIF动态图的装置的实施例。参见图3,该图示出了本申请的将3D动画转化为GIF动态图的装置的一个实施例的结构框图。该装置实施例可以包括时点确定单元U31、图片截取单元U32和动态图生成单元U33以及时长确定单元U34,其中:
[0072]时点确定单元U31,用于确定3D动画中各个关键帧图片的播放时点,所述各个关键帧能够共同反映所述3D动画的概貌;
[0073]图片截取单元U32,用于在播放3D动画过程中,在当前时点到达一个关键帧图片的播放时点时,截取该播放时点对应的3D动画图片,将该3D动画图片作为与该播放时点对应的关键巾贞图片;
[0074]动态图生成单元U33,用于按照各个关键帧图片的产生顺序进行GIF编码,以生成GIF动态图;
[0075]时长确定单元U34,用于在在进行GIF编码之前,确定各个关键帧图片在GIF动态图中需要保留的时长,以生成GIF动态图,其中:所述时长为需要确定保留时长的关键帧与其紧邻的下一个关键帧各自对应的播放时点之差的绝对值。
[0076]上述装置实施例的工作方式参照前述方式实施例的描述,其同样能够取得前述方法实施例的技术效果,这里不再赘言。
[0077]基于实际应用需要,可以对上述装置实施例进行改进,比如,通过增加相关的功能单元,从而实现更好的技术效果。一种可能的实现方式是在前述装置实施例中增加颜色值调整单元U35,用于在得到关键帧图片之后,对关键帧图片进行GIF编码之前,检测所述关键帧图片上是否存在目标对象,如果存在,则将所述关键帧图片中的所述目标对象边缘部分的颜色值修改为预定的颜色值。
[0078]另一种可能的实现方式是上述装置实施例还可以包括预处理单元U36,用于在得到关键帧图片之后,对关键帧图片进行GIF编码之前,根据播放GIF动态图的目标设备的要求对所述关键帧图片进行预处理,使GIF动态图适应相应的目标设备或目标设备所对应的用户。这里的预处理单元根据不同的预处理方式可以具有不同的内部结构。比如,预处理单元可以同时或不同时包括第一预处理子单元U361、第二预处理子单元U362、第三预处理子单元U363,其中:第一预处理子单元U361,用于根据播放GIF动态图的目标设备的显示要求,调整所述关键帧图片的大小;第二预处理子单元U362,用于根据播放GIF动态图的目标设备的存储要求,选择关键帧图片对应的色盘大小;第三预处理子单元U363,用于根据播放GIF动态图的目标设备的播放要求,采用滤镜对关键帧图片进行处理。第一预处理子单元U361可以具体用于获取目标设备的显示屏大小参数,根据所述显示屏大小参数对所述关键帧图片进行放大或缩小处理;第二预处理子单元U362可以具体用于获取目标设备的存储能力大小参数,在存储能力大于第一预定阀值时选择色盘数量大于第二预定阀值的色盘,在存储能力小于第一预定阀值时选择色盘数量小于第二预设阀值的色盘;第三预处理子单元U363可以具体用于获取目标设备的播放风格,根据所述播放风格采用滤镜对关键帧图片进行亮度、锐度和/或素描效果的调整。
[0079]需要说明的是为了叙述的简便,本说明书的上述实施例以及实施例的各种变形实现方式重点说明的都是与其他实施例或变形方式的不同之处,各个情形之间相同、相似的部分可互相参见。尤其,对于装置实施例的改进方式而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处可参见方法实施例部分的说明。以上所描述的装置实施例的各单元可以是或者也可以不是物理上分开的,既可以位于一个地方,或者也可以分布到多个网络环境下。在实际应用过程中,可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的,本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0080]还值得说明的是,虽然前述内容已经参考若干【具体实施方式】描述了本发明创造的精神和原理,但是应该理解,本发明创造并不限于所公开的【具体实施方式】,对各方面的划分也不意味着这些方面中的特征不能组合,这种划分仅是为了表述的方便。本发明创造旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
【权利要求】
1.一种将3D动画转化为GIF动态图的方法,其特征在于,所述方法包括: 确定3D动画中各个关键帧图片的播放时点,所述各个关键帧图片能够共同反映所述3D动画的概貌; 在播放3D动画过程中,在当前时点到达一个关键帧图片的播放时点时,截取该播放时点对应的3D动画图片,将该3D动画图片作为与该播放时点对应的关键帧图片; 按照各个关键帧图片的产生顺序进行GIF编码,以生成GIF动态图; 所述方法还包括:在进行GIF编码之前,确定各个关键帧图片在GIF动态图中需要保留的时长,其中:所述时长为需要确定保留时长的关键帧图片与其紧邻的下一个关键帧图片各自对应的播放时点之差的绝对值。
2.根据权利要求1所述的方法,其特征在于,在得到关键帧图片之后,对关键帧图片进行GIF编码之前,所述方法还包括: 检测所述关键帧图片上是否存在目标对象物,如果存在,则将所述关键帧图片中的所述目标对象物边缘部分的颜色值修改为预定的颜色值。
3.根据权利要求1所述的方法,其特征在于,在得到关键帧图片之后,对关键帧图片进行GIF编码之前,所述方法还包括: 根据播放GIF动态图的目标设备的要求对所述关键帧图片进行预处理,使GIF动态图适应相应的目标设备或目标设备所对应的用户。
4.根据权利要求3所述的方法,其特征在于,所述根据播放GIF动态图的目标设备的要求对关键帧图片进行预处理具体包括: 根据播放GIF动态图的目标设备的显示要求,调整所述关键帧图片的大小;和/或,根据播放GIF动态图的目标设备的存储要求,选择关键帧图片对应的色盘大小,和/或,根据播放GIF动态图的目标设备的播放要求,采用滤镜对关键帧图片进行处理。
5.根据权利要求4所述的方法,其特征在于, 根据播放GIF动态图的目标设备的显示要求,调整所述关键帧图片的大小具体包括:获取目标设备的显示屏大小参数,根据所述显示屏大小参数对所述关键帧图片进行放大或缩小处理;和/或, 根据播放GIF动态图的目标设备的存储要求,选择关键帧图片对应的色盘大小具体包括:获取目标设备的存储能力大小参数,在存储能力大于第一预定阀值时选择色盘数量大于第二预定阀值的色盘,在存储能力小于第一预定阀值时选择色盘数量小于第二预设阀值的色盘;和/或, 根据播放GIF动态图的目标设备的播放要求,采用滤镜对关键帧图片进行处理具体包括:获取目标设备的播放风格,根据所述播放风格采用滤镜对关键帧图片进行亮度、锐度、素描效果和/或卡通画效果的调整。
6.一种将3D动画转化为GIF动态图的装置,其特征在于,所述装置包括:时点确定单元、图片截取单元和动态图生成单元以及时长确定单元,其中: 所述时点确定单元,用于确定3D动画中各个关键帧图片的播放时点,所述各个关键帧图片能够共同反映所述3D动画的概貌; 所述图片截取单元,用于在播放3D动画过程中,在当前时点到达一个关键帧图片的播放时点时,截取该播放时点对应的3D动画图片,将该3D动画图片作为与该播放时点对应的关键巾贞图片; 所述动态图生成单元,用于按照各个关键帧图片的产生顺序进行GIF编码,以生成GIF动态图; 所述时长确定单元,用于在进行GIF编码之前,确定各个关键帧图片在GIF动态图中需要保留的时长,其中:所述时长为需要确定保留时长的关键帧图片与其紧邻的下一个关键帧图片各自对应的播放时点之差的绝对值。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括颜色值调整单元,用于在得到关键帧图片之后,对关键帧图片进行GIF编码之前,检测所述关键帧图片上是否存在目标对象,如果存在,则将所述关键帧图片中的所述目标对象边缘部分的颜色值修改为预定的颜色值。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括预处理单元,用于在得到关键帧图片之后,对关键帧图片进行GIF编码之前,根据播放GIF动态图的目标设备的要求对所述关键帧图片进行预处理,使GIF动态图适应相应的目标设备或目标设备所对应的用户。
9.根据权利要求8所述的装置,其特征在于,预处理单元包括第一预处理子单元和/或第二预处理子单元,以及,和/或第三预处理子单元,其中: 所述第一预处理子单元,用于根据播放GIF动态图的目标设备的显示要求,调整所述关键帧图片的大小; 所述第二预处理子单元,用于根据播放GIF动态图的目标设备的存储要求,选择关键帧图片对应的色盘大小; 所述第三预处理子单元,用于根据播放GIF动态图的目标设备的播放要求,采用滤镜对关键帧图片进行处理。
10.根据权利要求9所述的装置,其特征在于, 所述第一预处理子单元具体用于获取目标设备的显示屏大小参数,根据所述显示屏大小参数对所述关键帧图片进行放大或缩小处理;和/或, 所述第二预处理子单元具体用于获取目标设备的存储能力大小参数,在存储能力大于第一预定阀值时选择色盘数量大于第二预定阀值的色盘,在存储能力小于第一预定阀值时选择色盘数量小于第二预设阀值的色盘;和/或, 所述第三预处理子单元具体用于获取目标设备的播放风格,根据所述播放风格采用滤镜对关键帧图片进行亮度、锐度、素描效果和/或卡通画效果的调整。
【文档编号】G06T13/20GK104268917SQ201410507646
【公开日】2015年1月7日 申请日期:2014年9月28日 优先权日:2014年9月28日
【发明者】吴松城, 陈军宏 申请人:厦门幻世网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1