一种二维和三维环境下图形图像混合处理的方法

文档序号:7668011阅读:330来源:国知局
专利名称:一种二维和三维环境下图形图像混合处理的方法
技术领域
本发明涉及广播电视领域,特别是涉及一种二维和三维环境下图形图像混合处理的方法。
背景技术
在一定混合规则下,把源像素和目标像素进行混合,从而使所得场景更加逼真。对于混合操作,简单理解就是把像素点的RGB成分看成是它的颜色,把Alpha成分看成是它的透明度。透明和半透明表面的不透明性要低于不透明表面,也就是它们的Alpha值要低于不透明表面。例如,如果透过绿色玻璃观察一个物体,我们所看到的颜色部分来自于玻璃的 绿色,部分来自与物体的颜色。这两种颜色所占的比例取决于玻璃的转播属性,以及物体的透明度。发明人在实现本发明的过程中,发现现有技术至少存在以下问题现有技术中,三维场景中的图形图像混合对于特殊点的处理方式不恰当,周围边缘处会出现黑边的出现;二维场景的图形图像混合也会因为特殊点处理不当造成,或有些显卡或驱动不支持ALPHA通道,而会出现圆形混合后变成方形等失真的情况;针对三维环境和二维共存环境下图形图像混合分别建立和维护一套独立代码程序,则会大大增加系统的开销和消耗。

发明内容
本发明实施例要解决的问题是提供一种二维和三维环境下图形图像混合处理的方法,解决三维环境中的图形图像混合后周围边缘处会出现黑边问题,二维环境中的图形图像混合则会出现图形图像混合后内容形状发生变化等失真的问题;以及保证三维和二维共存环境下图形图像混合正常工作,并避免不必要的系统开销和消耗。本发明提供了一种二维和三维环境下图形图像混合处理的方法,包括获得针对二维和三维环境各自不同的图形图像混合处理方法;将所述针对二维和三维环境各自不同的图形图像混合处理方法分别生成不同的动态库;判断当前图像混合处理应用是针对二维还是三维,并调用相应动态库中的图形图像混合方法,进行混合处理。与现有技术相比,本发明实施例具有以下优点(I)解决了三维环境下图形图像混合,周围边缘产生的黑边情况;(2)解决了二维环境下图形图像混合,发生内容形状变化等失真情况;(3)有效的解决了三维、二维共存情况下,图形图像混合的不同方法之间的调度问题,大大减少了系统开销和程序运行时间。


图I是本发明中一种二维和三维环境下图形图像混合处理的方法的流程图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,需要指出的是,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述本发明提供了一种二维和三维环境下图形图像混合处理的方法,如图I所示,包括以下步骤步骤S101,获得针对二维和三维环境各自不同的图形图像混合处理方法。
针对二维环境情况下,图形图像混合处理时,具体解决方法为(a)首先判断源图形图像像素点的Alpha值为0,则不需通过计算,直接保存目的图形图像像素点为计算结果,并进入下一个像素点计算;(b),若非上述情况,则判断目的图形图像像素点的Alpha值为0,或源图形图像像素点的Alpha值为255,则不需通过计算,直接保存源图形图像像素点为计算结果,并进入下一像素点计算;步骤(a)、(b)顺序不可颠倒。其中,针对三维环境情况下,图形图像混合处理时,具体解决方法为(a)首先目的图形图像像素点的Alpha值为0,或源图形图像像素点的Alpha值为255,则不需通过计算,直接保存源图形图像像素点为计算结果,并进入下一像素点计算;(b)若非上述情况,则判断源图形图像像素点的Alpha值为0,则不需通过计算,直接保存目的图形图像像素点为计算结果,并进入下一个像素点计算;步骤(a)、(b)顺序不可颠倒。上述二维三维环境下,一般像素点的混合处理方式相同,过程如下若Cb为目标像素点,Cf为源像素点,则结果像素点Alpha值为,Cb. A = (Cf. A+(I-Cf. A/255. 0) *Cb. A);若Sf、Sb是在结果像素点中Cb、Cf像素值所占权重,则,Sf = Cf. A/Cb. A ;Sb = I-Sf ;结果像素点RGB值为,Cb. R = (BYTE) (Sf*Cf. R+Sb*Cb. R);Cb. G = (BYTE) (Sf*Cf. G+Sb*Cb. G);Cb. B = (BYTE) (Sf*Cf. B+Sb*Cb. B)。步骤S102,将所述针对二维和三维环境各自不同的图形图像混合处理方法分别生成不同的动态库。动态库,也就是动态链接库(Dynamic Link Library) ,DLL是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。DLL是一个包含可由多个程序同时使用的代码和数据的库。因此将二维环境中的图像混合处理方法和三维环境中的图像混合处理方法各自生成对应的动态库。步骤S103,判断当前图像混合处理应用是针对二维还是三维环境判断当前图像混合处理应用是针对二维还是三维环境,并调用相应动态库中的图形图像混合方法具体为当所述当前图像混合处理应用是针对二维环境时,调用二维环境下相应动态库中的图像混合处理方法;当所述当前图像混合处理应用是针对三维环境时,调用三维环境下相应动态库中的图像混合处理方法。,并调用相应动态库中的图形图像混合方法,进行混合处理。通过本发明实施例提供的方法,解决了三维环境下图形图像混合,周围边缘产生的黑边情况;解决了二维环境下图形图像混合,发生内容形状变化等失真情况;有效的解决了三维、二维共存情况下,图形图像混合的不同方法之间的调度问题,大大减少了系统开销和程序运行时间。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
权利要求
1.一种二维和三维环境下图形图像混合处理的方法,其特征在于,包括 获得针对二维和三维环境各自不同的图形图像混合处理方法; 将所述针对二维和三维环境各自不同的图形图像混合处理方法分别生成不同的动态库; 判断当前图像混合处理应用是针对二维还是三维环境,并调用相应动态库中的图形图像混合方法,进行混合处理。
2.如权利要求I所述的二维和三维环境下图形图像混合处理的方法,其特征在于,针对二维环境的图形图像混合处理方法为首先判断源图形图像像素点的Alpha值为O时,不需通过计算,直接保存目的图形图像像素点为计算结果,并进入下一个像素点计算;判断源图形图像像素点的Alpha值不为O时,则判断所述目的图形图像像素点的Alpha值为O,或所述源图形图像像素点的Alpha值为255,不需通过计算,直接保存源图形图像像素点为计算结果,并进入下一像素点计算。
3.如权利要求I所述的二维和三维环境下图形图像混合处理的方法,其特征在于,针对三维环境的图形图像混合处理方法为首先判断目的图形图像像素点的Alpha值为O,或源图形图像像素点的Alpha值为255,不需通过计算,直接保存源图形图像像素点为计算结果,并进入下一像素点计算;否则判断所述源图形图像像素点的Alpha值为O,不需通过计算,直接保存目的图形图像像素点为计算结果,并进入下一个像素点计算。
4.如权利要求I所述的二维和三维环境下图形图像混合处理的方法,其特征在于,所述动态库包含可由多个程序同时使用的代码和数据。
5.如权利要求I所述的二维和三维环境下图形图像混合处理的方法,其特征在于,所述判断当前图像混合处理应用是针对二维还是三维环境,并调用相应动态库中的图形图像混合方法具体为当所述当前图像混合处理应用是针对二维环境时,调用二维环境下相应动态库中的图像混合处理方法;当所述当前图像混合处理应用是针对三维环境时,调用三维环境下相应动态库中的图像混合处理方法。
全文摘要
本发明公开了一种二维和三维环境下图形图像混合处理的方法,包括获得针对二维和三维环境各自不同的图形图像混合处理方法;将所述针对二维和三维环境各自不同的图形图像混合处理方法分别生成不同的动态库;判断当前图像混合处理应用是针对二维还是三维环境,并调用相应动态库中的图形图像混合方法,进行混合处理。通过本发明实施例提供的方法,解决了三维环境下图形图像混合,周围边缘产生的黑边情况;解决了二维环境下图形图像混合,发生内容形状变化等失真情况;有效的解决了三维、二维共存情况下,图形图像混合的不同方法之间的调度问题,大大减少了系统开销和程序运行时间。
文档编号H04N5/262GK102752519SQ20111012693
公开日2012年10月24日 申请日期2011年5月17日 优先权日2011年5月17日
发明者吕精华, 廖健, 郑培枫, 郭红艳 申请人:新奥特(北京)视频技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1