CN117953118A - 图像生成方法、装置、非易失性存储介质和计算机设备 - Google Patents
图像生成方法、装置、非易失性存储介质和计算机设备 Download PDFInfo
- Publication number
- CN117953118A CN117953118A CN202311676224.XA CN202311676224A CN117953118A CN 117953118 A CN117953118 A CN 117953118A CN 202311676224 A CN202311676224 A CN 202311676224A CN 117953118 A CN117953118 A CN 117953118A
- Authority
- CN
- China
- Prior art keywords
- pixel points
- image
- preset
- determining
- observation point
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 239000013598 vector Substances 0.000 claims abstract description 108
- 230000000694 effects Effects 0.000 claims description 32
- 238000005286 illumination Methods 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 14
- 239000007769 metal material Substances 0.000 claims description 11
- 230000001795 light effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims 3
- 239000002184 metal Substances 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000004904 shortening Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000003746 surface roughness Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Image Generation (AREA)
Abstract
本发明公开了一种图像生成方法、装置、非易失性存储介质和计算机设备。其中,该方法包括:获取初始图像和背景图像;根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像;确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离;根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。本发明解决了相关技术中生成从预设角度观察金属图像得到的图像需要大量的计算机资源导致图像生成效率较低的技术问题。
Description
技术领域
本发明涉及图像处理领域,具体而言,涉及一种图像生成方法、装置、非易失性存储介质和计算机设备。
背景技术
在本领域下,计算机图形学和渲染领域已经取得了显著的发展,尤其是通过着色器技术和图形硬件的进步,实现了逼真的渲染效果。然而,金属版画风格的图像生成在某些方面仍存在一些挑战和问题。相关技术中生成从预设角度观察到的金属版画图像得到的图像,需要建立一个三维立体模型,对光照、反射等效果进行实时计算,这需要大量的计算资源,因此生成一张图像需要很长时间。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种图像生成方法、装置、非易失性存储介质和计算机设备,以至少解决相关技术中生成从预设角度观察金属图像得到的图像需要大量的计算机资源导致图像生成效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种图像生成方法,包括:获取初始图像和背景图像,其中,背景图像为金属材质表面的图像;根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配;确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离;根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。
可选地,根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,包括:根据多个第一像素点的颜色向量,确定多个第一像素点的灰度值;根据多个第一像素点的灰度值,调整多个第二像素点的灰度值,进而调整多个第二像素点的颜色向量,得到多个第二像素点调整后的颜色向量;根据多个第二像素点调整后的颜色向量,确定中间图像。
可选地,确定中间图像中的多个第三像素点的高度值,包括:建立三维坐标系,其中,三维坐标系的z轴平行于预设视线方向,三维坐标系的xOy平面垂直于预设视线方向,且预设观察点位于xOy平面内;在三维坐标系中,确定多个第三像素点的z轴坐标,其中,多个第三像素点的z轴坐标表征在预设观察点观察中间图像时,多个第三像素点相对于预设观察点的距离;根据多个第三像素点的颜色向量,确定多个第三像素点表示的物点的高度值;根据中间图像中的多个像素点各自的z轴坐标,以及多个第三像素点表示的物点的高度值,确定多个第三像素点的高度值。
可选地,根据预设光源和多个第三像素点的高度值,生成目标图像,包括:在三维坐标系中,确定预设光源的坐标;根据多个第三像素点的x轴坐标和y轴坐标,以及多个第三像素点的高度值,确定多个第三像素点的法线向量;根据预设光源的坐标和多个第三像素点的法线向量,确定多个第三像素点的光照效果;根据多个第三像素点的光照效果,调整多个第三像素点的颜色向量,生成目标图像。
可选地,根据预设光源的坐标和多个第三像素点的法线向量,确定多个第三像素点的光照效果,包括:将多个第三像素点表示的物点的高度值带入预设函数,确定多个第三像素点的环境光遮蔽值;根据多个第三像素点的法线向量、预设光源的坐标以及预设观察点,确定多个第三像素点的反射光影响;根据多个第三像素点的环境光遮蔽值,以及多个第三像素点的反射光影响,确定多个第三像素点的光照效果。
可选地,根据多个第三像素点的法线向量、预设光源的坐标以及预设观察点,确定多个第三像素点的反射光影响,包括:根据多个第三像素点的法线向量和预设光源的坐标,确定多个第三像素点的反射光线;根据预设观察点和多个第三像素点的反射光线,确定多个第三像素点的反射光影响。
可选地,采用Web图形库实现根据预设光源和多个第三像素点的高度值,生成目标图像。
根据本发明实施例的另一方面,还提供了一种图像生成装置,包括:获取模块,用于获取初始图像和背景图像,其中,背景图像为金属材质表面的图像;调整模块,用于根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配;确定模块,用于确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离;生成模块,用于根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。
根据本发明实施例的又一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行上述中任意一项图像生成方法。
根据本发明实施例的再一方面,还提供了一种计算机设备,计算机设备包括处理器,处理器用于运行程序,其中,程序运行时执行上述中任意一项图像生成方法。
在本发明实施例中,采用图像生成方法,通过获取初始图像和背景图像,其中,背景图像为金属材质表面的图像;根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配;确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离;根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像,达到了缩短图像生成时间的目的,从而实现了提高图像生成效率的技术效果,进而解决了相关技术中生成从预设角度观察金属图像得到的图像需要大量的计算机资源导致图像生成效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了一种用于实现图像生成方法的计算机终端的硬件结构框图;
图2是根据本发明实施例提供的图像生成方法的流程示意图;
图3是根据本发明可选实施例提供的图像生成方法的实施流程图;
图4是根据本发明可选实施例提供的图像生成方法的中间图像效果图;
图5是根据本发明可选实施例提供的图像生成方法的目标图像效果图;
图6是根据本发明实施例提供的图像生成装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种图像生成方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现图像生成方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为BUS总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的图像生成方法对应的程序指令/数据存储装置,处理器通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的图像生成方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10的用户界面进行交互。
图2是根据本发明实施例提供的图像生成方法的流程示意图,如图2所示,该方法包括如下步骤:
步骤S202,获取初始图像和背景图像,其中,背景图像为金属材质表面的图像。
本步骤中,获取初始图像和背景图像,其中,背景图像为金属材质表面的图像。初始图像是后续用于印在背景图像上的图像,上面可以有各种图案。背景图像为表面是金属材质的没有图案的图像,用于呈现初始图像中的图像。具体的,可以根据用户不同的需求,选择相应的初始图像和背景图像,这样可以个性化生成最后的图像,更好的满足用户的需求。
步骤S204,根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配。
本步骤中,根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,可以生成中间图像。其中,中间图像是模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配。背景图像的尺寸可以大于初始图像,也可以等于初始图像。当背景图像的尺寸大于初始图像的时候,初始图像中的多个第一像素点的排列位置要与背景图像中的多个第二像素点的排列位置相同,即第二像素点可以位于背景图像的任意位置,只需要满足多个第二像素点的排列位置与多个第一像素点的排列位置相同即可。具体的,可以获取初始图像中的第一像素点的颜色向量,根据颜色向量中的任意一个分量,调整对应的第二像素点的颜色向量,根据调整后的多个第二像素点的颜色向量确定中间图像。
步骤S206,确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离。
本步骤中,确定中间图像中的多个第三像素点的高度值,其中,高度值为在预设观察点观察中间图像的时候,多个第三像素点表示的物点相对于预设观察点的距离。在背景图像和初始图像尺寸完全相同的时候,第二像素点和第三像素点一一对应,在背景图像的尺寸大于初始图像的尺寸的时候,第三像素点中包括第二像素点。确定像素点的高度值,也就是获取在预设观察点观察中间图像,中间图像中的像素点对应的物点相对于观察点的距离。确定的高度值用于后续计算光照影响。
步骤S208,根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。
本步骤中,根据预设的光源和中间图像中的多个第三像素点的高度值,可以生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。当预设视线方向为垂直于中间图像且预设观察点在中间图像的正上方时,目标图像可以是中间图像本身,而预设视线方向为其他方向,预设观察点为其他点时,目标图像是在预设观察点沿着预设视线方向观察中间图像得到的图像,相当于中间图像发生了倾斜或旋转之后得到的平面图像。根据高度值和光源位置,确定目标图像,无需建立三维立体模型,所以不需要大量的计算资源,缩短了生成图像的时间,提高了生成效率。
通过上述步骤,达到了缩短图像生成时间的目的,从而实现了提高图像生成效率的技术效果,进而解决了相关技术中生成从预设角度观察金属图像得到的图像需要大量的计算机资源导致图像生成效率较低的技术问题。
作为一种可选的实施例,根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,包括:根据多个第一像素点的颜色向量,确定多个第一像素点的灰度值;根据多个第一像素点的灰度值,调整多个第二像素点的灰度值,进而调整多个第二像素点的颜色向量,得到多个第二像素点调整后的颜色向量;根据多个第二像素点调整后的颜色向量,确定中间图像。
可选地,根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量得到中间图像可以先根据第一像素点的颜色向量,确定第一像素点的灰度值。然后根据多个第一像素点的灰度值调整多个第二像素点的灰度值,进而调整多个第二像素点的颜色向量,得到多个第二像素点调整后的颜色向量。根据第二像素点调整后的颜色向量可以确定中间图像。中间图像为模拟将初始图像刻在背景图像上的图像,所以获取初始图像的像素点的灰度值,然后调整背景图像中对应的像素点的灰度值,就可以通过颜色的深浅来表示出初始图像中的线条,进而在背景图像上表示出初始图像中的图像。
作为一种可选的实施例,确定中间图像中的多个第三像素点的高度值,包括:建立三维坐标系,其中,三维坐标系的z轴平行于预设视线方向,三维坐标系的xOy平面垂直于预设视线方向,且预设观察点位于xOy平面内;在三维坐标系中,确定多个第三像素点的z轴坐标,其中,多个第三像素点的z轴坐标表征在预设观察点观察中间图像时,多个第三像素点相对于预设观察点的距离;根据多个第三像素点的颜色向量,确定多个第三像素点表示的物点的高度值;根据中间图像中的多个像素点各自的z轴坐标,以及多个第三像素点表示的物点的高度值,确定多个第三像素点的高度值。
可选地,确定中间图像中的第三像素点的高度值可以先建立三维坐标系,其中,三维坐标系的z轴平行于预设视线方向,xOy平面垂直于预设视线方向且预设观察点位于xOy平面内。在三维坐标系中,可以确定多个第三像素点的z轴坐标,其中,z轴坐标表示第三像素点相对于预设观察点的距离。根据第三像素点的颜色向量确定多个第三像素点表示的物点的高度值,根据z轴坐标和物点的高度值可以得到第三像素点的高度值。基于预设观察点以及预设视线方向去建立三维坐标系,可以更直观的观察到像素点到观察点所在平面的距离。根据第三像素点的颜色向量可以确定对应的灰度值,根据灰度值可以确定对应的第三像素点的物点的高度值。根据z轴坐标和物点的高度值,可以确定对应的第三像素点的物点相对于预设观察点的距离,也就是第三像素点的高度值。
作为一种可选的实施例,根据预设光源和多个第三像素点的高度值,生成目标图像,包括:在三维坐标系中,确定预设光源的坐标;根据多个第三像素点的x轴坐标和y轴坐标,以及多个第三像素点的高度值,确定多个第三像素点的法线向量;根据预设光源的坐标和多个第三像素点的法线向量,确定多个第三像素点的光照效果;根据多个第三像素点的光照效果,调整多个第三像素点的颜色向量,生成目标图像。
可选地,根据预设光源和多个第三像素点的高度值生成目标图像可以先在三维坐标系中确定预设光源的坐标。然后根据多个第三像素点的x轴坐标、y轴坐标以及对应的高度值确定多个第三像素点对应的法线向量、然后可以根据法线向量和预设光源的坐标确定多个第三像素点的光照效果,然后根据光照效果去调整多个第三像素点的颜色向量,就可以生成目标图像。根据多个第三像素点的x轴和y轴坐标可以确定在xOy平面上像素点对应的位置,进而可以确定出每个像素点相邻像素点的位置,然后根据相邻像素点的高度值,可以计算两个方向上的梯度值,根据梯度值可以得到该像素点的法线向量。根据法线向量和光源坐标就可以计算光照对颜色值的影响,进而调整第三像素点的颜色向量,生成目标图像。
作为一种可选的实施例,根据预设光源的坐标和多个第三像素点的法线向量,确定多个第三像素点的光照效果,包括:将多个第三像素点表示的物点的高度值带入预设函数,确定多个第三像素点的环境光遮蔽值;根据多个第三像素点的法线向量、预设光源的坐标以及预设观察点,确定多个第三像素点的反射光影响;根据多个第三像素点的环境光遮蔽值,以及多个第三像素点的反射光影响,确定多个第三像素点的光照效果。
可选地,确定多个第三像素点的光照效果可以先将多个第三像素点表示的物点的高度值带入预设函数,确定多个第三像素点的环境光遮蔽值,然后根据多个第三像素点的法线向量、预设光源的坐标以及预设观察点,可以确定多个第三像素点的反射光影响。然后根据多个第三像素点的环境光遮蔽值和反射光影响,可以确定多个第三像素点的光照效果。像素点的环境光遮蔽值是指对应像素点周围的像素点的物点高度值对光线照到该像素点时产生的影响值,所以需要根据像素点表示的物点的高度值来计算。反射光影响受到像素点的法线、光源位置以及观察点位置的影响,所以需要根据得到的法线向量,光源坐标以及观察点的坐标进行计算。具体的,反射光还会受到中间图像的表面材质的影响,因此在确定反射光影响时还可以考虑到中间图像表面材质的粗糙程度。
作为一种可选的实施例,根据多个第三像素点的法线向量、预设光源的坐标以及预设观察点,确定多个第三像素点的反射光影响,包括:根据多个第三像素点的法线向量和预设光源的坐标,确定多个第三像素点的反射光线;根据预设观察点和多个第三像素点的反射光线,确定多个第三像素点的反射光影响。
可选地,确定多个第三像素点的反射光影响可以现根据多个像素点的法线向量和预设光源的坐标确定多个第三像素点的反射光线,然后根据预设观察点和多个第三像素点的反射光线确定多个第三像素点的反射光影响。根据法线向量和光源坐标求出反射光线后,要判断反射光线与预设观察点的位置,如果反射光线无法反射至预设观察点的位置,对应像素点的颜色可能偏暗。相反,如果存在第三像素点的反射光线正好反射至预设观察点,那该第三像素点的颜色可能会偏亮。
作为一种可选的实施例,采用Web图形库实现根据预设光源和多个第三像素点的高度值,生成目标图像。
可选地,可以采用Web图像库来实现根据预设光源和多个第三像素点的高度值,生成目标图像。其中,Web图形库是用于在网页开发中创建和处理图形的工具集合。它包括各种图形处理功能,如绘制图形、添加动画效果、处理图像等,可以帮助开发者快速创建出具有吸引力和交互性的网页图形。通过Web图形库,开发者可以直接访问计算机或移动设备的GPU,以高性能地渲染各种视觉效果。在这里,通过采用Web图像库来生成最后的目标图像,可以大大提高图像生成的效率,节省了时间。
图3是根据本发明可选实施例提供的图像生成方法的实施流程图,如图3所示,下面提供一种本发明的具体实施方式:
S1、素材准备:初始图像iChannel0,背景图像iChannel1。
S2、设置条件:设置观察点、光源位置和视线方向。
S3、生成中间图像:宏函数H(p)获取iChannel0中坐标p处的像素点的颜色信息。宏函数H1(p)获取iChannel1中坐标p处的像素点的颜色信息。宏函数H2(p)计算H(p)和0.08*H1(p)之和的红色分量,用于对背景图像的颜色向量。根据H(p)和H1(p)分别求出第一像素点以及对应的第二像素点的红色分量,并根据H2(p)计算得到的红色分量对背景图像中的第二像素点的颜色向量进行调整,根据调整后的第二像素点的颜色向量,生成中间图像。图4是根据本发明可选实施例提供的图像生成方法的中间图像效果图,如图4所示,左侧为初始图像和背景图像,右侧为生成的中间图像。
S4、计算高度值:通过宏函数map(p)通过从z轴坐标中减去1.0并减去0.1*H2(p),计算坐标p处的像素点的高度值。
S5、确定环境光遮蔽值:基于曲率函数C(p,0.003)、C(p,0.02)和C(p,0.1)的线性组合,计算环境光遮蔽值,其中,曲率函数C(p,d)为log2(2.5*d*512.0)。
S6、计算法线:根据中间图像中的多个第三像素点的x轴坐标、y轴坐标和高度值计算多个第三像素点的法线向量。
S7、确定反射光影响:通过宏函数specular(l,N,v,ap,f0)计算反射,结合光线方向l、法线N、视线方向v、粗糙度参数ap和菲涅尔反射参数f0来计算反射光的影响值,其中,粗糙度参数用来描述表面的不平整程度和表面粗糙度的大小,菲涅尔反射参数是指光线在介质界面发生反射时的反射系数,用来描述光在不同介质之间反射的强度和性质。
S8、生成目标图像:根据得到的环境光遮蔽值和反射光影响调整中间图像中的第三像素点的颜色向量,生成目标图像。
图5是根据本发明可选实施例提供的图像生成方法的目标图像效果图,在初始图像的尺寸小于背景图像的尺寸的情况下,可以选择在背景图像上生成多个初始图像,在预设观察点观察中间图像的时候,可以观察到如图5所示的图像,也就是目标图像。可以根据用户的选择,在初始图像的尺寸小于背景图像的尺寸时,是在背景图像上只生成一个初始图像还是多个初始图像,以及生成在背景图像上生成多个初始图像的排列方式。在背景图像上生成多个初始图像的方法与生成单个初始图像方法一样,但可以提前在背景图像上划分出要生成的多个初始图像分别对应的像素点的位置。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的图像生成方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例,还提供了一种用于实施上述图像生成方法的图像生成装置,图是根据本发明实施例提供的图像生成装置的结构框图,如图6所示,该图像生成装置包括:获取模块62、调整模块64、确定模块66和生成模块68,下面对该图像生成装置进行说明。
获取模块62,用于获取初始图像和背景图像,其中,背景图像为金属材质表面的图像。
调整模块64,与获取模块62连接,用于根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配。
确定模块66,与调整模块64连接,用于确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离。
生成模块68,与确定模块66连接,用于根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。
可选地,调整模块用于根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,包括:确定单元,用于根据多个第一像素点的颜色向量,确定多个第一像素点的灰度值;调整单元,用于根据多个第一像素点的灰度值,调整多个第二像素点的灰度值,进而调整多个第二像素点的颜色向量,得到多个第二像素点调整后的颜色向量;确定图像单元,用于根据多个第二像素点调整后的颜色向量,确定中间图像。
可选地,确定模块用于确定中间图像中的多个第三像素点的高度值,包括:建立单元,用于建立三维坐标系,其中,三维坐标系的z轴平行于预设视线方向,三维坐标系的xOy平面垂直于预设视线方向,且预设观察点位于xOy平面内;确定坐标单元,用于在三维坐标系中,确定多个第三像素点的z轴坐标,其中,多个第三像素点的z轴坐标表征在预设观察点观察中间图像时,多个第三像素点相对于预设观察点的距离;确定物点高度值单元,用于根据多个第三像素点的颜色向量,确定多个第三像素点表示的物点的高度值;确定高度值单元,用于根据中间图像中的多个像素点各自的z轴坐标,以及多个第三像素点表示的物点的高度值,确定多个第三像素点的高度值。
可选地,生成模块,用于根据预设光源和多个第三像素点的高度值,生成目标图像,包括:光源确定单元,用于在三维坐标系中,确定预设光源的坐标;确定向量单元,用于根据多个第三像素点的x轴坐标和y轴坐标,以及多个第三像素点的高度值,确定多个第三像素点的法线向量;光照确定单元,用于根据预设光源的坐标和多个第三像素点的法线向量,确定多个第三像素点的光照效果;生成单元,用于根据多个第三像素点的光照效果,调整多个第三像素点的颜色向量,生成目标图像。
可选地,光照确定单元用于根据预设光源的坐标和多个第三像素点的法线向量,确定多个第三像素点的光照效果,包括:环境光确定子单元,用于将多个第三像素点表示的物点的高度值带入预设函数,确定多个第三像素点的环境光遮蔽值;反射光确定子单元,用于根据多个第三像素点的法线向量、预设光源的坐标以及预设观察点,确定多个第三像素点的反射光影响;光照确定子单元,用于根据多个第三像素点的环境光遮蔽值,以及多个第三像素点的反射光影响,确定多个第三像素点的光照效果。
可选地,反射光确定子单元,用于根据多个第三像素点的法线向量、预设光源的坐标以及预设观察点,确定多个第三像素点的反射光影响,包括:光线确定子单元,用于根据多个第三像素点的法线向量和预设光源的坐标,确定多个第三像素点的反射光线;根据预设观察点和多个第三像素点的反射光线,确定多个第三像素点的反射光影响。
可选地,生成模块用于采用Web图形库实现根据预设光源和多个第三像素点的高度值,生成目标图像。
此处需要说明的是,上述获取模块62、调整模块64、确定模块66和生成模块68对应于实施例中的步骤S202至步骤S208,多个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例提供的计算机终端10中。
本发明的实施例可以提供一种计算机设备,可选地,在本实施例中,上述计算机设备可以位于计算机网络的多个网络设备中的至少一个网络设备。该计算机设备包括存储器和处理器。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的图像生成方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的图像生成方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取初始图像和背景图像,其中,背景图像为金属材质表面的图像;根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配;确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离;根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。
采用本发明实施例,提供了一种图像生成方法。通过获取初始图像和背景图像,其中,背景图像为金属材质表面的图像;根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配;确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离;根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像,达到了缩短图像生成时间的目的,从而实现了提高图像生成效率的技术效果,进而解决了相关技术中生成从预设角度观察金属图像得到的图像需要大量的计算机资源导致图像生成效率较低的技术问题。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一非易失性存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
本发明的实施例还提供了一种非易失性存储介质。可选地,在本实施例中,上述非易失性存储介质可以用于保存上述实施例所提供的图像生成方法所执行的程序代码。
可选地,在本实施例中,上述非易失性存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,非易失性存储介质被设置为存储用于执行以下步骤的程序代码:获取初始图像和背景图像,其中,背景图像为金属材质表面的图像;根据初始图像中的多个第一像素点的颜色向量,调整背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,中间图像为模拟将初始图像刻在背景图像上的图像,多个第一像素点的排列位置与多个第二像素点的排列位置相匹配;确定中间图像中的多个第三像素点的高度值,其中,多个第三像素点的高度值为在预设观察点观察中间图像时,多个第三像素点表示的物点相对于预设观察点的距离;根据预设光源和多个第三像素点的高度值,生成目标图像,其中,目标图像为模拟在预设观察点沿着预设视线方向观察中间图像得到的图像。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种图像生成方法,其特征在于,包括:
获取初始图像和背景图像,其中,所述背景图像为金属材质表面的图像;
根据所述初始图像中的多个第一像素点的颜色向量,调整所述背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,所述中间图像为模拟将所述初始图像刻在所述背景图像上的图像,所述多个第一像素点的排列位置与所述多个第二像素点的排列位置相匹配;
确定所述中间图像中的多个第三像素点的高度值,其中,所述多个第三像素点的高度值为在预设观察点观察所述中间图像时,所述多个第三像素点表示的物点相对于所述预设观察点的距离;
根据预设光源和所述多个第三像素点的高度值,生成目标图像,其中,所述目标图像为模拟在所述预设观察点沿着预设视线方向观察所述中间图像得到的图像。
2.根据权利要求1所述的方法,其特征在于,所述根据所述初始图像中的多个第一像素点的颜色向量,调整所述背景图像中的多个第二像素点的颜色向量,生成中间图像,包括:
根据所述多个第一像素点的颜色向量,确定所述多个第一像素点的灰度值;
根据所述多个第一像素点的灰度值,调整所述多个第二像素点的灰度值,进而调整所述多个第二像素点的颜色向量,得到所述多个第二像素点调整后的颜色向量;
根据所述多个第二像素点调整后的颜色向量,确定所述中间图像。
3.根据权利要求1所述的方法,其特征在于,所述确定所述中间图像中的多个第三像素点的高度值,包括:
建立三维坐标系,其中,所述三维坐标系的z轴平行于所述预设视线方向,所述三维坐标系的xOy平面垂直于所述预设视线方向,且所述预设观察点位于所述xOy平面内;
在所述三维坐标系中,确定所述多个第三像素点的z轴坐标,其中,所述多个第三像素点的z轴坐标表征在所述预设观察点观察所述中间图像时,所述多个第三像素点相对于所述预设观察点的距离;
根据所述多个第三像素点的颜色向量,确定所述多个第三像素点表示的物点的高度值;
根据所述中间图像中的多个像素点各自的z轴坐标,以及所述多个第三像素点表示的物点的高度值,确定所述多个第三像素点的高度值。
4.根据权利要求3所述的方法,其特征在于,所述根据预设光源和所述多个第三像素点的高度值,生成目标图像,包括:
在所述三维坐标系中,确定所述预设光源的坐标;
根据所述多个第三像素点的x轴坐标和y轴坐标,以及所述多个第三像素点的高度值,确定所述多个第三像素点的法线向量;
根据所述预设光源的坐标和所述多个第三像素点的法线向量,确定所述多个第三像素点的光照效果;
根据所述多个第三像素点的光照效果,调整所述多个第三像素点的颜色向量,生成所述目标图像。
5.根据权利要求4所述的方法,其特征在于,所述根据所述预设光源的坐标和所述多个第三像素点的法线向量,确定所述多个第三像素点的光照效果,包括:
将所述多个第三像素点表示的物点的高度值带入预设函数,确定所述多个第三像素点的环境光遮蔽值;
根据所述多个第三像素点的法线向量、所述预设光源的坐标以及所述预设观察点,确定所述多个第三像素点的反射光影响;
根据所述多个第三像素点的环境光遮蔽值,以及所述多个第三像素点的反射光影响,确定所述多个第三像素点的光照效果。
6.根据权利要求5所述的方法,其特征在于,所述根据所述多个第三像素点的法线向量、所述预设光源的坐标以及所述预设观察点,确定所述多个第三像素点的反射光影响,包括:
根据所述多个第三像素点的法线向量和所述预设光源的坐标,确定所述多个第三像素点的反射光线;
根据所述预设观察点和所述多个第三像素点的反射光线,确定所述多个第三像素点的反射光影响。
7.根据权利要求1至6任意一项所述的方法,其特征在于,采用Web图形库实现根据所述预设光源和所述多个第三像素点的高度值,生成所述目标图像。
8.一种图像生成装置,其特征在于,包括:
获取模块,用于获取初始图像和背景图像,其中,所述背景图像为金属材质表面的图像;
调整模块,用于根据所述初始图像中的多个第一像素点的颜色向量,调整所述背景图像中的多个第二像素点的颜色向量,生成中间图像,其中,所述中间图像为模拟将所述初始图像刻在所述背景图像上的图像,所述多个第一像素点的排列位置与所述多个第二像素点的排列位置相匹配;
确定模块,用于确定所述中间图像中的多个第三像素点的高度值,其中,所述多个第三像素点的高度值为在预设观察点观察所述中间图像时,所述多个第三像素点表示的物点相对于所述预设观察点的距离;
生成模块,用于根据预设光源和所述多个第三像素点的高度值,生成目标图像,其中,所述目标图像为模拟在所述预设观察点沿着预设视线方向观察所述中间图像得到的图像。
9.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至7中任意一项所述图像生成方法。
10.一种计算机设备,其特征在于,包括:存储器和处理器,
所述存储器存储有计算机程序;
所述处理器,用于执行所述存储器中存储的计算机程序,所述计算机程序运行时使得所述处理器执行权利要求1至7中任意一项所述图像生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311676224.XA CN117953118A (zh) | 2023-12-07 | 2023-12-07 | 图像生成方法、装置、非易失性存储介质和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311676224.XA CN117953118A (zh) | 2023-12-07 | 2023-12-07 | 图像生成方法、装置、非易失性存储介质和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117953118A true CN117953118A (zh) | 2024-04-30 |
Family
ID=90791264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311676224.XA Pending CN117953118A (zh) | 2023-12-07 | 2023-12-07 | 图像生成方法、装置、非易失性存储介质和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117953118A (zh) |
-
2023
- 2023-12-07 CN CN202311676224.XA patent/CN117953118A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11257286B2 (en) | Method for rendering of simulating illumination and terminal | |
CN112316420B (zh) | 模型渲染方法、装置、设备及存储介质 | |
CN111369655B (zh) | 渲染方法、装置和终端设备 | |
RU2427918C2 (ru) | Метафора двумерного редактирования для трехмерной графики | |
CN112215934A (zh) | 游戏模型的渲染方法、装置、存储介质及电子装置 | |
CN112184873B (zh) | 分形图形创建方法、装置、电子设备和存储介质 | |
CN109493431B (zh) | 3d模型数据处理方法、装置及系统 | |
CN110458924B (zh) | 一种三维脸部模型建立方法、装置和电子设备 | |
CN109544674B (zh) | 一种体积光实现方法及装置 | |
KR20220017470A (ko) | 단일 컬러 이미지 및 깊이 정보를 사용하는 얼굴 텍스처 맵 생성 | |
US20180213215A1 (en) | Method and device for displaying a three-dimensional scene on display surface having an arbitrary non-planar shape | |
CN112446943A (zh) | 图像渲染的方法、装置及计算机可读存储介质 | |
CN113888398B (zh) | 头发渲染方法、装置及电子设备 | |
CN113332714B (zh) | 游戏模型的补光方法及装置、存储介质、计算机设备 | |
CN114529657A (zh) | 渲染图像的生成方法、装置、计算机设备及存储介质 | |
US20180005432A1 (en) | Shading Using Multiple Texture Maps | |
Law et al. | Projector placement planning for high quality visualizations on real-world colored objects | |
CN117953118A (zh) | 图像生成方法、装置、非易失性存储介质和计算机设备 | |
CN112819929B (zh) | 渲染水面方法及装置、电子设备、存储介质 | |
KR20230022153A (ko) | 소프트 레이어링 및 깊이 인식 복원을 사용한 단일 이미지 3d 사진 | |
CN117689786A (zh) | 图像生成方法、装置、非易失性存储介质和计算机设备 | |
CN117689798A (zh) | 图像生成方法、装置、非易失性存储介质和计算机设备 | |
CN117689756A (zh) | 图像处理方法、装置、非易失性存储介质和计算机设备 | |
JP2020013390A (ja) | 情報処理装置、情報処理プログラム及び情報処理方法 | |
CN118052900A (zh) | 图像生成方法、装置、非易失性存储介质和计算机设备 |
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 |