CN109155074B - 用于无缝隙地渲染点的***和方法 - Google Patents

用于无缝隙地渲染点的***和方法 Download PDF

Info

Publication number
CN109155074B
CN109155074B CN201780032052.9A CN201780032052A CN109155074B CN 109155074 B CN109155074 B CN 109155074B CN 201780032052 A CN201780032052 A CN 201780032052A CN 109155074 B CN109155074 B CN 109155074B
Authority
CN
China
Prior art keywords
point
image
pixel
channel
image space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201780032052.9A
Other languages
English (en)
Other versions
CN109155074A (zh
Inventor
格拉哈姆·法伊夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Sony Pictures Entertainment Inc
Original Assignee
Sony Corp
Sony Pictures Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp, Sony Pictures Entertainment Inc filed Critical Sony Corp
Publication of CN109155074A publication Critical patent/CN109155074A/zh
Application granted granted Critical
Publication of CN109155074B publication Critical patent/CN109155074B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

本申请公开的各种***和方法涉及在计算装置上渲染基于点的图形,其中在各点之间的空间中填充颜色,从而生成无缝隙或孔的表面。根据一种方法,对图像空间执行一个或多个栅格化通道。对图像空间中的像素执行一个或多个填充通道,其中图像空间中的像素之间的空间中填充以颜色,从而在新的图像平面中形成连续表面。在填充通道之后,对所述图像空间执行一个或多个混合通道,其中将一组像素的颜色混合在一起。根据图像缓冲器中的图像空间渲染新的图像空间。

Description

用于无缝隙地渲染点的***和方法
版权说明
本专利文件所公开内容的一部分包含受版权保护的内容。版权所有者不反对任何人复制出示于专利商标局专利文件或记录中的本专利文件或本专利公开内容,但是保留其所有版权。
交叉引用
本申请要求享受于2016年3月28日提交的美国临时专利申请US62/314,334的权益,其所有内容通过引用并入本申请。
技术领域
本申请总体上涉及计算机绘图,并且特别涉及用于无缝隙地渲染点的***和方法。
背景技术
在计算机绘图中,基于点的图形已被用于模型获取、处理、动画以及渲染。基于点的渲染的一项特殊挑战是如何随着视点改变来构建没有孔的连续表面。为解决这个问题已经开发了各种不同的基于点的渲染技术。这些技术虽然可用于填充图像中的孔,但所得到的解决方案总是缺乏实践性或造成图像质量变差。
发明内容
本申请所公开的各种***和方法所针对的是在计算装置上渲染基于点的图形,其中在各点之间的空间中填充以颜色,从而生成无缝隙或孔的表面外观。根据一种方法,对图像空间执行一个或多个栅格化通道。基于第一相机图像平面,将所述图像空间中的像素的颜色属性和颜色效果存储于图像缓冲器中。对所述图像空间中的所述像素执行一个或多个填充通道,其中将图像空间中的像素之间的空间填充以颜色,从而在新的图像平面中形成连续表面。在填充通道之后,对所述图像空间执行一个或多个混合通道,其中将一组像素的颜色混合在一起。根据所述图像缓冲器中的所述图像空间渲染新的图像空间,其中所述新的图像平面是基于第二相机图像平面,其中所述第一相机图像平面和第二相机图像平面是不同的。
附图说明
图1是用于渲染点的一种示例性方法的流程图。
图2是图像缓冲器的一个实施例的示意图。
具体实施方式
简单概括地说,本申请所公开的各种***和方法所针对的是在计算装置上渲染基于点的图形,其中在各点之间的空间中填充以颜色,从而生成无缝隙或孔的表面外观。本发明所公开的***和方法通过缝隙填充提升了对大数量的点的渲染性能,同时为各种不同尺寸的点的渲染提供了一致的性能。
如图1所示,一种用于渲染基于点的图形的示例性方法包括以下步骤:执行一个或多个栅格化通道(110);执行一个或多个填充通道(120);以及执行一个或多个混合通道(130)。
在一实施例中,所述***包括运行软件代码的图形处理单元(GPU)。所述软件能在一个或多个栅格化通道110过程中,在图像缓冲器中存储通过在相机模型的图像平面坐标中投影3D点位置而确定的方位处的点属性,包括点颜色和点几何参数。GPU顶点着色器和GPU片元着色器可用于投影和存储点颜色和几何参数。几何参数可包括图像平面坐标中的点的2D中心、球形点基元情况下的图像空间半径,以及椭球形点基元情况下的用于限定椭圆的其它参数。
在一种替代方法中,栅格化步骤可存储UV纹理坐标而不存储颜色,或者也附加地存储颜色。存储在图像缓冲器中的几何参数可包括3D点基元的原始3D参数,或包括基于相机图像平面上的点基元投影而衍生的参数。在一变形实施例中,包括颜色和几何参数的点属性可以被存储为线性阵列,并且可以在图像缓冲器中存储该阵列的指数,而不是存储点属性本身。在另一变形实施例中,在栅格化步骤中,将48位半浮点式红值、绿值、蓝值存储在图像缓冲器中。
在栅格化通道之后,GPU执行用于在图像空间中执行一个或多个填充通道120的软件。在一实施例中,将GPU片元着色器用于填充通道。每个填充通道访问图2所示的图像缓冲器220中的每个像素部位210,计算每个像素部位上更新后的几何参数,并将结果存储在第二图像缓冲器中。第一和第二图像缓冲器可在每个的填充通道之后交换角色。某像素部位上的几何参数的更新通过访问该像素部位和它在栅格230上的8个相邻像素部位的几何参数来实现,这些相邻像素部位可不包含几何量(即零半径),或可包含与中心像素部位相同的几何参数或不同的几何参数。栅格间距可以是每一个像素一个栅格点,每两个像素一个栅格点,或每N个像素一个栅格点,N为某整数。第一填充通道中的栅格间距N是2的次方,其大于想要渲染的最大点基元的图像空间半径,并且栅格间距在每个填充通道后减半,使得几何参数在第一填充通道中在图像缓冲器中传播较长的距离,而在后续的填充通道中逐渐传播较短的距离,直到在最后一个填充通道中仅传播单个像素距离。基于相机模型,利用穿过中心像素部位的射线,对该中心像素部位和它的8个相邻像素部位(如图2所示)上的几何参数进行射线相交的测试。像素部位更新后的几何参数是离相机模型的位置最近的相交点(如果有的话)或具有最小深度值的点的几何参数。可以近似地计算相交;例如,可将球形点基元看作是与球体很接近的锥体、圆盘或者截顶抛物面。完成填充通道之后的结果是,图像缓冲器中的每个像素部位都大致包含有在与相机模型最近的或是具有最小深度值的像素部位处可见的点基元的几何参数。
在一种替代方法中,填充通道可传播点属性的线性阵列的指数,而非传播属性本身。在另一变形实施例中,除了传播与包含剩余未被传播的点属性的像素部位相对应的图像缓冲器坐标之外,填充通道可不传播任何点属性,或传播部分或所有的点属性。在另一变形实施例中,图像缓冲器坐标与点中心属性是同一个或是相同的。
在填充通道中,可访问除了包含有中心像素部位及其8个相邻像素部位的常规栅格之外的不同相邻区域,并且可采用除了2的次方之外的不同的栅格间距方案。在一变形实施例中,可以采用由5*5栅格的中心像素部位及其24个相邻像素部位构成的较大栅格,并连同采用4的次方的栅格间距方案。在另一变形实施例中,填充通道可在1*3的水平栅格填充通道和3*1的垂直栅格填充通道之间切换,并采用仅在每两个通道之后减半的2的次方的栅格间距。还可采用具有甚至更大栅格的类似变形实施例。
在最后一个填充通道之后,GPU执行混合通道130。在一实施例中,GPU片元着色器被用于混合通道。混合通道访问图像缓冲器220中的每个像素部位210。可以访问存储在最后一个填充通道120过程中的像素部位上的几何参数,并且可采用点中心(如有的话)来访问存储在图像缓冲器中的包含了该点中心的第二像素部位上的点颜色信息或其它点属性。这样,点颜色和其它点属性就不需要在多个填充通道过程中传播,从而提高了所述方法的效率。该像素部位的8个直接相邻的像素部位的点颜色和点属性可以采用类似方式来访问。最终渲染的颜色可计算为与至多9个点中心相关联的至多9个被访问颜色的加权混合。混合中颜色的权重可与相关点中心到像素部位的中心的距离的单调函数成反比,所述单调函数例如是该距离的平方加小常数。
在一种替代方法中,混合通道可在点中心之间平滑地***颜色或UV纹理坐标。基于混合的UV坐标,可从一个或多个纹理映射图访问颜色。在一变形实施例中,在混合通道而非栅格化通道过程中为颜色施加颜色效果。
在另一种方法中,所有通道都采用使用顶点着色器和片元着色器的GPU。在栅格化通道过程中,颜色被输入为48位半浮点式红、绿、蓝值,然后针对例如伽马、亮度、对比度或颜色查找表的颜色效果对所述颜色进行处理。该颜色数据然后被作为24位红、绿、蓝值存储于图像缓冲器。填充通道采用2的次方的栅格间距,从用户指定的2的最大次方开始,栅格间距在每个通道之后减半,直到最后一个通道使用的栅格间距为1。在填充通道中,所传播的几何参数仅仅是与图像缓冲器坐标相对应的2D点中心。其它几何参数在需要时则从与点中心相对应的像素部位处被访问。在混合通道中,单调权重函数是相关联的点中心到像素部位中心的距离的平方加小常数。
这些不同的方法和实施例可在示例性的***上实施,所述***包括至少一个连接至通信总线的主处理器。所述***包括主存储器。主存储器可存储软件(控制逻辑)和数据。在一实施例中,主存储器可以是随机存取存储器(RAM)的形式。
所述***还可包括图形处理器和显示器(例如计算机监视器)。在一实施例中,GPU包括一个或多个着色器模块、栅格化模块,或者本领域已知或已开发的其它模块。这些模块中每一个均可安置在单独半导体平台上,从而形成图形处理单元(GPU)。
本领域技术人员应理解的是,单独半导体平台可以指基于唯一的单一半导体的集成电路或芯片。应当注意的是,术语“单独半导体平台”还可以指具有增强了的联通性的多芯片模块,其模仿片上操作,且相比于传统中心处理器和总线实现方式的使用有极大地改善。备选地,各种模块还可以单独安置或以不同的半导体平台组合的方式来安置。所述***也以可通过可重构逻辑来实现,所述可重构逻辑可包括(但不限于)现场可编程序门阵列(FPGAs)。
所述***还可包括器次级存储器,所述次级存储器包括例如硬盘驱动器和/或代表了软盘驱动器、磁带驱动器或光盘驱动器的可移除存储驱动器。可移除存储驱动器以本领域已知的方式从可移除存储单元读取和/或向可移除存储单元写入。
计算机程序或计算机控制逻辑算法可存储于主存储器和/或次级存储器中。计算机程序在被执行时使得所述***执行各种功能。主存储器、次级存储器、易失性或非易失性存储器和/或任何其它类型的存储器均是非暂时性计算机可读取介质的可用示例。
在一实施例中,所公开的各种不同***的架构和/或功能可以实施在主处理器、图形处理器、或具有主处理器和图像处理器二者的至少部分能力的集成电路、或芯片集(即:被设计成用于执行相关功能的一个单元来工作和售卖的一组集成电路)和/或任何其它的以此为目的的集成电路的环境下。
在另一实施例中,所公开的各种不同***的架构和/或功能可以实施在通用计算机***、电路板***、专用于娱乐目的的游戏机***、专用***和/或其它所期望的***的环境下。例如,所述***的形式可以是台式计算机、便携式计算机和/或其它类型的逻辑。并且,所述***还可以是各种其它装置的形式,包括但不限于个人数字助理(PAD)、手机或其它类似装置。
在所公开的各种实施例中,为通信目的,所述***可连接至网络(例如通信网络、局域网(LAN)、无线网络、诸如互联网的广域网(WAN)、对等网络或有线网络)。
以上所描述的不同的实施例仅仅用于说明性目的,而不应当理解为构成对本发明的限制。在不违背和超出本发明的真正精神和范围的情况下,本领域技术人员会将很容易识别出在不遵循本文所阐释和描述的实施例和应用的情况下对本发明作出的各种修改和改变。

Claims (8)

1.一种用于在计算机上渲染基于点的图形的方法,包括:
在一个或多个栅格化通道过程中,在图像缓冲器中存储通过在相机图像平面的图像平面坐标中投影三维点位置而确定的方位处的图像空间的点属性;
对所述图像空间的点属性执行一个或多个填充通道,其中每个填充通道访问所述图像缓冲器中的每个像素部位,计算每个像素部位上更新后的几何参数,并将所述更新后的几何参数存储在第二图像缓冲器中;
在对所述缓冲器中的每个像素部位执行所述填充通道之后,执行混合通道,其中将来自于所述第二图像缓冲器的每个像素的更新后的几何参数应用于每个像素;以及
在所述填充通道和混合通道之后,基于所述图像缓冲器渲染新的图像空间。
2.根据权利要求1所述的方法,其中,所述点属性是点颜色。
3.根据权利要求1所述的方法,其中,所述点属性是UV纹理坐标。
4.根据权利要求1所述的方法,其中,所述点属性是点的几何参数。
5.根据权利要求1所述的方法,其中,所述几何参数是图像平面坐标中的点的2D中心、针对球形点基元而言的图像空间半径,或者针对椭球形点基元而言用于定义椭圆的几何参数。
6.根据权利要求1所述的方法,其中,计算所述更新后的几何参数包括:访问每个像素部位的8个直接相邻像素的几何参数,并确定每个像素部位与任意的所述8个直接相邻像素之间是否存在射线相交。
7.根据权利要求6所述的方法,其中,所述混合通道进一步包括将来自每个像素部位和所述8个直接相邻像素的颜色进行混合。
8.根据权利要求6所述的方法,进一步包括对存储于所述图像缓冲器中的所述图像空间中的像素施加颜色效果。
CN201780032052.9A 2016-03-28 2017-03-28 用于无缝隙地渲染点的***和方法 Active CN109155074B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662314334P 2016-03-28 2016-03-28
US62/314,334 2016-03-28
PCT/US2017/024636 WO2017172842A1 (en) 2016-03-28 2017-03-28 System and method for rendering points without gaps

Publications (2)

Publication Number Publication Date
CN109155074A CN109155074A (zh) 2019-01-04
CN109155074B true CN109155074B (zh) 2023-09-08

Family

ID=59897337

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780032052.9A Active CN109155074B (zh) 2016-03-28 2017-03-28 用于无缝隙地渲染点的***和方法

Country Status (4)

Country Link
US (1) US10062191B2 (zh)
EP (1) EP3437072B1 (zh)
CN (1) CN109155074B (zh)
WO (1) WO2017172842A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110533742B (zh) * 2019-09-03 2021-05-11 广州视源电子科技股份有限公司 一种图像填色方法、装置、设备及存储介质
US12039660B1 (en) * 2021-03-31 2024-07-16 Apple Inc. Rendering three-dimensional content based on a viewport
US20240104874A1 (en) * 2022-09-26 2024-03-28 Faro Technologies, Inc. Gap filling for three-dimensional data visualization

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594854A (en) * 1995-03-24 1997-01-14 3Dlabs Inc. Ltd. Graphics subsystem with coarse subpixel correction
US6275622B1 (en) * 1998-06-30 2001-08-14 Canon Kabushiki Kaisha Image rotation system
CN1795468A (zh) * 2003-06-26 2006-06-28 佳能株式会社 在基于扫描线的光栅图像处理器中跟踪深度的方法
CN101719154A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 一种基于栅格结构的空间索引建立方法和***
CN101840585A (zh) * 2009-03-18 2010-09-22 乐大山 一种将三维对象渲染为二维图像的方法
CN102301401A (zh) * 2009-01-29 2011-12-28 微软公司 单通道边框计算

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11195132A (ja) * 1997-10-31 1999-07-21 Hewlett Packard Co <Hp> テクスチャマッピング用バッファ、3次元グラフィクス処理装置、3次元グラフィクス処理システム、3次元グラフィクス処理方法および処理プログラムが記憶された記憶媒体
DE69816469T2 (de) * 1997-10-31 2004-04-15 Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto Verfahren und vorrichtung zur schnellen wiedergabe eines bildes in abhängigkeit von dreidimensionalen graphikdaten in einer umgebung mit begrenzter datengeschwindigkeit
US7133041B2 (en) * 2000-02-25 2006-11-07 The Research Foundation Of State University Of New York Apparatus and method for volume processing and rendering
US8259106B2 (en) * 2002-05-15 2012-09-04 Mental Images Gmbh Low-dimensional rank-1 lattices in computer image synthesis
US7215340B2 (en) 2002-07-19 2007-05-08 Mitsubishi Electric Research Laboratories, Inc. Object space EWA splatting of point-based 3D models
US7231084B2 (en) * 2002-09-27 2007-06-12 Motorola, Inc. Color data image acquistion and processing
KR101556593B1 (ko) * 2008-07-15 2015-10-02 삼성전자주식회사 영상 처리 방법
JP5259449B2 (ja) * 2009-02-17 2013-08-07 オリンパス株式会社 画像処理装置及び方法並びにプログラム
US20110216065A1 (en) * 2009-12-31 2011-09-08 Industrial Technology Research Institute Method and System for Rendering Multi-View Image
US20110285718A1 (en) * 2010-05-21 2011-11-24 Kilgard Mark J Point containment for quadratic bèzier strokes
US8830249B2 (en) * 2011-09-12 2014-09-09 Sony Computer Entertainment Inc. Accelerated texture lookups using texture coordinate derivatives
WO2014082278A1 (en) * 2012-11-30 2014-06-05 Thomson Licensing Method and apparatus for creating 3d model
US9563962B2 (en) * 2015-05-19 2017-02-07 Personify, Inc. Methods and systems for assigning pixels distance-cost values using a flood fill technique

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594854A (en) * 1995-03-24 1997-01-14 3Dlabs Inc. Ltd. Graphics subsystem with coarse subpixel correction
US6275622B1 (en) * 1998-06-30 2001-08-14 Canon Kabushiki Kaisha Image rotation system
CN1795468A (zh) * 2003-06-26 2006-06-28 佳能株式会社 在基于扫描线的光栅图像处理器中跟踪深度的方法
CN102301401A (zh) * 2009-01-29 2011-12-28 微软公司 单通道边框计算
CN101840585A (zh) * 2009-03-18 2010-09-22 乐大山 一种将三维对象渲染为二维图像的方法
CN101719154A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 一种基于栅格结构的空间索引建立方法和***

Also Published As

Publication number Publication date
EP3437072B1 (en) 2020-10-14
WO2017172842A1 (en) 2017-10-05
EP3437072A1 (en) 2019-02-06
US10062191B2 (en) 2018-08-28
CN109155074A (zh) 2019-01-04
EP3437072A4 (en) 2019-08-14
US20170278285A1 (en) 2017-09-28

Similar Documents

Publication Publication Date Title
JP6678209B2 (ja) 非正規直交グリッドへのテクスチャマッピングのためのグラデーションの調整
JP6563048B2 (ja) スクリーンの位置によって異なる解像度のターゲットの複数レンダリングのテクスチャ・マッピングの傾き調整
US9633469B2 (en) Conservative rasterization of primitives using an error term
CN103946895B (zh) 基于平铺块的呈现中的镶嵌方法和设备
US8325177B2 (en) Leveraging graphics processors to optimize rendering 2-D objects
US9558586B2 (en) Method for estimating the opacity level in a scene and corresponding device
US20070229503A1 (en) Method of and system for non-uniform image enhancement
CN101116111A (zh) 使用3d光栅化算法的2d/3d线条渲染
US10078911B2 (en) System, method, and computer program product for executing processes involving at least one primitive in a graphics processor, utilizing a data structure
US10134171B2 (en) Graphics processing systems
US8854392B2 (en) Circular scratch shader
US20180232915A1 (en) Line stylization through graphics processor unit (gpu) textures
CN109155074B (zh) 用于无缝隙地渲染点的***和方法
KR20190080274A (ko) 샘플링 기반의 렌더링을 수행하는 그래픽 프로세서 및 그 동작방법
JP6944304B2 (ja) テクスチャ処理方法及びその装置
US11037357B2 (en) Pixelation optimized delta color compression
US20180005432A1 (en) Shading Using Multiple Texture Maps
JPWO2014020801A1 (ja) 画像処理装置および画像処理方法
Xu et al. Visualization methods of vector data on a Digital Earth System
Ma et al. Rasterization of geometric primitive in graphics based on FPGA
WO2012114386A1 (ja) 画像ベクトル化装置、画像ベクトル化方法及び画像ベクトル化プログラム
KR100927131B1 (ko) 안티 알리어싱 방법 및 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200311

Address after: Tokyo, Japan

Applicant after: Sony Corp.

Applicant after: SONY PICTURES ENTERTAINMENT Inc.

Address before: California, USA

Applicant before: NURULIZE, Inc.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant