用于图形处理的直角三角形斜边边长快速获取方法和电路技术

技术编号:17347351 阅读:67 留言:0更新日期:2018-02-25 13:22
为了快捷、准确地获取像素对应的纹理空间平行四边形区域的边长,也即对应直角三角形的斜边边长,本发明专利技术提供了一种用于图形处理的直角三角形斜边边长快速获取方法和电路。定义直角三角形的两个直角边分别为s和t,斜边为L;将直角边s和t的边长值转换为二进制数,方法包括步骤:1)根据计算精度

A fast acquisition method and circuit for the oblique edge length of a rectangular triangle for graphic processing

In order to get the length of the parallelogram area corresponding to the pixel texture directly and accurately, that is to say, the oblique side length corresponding to the right triangle, the present invention provides a fast acquisition method and circuit for the right angle triangle slope side length for graphics processing. The two right angles of the right triangle are s and T, respectively. The oblique edge is L. The side length values of S and T are converted to binary numbers. The method includes steps: 1) according to the computation accuracy.

【技术实现步骤摘要】
用于图形处理的直角三角形斜边边长快速获取方法和电路
本专利技术属于计算机图形处理
,涉及一种用于图形处理的直角三角形斜边边长快速获取方法和电路。
技术介绍
随着计算机图形技术的发展,虚拟现实(Virtualreality,VR)、增强现实(Augmentedreality,AR)等技术的广泛应用,人们对生成真实感图形的速度和质量要求越来越高。在生成高质量图形技术中,纹理映射技术是一种提高表面较为复杂物体真实程度的重要技术。在计算机图形学技术早期时代,描述客观世界主要在通用处理器上通过数学建模方式实现,由于客观世界复杂多变,采用通用处理器处理几何模型表示客观世界,计算量极其庞大且难以满足实时性要求。为实时性生成真实感图形,研究者们通过贴图方式,把复杂图形贴在物体表面上,而不用研究物体表面复杂几何结构。采用纹理映射技术(即纹理贴图)能够高效地生成客观世界图形,不再需要进行复杂数学建模来绘制物体表面复杂几何结构,只需要将已有的彩色图案映射到物体表面上,并通过明暗处理方法将彩色图案的颜色值添加到物体表面上,使得绘制结果更加接近客观事物。目前,纹理映射主要有两种实现方式,一种是正向映射(纹理扫描方式),即将纹理映射到物理空间的物体表面,再经过投影变换映射到图像空间,最终显示在屏幕上。另外一种是逆向映射(屏幕扫描方式),即将图像空间中的像素逆向映射到纹理空间,对纹理空间中的图案进行采样。图1所示为像素区域映射到纹理区域示意图,其中s与t分别是纹理空间坐标方程对像素空间x方向偏导数和y方向的偏导数。如图2所示,平行四边形的边L的边长可由偏导数s和t计算所得,而s、t、L构成一个直角三角形,L为该直角三角形的斜边。采用勾股定理方法计算直角三角形的斜边边长时,需要进行两次平方操作,一次加法操作,一次开平方操作,计算过程较为复杂,无法按照此方式实现硬件设计。目前对直角三角形斜边边长的计算都是通过超越函数电路实现,其采用的是二次逼近或者三次逼近以达到要求的计算精度。这种电路设计复杂度较大、电路面积、功耗都比较大。
技术实现思路
基于上述
技术介绍
,为了快捷、准确地获取像素对应的纹理空间平行四边形区域的边长,也即对应直角三角形的斜边边长,本专利技术提供了一种用于图形处理的直角三角形斜边边长快速获取方法和电路。本专利技术的技术解决方案是:用于图形处理的直角三角形斜边边长快速获取方法,定义直角三角形的两个直角边分别为s和t,斜边为L;将直角边s和t的边长值转换为二进制数;包括以下步骤:1)根据计算精度f(α)选择α系数;所述计算精度2)利用比较器比较直角边s和t的边长,利用选择器选出边长较小的直角边;3)根据所述α系数,对边长较小的直角边的边长值作移位操作、移位加法操作,或者将边长较小的直角边的边长值与α系数作乘法操作;4)将步骤3)的结果与边长较大的直角边的边长值相加,所得结果即为直角三角形的斜边L的边长。进一步地,上述步骤1)中的α系数取值范围为[0.15,0.5];当选α系数为0.5时,步骤3)中对边长较小的直角边的边长值进行右移一位操作;当选α系数为0.4375时,步骤3)中对边长较小的直角边的边长值分别进行右移两位、三位、四位操作后再将三次右移处理后的数值相加;当选α系数为0.375时,步骤3)中对边长较小的直角边的边长值分别进行右移两位、三位操作后再将两次右移处理后的数值相加;当选α系数为0.3125时,步骤3)中对边长较小的直角边的边长值分别进行右移两位、四位操作后再将两次右移处理后的数值相加;当选α系数为0.25时,步骤3)中对边长较小的直角边的边长值进行右移两位操作;当选α系数为0.1875时,步骤3)中对边长较小的直角边的边长值分别进行右移三位、四位操作后再将两次右移处理后的数值相加;当选α系数为其他值时,步骤3)中将边长较小的直角边的边长值与α系数相乘。进一步地,上述α系数为0.5和0.25时,所述方法的硬件实现代价最小;α系数为0.375和0.1875时所述方法的硬件实现代价次之。优选地,上述步骤1)中的α系数为0.3284271247时,误差最小,为0.0018。较佳地,上述步骤2)-4)可同时进行以同时获取多个直角三角形斜边边长。本专利技术同时提供了一种用于图形处理的直角三角形斜边边长快速获取电路,其特殊之处在于,包括依次相连的比较器、选择器、处理器和加法器;比较器用于比较直角三角形两个直角边的边长;选择器用于选择出边长较小的直角边,并将该直角边的边长值送入处理器;处理器的具体结构根据所选的α系数确定,α系数根据计算精度确定;当选α系数为0.5或0.25时,所述处理器为移位器,用于对接收到的数据进行移位操作,并将移位操作后的结果送入加法器;当选α系数为0.4375,0.375,0.3125或0.1875时,所述处理器为移位器和第一加法器,用于对接收到的数据进行多次移位操作,并将多次移位操作后的结果相加后再送入所述加法器;当选α系数在[0.15,0.5]范围内取值但不等于0.5、0.4375、0.375、0.3125、0.25和0.1875时,所述处理器为乘法器,用于将接收到的数据与α系数相乘,并将相乘后的结果送入所述加法器;所述加法器用于将边长较小的直角边的边长与处理器输出的结果进行相加,所得结果即为直角三角形的斜边边长。进一步地,所述α系数为0.5和0.25时,所述电路代价最小,α系数为0.375和0.1875时所述电路代价次之。优选地,上述α系数为0.3284271247。本专利技术的有益效果:本专利技术在满足一定精度的情况下,易于实现直角三角形斜边快速计算,电路设计复杂度、电路面积、功耗以及实现代价等方面都比现有超越函数电路更优。附图说明图1为纹理空间区域平行四边形。图2为直角三角形示意图。图3为α系数等于不能通过移位的其他系数时,直角三角形斜边快速计算电路的设计。图4为α系数等于0.5时,直角三角形斜边快速计算电路的设计。图5为α系数等于0.4375时,直角三角形斜边快速计算电路的设计。图6为α系数等于0.375时,直角三角形斜边快速计算电路的设计。图7为α系数等于0.3125时,直角三角形斜边快速计算电路的设计。图8为α系数等于0.25时,直角三角形斜边快速计算电路的设计。图9为α系数等于0.1875时,直角三角形斜边快速计算电路的设计。具体实施方式以下结合附图对本专利技术作详细描述。定义直角三角形的两个直角边分别为s和t,斜边为L,将直角边s和t的边长值转换为二进制数。本专利技术所提供的用于图形处理的直角三角形斜边边长快速获取方法,包括以下步骤:1)根据计算精度f(α)选择α系数;所述计算精度2)利用比较器比较直角边s和t的边长,利用选择器选出边长较小的直角边;3)根据所述α系数,对边长较小的直角边的边长值作移位操作、移位加法操作,或者将边长较小的直角边的边长值与α系数作乘法操作;4)将步骤3)的结果与边长较大的直角边的边长值相加,所得结果即直角三角形的斜边L的边长。步骤1)中α系数可在[0.15,0.5]内选取:当选α系数等于0.5时,步骤3)中对边长较小的直角边的边长值进行右移一位处理;当选α系数等于0.4375时,步骤3)中对边长较小的直角边的边长值分别进行右移两位、三位、四位处理后再将三次右移处理后本文档来自技高网
...
用于图形处理的直角三角形斜边边长快速获取方法和电路

【技术保护点】
用于图形处理的直角三角形斜边边长快速获取方法,定义直角三角形的两个直角边分别为s和t,斜边为L;将直角边s和t的边长值转换为二进制数;其特征在于,包括以下步骤:1)根据计算精度f(α)选择α系数;所述计算精度

【技术特征摘要】
1.用于图形处理的直角三角形斜边边长快速获取方法,定义直角三角形的两个直角边分别为s和t,斜边为L;将直角边s和t的边长值转换为二进制数;其特征在于,包括以下步骤:1)根据计算精度f(α)选择α系数;所述计算精度2)利用比较器比较直角边s和t的边长,利用选择器选出边长较小的直角边;3)根据所述α系数,对边长较小的直角边的边长值作移位操作、移位加法操作,或者将边长较小的直角边的边长值与α系数作乘法操作;4)将步骤3)的结果与边长较大的直角边的边长值相加,所得结果即为直角三角形的斜边L的边长。2.根据权利要求1所述的用于图形处理的直角三角形斜边边长快速获取方法,其特征在于,步骤1)中的α系数取值范围为[0.15,0.5];当选α系数为0.5时,步骤3)中对边长较小的直角边的边长值进行右移一位操作;当选α系数为0.4375时,步骤3)中对边长较小的直角边的边长值分别进行右移两位、三位、四位操作后再将三次右移处理后的数值相加;当选α系数为0.375时,步骤3)中对边长较小的直角边的边长值分别进行右移两位、三位操作后再将两次右移处理后的数值相加;当选α系数为0.3125时,步骤3)中对边长较小的直角边的边长值分别进行右移两位、四位操作后再将两次右移处理后的数值相加;当选α系数为0.25时,步骤3)中对边长较小的直角边的边长值进行右移两位操作;当选α系数为0.1875时,步骤3)中对边长较小的直角边的边长值分别进行右移三位、四位操作后再将两次右移处理后的数值相加;当选α系数为其他值时,步骤3)中将边长较小的直角边的边长值与α系数相乘。3.根据权利要求2所述的用于图形处理的直角三角形斜边边长快速获取方法,其特征在于,α系数为0.5和0.25时,所述方法的硬件实现代价最小,α系数为0.375和0.1875时所述方法...

【专利技术属性】
技术研发人员:曾泽沧杜慧敏张丽果徐起超
申请(专利权)人:西安邮电大学
类型:发明
国别省市:陕西,61

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

1