根据交点分割字幕对象矢量轮廓中二次贝塞尔曲线的方法技术

技术编号:4332013 阅读:501 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种根据交点分割字幕对象矢量轮廓中二次贝塞尔曲线的方法,属于广电行业电视节目制播机构的字幕编播技术领域。该方法首先计算字幕对象矢量轮廓中所有的二次贝塞尔线段与其他二次贝塞尔线段的交点S[0]到S[n-1];然后在S[0]点处将线段B分成两条线段B1和B1′;在S[1]点处将线段B1′分成两条线段B2和B2′;以此类推,最后在S[n-1]点处将线段Bn-1′分成两条线段Bn和Bn′,最终得到N+1条分割后的线段。采用本发明专利技术所述的方法有利于字幕对象的后续渲染,增强字幕对象的最终渲染效果。

【技术实现步骤摘要】

本专利技术属于广电行业电视节目制播机构的字幕编播
,具体涉及一种。
技术介绍
在字幕编播领域中,字幕对象可分为文字和图形两个部分。文字包括世界上各种语种的文字,图形包括各种规则形状的图形、由基本图形元素组成的复合图形和任意不规则图形。从计算机图形学的角度来说,可以将所有类型的字幕对象视为由一系列直线和曲线组成的图形。图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上看,图形主要分为两类一类是基于线条信息表示的,如工程图、等高线地图、曲面的线框图等;另一类是明暗图,也就是通常所说的真实感图形。 字幕渲染是计算机图形学、计算机数字图像处理与电视台的节目制作业务相结合的技术。从计算机数字图像处理的角度来说,对字幕对象的渲染包括两个方面第一,基于像素或子像素的一系列静态处理,如图象增强、二值化处理、边缘检测、模糊处理、浮雕、边缘反走样、亮度贴图、材质贴图、防抖动、椭圆变形、多边形变形、勾边、增亮、锐化、柔化、凸起、彩色铅笔、油画龟裂、交叉影线、剪样、玻璃、边缘增亮、墨水轮廓画、瓷砖、信纸、拼缀物、塑料包装、水波纹、海绵、喷涂笔、着色玻璃、高斯模糊等特效;第二,基于关键帧的一系列动态处理,包括水波、旗飘、螺旋、扭曲、三维投影、火焰、球变、三维形变、弯曲、幻影、巻页、折叠、礼花、百叶窗、碎裂、水波、波动、划像、转球、螺旋、旗飘、波动虚影、蝶变、流光、凸镜、万花筒、激光、飞光、魔幻螺旋、运动模糊、径向模糊、波浪、波浪倒影、回旋等特效。 字幕的渲染效果是衡量一个字幕系统的重要指标,特别是在反走样处理、小字的细节处理、立体边的处理、虚边、虚影、真实三维视觉感、三维字倒角、纹理、光照的处理等方面。 在现有的字幕系统中,字幕渲染存在着以下问题 第一,将文本字幕与图形字幕的渲染区别开来,而且不同的图形元素也使用不同 性质的几何矢量来描述。这个问题在实现和应用两个方面给字幕系统带来了很多的不利。 从实现的角度来说,会导致一个字幕系统中存在多个完全不同的渲染引擎和渲染流程,而 且如果要支持一种新的字幕对象,则需要定义并实现新的渲染引擎,从而造成字幕系统的 功能扩展性存在很大的局限性。从应用的角度来说,带来两方面致命的问题一方面,不同 类型的字幕对象最终展现的效果不一致,例如两个不同类型的字幕对象同样是加了 2个像 素的全边,但由于经过了不同的渲染引擎,最终的处理结果可能是不同的,在进行字幕创作 时给使用者带来了诸多不便;另一方面,在字幕系统中针对字幕对象的操作不得不进行特 定的限制,例如,有的字幕对象支持几何旋转、几何縮放,有的则不支持,有的字幕对象支持 任意角度的加边、加影,有的则只支持固定角度的加边、加影,有的甚至不支持。所有这些问 题都会影响字幕系统的普遍适用性和功能完备性。 第二,字幕渲染引擎的核心算法都是基于浮点运算,例如三角函数运算、反三角函数运算、除法运算、幂运算、开方运算等。这会导致两方面的问题一方面,由于最终处理结 果要求的是整数型的像素值,因此在渲染引擎算法的不同阶段会进行取整运算,这就会造 成计算上的累计误差,导致最终的字幕效果在局部细节上存在缺陷,例如笔画多的文字模 糊不清晰、笔画粘连等;另一方面,这些浮点运算都是占用大量机器指令的数学运算,大大 降低了整个字幕系统的工作效率,影响到字幕制作和播出的时效性,特别是在高清晰度电 视字幕的制作中,由于其数据量是标清的5倍,这一点表现的更加明显。 第三,作为字幕渲染重要指标之一的边缘反走样的效果不甚理想,甚至无法达到实用的程度。这是因为现有的字幕系统在进行反走样处理时,完全依赖当前像素空间的图像处理方法,没有字幕几何矢量信息的参与,也就无法实现基于子像素的处理,使得现有的字幕系统的最终渲染效果出现比较明显的边缘锯齿效应,影响字幕展现的效果。 由于上述同样的原因,在对字幕对象进行基于滤镜管道的图像处理时,也会影响字幕的最终效果。现有的字幕系统的渲染流程通常是先进行面边影的贴图,得到一个图像,然后将这个图像放入滤镜管道中,再进行一系列的图像处理。但是由于没有字幕几何矢量信息的参与,滤镜管道的处理会破坏前者反走样后的效果。也就是说,在本来就不理想的边缘处理上累积了新的边缘锯齿效应。 由于上述同样的原因,对于稍微复杂一些的图形元素的字幕对象,在图形拐点处 出现振荡效应,导致图形轮廓不平滑。例如常用的圆角矩形对象,由四个角的圆弧与四条直 线组成,在圆弧与直线相接的地方,就会出现凸凹不平的现象。 第四,一个字幕对象在进行渐变色渲染时,应该是按照这个物体的矢量轮廓进行 径向的渐变色彩处理,但是在现有的字幕系统中,对渐变色的渲染处理是将渐变色放到一 个内存块中,在渲染时,还是采取了对应像素贴图的方法。这就使得现有的字幕系统无法实 现真正意义上的渐变色的渲染效果。 第五,现有的字幕系统无法实现增加多个外边、多个内边、多个侧面立体边、多个 影子。简单的面、边、影的叠加的字幕展现已经无法满足电视节目制作对字幕系统的要求。 第六,现有的字幕系统的渲染都不是基于Bezier曲线轮廓,但是由于TrueType 字库中的字模都是使用Bezier曲线来描述的,所以就需要将从字库中提取出来的Bezier 曲线转换成另外一种形式的矢量,由于不同矢量表达式之间的信息不对称性,在转换过程 中会出现信息的损失,从而使得笔画的形状变形,导致笔画粗细不均匀,影响字型展现的美 观。 第七,现有的字幕系统无法将文字字幕对象转换为图形字幕对象,从而无法实现 字符变形、字符倒影、字符反转、曲线摆放、艺术字等功能,无法满足高级的字幕应用需求。 第八,现有的字幕系统无法实现多种不同类型的加边方式,如尖角边、圆角边、方 角边等,这在一定程度上影响了字幕应用的广泛性。 第九,现有的字幕系统无法实现对任意形状不规则图形的支持,从而无法应对日 益重要的地理信息描述、气象预报、综合资讯等类型的字幕制作。 贝塞尔(Bezier)曲线是计算机图形学中一种重要的多项式参数曲线。平面中的 任意N(N〉二 2)个点都可以构成一个Bezier曲线,这N个点称为Bezier曲线的控制点, N个点组成的多边形称为Bezier曲线的控制多边形。N次Bezier曲线的参数方程如下 t G [O,l] 其中,P。、P^... 、Pn是Bezier曲线的控制点。 由此,一次Bezier曲线的参数表达式为 B(t) = P0+(P「P0)t = (l-t)P。+tPp t G [O,l] —次Bezier曲线就是线性Bezier曲线,实际上是两个控制点P。和P工之间的直线 段。 二次Bezier曲线的参数表达式为 B(t) = (1—t)2p。+2t(l-t)P,t2p2, t G [O,l] 三次Bezier曲线的参数表达式为 B(t) = Po(l-t)3+3P^(l-t)2+3P2t2(l-t) +P3t3, t G [O,l] P。、Pp^、P3四个点在平面或在三维空间中定义了三次Bezier曲线。曲线起始于 P。走向P工,并从P2的方向来到P3。 一般不会经过Pi或P^这两个点只提供方向信息。P。和 Pi之间的间距,决定了曲线在转而趋进P3之前,走向P2方向的长度。 Bez本文档来自技高网...

【技术保护点】
一种根据交点分割字幕对象矢量轮廓中二次贝塞尔曲线的方法,包括以下步骤:(1)计算字幕对象矢量轮廓中所有的二次贝塞尔线段与其他二次贝塞尔线段的交点;(2)在每条二次贝塞尔线段的交点处,将该二次贝塞尔线段分割;假设一条二次贝塞尔线段B的三个控制点分别是P[0]、P[1]、P[2],在B上有n个交点,分别为S[0]到S[n-1],每个交点对应的贝塞尔参数方程中的t值分别是S[0].t到S[n-1].t;首先在S[0]点处将线段B分成两条线段B1和B1′;B1的三个控制点分别为P[0]、Q[0]、S[0],P[0]和S[0]的坐标已知,Q[0]的坐标为:Q[0].x=(1-t)*P[0].x+t*P[1].x,Q[0].y=(1-t)*P[0].y+t*P[1].y;B1′的三个控制点分别为S[0]、R[0]、P[2],S[0]和P[2]的坐标已知,R[0]的坐标为:R[0].x=(1-t)*P[1].x+t*P[2].x,R[0].y=(1-t)*P[1].y+t*P[2].y;其中,Q[0].x表示Q[0]点的横坐标,Q[0].y表示Q[0]点的纵坐标,R[0].x表示R[0]点横坐标,R[0].y表示R[0]点纵坐标;t=(S[0].t-P[0].t)/(P[2].t-P[0].t),P[0].t为P[0]点对应的贝塞尔参数方程中的t值,P[2].t为P[2]点对应的贝塞尔方程中的t值;然后在S[1]点处将线段B1′分成两条线段B2和B2′,方法与在S[0]点处将线段B分成两条线段B1和B1′的方法相同;以此类推,最后在S[n-1]点处将线段Bn-1′分成两条线段Bn和Bn′;最终得到N+1条分割后的线段。...

【技术特征摘要】
一种根据交点分割字幕对象矢量轮廓中二次贝塞尔曲线的方法,包括以下步骤(1)计算字幕对象矢量轮廓中所有的二次贝塞尔线段与其他二次贝塞尔线段的交点;(2)在每条二次贝塞尔线段的交点处,将该二次贝塞尔线段分割;假设一条二次贝塞尔线段B的三个控制点分别是P、P[1]、P[2],在B上有n个交点,分别为S到S[n-1],每个交点对应的贝塞尔参数方程中的t值分别是S.t到S[n-1].t;首先在S点处将线段B分成两条线段B1和B1′;B1的三个控制点分别为P、Q、S,P和S的坐标已知,Q的坐标为Q.x=(1-t)*P.x+t*P[1].x,Q.y=(1-t)*P.y+t*P[1].y;B1′的三个控制点分别为S、R、P[2],S和P[2]的坐标已知,R的坐标为R.x=(1-t)*P[1].x+t*P[2].x,R.y=(1-t)*P[1].y+t*P[2].y;其中,Q.x表示Q点的横坐标,Q.y表示Q点的纵坐标,R.x表示R点横坐标,R.y表示R点纵坐标;t=(S.t-P.t)/(P[2].t-P.t),P.t为P点对应的贝塞尔参数方程中的t值,P[2].t为P[2]点对应的贝塞尔方程中的t值;然后在S[1]点处将线段B1′分成两条线段B2和B2′,方法与在S点处将线段B分成两条线段B1和B1′的方法相同;以此类推,最后在S[n-1]点处将线段Bn-1′分成两条线段Bn和Bn′;最终得到N+1条分割后的线段。2. 如权利要求1所述的一种根据交点分割字幕对象矢量轮廓中二次贝塞尔曲线的方 法,其特征在于步骤(1)中所述的计算字幕对象矢量轮廓中所有的二次贝塞尔线段与其 他二次贝塞尔线段的交点的方法包括以下步骤① 遍历字幕对象矢量轮廓中所有的封闭轮廓,取出一个与已取不同的封闭轮廓G[i];② 遍历G[i]中所有的二次Bezier线段,取出一个与已取不同的二次贝塞尔线段 B[j];③ 遍历该字幕对象矢量轮...

【专利技术属性】
技术研发人员:吴正斌
申请(专利权)人:新奥特北京视频技术有限公司
类型:发明
国别省市:11[中国|北京]

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

1