CN115330918A - 一种三维场景渲染方法及装置 - Google Patents
一种三维场景渲染方法及装置 Download PDFInfo
- Publication number
- CN115330918A CN115330918A CN202110455363.4A CN202110455363A CN115330918A CN 115330918 A CN115330918 A CN 115330918A CN 202110455363 A CN202110455363 A CN 202110455363A CN 115330918 A CN115330918 A CN 115330918A
- Authority
- CN
- China
- Prior art keywords
- style
- rendering
- feature
- dimensional scene
- information
- 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.)
- Pending
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 168
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000012545 processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 23
- 238000004891 communication Methods 0.000 description 16
- 238000013461 design Methods 0.000 description 14
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 14
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 239000013598 vector Substances 0.000 description 8
- 238000010428 oil painting Methods 0.000 description 7
- 238000010422 painting Methods 0.000 description 7
- 238000012549 training Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000002372 labelling Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 239000012634 fragment Substances 0.000 description 4
- 238000000605 extraction Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
一种三维场景渲染方法及装置,应用于图形渲染技术领域。该方法包括:获取对待渲染的三维场景进行渲染的指示信息,所述指示信息中包括渲染风格信息;根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,得到渲染后的三维场景。通过本申请的方案,可以实现对三维场景的风格化渲染。
Description
技术领域
本申请涉及图形渲染技术领域,尤其涉及一种三维场景渲染方法及装置。
背景技术
非真实感绘制(non-photorealistic rendering,NPR)作为计算机图形学的重要组成部分,其主要用于模拟艺术式的绘制风格,也用于发展新绘制风格,一般是以卡通造影的形式出现在电影、电子游戏、设计图纸和试验动画中。通过NPR可以实现风格化绘制,完成风格化渲染。
目前,通常是采用风格迁移的方法对图片进行风格化渲染,例如预先使用大量的同一目标风格的图片进行深度学习,得到目标风格。然后将目标风格应用到待处理的图像上,从而改变待处理的图像的风格。但是,上述方法仅是能够实现对二维图片的风格渲染,无法实现动态三维场景的风格化渲染。
发明内容
本申请提供一种三维场景渲染方法及装置,用以实现对三维场景的风格化渲染,提高渲染灵活性。
第一方面,本申请提供一种三维场景渲染方法,该方法包括:获取对待渲染的三维场景进行渲染的指示信息,所述指示信息中包括渲染风格信息;根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,得到渲染后的三维场景。
通过上述技术方案,可以利用风格特征库以及渲染风格对三维场景中的元素进行风格化渲染,能够实现三维场景的渲染,并且可以对三维场景中的元素按照渲染风格进行渲染。
在一种可能的设计中,根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,包括:
根据所述指示信息中包括的渲染风格信息,在所述风格特征库中确定所述渲染风格信息对应的风格特征集;
在所述风格特征集中确定所述三维场景中的元素对应的特征集,并确定每一种元素对应的特征集中包括的特征纹理;
基于所述特征纹理对所述每一种元素进行风格渲染。
通过上述技术方案,可以根据渲染风格信息在预先构建的风格特征库中找到相应的特征纹理,进而能够基于特征纹理对三维场景中的元素进行风格渲染。
在一种可能的设计中,每一种元素对应的特征集中还包括特征参数,所述基于所述特征纹理对所述每一种元素进行风格渲染,包括:
将所述特征纹理和所述特征参数作为着色器的输入参数;
根据所述着色器对所述每一种元素进行风格渲染。
通过上述技术方案,可以利用着色器对元素进行风格化渲染,使得渲染后的三维场景的效果更好,能够提升用户体验。
在一种可能的设计中,所述指示信息中的渲染风格信息包括至少两种,所述指示信息还包括至少两种元素信息,其中,元素信息与渲染风格信息一一对应;所述渲染后的三维场景中所述至少两种元素信息对应的元素的渲染风格不同。
通过上述技术方案,可以对三维场景中的不同元素利用不同的渲染风格进行渲染,实现三维场景中的混合风格渲染,从而提升用户体验。
在一种可能的设计中,所述风格特征库中包括至少一种风格的至少一种元素的特征纹理;
所述风格特征库预先由如下方法构建:
获取待处理的图像,所述待处理的图像包括至少一种风格;
确定所述待处理的图像中包括的至少一种风格对应的至少一种元素;
针对每一种风格,提取所述风格对应的至少一种元素中的每一种元素的特征纹理,得到所述风格的特征纹理集。
在一种可能的设计中,所述确定所述待处理的图像中包括的至少一种风格对应的至少一种元素,包括:
通过预先训练的模型对所述待处理的图像进行识别,得到所述待处理的图像包括的至少一种风格以及所述至少一种风格对应的至少一种元素。
通过上述技术方案,可以预先通过大量的待处理的图像作为训练数据,采用深度学习的算法对训练数据进行训练,得到识别模型,最后基于识别模型提取每一种风格对应的特征纹理集。
在一种可能的设计中,所述特征纹理包括颜色特征纹理、轮廓特征纹理、细节特征纹理中的一种或多种。
第二方面,本申请提供一种三维场景渲染装置,该装置包括:获取单元,用于获取对待渲染的三维场景进行渲染的指示信息,所述指示信息中包括渲染风格信息;渲染单元,用于根据所述获取单元获取到的指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,得到渲染后的三维场景。
在一种可能的设计中,所述渲染单元具体用于按照如下方式根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染:
根据所述指示信息中包括的渲染风格信息,在所述风格特征库中确定所述渲染风格信息对应的风格特征集;在所述风格特征集中确定所述三维场景中的元素对应的特征集,并确定每一种元素对应的特征集中包括的特征纹理;基于所述特征纹理对所述每一种元素进行风格渲染。
在一种可能的设计中,每一种元素对应的特征集中还包括特征参数,所述渲染单元具体用于按照如下方式基于所述特征纹理对所述每一种元素进行风格渲染:
将所述特征纹理和所述特征参数作为着色器的输入参数;根据所述着色器对所述每一种元素进行风格渲染。
在一种可能的设计中,所述指示信息中的渲染风格信息包括至少两种,所述指示信息还包括至少两种元素信息,其中,元素信息与渲染风格信息一一对应;所述渲染后的三维场景中所述至少两种元素信息对应的元素的渲染风格不同。
在一种可能的设计中,所述风格特征库中包括至少一种风格的至少一种元素的特征纹理。
所述装置还包括:构建单元,所述构建单元用于预先构建所述风格特征库;所述构建单元具体用于按照如下方式预先构建所述风格特征库:
获取待处理的图像,所述待处理的图像包括至少一种风格;确定所述待处理的图像中包括的至少一种风格对应的至少一种元素;针对每一种风格,提取所述风格对应的至少一种元素中的每一种元素的特征纹理,得到所述风格的特征纹理集。
在一种可能的设计中,所述构建单元在确定所述待处理的图像中包括的至少一种风格对应的至少一种元素,具体用于:
通过预先训练的模型对所述待处理的图像进行识别,得到所述待处理的图像包括的至少一种风格以及所述至少一种风格对应的至少一种元素。
在一种可能的设计中,所述特征纹理包括颜色特征纹理、轮廓特征纹理、细节特征纹理中的一种或多种。
第三方面,本申请提供一种三维场景渲染设备,该设备具有实现第一方面或第一方面任一种可能实现方式中的三维场景渲染方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。
所述三维场景渲染设备包括:存储器和处理器;所述存储器,用于存储有计算机指令;所述处理器用于执行所述存储器所存储的计算机指令,以使所述三维场景渲染设备执行上述第一方面或第一方面任一种可能实现方式中所述的方法。
第四方面,本申请还提供一种计算机可读存储介质,所述存储介质存储有计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行上述第一方面或第一方面任一种可能实现方式中所述的方法。
第五方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行上述第一方面或第一方面任一种可能实现方式中所述的方法。
关于第二方面至第五方面各种实施方式所带来的技术效果,可以参考对于第一方面或第一方面的各种实施方式的技术效果的介绍,在此处不作过多赘述。
附图说明
图1为本申请实施例提供的一种三维场景渲染的系统架构图;
图2为本申请实施例提供的一种三维场景渲染方法流程图;
图3为本申请实施例提供的一张标注好的图像的示意图;
图4为本申请实施例提供的一种风格化特征库的结构示意图;
图5为本申请实施例提供的一种计算纹理坐标值的示意图;
图6A为本申请实施例提供的一种渲染后的三维场景示意图;
图6B为本申请实施例提供的另一种渲染后的三维场景示意图;
图7为本申请实施例提供的一种三维场景渲染装置的结构示意图;
图8为本申请实施例提供的一种三维渲染设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例作进一步地详细描述。
为了便于理解,示例性的给出了与本申请相关概念的说明以供参考,如下所示:
1)程序化随机纹理技术(Procedural Stochastic Texturing):当对纹理进行重复平铺使用时,该技术可以隐藏纹理的重复模式;允许使用较小的纹理,实现更高级别的细节,为更大的表面提供纹理映射。
2)非真实感绘制(Non-Photorealistic rendering,NPR):也可以称为:风格化绘制,是计算机图形学的一类,主要用于模拟艺术式的绘制风格,也用于发展新绘制风格。和传统的追求真实感的计算机图形学不同,NPR受到油画、素描、技术图纸,和动画卡通的影响,主要强调对场景的特定信息的风格化呈现和视觉传达。NPR已经以“卡通着色”的形式出现在电影和电子游戏中,也出现在科学可视化、建筑插图和试验动画中。
3)三维场景渲染,是将三维的光能传递处理转换为一个二维图像的过程。场景和实体用三维形式表示,更接近于现实世界,便于操纵和变换,而图形的显示设备大多是二维的光栅化显示器和点阵化打印机。从三维实体场景的表示N维光栅和点阵化的表示就是三维场景渲染——即光栅化。光栅显示器可以看作是一个像素矩阵,在光栅显示器上显示的任何一个图形,实际上都是一些具有一种或多种颜色和灰度像素的集合。
应理解,本申请实施例涉及的至少一个,包括一个或者多个;其中,多个是指大于或者等于两个。另外,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述对象的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
首先对本申请的系统架构进行介绍。参图1所示,为本申请实施例提供的一种三维场景渲染的系统架构图,该系统可包括终端设备1和服务器集群2。
其中,终端设备1为用户查看渲染后的三维场景所采用的设备,用户可以通过浏览器接入服务器集群2,然后发送渲染命令指示服务器集群2对三维场景进行渲染,并通过浏览器展示渲染后的三维场景。当然,用户还可以通过账号密码登录的方式接入服务器集群2,本申请对此不作具体限定。
服务器集群2(下文中简称:服务器)可以是一个或多个云服务器,也可以是任意数据中心内的一个或多个服务器集群。在进行三维场景渲染前,根据预先保存的三维场景的数据,通过三维扫描,三维交互几何建模和三维模型库中获取三维几何模型信息;通过运动设计,运动捕捉,运动计算和动态变形中获取三维动画定义信息;从扫描的照片,计算机计算出的图像或者人画出的图画中获取材质信息,然后根据来自终端设备1的渲染命令,通过几何变换,投影变换,透视变换和窗口剪裁,再通过获取的材质与光影信息,将待渲染的三维场景处理成渲染后的三维场景,并发送给终端设备1。
本申请实施例中所涉及到的终端设备1可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备。终端为移动站(mobile station,MS)、用户单元(subscriber unit)、蜂窝电话(cellular phone)、智能电话(smart phone)、无线数据卡、个人数字助理(personal digital assistant,简称:PDA)电脑、平板型电脑、无线调制解调器(modem)、手持设备(handset)、膝上型电脑(laptopcomputer)、机器类型通信(machine type communication,MTC)终端等。
需要说明的是,终端设备1和服务器2之间通过通信网络建立通信连接,该通信网络可以为局域网、也可以是通过中继(relay)设备转接的广域网等。当通信网络为局域网时,示例性的,该通信网络可以是无线保真(wireless fidelity,wifi)热点网络、蓝牙(bluetooth,BT)网络或近距离无线通信技术(near field communication,NFC)网络等近距离通信网络。当通信网络为广域网时,示例性的,该通信网络可以是第三代移动通信技术(3rd-generation wireless telephone technology,3G)网络、第四代移动通信技术(the4th generation mobile communication technology,4G)网络、第五代移动通信技术(5th-generation mobile communication technology,5G)网络、未来演进的公共陆地移动网络(public land mobile network,PLMN)或因特网等。
可选的,本申请的方案还可以由一个渲染系统执行,该渲染系统可以执行三维场景的渲染过程,并对渲染后的三维场景进行展示。
如图2所示,为本申请实施例提供的一种三维场景渲染方法流程图,参阅图2所示,该方法可包括如下步骤:
S201:终端设备向服务器发送对待渲染的三维场景进行渲染的指示信息。
其中,该指示信息可包括渲染风格信息。所述渲染风格可包括青绿山水画风格、白描风格、水墨画风格、素描风格、卡通风格等。
在一些实施例中,该指示信息中还可以包括待渲染的三维场景,该待渲染的三维场景可以是预先构建好的多个三维场景中,用户选择的所要用来渲染的三维场景。
在另一些实施例中,该指示信息中还可以包括三维数据,即待渲染的三维场景也可以是用户直接提供的所要渲染的三维数据。示例性的,终端设备在向服务器发送该指示信息时,还可以向服务器发送三维数据,使得服务器根据三维数据构建三维场景。
当然,终端设备也可以在向服务器发送该指示信息之前,先向服务器发送三维数据,使得服务器根据三维数据构建三维场景。其中,该三维数据为多个可用于显示在图形用户界面(graphical user interface,GUI)上的独立的三维元素的集合。
需要说明的是,服务器生成的三维场景中可包括多个组件,每个组件均是由一个或多个元素及其业务逻辑组合成的独立整体,组件与组件可以嵌套。每一个三维场景或每一个特性均是一个独立的组件,即,对于三维场景中各个元素的三维数据为可插拔的三维数据,对于不同的元素的三维数据,服务器可以自动定位。
在本申请实施例中,该指示信息中包括的至少一种渲染风格可以为用户所选择的,用户可以在三维场景选择多个基本对象设定相同或不同的渲染风格。
作为一种可能的实现方式,用户可以通过鼠标、键盘、语音、手势以及其他可能的方式在终端设备上选择待渲染的三维场景中的每一种基本对象的渲染风格,然后终端设备根据用户的操作生成指示信息。示例性的,用户可以通过手势动作与终端设备进行交互,具备手部跟踪功能的终端设备实时获取用户的手部状态,通过终端设备的手势识别服务基于该手部状态的流数据识别出用户的手势指令,然后将该指令传输到服务器。又一示例,用户可发出语音指令,终端设备可实时采集用户音频,终端设备的语音识别服务对传入的音频流数据进行识别,然后将识别的指令实时传输到服务器。
当然,用户选择渲染风格的方式并不限于上述举例,本申请实施例对此不作限定。
S202:服务器根据指示信息和风格特征库,对三维场景中的基本对象按照渲染风格信息进行渲染,获得渲染后的三维场景。
在本申请实施例中,服务器可以根据指示信息在风格化特征库(也可以称为:风格特征库)中找到对应风格的特征集,然后基于特征集的特征纹理对待渲染的三维场景中的基本对象进行渲染。示例性的,假设待渲染的三维场景中包括山,用户指定的山的风格为油画风格,那么服务器可首先在风格化特征库中找到油画风格的特征集,然后在油画风格的特征集下找到该风格对应的山体特征集,进而在山体特征集下找到山的特征纹理,最后基于山的特征纹理(山的颜色特征纹理、山的轮廓特征纹理、山的细节特征纹理)对山进行渲染。
以下具体介绍如何得到风格化特征库的过程。
首先,利用训练数据构建识别模型。作为一种可能的实现方式,可以通过任意一种人工智能的方法(比如,可以通过深度学习算法中的卷积神经网络(convolutional neuralnetworks,CNN)),对大量的训练数据进行训练得到识别模型。
下面对该训练过程进行介绍。在本申请中,训练数据为大量的、预先标注好的图像,通过对预先标注好的图像进行深度学习,可以构建出所需要的识别模型。示例性的,如图3所示,为本申请实施例所提供的一张标注好的图像的示意图。参阅图3所示,图3所示的图像中可包括山、水、树木这三种基本对象。当然,图3中还可以包括更多的基本对象,比如小鸟、人物等,本申请对此不作具体限定。
其中,标注的过程为人工标注的过程。具体来说,用户可以对图像中的基本对象进行标注。比如,可以对图3所示的图像中包括的山、水、树木这三种基本对象进行标注,例如将山标注为a,水标注为b,树木标注为c。当然,还可以根据图像的风格对基本对象进行标注。比如,图3所示的图像为青绿山水画风格的图像,可以将青绿山水画风格标注为A,则将山标注为Aa,水标注为Ab,树木标注为Ac。
当然,一张图像中的图像风格也可以包括多种,比如包括青绿山水画风格和油画风格。假设青绿山水画风格中包括山、水、树木,油画风格中包括山、树木,则可以将青绿山水画风格中的山标注为Aa,水标注为Ab,树木标注为Ac,将油画风格中的山标注为Ba,树木标注为Bc。应理解,上述标注方法仅是一种示意性说明,在本申请实施例中并不限于此。
需要说明的是,在本申请中“基本对象”与“元素”有时候可能会混用,应理解其含义一致。
在另一些实施例中,用户还可以定义图像中的基本对象的抽象特征集。比如,山的特征集可包括山的颜色表、外轮廓线、内轮廓线、表面轮廓线、山体纹理细节等;水的特征集可包括水的颜色表、波纹形状纹理等。
当然,用户还可以对图像中的基本对象的特征进行标注,比如对山的外轮廓线进行标注、对山的内轮廓线进行标注等,这样可以使得训练得到的模型能够识别出基本对象的特征,比如能够识别出山的外轮廓线、山的内轮廓线等。
在构建完成识别模型之后,可将待处理的图像输入识别模型对该待处理的图像进行识别,输出得到识别完成的图像。需要说明的是,输出的图像中可包括该模型能够识别的基本对象和/或基本对象的特征,例如可以对识别出的基本对象进行标注。应理解,待处理的图像可以为一张图像,也可以为多张图像,本申请对此不作限定。
基于此,构建的模型可以对待处理的图像进行识别,得到标注好的图像。然后,可以利用图像处理技术,基于标注好的图像提取基本对象的特征纹理。以下以山为基本对象,介绍山的特征纹理的提取过程。其中,山的特征纹理可包括:山的颜色特征纹理、山的轮廓特征纹理、山的细节特征纹理。
(1)、山的颜色特征纹理提取
步骤1:设定降采样系数k,对待处理的图像进行降采样处理,得到降采样后的图像。应理解,降采样后的图像可以理解为山体颜色表。为了描述方便,以下可将该待处理的图像记为“原始图像”。
步骤2:计算降采样后的图像与原始图像的每一个像素点的像素之间的差值,然后将所有像素点的差值进行累加,得到累积残差r。
步骤3:假设累积残差r的阈值为rt,当r大于阈值rt时,调整降采样系数k值,并且重复步骤1和步骤2,直到r小于rt,然后将此时得到的降采样之后的图像作为颜色特征纹理并保存。也就是说,可以将累积残差r小于rt时对应的降采样之后的图像作为山的颜色特征纹理。
(2)、山的轮廓特征纹理提取
在上面的介绍中可知,若用户预先对山的轮廓特征进行标注,那么在输入待处理的图像之后,训练得到的识别模型可识别出的山的轮廓特征。
作为一种可能的实现方式,可以通过直接拷贝特征区域像素值的方式来提取山的轮廓特征纹理,并将山的轮廓特征纹理进行保存。当然,拷贝特征区域像素值的方式仅是一种示例,本申请并不限于此。
(3)、山的细节特征纹理提取
步骤1:对待处理的图像中的山体图像进行局部放大,以方便提取特征纹理。
步骤2:图像灰度化,即将山体图像从彩色图转换为仅保留黑白信息的灰度图。
步骤3:过滤灰度图内的低频噪声,保留高频噪声。
步骤4:将高频噪声信息作为山的细节特征纹理并保存。
应理解,山的细节可包括山的阴影、细节笔触,比如用来表示山为凹凸不平的笔触等。
通过上述图像处理方式可提取得到山的特征纹理,同样的,可依次得到水、建筑等其它基本对象的特征纹理。对于其它基本对象的特征纹理的提取可参照上述山的特征纹理提取的方法,在本申请实施例中不作过多赘述。
基于此,可得到一种风格的图像中基本对象的特征纹理。按照同样的方式也可以得到其它风格的图像中基本对象的特征纹理。也就是说,在本申请实施例中,每一种风格的图像可对应一个特征库,该特征库为该风格的图像中基本对象的特征纹理集合。示例性的,参阅图4所示,为本申请实施例提供的一种风格化特征库的结构示意图。在图4所示示意图中,假设图像的风格总共可包括N(所述N大于1的正整数)种,例如风格1、风格2、风格3…风格N。假设风格2为青绿山水风格,那么在该风格的特征库中可包括山体特征集、水体特征集、建筑特征集等。其中,山体特征集中可包括山的颜色特征纹理、山的轮廓特征纹理、山的细节特征纹理,水体特征集中可包括水的颜色特征纹理、水的波纹形状特征纹理(也可以理解为水的细节特征纹理)等。应理解,图4所示的风格化特征库可以理解为数字化的风格化特征库。
需要说明的是,不同风格的特征库中可包括相同或不同的基本对象特征集。这样,可建立多种风格的特征库,或者说:该特征库中可包括至少一种风格的至少一种元素的特征纹理。图4所示的风格化特征库仅是一种示意性说明,颜色、形状、纹理、笔触、留白、阴影等都可以作为风格的特征。
以下继续以山为基本对象,结合上面三个特征纹理介绍山的风格化渲染过程。
(1)、山的颜色渲染
作为一种可能的实现方式,可以通过着色器实现山体颜色的渲染。例如可以将山的颜色特征纹理、颜色的特征参数作为着色器的输入参数。其中,颜色的特征参数可包括如下几个参数:1、山体底部、中间、顶部的颜色值;2、山体颜色渐变的高度范围;3、山体透明度渐变的高度范围。
示例性的,可以对山的颜色特征纹理进行纹理拾取,获取对应片元的颜色,并结合特征参数和片元位置计算片元颜色。具体地,以一个像素点为例,首先可以获取山的颜色特征纹理的一个像素点(比如像素点1)的像素值,比如记为第一像素值,然后根据像素点1的位置获取特征参数中设置的对应的像素点1所在位置的像素值,比如记为第二像素值,最后将第一像素值和第二像素值进行加权,得到像素点1的颜色和透明度。按照上述方式,可依次得到每一个像素点的颜色和透明度,从而完成对山的颜色渲染过程。
(2)、山的轮廓渲染
山的轮廓渲染可包括山的外轮廓渲染、山的内轮廓渲染、山的表面轮廓渲染。下面以一个轮廓渲染为例说明渲染说明。
具体来说,可按照像素点的位置依次计算视线的方向向量和顶点法向量夹角的余弦值,然后将该余弦值作为使用轮廓特征纹理时的纹理坐标值,这样可得到所有像素点的纹理坐标值,即可确定出轮廓的位置。然后轮廓的绘制范围可通过轮廓特征纹理与视线的方向向量和顶点法向量的夹角决定。这样通过纹理坐标和绘制范围,以及对应的轮廓特征纹理即可绘制山体轮廓特征。如图5所示,假设顶点P为轮廓上的一个像素点,图5中示意出了顶点P的法向量、视线的方向向量,其两者之间的夹角为夹角α,该夹角α对应的余弦值为该像素点的坐标,这样可依次计算出该轮廓上的所有像素点的纹理坐标值。
(3)、山的细节渲染
以前面得到的山的细节特征纹理为基础,在片元着色器中提取山的细节特征纹理中的每一个像素点,并进行重复平铺和程序化随机纹理扰动,从而实现山体表面细节风格化自然呈现。
需要说明的是,对于山的轮廓和山的细节渲染时,也可以设置特征参数,即设置山的轮廓的颜色、山的细节的颜色等,本申请对此不作具体限定。
作为一种可能的实现方式,指示信息中的渲染风格信息可包括至少两种,并且指示信息中还可以包括至少两种元素信息。其中,元素信息与渲染风格信息一一对应,渲染后的三维场景中包括的至少两种元素信息对应的元素的渲染风格不同。这样可使得渲染后的三维场景为混合风格的场景。当然,指示信息中包括的渲染信息还可以仅包括一种,并且指示信息中还包括至少两种元素信息。渲染后的三维场景中包括的至少两种元素信息对应的元素的渲染风格相同,这样可使得渲染后的三维场景为单一风格场景。
通过上述方案,可为三维场景中的每个基本对象配置相同或者不同的渲染风格,这样可实现三维场景的风格化实时渲染和混合渲染。参阅图6A、图6B所示,为本申请实施例提供三维场景渲染效果示意图。在图6A所示示意图中,该三维场景中的基本对象的渲染的风格为同一风格,在图6B所示示意图中,基本对象的渲染风格为混合风格。
S203:服务器将渲染后的三维场景发送给终端设备。
服务器在根据指示信息对三维场景进行渲染之后,可以通过通信网络将渲染后的三维场景传输给终端设备。
S204:终端设备显示渲染后的三维场景。
终端设备在接收到渲染后的三维场景之后,可以通过应用程序(比如,浏览器)在屏幕上展示该三维场景,以便用户可查看渲染结果。或者当用户需要查看时,可在终端设备上触发查看的操作指令,然后服务器在终端设备上向用户展示渲染后的三维场景。应理解,操作指令可以包括查看指令、旋转指令、放大指令等,本申请对此不作具体限定。
基于上述实施例,本申请还提供一种三维场景渲染装置,该装置可以是前述服务器集群2中的装置或设备。参阅图7所示,该装置700可包括:获取单元701、渲染单元702。
其中,获取单元701,用于获取对待渲染的三维场景进行渲染的指示信息,所述指示信息中包括渲染风格信息;渲染单元702,用于根据所述获取单元701获取到的指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,得到渲染后的三维场景。
在一种可能的实施方式中,所述渲染单元702具体用于按照如下方式根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染:
根据所述指示信息中包括的渲染风格信息,在所述风格特征库中确定所述渲染风格信息对应的风格特征集;在所述风格特征集中确定所述三维场景中的元素对应的特征集,并确定每一种元素对应的特征集中包括的特征纹理;基于所述特征纹理对所述每一种元素进行风格渲染。
在一种可能的实施方式中,每一种元素对应的特征集中还包括特征参数,所述渲染单元702具体用于按照如下方式基于所述特征纹理对所述每一种元素进行风格渲染:
将所述特征纹理和所述特征参数作为着色器的输入参数;根据所述着色器对所述每一种元素进行风格渲染。
在一种可能的实施方式中,所述指示信息中的渲染风格信息包括至少两种,所述指示信息还包括至少两种元素信息,其中,元素信息与渲染风格信息一一对应;所述渲染后的三维场景中所述至少两种元素信息对应的元素的渲染风格不同。
在一种可能的实施方式中,所述风格特征库中包括至少一种风格的至少一种元素的特征纹理。
所述装置还包括:构建单元703,所述构建单元703用于预先构建所述风格特征库;所述构建单元703具体用于按照如下方式预先构建所述风格特征库:
获取待处理的图像,所述待处理的图像包括至少一种风格;确定所述待处理的图像中包括的至少一种风格对应的至少一种元素;针对每一种风格,提取所述风格对应的至少一种元素中的每一种元素的特征纹理,得到所述风格的特征纹理集。
在一种可能的实施方式中,所述构建单元703在确定所述待处理的图像中包括的至少一种风格对应的至少一种元素,具体用于:
通过预先训练的模型对所述待处理的图像进行识别,得到所述待处理的图像包括的至少一种风格以及所述至少一种风格对应的至少一种元素。
在一种可能的实施方式中,所述特征纹理包括颜色特征纹理、轮廓特征纹理、细节特征纹理中的一种或多种。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
如图8所示为本申请实施例提供的一种三维渲染设备800,该设备可以是前述任一场景下的服务器集群2或者是服务器集群2中的一个或多个设备。该设备800包括至少一个处理器802,用于实现或用于支持设备800实现如本申请实施例提供的图7所示的渲染单元的功能。示例性地,处理器802可以根据所述获取单元701获取到的指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,得到渲染后的三维场景。等,具体参见方法示例中的详细描述,此处不做赘述。
设备800还可以包括至少一个存储器801,用于存储程序指令。存储器801和处理器802耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器802可能和存储器801协同操作。处理器702可能执行存储器801中存储的程序指令和/或数据。所述至少一个存储器中的至少一个可以包括于处理器中。
装置800还可以包括通信接口803,用于通过传输介质和其它设备进行通信。处理器802可以利用通信接口803收发数据。
本申请不限定上述通信接口803、处理器802以及存储器801之间的具体连接介质。本申请实施例在图8中以存储器801、处理器802以及通信接口803之间通过总线804连接,总线在图8中以粗线表示。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本申请实施例中,处理器802可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接由硬件处理器执行完成,或者由处理器中的硬件及软件模块组合执行完成。
在本申请实施例中,存储器801可以是非易失性存储器,比如硬盘(hard diskdrive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatilememory),例如RAM。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
本申请实施例中还提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述实施例的方法。
本申请实施例中还提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行上述实施例的方法。
本申请实施例中还提供一种芯片,所述芯片中的逻辑用于执行上述实施例的方法。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (17)
1.一种三维场景渲染方法,其特征在于,包括:
获取对待渲染的三维场景进行渲染的指示信息,所述指示信息中包括渲染风格信息;
根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,得到渲染后的三维场景。
2.如权利要求1所述的方法,其特征在于,根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,包括:
根据所述指示信息中包括的渲染风格信息,在所述风格特征库中确定所述渲染风格信息对应的风格特征集;
在所述风格特征集中确定所述三维场景中的元素对应的特征集,并确定每一种元素对应的特征集中包括的特征纹理;
基于所述特征纹理对所述每一种元素进行风格渲染。
3.如权利要求2所述的方法,其特征在于,每一种元素对应的特征集中还包括特征参数,所述基于所述特征纹理对所述每一种元素进行风格渲染,包括:
将所述特征纹理和所述特征参数作为着色器的输入参数;
根据所述着色器对所述每一种元素进行风格渲染。
4.如权利要求1-3任一项所述的方法,其特征在于,所述指示信息中的渲染风格信息包括至少两种,所述指示信息还包括至少两种元素信息,其中,元素信息与渲染风格信息一一对应;所述渲染后的三维场景中所述至少两种元素信息对应的元素的渲染风格不同。
5.如权利要求1-4任一项所述的方法,其特征在于,所述风格特征库中包括至少一种风格的至少一种元素的特征纹理;
所述风格特征库预先由如下方法构建:
获取待处理的图像,所述待处理的图像包括至少一种风格;
确定所述待处理的图像中包括的至少一种风格对应的至少一种元素;
针对每一种风格,提取所述风格对应的至少一种元素中的每一种元素的特征纹理,得到所述风格的特征纹理集。
6.如权利要求5所述的方法,其特征在于,所述确定所述待处理的图像中包括的至少一种风格对应的至少一种元素,包括:
通过预先训练的模型对所述待处理的图像进行识别,得到所述待处理的图像包括的至少一种风格以及所述至少一种风格对应的至少一种元素。
7.如权利要求2-5任一项所述的方法,其特征在于,所述特征纹理包括颜色特征纹理、轮廓特征纹理、细节特征纹理中的一种或多种。
8.一种三维场景渲染装置,其特征在于,包括:
获取单元,用于获取对待渲染的三维场景进行渲染的指示信息,所述指示信息中包括渲染风格信息;
渲染单元,用于根据所述获取单元获取到的指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染,得到渲染后的三维场景。
9.如权利要求8所述的装置,其特征在于,所述渲染单元具体用于按照如下方式根据所述指示信息和风格特征库,对所述三维场景中的元素按照所述渲染风格信息进行渲染:
根据所述指示信息中包括的渲染风格信息,在所述风格特征库中确定所述渲染风格信息对应的风格特征集;
在所述风格特征集中确定所述三维场景中的元素对应的特征集,并确定每一种元素对应的特征集中包括的特征纹理;
基于所述特征纹理对所述每一种元素进行风格渲染。
10.如权利要求9所述的装置,其特征在于,每一种元素对应的特征集中还包括特征参数,所述渲染单元具体用于按照如下方式基于所述特征纹理对所述每一种元素进行风格渲染:
将所述特征纹理和所述特征参数作为着色器的输入参数;
根据所述着色器对所述每一种元素进行风格渲染。
11.如权利要求8-10任一项所述的装置,其特征在于,所述指示信息中的渲染风格信息包括至少两种,所述指示信息还包括至少两种元素信息,其中,元素信息与渲染风格信息一一对应;所述渲染后的三维场景中所述至少两种元素信息对应的元素的渲染风格不同。
12.如权利要求8-11任一项所述的装置,其特征在于,所述风格特征库中包括至少一种风格的至少一种元素的特征纹理;
所述装置还包括:构建单元,所述构建单元用于预先构建所述风格特征库;所述构建单元具体用于按照如下方式预先构建所述风格特征库:
获取待处理的图像,所述待处理的图像包括至少一种风格;
确定所述待处理的图像中包括的至少一种风格对应的至少一种元素;
针对每一种风格,提取所述风格对应的至少一种元素中的每一种元素的特征纹理,得到所述风格的特征纹理集。
13.如权利要求12所述的装置,其特征在于,所述构建单元在确定所述待处理的图像中包括的至少一种风格对应的至少一种元素,具体用于:
通过预先训练的模型对所述待处理的图像进行识别,得到所述待处理的图像包括的至少一种风格以及所述至少一种风格对应的至少一种元素。
14.如权利要求9-12任一项所述的装置,其特征在于,所述特征纹理包括颜色特征纹理、轮廓特征纹理、细节特征纹理中的一种或多种。
15.一种三维场景渲染设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储有计算机指令;
所述处理器用于执行所述存储器所存储的计算机指令,以使所述三维场景渲染设备执行如权利要求1-7中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行如权利要求1-7中任一项所述的方法。
17.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110455363.4A CN115330918A (zh) | 2021-04-26 | 2021-04-26 | 一种三维场景渲染方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110455363.4A CN115330918A (zh) | 2021-04-26 | 2021-04-26 | 一种三维场景渲染方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115330918A true CN115330918A (zh) | 2022-11-11 |
Family
ID=83911894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110455363.4A Pending CN115330918A (zh) | 2021-04-26 | 2021-04-26 | 一种三维场景渲染方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115330918A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115588070A (zh) * | 2022-12-12 | 2023-01-10 | 南方科技大学 | 一种三维图像风格化迁移方法及终端 |
-
2021
- 2021-04-26 CN CN202110455363.4A patent/CN115330918A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115588070A (zh) * | 2022-12-12 | 2023-01-10 | 南方科技大学 | 一种三维图像风格化迁移方法及终端 |
CN115588070B (zh) * | 2022-12-12 | 2023-03-14 | 南方科技大学 | 一种三维图像风格化迁移方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10489970B2 (en) | 2D image processing for extrusion into 3D objects | |
CN110084874B (zh) | 对于三维模型的图像风格迁移 | |
US10839575B2 (en) | User-guided image completion with image completion neural networks | |
CN107993216B (zh) | 一种图像融合方法及其设备、存储介质、终端 | |
CN112819947A (zh) | 三维人脸的重建方法、装置、电子设备以及存储介质 | |
US10204447B2 (en) | 2D image processing for extrusion into 3D objects | |
US20120113106A1 (en) | Method and apparatus for generating face avatar | |
US20190057532A1 (en) | Realistic augmentation of images and videos with graphics | |
US10347052B2 (en) | Color-based geometric feature enhancement for 3D models | |
CN106447756B (zh) | 用于生成用户定制的计算机生成动画的方法和系统 | |
KR102353556B1 (ko) | 사용자 얼굴기반 표정 및 포즈 재현 아바타 생성장치 | |
JP7244810B2 (ja) | 単色画像及び深度情報を使用した顔テクスチャマップ生成 | |
US20190206109A1 (en) | Method, apparatus and device for generating live wallpaper and medium | |
CN111080754B (zh) | 一种头部肢体特征点连线的人物动画制作方法及装置 | |
CN115100337A (zh) | 一种基于卷积神经网络的全身人像视频重照明方法和装置 | |
CN108229270B (zh) | 用于从遥感图像中识别道路的方法、装置和电子设备 | |
CN115330918A (zh) | 一种三维场景渲染方法及装置 | |
CN107203961B (zh) | 一种表情迁移的方法及电子设备 | |
CN109285160B (zh) | 一种抠像方法与系统 | |
CN113538704A (zh) | 一种基于光源位置绘制虚拟对象光影的方法及设备 | |
CN109829963A (zh) | 一种图像绘制方法及装置、计算设备和存储介质 | |
CN115311395A (zh) | 三维场景渲染方法、装置及设备 | |
CN115375847B (zh) | 材质恢复方法、三维模型的生成方法和模型的训练方法 | |
US20230326137A1 (en) | Garment rendering techniques | |
KR102402643B1 (ko) | 3차원 모델링의 색상 최적화 처리 시스템 |
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 |