CN115131419A - 一种形成丁达尔光效的图像处理方法及电子设备 - Google Patents
一种形成丁达尔光效的图像处理方法及电子设备 Download PDFInfo
- Publication number
- CN115131419A CN115131419A CN202210675881.1A CN202210675881A CN115131419A CN 115131419 A CN115131419 A CN 115131419A CN 202210675881 A CN202210675881 A CN 202210675881A CN 115131419 A CN115131419 A CN 115131419A
- Authority
- CN
- China
- Prior art keywords
- image
- pixel point
- illumination
- tyndall
- dimensional
- 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.)
- Granted
Links
- 230000001795 light effect Effects 0.000 title claims abstract description 138
- 238000003672 processing method Methods 0.000 title claims abstract description 38
- 238000005286 illumination Methods 0.000 claims abstract description 310
- 238000000034 method Methods 0.000 claims abstract description 143
- 238000012545 processing Methods 0.000 claims abstract description 119
- 230000000694 effects Effects 0.000 claims abstract description 67
- 238000009877 rendering Methods 0.000 claims abstract description 45
- 238000005070 sampling Methods 0.000 claims description 92
- 230000011218 segmentation Effects 0.000 claims description 72
- 238000004422 calculation algorithm Methods 0.000 claims description 41
- 239000002245 particle Substances 0.000 claims description 34
- 238000005516 engineering process Methods 0.000 claims description 32
- 238000007635 classification algorithm Methods 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 12
- 238000005520 cutting process Methods 0.000 claims description 11
- 230000003287 optical effect Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 17
- 238000012549 training Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 16
- 230000001537 neural effect Effects 0.000 description 12
- 238000010295 mobile communication Methods 0.000 description 11
- 238000013527 convolutional neural network Methods 0.000 description 10
- 230000002829 reductive effect Effects 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000007637 random forest analysis Methods 0.000 description 9
- 239000013598 vector Substances 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 8
- 238000003066 decision tree Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 239000000084 colloidal system Substances 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 230000002776 aggregation Effects 0.000 description 4
- 238000004220 aggregation Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000013145 classification model Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 239000000443 aerosol Substances 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 239000000428 dust Substances 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 239000007788 liquid Substances 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 230000005855 radiation Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000012530 fluid Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 150000002500 ions Chemical class 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 238000001579 optical reflectometry Methods 0.000 description 2
- 238000007500 overflow downdraw method Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003313 weakening effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000012952 Resampling Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000000149 argon plasma sintering Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 239000008264 cloud Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000002270 dispersing agent Substances 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000003897 fog Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000003595 mist Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000010494 opalescence Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000008281 solid sol Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000005507 spraying Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- 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
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20132—Image cropping
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Abstract
本申请提供一种形成丁达尔光效的图像处理方法及电子设备,所述方法包括:获取第一图像;对第一图像进行三维重建,得到第一三维模型;为第一三维模型中的目标空间位置添加第一像素点,以及,确定第一区域,第一区域为第一三维模型中目标物体所在区域中光照能量大于或等于第一阈值的区域,目标物体是能够为第一图像形成丁达尔效应提供光照条件的物体;基于第一区域对第一像素点进行径向模糊处理,得到处理后的第一三维模型;基于处理后的第一三维模型进行渲染处理,得具备丁达尔光效的二维第二图像。充分利用第一图像中隐含的三维位置信息和光照信息,可以使得第二图像中的丁达尔光效真实感强。
Description
技术领域
本申请涉及计算机存储领域,尤其涉及一种形成丁达尔光效的图像处理方法及电子设备。
背景技术
丁达尔效应可以为图像营造神秘、唯美的氛围,深受摄影爱好者的喜欢。在自然条件下,丁达尔效应会出现在同时具备胶体粒子和光源的场景中。例如在有光源照射条件下灰层弥漫的室内空间。若用户想要拍到具备真实丁达尔效应的照片则需要等待合适的时机,实属不易。于是就出现了通过对图像的后期处理形成丁达尔光效的技术。
一般地,可以基于2D的图像处理(Photoshop,PS)技术为图像添加丁达尔光效。对2D图像中的高光区域做径向模糊处理,形成丁达尔光效。
然而,这种形成丁达尔光效的方法未充分利用图像信息,形成的丁达尔光效真实感有待提高。
发明内容
第一方面,本申请提供一种形成丁达尔光效的图像处理方法,所述方法包括:获取第一图像,所述第一图像为二维图像;对所述第一图像进行三维重建,得到第一三维模型;为所述第一三维模型中的目标空间位置添加第一像素点,以及,确定第一区域,所述第一区域为所述第一三维模型中目标物体所在区域中光照能量大于或等于第一阈值的区域,所述目标物体是能够为所述第一图像形成丁达尔效应提供光照条件的物体;基于所述第一区域对所述第一像素点进行径向模糊处理,得到处理后的第一三维模型,所述处理后的第一三维模型中包含由处理后的所述第一像素点构成的三维丁达尔光束;基于所述处理后的第一三维模型进行渲染处理,得到第二图像,所述第二图像为与所述第一图像对应的具备丁达尔光效的二维图像。
由此,采用本申请实施例提供的成丁达尔光效的图像处理方法,一方面,对第一图像进行三维重建,在三维模型的基础上,以第一区域为中心对第一像素点做径向模糊处理,得到三维丁达尔光束,再通过渲染技术将三维丁达尔光束转换为二维丁达尔光束,充分利用第一图像中隐含的空间三维位置信息以及光照信息,可以使得得到的第二图像中丁达尔光效的真实感强。另外一方面,为目标空间位置添加第一像素点,该第一像素点可以表征第一图像或第二图像对应的场景中具备形成丁达尔效应的胶体粒子条件,可以使得最终得到的第二图像中可以具备形成丁达尔效应的光照条件和胶体粒子条件,丁达尔光效的真实性高。再一方面,以第一三维模型中能够为所述第一图像形成丁达尔效应提供光照条件的上述目标物体所在区域中光照能量大于或等于上述第一阈值的区域为径向模糊中心做径向模糊处理,而不是盲目以二维图像中的高光区域为中心做径向模糊处理,提高丁达尔光效的真实性,避免出现第一图像中的情境原本不可能出现丁达尔效应(例如第一图像中不存在能够为形成丁达尔效应提供光照条件的目标物体)却盲目对二维图像添加丁达尔光效的,导致最终得到的2D图像中丁达尔光效的真实性差的问题。
在一种可能的实现方式中,所述目标空间位置为所述第一三维模型中除了实物物体内部的非实物空间位置之外的其他非实物空间位置,所述第一像素点的信息包括红绿蓝RGB颜色值和透明度值,所述第一像素点用于表征所述第一三维模型中包含胶体粒子。
由此,在目标空间位置添加第一像素点,对目标空间位置上的该第一像素点做径向模糊,相比于以第一图像中的高光区域作为径向模糊的中心对第一图像做径向模糊处理,本申请不会对实物物体(也可以理解为不透光物体的)的像素点做径向模糊处理,充分利用三维空间信息处理光照条件下物体的遮挡关系,从而可以使得得到的第二图像中的丁达尔光效的真实感强。
在一种可能的实现方式中,在所述为所述第一三维模型中的目标空间位置添加第一像素点之前,所述方法还包括:对所述第一图像进行光照估计,得到第一光照环境图;所述为所述第一三维模型中的目标空间位置添加第一像素点包括:确定所述第一光照环境图中与所述目标空间位置对应的第二像素点,所述第二像素点的信息包括光RGB颜色值和光照能量;为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第二像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第二像素点的光照能量确定。
示例性的,上述第一像素点的RGB颜色值与上述第二像素点的光RGB颜色值相等。或者,根据第二像素点的光RGB颜色值和用户自定义设置的丁达尔光束颜色需求确定第一像素点的RGB颜色值,例如,第一像素点的RGB颜色值等于第二像素点光RGB颜色值加上或减去一个预设RGB颜色值。
示例性的,第一像素点的透明度值基于第二像素点的光照能量确定,具体可以是,所述第二像素点的光照能量越强则第一像素点的透明度值越大。
由此,基于光照环境图中的光RGB颜色值和透明度值,为目标空间位置添加第一像素点,一方面可以使得第一像素点的RGB颜色值与光照颜色一致,最终得到的第二图像中的丁达尔光束的颜色与第一图像的光颜色一致,从而第二图像中的丁达尔光束效果会更自然、真实;另外一方面,通过第一像素点的不同透明度体现光照能量由径向模糊中心区域往外由强至弱的衰减现象,进一步使得第二图像中的丁达尔光束效果过渡更自然、更真实。
在一种可能的实现方式中,在所述为所述第一三维模型中的目标空间位置添加第一像素点之前,所述方法还包括:根据所述第一图像中所述目标物体的位置区域裁剪所述第一图像,得到面积小于所述第一图像的第一裁剪图像;对所述第一裁剪图像进行光照估计,得到第二光照环境图;所述为所述第一三维模型中的目标空间位置添加第一像素点包括:确定所述第二光照环境图中是否包含与所述目标空间位置对应的第三像素点,所述第三像素点包括光RGB颜色值和光照能量;在确定所述第二光照环境图中包含所述第三像素点的情况下,为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第三像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第三像素点的光照能量确定。
在一种可能的实现方式中,在确定所述第二光照环境图中不包含所述第三像素点的情况下,不为所述目标空间位置添加所述第一像素点。
根据第一裁剪图像对应的第二光照环境图中是否包含第三像素点确定是否添加上述第一像素点。从而仅对第一三维模型中的部分目标空间位置添加第一像素点以及做径向模糊处理,减少进行径向模糊处理获取丁达尔光效的像素点数量,一方面,可以避免出现第二图像中丁达尔光效范围过大导致图像真实感差的问题;另外一方面,可以减少图像处理的性能损耗。
在一种可能的实现方式中,所述方法还包括:根据所述第二光照环境图中像素点的光照能量确定光照方向;根据所述光照方向重新裁剪所述第一图像,得到第二裁剪图像,所述第二裁剪图像包括所述第一图像中与所述光照方向一致的图像区域,且所述第二裁剪图像小于所述第一图像的面积;对所述第二裁剪图像进行光照估计,得到第三光照环境图,并将所述第三光照环境图作为新的所述第二光照环境图。
示例性的,将第三光照环境图作为新的第二光照环境图后,则根据该新的第二光照环境图(也即上述第三光照环境图)中像素点的光RGB颜色值和光照能量确定上述第一像素点的RGB颜色值和透明度值。
也就是说,上述确定所述第二光照环境图中是否包含与所述目标空间位置对应的第三像素点,所述第三像素点包括光RGB颜色值和光照能量;在确定所述第二光照环境图中包含所述第三像素点的情况下,为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第三像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第三像素点的光照能量确定,包括:确定所述第三光照环境图中是否包含与所述目标空间位置对应的第三像素点,所述第三像素点包括光RGB颜色值和光照能量;在确定所述第三光照环境图中包含所述第三像素点的情况下,为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第三像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第三像素点的光照能量确定。
由此,采用第二裁剪图像对应的第三光照环境图确定是否添加上述第一像素点,以及上述第一像素点的RGB颜色值和透明度值,一方面,减少进行径向模糊处理获取丁达尔光效的像素点数量,减少性能损耗;另外一方面,可理解的,径向模糊的方向是由中心点向四周各个方向散射,从而会出现径向模糊的方向与光照方向吻合度不高,导致最终生成的丁达尔光束真实性差的问题。然而,本申请基于光照方向裁剪上述第二裁剪图像,并基于第二裁剪图像对应的光照信息为三维模型中与第二裁剪图像对应的空间位置添加第一像素点,以目标区域(目标区域大致为第三像素点附近区域)作为中心对第一像素点做径向模糊处理以获得三维丁达尔光束。也即根据光照方向裁剪图像,选取与光照方向一致的空间位置添加像素点,从而使得对像素点做径向模糊处理后得到的丁达尔光束的方向与光照方向吻合度更高,最终得到的第二图像中二维丁达尔光束效果更自然、真实。
在一种可能的实现方式中,所述确定第一区域包括:基于语义分割技术确定所述第一图像中语义掩模为所述目标物体的第二区域;确定所述第二光照环境图中与所述第二区域对应的区域中光照能量大于或等于所述第一阈值的第三区域,所述第一阈值根据所述第一光照环境图中所述目标物体所在区域像素点的光照能量的确定;确定所述第一三维模型中与所述第三区域对应的区域为所述第一区域。
示例性的,所述第一阈值根据所述第一光照环境图中所述目标物体所在区域的像素点中光照能量的最大值确定,或者,所述第一阈值根据所述第一光照环境图中所述目标物体所在区域的像素点的光照能量由大至小排名前百分之十的像素点的光照能量确定。可理解的,所述第一阈值也可以理解为强光区域。
由此,基于光照环境图确定目标物体区域中的强光区域对应到三维模型中的区域作为径向模糊的中心,充分利用第一图像中隐含的光照信息,进一步提高第二图像中丁达尔光效的真实感。
在一种可能的实现方式中,所述对所述第一图像进行三维重建包括:在基于室内室外场景分类算法确定所述第一图像属于室内场景下的图像、且基于语义分割算法确定所述第一图像中包含与所述目标物体对应的语义掩模的情况下,对所述第一图像进行三维重建;所述目标物体为第一集合中的任意一个元素,所述第一集合的元素包括:室内场景下的窗户、室内场景下的门缝、以及室内场景下的灯中的一项或一项以上。
由此,在第一图像中包括目标物体的情况下,再进行丁达尔效应处理,为第二图像中丁达尔光效的真实性提供保障。
在一种可能的实现方式中,所述第一区域包括一个或一个以上的像素点,所述基于所述第一区域对所述第一像素点进行径向模糊处理,包括:根据第一偏移量和采样规则,针对所述第一区域以外的所述第一像素点,在所述第一像素点到所述第一区域的中心点的连线上采样像素点,得到与第一像素点对应的一个或一个以上采样点,且所述一个或一个以上采样点为所述第一区域以外的像素点;所述第一像素点到所述第一区域的中心点的第一距离越大则所述第一偏移量越大,所述采样规则为所述第一距离越大则所述采样点的采样步进距离越大;根据所述一个或一个以上采样点的RGB颜色值的平均值或加权平均值确定第一颜色值;根据所述一个或一个以上采样点中第一个采样点的采样起始位置的随机性,得到与迭代次数对应的一个或一个以上所述第一颜色值;将所述一个或一个以上所述第一颜色值的总和与所述迭代次数的比值作为所述更新后的第一像素点的RGB颜色值。
在一种可能的实现方式中,在所述对所述第一图像进行三维重建之前,所述方法还包括:
获取与所述第一图像在不同视角下的一张或一张以上第三图像;所述对所述第一图像进行三维重建包括:根据所述第一图像、所述一张或一张以上第三图像、以及三维重建技术对所述第一图像进行三维重建,所述三维重建技术为多视图立体法或神经辐射场NeRF技术。
可理解的,三维重建技术中,对于增加第一图像在多个视角下的多张第三图像,基于第一图像和多张第三图像对第一图像进行三维重建,其三维重建精度更高,三维模型的真实度更高,可以使得最终得到的第二图像的中丁达尔光效的真实度更高以及第二图像中的像素点还原度更高。另外,可以使得既满足用户在只有一个视角下的一张第一图像的情况下可以为第一图像添加丁达尔光效;还可以满足基于第一图像和第一图像在多个视角下的多张第三图像,也可以形成丁达尔光效。
在一种可能的实现方式中,所述对所述第一图像进行三维重建包括:采用多视图立体法或神经辐射场NeRF技术对所述第一图像进行三维重建。
在一种可能的实现方式中,所述对所述第一图像进行光照估计包括:采用局部光估计Spatially varying算法对所述第一图像进行光照估计。
在一种可能的实现方式中,所述室内室外场景分类算法为基于全局特征的空间信封模型场景分类算法或第一分类算法,所述第一分类算法为基于局部二值模式和小波纹理特征的室内室外场景分类算法。所述语义分割算法为随机森林算法、全卷积神经网络FCN、或深度卷积神经网络DeepLab。
在一种可能的实现方式中,所述将所述处理后的第一三维模型的三维信息渲染为二维信息,包括:基于体绘制渲染原理或神经渲染技术将所述处理后的第一三维模型的三维信息渲染为二维信息。
第二方面,本申请实施例提供一种形成丁达尔光效的图像处理装置,所述装置包括:
获取单元,用于获取第一图像,所述第一图像为二维图像;第一图像处理单元,用于对所述第一图像进行三维重建,得到第一三维模型;第二图像处理单元,用于为所述第一三维模型中的目标空间位置添加第一像素点,以及,确定第一区域,所述第一区域为所述第一三维模型中目标物体所在区域中光照能量大于或等于第一阈值的区域,所述目标物体是能够为所述第一图像形成丁达尔效应提供光照条件的物体;第三图像处理单元,用于基于所述第一区域对所述第一像素点进行径向模糊处理,得到处理后的第一三维模型,所述处理后的第一三维模型中包含由处理后的所述第一像素点构成的三维丁达尔光束;第四图像处理单元,用于基于所述处理后的第一三维模型进行渲染处理,得到第二图像,所述第二图像为与所述第一图像对应的具备丁达尔光效的二维图像。
在本申请实施例中,本申请实施例提供的形成丁达尔光效的图像处理方法可以由上述形成丁达尔光效的图像处理装置执行也可以由电子设备执行。
第三方面,本申请实施例提供一种电子设备,所述电子设备包括:一个或多个处理器和存储器;所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行第一方面或第一方面的任意可能的实现方式中的方法。
第四方面,本申请实施例提供一种芯片系统,所述芯片系统应用于电子设备,所述芯片系统包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行所述第一方面或第一方面的任意可能的实现方式所示的方法。
第五方面,本申请实施例提供一种包含指令的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行所述第一方面或第一方面的任意可能的实现方式所示的方法。
第六方面,本申请实施例提供一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行所述第一方面或第一方面的任意可能的实现方式所示的方法。
可以理解的,上述第二方面提供的形成丁达尔光效的图像处理装置、第三方面提供的电子设备、第四方面提供的芯片、第五方面提供的计算机程序产品和第六方面提供的计算机存储介质均用于执行本申请实施例所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种形成丁达尔光效的图像处理方法的流程示意图;
图2为本申请实施例提供的一种对第一图像进行语义分割的方法流程示意图;
图3为本申请实施例提供的一种裁剪第一图像的示意图;
图4A为本申请实施例提供的一种确定第一图像光照方向的示意图;
图4B为本申请实施例提供的一种裁剪第一图像得到第二裁剪图像的示意图;
图4C为本申请实施例提供的又一种裁剪第一图像得到第二裁剪图像的示意图;
图5为本申请实施例提供的一种对第一像素点做径向模糊的方法流程示意图;
图6为本申请实施例提供的一种向用户提供自定义选择特定物体需要生成丁达尔效应的功能的用户界面示意图;
图7为本申请实施例提供的一种向用户提供自定义丁达尔光束信息的用户界面示意图;
图8为本申请实施例提供的又一种形成丁达尔光效的图像处理方法的流程示意图;
图9为本申请实施例提供的又一种形成丁达尔光效的图像处理方法的流程示意图;
图10为本申请实施例提供的一种对第一图像进行光照估计的流程示意图;
图11为本申请实施例提供的一种对第一图像进行丁达尔光效处理的实例图像示意图;
图12为本申请实施例提供的又一种形成丁达尔光效的图像处理的流程示意图;
图13为本申请实施例提供的又一种形成丁达尔光效的图像处理的流程示意图;
图14为本申请实施例提供的又一种形成丁达尔光效的图像处理方法的流程示意图;
图15为本申请实施例提供的又一种对第一图像进行光照估计的流程示意图;
图16为本申请实施例提供的又一种形成丁达尔光效的图像处理的流程示意图;
图17为本申请实施例提供的又一种形成丁达尔光效的图像处理的流程示意图;
图18为本申请实施例提供的电子设备100的结构示意图;
图19是本申请实施例的电子设备100的软件结构框图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地描述。
本申请的说明书、权利要求书及附图中的术语“第一”和“第二”等仅用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备等,没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元等,或可选地还包括对于这些过程、方法、产品或设备等固有的其它步骤或单元。
在本文中提及的“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员可以显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上,“至少两个(项)”是指两个或三个及三个以上,“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”。
为了便于理解,下面先对本申请实施例涉及的相关术语及相关概念进行介绍。
(1)丁达尔光效
丁达尔效应,是指当一束光线透过胶体,从垂直入射光方向可以观察到胶体里出现的一条光亮的“通路”的现象,该“通路”即为丁达尔光束。
在光的传播过程中,光线照射到粒子时,如果粒子小于入射光波长,则发生光的散射,这时观察到的是光波环绕微粒而向其四周放射的光,称为散射光或乳光,丁达尔效应就是光的散射现象或称乳光现象。具体的,溶液中的粒子为分子或离子,其直径大小一般不超过1nm,胶体中的微粒则介于溶液中溶质粒子和浊液粒子之间,其直径大小在1~100nm。溶液粒子和胶体粒子直径均小于可见光波长(400nm~700nm),光线照射下溶液粒子和胶体粒子均会发生散射。但对于溶液,由于分子或离子大小较小,散射光的强度随散射粒子体积的减小而明显减弱,因此溶液对光的散射作用很微弱,散射后得到的光线仍小于可见光波长。此外,散射光的强度还随分散体系中粒子浓度增大而增强,因此当可见光透过胶体时会产生明显的散射作用而产生丁达尔效应,形成肉眼可见的丁达尔光束。
示例性的,根据分散剂的状态,胶体粒子可分为气溶胶、液软胶、以及固溶胶。例如,气溶胶包括烟、云、雾、灰尘。
在本申请实施例中,丁达尔光效是指通过后期图像处理的方式,使得图像包含丁达尔光束的光线效果。
(2)目标物体
在本申请实施例中,目标物体用于表征第一图像具备产生丁达尔效应的条件。也可以理解为,自然条件下,在包含该目标物体的场景中时常会出现丁达尔效应,该目标物体是能够为第一图像形成丁达尔效应提供光照条件的物体。
示例性的,室内灯光照射到充满灰尘或雾气的空气中,光线通过窗户或门缝照射到充满灰尘的房间等场景时,时常会出现丁达尔效应。基于此,在本申请实施例中,该目标物体可以是室内场景下灯光、窗户或门缝。
(3)语义分割
语义分割,是计算机视觉中的一项技术,用于识别图像中的对象,并为对象进行分类。示例性的,对图像中每一个像素点进行分类,确定每个像素点的类别,如属于背景、窗户或地面等,从而进行区域划分。一般地,对图像进行语义分割后,可以得到每个像素点的语义掩模mask。示例性的,图像中包含3种不同的物体,如分别为地面、窗户、以及建筑物,其中,地面用M取值为1表示,窗户用M取值为2表示,建筑物用M取值为3表示,像素点的位置用(x,y)坐标表示,则每个像素点的语义mask可以表示为(x,y,M)。若有一个像素点的语义mask为(x1,y1,2),则表示该像素点的二维位置为(x1,y1),且该像素点的类别为窗户。
本申请实施例中,语义分割可以用于识别第一图像中是否包括目标物体及该目标物体的位置信息,例如语义分割用于识别第一图像中是否包括室内场景下的窗户物体及该室内场景下的窗户的二维位置信息或门缝物体及该门缝物体的二维位置信息。
下面结合几种其他形成丁达尔光效的实现方式,对比说明本申请实施例中形成丁达尔光效的图像处理方法的优势:
在一些形成丁达尔光效的图像处理方法中,基于2D的PS技术,借助灰度阈值分割法提取第一图像中的高光区域,以该高光区域为径向模糊的中心为2D图像中的像素点添加径向模糊效果形成丁达尔光束,得到具备丁达尔光效的2D图像。
这种丁达尔光效的实现方式,一方面,直接以高光区域为径向模糊的中心对2D图像中的像素点做径向模糊处理,即使2D图像中存在不透光物体的像素点,仍会对该不透光物体的像素点做径向模糊处理。也即,不能有效考虑光照环境下物体间的遮挡关系,未充分利用第一图像中的物体的空间位置信息,从而导致最终得到的具备丁达尔光效的2D图像中的丁达尔光束真实感差。
另外一方面,盲目地以图像的高光区域为径向模糊的中心对2D图像添加丁达尔光效,很可能会存在第一图像中的情境原本不可能出现丁达尔效应(例如2D图像的情境办公桌一角,且2D图像中不包含任何光源)却盲目对2D图像添加丁达尔光效的问题,导致最终得到的2D图像中丁达尔光效的真实性差。
然而,采用本申请提供的形成丁达尔光效的图像处理方法,对第一图像进行语义分割确定目标物体的位置,并对第一图像进行三维重建得到三维模型,以及,对第一图像进行光照估计得到第一图像对应的光照信息,如包括光照能量强度信息和光颜色信息。基于第一图像的光照信息为三维模型中的目标空间位置(三维模型中除了实物物体内部的非实物空间之外的其他非实物空间位置)添加第一像素点;然后以上述目标物体所在区域的光照信息中的2D强光区域的中心点对应到三维模型中的位置,作为径向模糊的中心点对三维模型中的第一像素点做径向模糊处理,得到包含具备三维信息的丁达尔光束的三维模型;再通过渲染器将包含具备三维信息的丁达尔光束的三维模型转换为二维图像,也即得到与第一图像对应的具备丁达尔光效的第二图像。
由此,一方面,本申请提供的形成丁达尔光效的图像处理方法中,充分利用第一图像中隐含的物体空间位置信息,在三维模型的基础上对第一像素点做径向模糊得到具备三维信息的丁达尔光束,由具备三维信息的丁达尔光束得到二维图像(也即第二图像)中丁达尔光束的信息,提高了第二图像中丁达尔光效的真实感,例如,本申请提供的方法仅对目标空间位置上的第一像素点做径向模糊处理,可以避免出现对空间中不透光物体的像素点做径向模糊处理导致丁达尔光效真实感差的问题。
再一方面,本申请提供的形成丁达尔光效的图像处理方法中,基于光照信息为第一图像的三维模型中除了物体的内部非实物空间之外的非实物空间位置添加第一像素点,也可以理解为第一虚拟粒子像素点,用于表示第一图像或第二图像对应的场景中存在胶体粒子,从而可以使得最终渲染得到的第二图像中也会包含对应的第一虚拟粒子像素点信息。也即,最终渲染得到的第二图像是在第一图像或第二图像具备产生丁达尔效应的自然条件(自然条件也即光源和胶体粒子)的情况下产生的丁达尔光束,从而进一步提高第二图像中丁达尔光效的真实感。
在一些可能的实现方式中,本申请提供的形成丁达尔光效的图像处理方法,在对第一图像进行三维建模以进行丁达尔光效处理前,还可以先基于语义分割确定第一图像中是否包含可以产生丁达尔效应的目标物体(例如室内环境中的灯、窗户、或门缝),若是,再对第一图像进行丁达尔光效处理,若否,则不对第一图像进行丁达尔光效处理。
从而,选择性地对可能具备产生丁达尔效应条件的图像进行丁达尔光效处理,而不是对任意的第一图像都进行丁达尔光效处理,避免出现第一图像中的情境根本不可能出现丁达尔效应却盲目对第一图像处理添加丁达尔光效的问题,为第二图像中丁达尔光效的真实性提供保障。另外,本申请以第一图像中可能产生丁达尔效应的该目标物体所在区域的光照信息中的2D强光区域的对应到三维模型中的中心区域,作为径向模糊的中心对三维模型中的第一像素点做径向模糊处理,而不是盲目以图像中的高光区域为中心做径向模糊处理,从而进一步提高第二图像中丁达尔光效的真实性。
在另外一些形成丁达尔光效的图像处理方法中,基于物理生成装置形成丁达尔光效。具体的,物理生成装置中通常借助固定的容器盛满气溶胶液体或借助固定的喷射装置产生水雾,以及配合激光光源仪器,利用丁达尔效应的物理原理,产生真实的丁达尔光效。这种方法存在加重终端设备硬件成本的问题。
然而,采用本申请提供的形成丁达尔光效的图像处理方法,利用电子设备中原有的硬件(例如处理器、存储器等),基于第一图像和对应图像处理算法对第一图像进行丁达尔光效处理,不增加终端设备的硬件负担。例如,在不增加深度相机等硬件设备的前提下,对第一图像进行深度估计以重建三维模型。
在另外一些形成丁达尔光效的图像处理方法中,通过粒子系统中的粒子发射器添加流体粒子,对流体粒子加速实现丁达尔效应。该技术缺点是只能针对包含粒子系统的特定三维模型打造丁达尔效应,通常用于3D游戏场景和虚拟现实场景,无法将粒子技术有效平移到对二维图像进行丁达尔光效处理中,不适用于普通场景,不能满足用户日常的实际需求(例如针对终端设备中的二维照片实现丁达尔光效)。
然而,采用本申请提供的形成丁达尔光效的图像处理方法,可以直接对二维的第一图像进行丁达尔光效处理,适用于普通场景,可以满足用户日常的实际需求。
可理解的,本申请实施例可以由任意具备图像处理功能的电子设备执行,例如,该电子设备具备图像处理功能的移动终端、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑以及超级移动个人计算机(ultra-mobile personal computer,UMPC)等电子设备,本文对电子设备的具体形态不做限定。
需要说明的,本发明提供的形成丁达尔光效的方法适用于室内场景图像,也适用于室外场景图像,但是考虑到针对室外场景图像的三维重建时延以及性能消耗较大,实用性较差,会给用户带来不好的使用体验的问题,本申请主要以如何将本申请提供的形成丁达尔光效的方法应用于室内场景图像为例详细说明本申请提供的形成丁达尔光效的方法。
实施例1:
以下结合图1详细描述本申请实施例提供的形成丁达尔光效的图像处理方法。如图1所示,该形成丁达尔光效的图像处理方法包括如下步骤:
阶段1:电子设备获取第一图像并基于语义分割技术确定第一图像是否具备产生丁达尔光束的条件。
S101,获取第一图像。
在本申请实施例中,第一图像为数字图片,可理解的,数字图片是一个二维图像,该二维图像通过二维数组保存每个像素点的2D位置信息和RGB颜色值。
为便于区分,本文将二维图像中的像素点称为2D像素点,将三维模型中的像素点称为3D像素点。
上述获取第一图像,可以理解为,获取第一图像中每个像素点的2D像素点信息,该2D像素点的信息包括2D位置信息和RGB颜色值,其中,2D位置信息用于表示像素点的平面位置。
示例性的,第一图像可以为待存储到电子设备中的数字图片,也即当电子设备需要存储该第一图像时,则对该第一图像执行步骤S101至S108所示的操作处理,以确定是否将待存储的该第一图像的原图直接存储到电子设备中,还是对待存储的该第一图像先进行丁达尔光效处理后将更新后的图像存储到电子设备中。
例如,该待存储的第一图像包括相机应用软件拍摄得到的、已读取到内存中未存储到磁盘中的数字图片,和/或,电子设备(通过网页下载或聊天软件应用程序内下载的下载方式)下载的、已读取到内存中未存储到磁盘中的数字图片。
示例性的,第一图像也可以为已存储到电子设备中、用户手动选择指定的需要进行丁达尔光效处理的数字图片。
S102,确定第一图像中是否包括目标物体。
在本申请实施例中,上述目标物体用于表征第一图像具备产生丁达尔效应的条件。也可以理解为,自然条件下,在包含该目标物体的场景中时常会出现丁达尔效应。例如,该目标物体可以为室内场景下的灯、窗户、或门缝。
若记上述用于表征第一图像具备产生丁达尔效应的条件的物体的集合为第一集合。则上述目标物体则为该第一集合中的任意一个元素。该第一集合可以包括室内场景下的灯、窗户、以及门缝类别中的一项或一项以上。
示例性的,若第一集合包括室内场景下的灯、窗户、以及门缝类别物体,则如图2所示,上述确定第一图像中是否包括目标物体具体可以如图2所示中步骤S1021-S1023所示:
S1021,基于场景分类算法确定第一图像属于室内场景还是室外场景。
场景分类是指通过过滤、提取图像的RGB或透明度值特征等操作,将第一图像与系统中存储的大数据相匹配,利用人工智能技术,识别出第一图像所处的室内或室外场景类别。
可选的,上述场景分类算法可以为基于全局特征的空间信封模型场景分类算法,也可以为基于局部二值模式(local binary pattern,LBP)和小波纹理特征的室内室外场景分类算法,本文对此不做限定(本文所描述的场景分类算法的说明与此一致)。
在确定第一图像属于室内场景的情况下,执行步骤S1022;在确定第一图像属于室外场景的情况下,则不对第一图像进行丁达尔光效处理,也即结束任务。
S1022,通过语义分割算法确定第一图像中是否包含灯类别、窗户类别或门缝类别的物体。
在本申请实施例中,可以使用已经训练好的语义分割分类器对第一图像进行语义分割确定第一图像是否包括上述目标物体;也可以采用已知分类结果的样本图像数据(已知窗户、门缝、灯等物体位置的分类图像)中像素点的特征训练分类器,再根据训练得到的语义分割分类器对第一图像进行语义分割确定第一图像是否包括上述目标物体。
示例性的,上述语义分割算法可以为传统的随机森林算法(rondom froest,RF)。相比于其他语义分割算法,RF具有分析复杂分类特征的能力,对于噪声数据和存在缺失值的数据具有很好的鲁棒性,并具有较快的学习速度。
基于RF的像素点的语义分类中,是基于该像素点与周围像素点的RGB颜色值的差值特征作为分类依据。
具体的,RF属于集成学习中的引导聚集算法(Bootstrap aggregating,Bagging)。RF在训练阶段利用Bagging重抽样方法从已知图像像素点分类结果的样本图像数据中抽取多份样本,且每一份样本的样本图像数据大于或等于2。然后对每份样本进行决策树建模,采用每份样本图像数据中像素点与周围像素点的RGB颜色值的差值特征,训练对应的决策树,得到包含多棵决策树的随机森林分类器。
示例性的,在上述RF的训练阶段,提取像素点与周围像素点的特征具体可以包括:从当前像素点周围随机地采样出固定大小的预设窗口,并在预设窗口中随机的选取两个像素点与当前像素点的RGB值做差值对比,并将差值特征量化为数值向量。根据选取的像素点的不同,就可以得到与当前像素点对应的多个数值向量,这样的数值向量的集合就可以被用于训练决策树,从而得到随机森林分类器。
在实际应用中,示例性的,将上述第一图像输入随机森林分类器,对于第一像素点中的任意一个像素点,随机森林分类器中的每一棵决策树根据该像素点与周围像素点的RGB颜色值的差值特征做出分类投票,随机森林分类器根据该多棵决策树的分类投票结果中投票数目最多的分类结果作为第一图像中该像素点的分类结果。具体的,以第一图像中的每个2D像素点(记为当前像素点)作为中心,提取一个预设窗口,在这个预设窗口中提取上述数值向量的集合,利用随机森林分类器的决策树对这些向量分别进行投票,根据投票结果选举产生该2D像素点最可能的归属类别。最后通过对整个图像的每一个像素进行类别预测,再根据2D像素点的归属类别,得到第一图像的语义分割结果。
本申请实施例中,上述基于语义分割确定第一图像是否包含目标物体,可以理解为,确定第一图像中2D像素点的归属类别中是否包含与目标物体对应的2D像素点归属类别;若是,则第一图像包括目标物体,若否,则第一图像不包含目标物体。或者,也可以理解为,确定第一图像中2D像素点的归属类别中包含的与目标物体对应的2D像素点归属类别相同的像素点的数目是否大于预设数量阈值,例如预设数量阈值为10个像素点;若是则第一图像包括目标物体,若否,则第一图像不包含目标物体。
可选的,上述语义分割算法还可以是基于深度学习的全卷积神经网络(fullyconvolutional networks,FCN)。相比于传统的RF语义分割算法,基于深度学习的算法分割精度更高。
FCN语义分割原理是在全卷积神经网络(convolutional neural network,CNN)语义分类的基础上加入了反卷积层。CNN的语义分类原理中,示例性的,在训练阶段,针对已知图像分类结果的样本图像数据中的每一张原始图像,以二分之一的幂次方缩小原始图像下采样获取特征图,根据特征图对应的特征向量通过神经学习网络训练用于计算原始图像中对于每个类别的概率的参数以及计算方式,直到CNN分类模型达到一定的准确度后,得到CNN分类模型。但是该CNN分类模型是整张图像属于每一个类别的概率。例如,将图像输入CNN分类模型,可以得到一个长为1000的输出向量,每一个向量的取值表示输入的图像属于对应类别的概率。
然而,通过FCN对第一图像进行像素级的分类训练主要包括:通过普通卷积网络对第一图像中的当前像素点的周围像素点进行下采样,生成对应的多个特征图(featuremap),基于该多个特征图对缩小倍数最大的特征图对应的像素点进行分类,得到该像素点属于每一个类别的概率,由此得到该像素点代表的大小区域对应到原始图像的区域中的一个或多个像素点属于每一个类别的概率;以及通过反卷积(也即转置卷积)对feature map进行上采样生成与第一图像大小一致的特征图。其中,在下采样中,设置N层(例如N取值大于或等于5)层普通卷积网络获得对应N个feature map。在上采样中,通过N层反卷积网络,并采用反卷积层对普通卷积网络中的最后一个卷积层的feature map进行上采样,使它恢复到与第一图像相同的尺寸,从而后续可以对第一图像进行逐像素预测,对第一图像中的每个像素都产生了一个预测,同时保留了原始输入的第一图像中的空间信息。
可选的,上述语义分割算法还可以是基于深度卷积神经网络(DeepLab)的分割方法。相比于深度学习的FCN语义分割算法,基于DeepLab的分割方法可以在一定程度上减少细节信息的丢失,提高语义分割图像的分辨率。
基于DeepLab的分割方法主要使用的技术包括空洞卷积、空洞空间卷积池化金字塔(atrous spatial pyramid pooling,ASPP)、条件随机场(conditional random field,CRF)技术。空洞卷积的作用在于,可以在使用相同样本参数的数量情况下,使卷积核拥有更大的感受野(感受野也即卷积神经网络每一层输出的feature map上的2D像素点在输入图片上映射的区域大小),在一定程度减少了细节信息的丢失,也可以实现将卷积的采样稀疏化。具体设计当中,空洞卷积的使用,相比于FCN减少了对第一图像进行下采样的次数(例如从5次减少至3次)。也就是说,DeepLab分割方法在保障达到和FCN中通过普通卷积进行下采样、通过转置卷积进行上采样相同的效果的前提下,不产生棋盘效应,以及可以产生相比FCN更连续的feature map输出。从而可以更好地保留细节信息,提高语义分割中第一图像的分辨率。
可选的,还可以通过深度学习方法训练得到深度估计模型。示例性的,获取带有深度值标签的样本图像;利用全卷积网络和带有深度值标签的样本图像对图像深度估计模型进行训练,直至全卷积网络中包含的损失LOSS层输出的损失函数小于预设阈值;利用训练得到的图像深度估计模型确定第一图像的深度信息map图。
可理解的,具体可以基于不同的需求确定使用何种语义分割算法对第一图像进行语义分割,本文对此不做限定。以及,上述列举的随机森林算法、FCN或DeepLab语义分割算法仅为示例,还可以基于其他的语义分割算法执行步骤S102,本文对此不做限定。
可理解的,对于采用语义分割技术识别窗户物体,会根据窗户像素点涉及的范围将窗户位置划分为一个语义mask为窗户的区域,若窗户为敞开的窗户,敞开区域包括窗外的角色,敞开区域也是会被划分为窗户区域。
若确定第一图像中包含窗户类别或门缝类别的物体,则执行步骤S103和S104。若确定第一图像中不包含窗户类别或门缝类别的物体,则执行步骤S108(不对第一图像进行丁达尔光效处理,也即结束任务,不对第一图像执行步骤S103和S104)。
阶段2:电子设备对第一图像进行三维重建以及光照估计。
S103,基于第一图像的三维深度信息对第一图像进行三维重建,得到第一图像的第一三维模型。
可理解的,第一图像的三维深度信息即为第一图像中每个2D像素点相对拍摄源的距离。对第一图像进行三维建模,可以理解为,为第一图像中的每一个2D像素点添加深度信息(也即3D位置坐标信息),将2D像素点转换为3D像素点,且该3D像素点包括的RGB颜色值与对应的2D像素点的RGB颜色值一致。
在本申请实施例中,上述第一三维模型中每个3D像素点的信息包括:3D位置信息(也即坐标位置)和RGB颜色值。
一般地,根据多视图几何原理,对于一个静止的场景,如果从不同位置拍摄了多幅图像,而且不同图像之间有公共内容,那么理论上就能从这些图像自动地恢复出相机的内外参数以及场景的三维信息。
在本申请实施例中,可以在第一图像的基础上,再获取第一图像在不同视角下的一张或多张第三图像,从而基于第一图像和一张或多张第三图像的图像视差确定深度值。或者,为满足用户针对一张图像就能形成丁达尔光效的需求,在仅获取一个视角下的一张第一图像的情况下,也可以基于该第一图像在已知三维深度信息的训练图像集中选取参考帧,再基于第一图像和参考帧计算图像视差,基于图像视差通过代价聚合方式计算出深度值。
可选的,可以基于多视图立体匹配的三维重建方法(为便于描述也将其简称为多视图立体法)中对第一图像进行三维重建。
示例性的,多视图立体法可分为深度图生成和深度信息融合两个阶段。深度图生成步骤中,基于该第一图像在已知三维深度信息的训练图像集中选取参考帧,再基于第一图像和参考帧计算图像视差,然后基于图像视差通过代价聚合方式计算出深度值。在深度信息融合阶段,通过COLMAP 3D重建方法实现对第一图像中物体的点云建模。具体的,先估计出深度图所对应的点云各点法向量值,再对点云进行降采样和去噪,并对最终剩下的点云使用Delaunay三角剖分算法(delaunay triangulation algorithm)生成面片,得到第一图像对应的三维点云模型(第一三维模型)。可理解的,这里的点云建模是针对空间中实物部分的建模,例如地板、窗户、门缝等实物。
可理解的,基于多视图立体法对第一图像进行三维重建,对该第一图像在其他不同视角下的第三图像的数量不做要求,可以不包括第三图像也可以包括一张或一张以上的第三图像。
可选的,还可以基于神经辐射场(neural radiance fields,NeRF)技术对第一图像进行三维建模。相比于传统的多视图立体法,采用NeRF技术对第一图像进行三维建模可以获得更高精度的三维建模结果,使得最终生成的丁达尔光效更逼真。
具体的,NeRF可以利用多个视角下的多张图像生成高质量的视图合成结果。NeRF可以基于多层感知器(multilayer perceptron,MLP)神经网络隐式地学习一张图像和该图像在不同视角下的多张图像对应的3D场景。该NeRF网络的输入包括多帧图像和相机内部参数和外部参数,然后经过3层全连接网络,获得与该多帧图像对应的三维模型中每个3D像素点的深度信息(也即3D位置坐标)和RGB颜色值。
可理解的,基于NeRF对第一图像进行三维重建,要求电子设备还需要采集该第一图像在其他不同于该第一图像的视角下的一张或一张以上第三图像,以及获取相机的内部参数和外部参数。其中,内部参数是与相机自身特性相关的参数,比如相机的焦距、像素大小,外部参数是相机在世界坐标系中的参数,比如相机的位置、旋转方向等。
可选的,也可以通过除了上述多视图立体法和NeRF技术之外的其他三维重建算法对第一图像进行三维建模,本文对此不做限定。示例性的,还可以通过基于轮廓的三维重建技术、基于光度的多视图三维重建技术、基于光线的全局优化三维重建方法、或基于光度立体视觉的三维重建方法对第一图像进行三维重建,本文对此不做限定。
S104,对第一图像进行光照估计,得到第一图像的光照信息。
在本申请实施例中,由于目前光照估计技术仅支持对二维图像进行光照估计,从而对二维的上述第一图像进行光照估计得到上述第一图像的光照信息。若随着算法技术的发展,出现可以对三维模型进行光照估计的技术,也可以对第一图像对应的三维模型进行光照估计,本文对此不做限定。
在本申请实施例中,上述光照信息包括第一图像中对应的2D像素点的光颜色(光RGB颜色值)和光照能量。在一些实现方式中,上述光照信息除了包括上述光颜色和光照能量之外,还可以包括光反射率和/或阴影信息,本文对此不做限定。
示例性的,上述光照信息中第一图像对应像素点的光颜色和光照能量可以基于光照环境图确定,光照环境图中可以包括每个2D像素点对应的光照能量和光颜色,还可以包括光反射率和/或阴影信息。其中光照能量越强则表示像素点离光源越近,光照能量越弱则表示像素点离光源越远,基于光源位置以及能量减弱的方向则可以确定光照方向。示例性的,可以基于标志物阴影分析的方法或基于标志物表面图像估计光照等的方法确定光源位置。
在本申请实施例中,可以采用局部Spatially varying算法对第一图像进行光照估计。Spatially varying算法效果与亮度的分布相关,其基本思想就是根据亮度值分布的不同将第一图像分成不同的区域,然后不同的区域会用不同的压缩曲线进行亮度的压缩,得到对应区域的光照信息(光照环境图)。这种方法使得第一图像中2D像素点的压缩情况与其相邻2D像素点紧密相关,细节信息丢失较少,可以有效处理遮挡关系问题。
在一种可能的实现方式中,考虑到计算机性能问题,和/或第一图像中丁达尔光效的位置范围可能不大的问题,也可以仅对第一图像中的部分区域进行光照估计(也可以理解为局部光照估计)。
示例性的,裁剪第一图像中上述目标物体附近区域的图像得到第一裁剪图像。对该第一裁剪图像进行光照估计,将得到的光照信息作为第一图像中与第一裁剪图像对应区域的光照信息。
例如,采用局部阶调映射中的Spatially varying算法,将上述第一裁剪图像作为输入,根据该第一裁剪图像中亮度值分布的不同将第一裁剪图像分成不同的区域一一进行光照估计处理,输出与该第一裁剪图像对应的光照信息,并将该第一裁剪图像的光照信息作为第一图像中与第一裁剪图像对应区域的光照信息(也可以理解为第二光照环境图)。
在一种可能的实现方式中,为提高利用上述第一裁剪图像进行光照估计得到的光照信息的准确度,还可以在利用第一裁剪图像进行光照估计得到上述光照信息的基础上,根据该光照信息中的初始光照方向(也可以理解为光照角度),在第一图像中重新选择第二裁剪图像的面积,再利用该第二裁剪图像进行光照估计,将对该第二裁剪图像进行光照估计得到的光照信息作为上述第一图像的光照信息(也可以理解为第三光照环境图)。
在本申请实施例中,根据第一裁剪图像对应的光照环境图确定初始光照方向的方法包括:光照环境图中与光源距离小于第一距离(例如该第一距离为5个像素点)的像素点的光照能量小于第一阈值(例如第一阈值取值为100勒克斯),则表明该像素点不能表示光照方向。而是在光照能量大于或等于第一阈值的像素点中,根据光源位置以及光照能量由强到弱可以确定初始光照方向。在本申请实施例中,根据初始光照方向获取第二裁剪图像的方法包括:如图3所示,以第一裁剪图像对应的光照环境图中的强光区域为水平面,将第一图像分为区域S1和区域S2,裁剪保留与上述初始光照方向一致的区域作为第二裁剪图像。例如初始光照方向如图3所示,光照方向为由强光区域至右下角,则裁剪保留区域S2作为第二裁剪图像。
在一种可能的实现方式中,若第一图像为包含窗户类别的图像(具体如图4A所示),则获取第二裁剪图像的方法包括:确定2D强光区域中距离光源最近的第三像素点(也可以理解为第三像素点为2D强光区域中光照能量最大的一个像素点,或第三像素点为光照能量最大的多个像素点中与第一图像左上顶点距离最近的像素点);根据该第三像素点与光源的连线,并以基于该第三像素点与光源的连线向第一图像的下边边长(也可以理解为地面位置)做射线,射线与该下边边长的交点作为第一交点。然后,根据该第三像素点和该第一交点裁剪得到上述第二裁剪图像。
例如,如图4B所示,确定长方形长度为第一像素点到第一图像左下角顶点的距离,长方形宽度为第一图像左下角顶点到第一交点的距离,在第一图像中与第三像素点为该长方形的左上角顶点裁剪图像,得到上述第二裁剪图像。又例如,如图4C所示,在第一图像中裁剪该长方形一般面积的三角形图像,得到上述第二裁剪图像。可理解的,上述关于长方形或三角形的裁剪方式仅为示例,还可以为其他裁剪方式(例如基于弧形的裁剪方式),本申请实施例对于第二裁剪图像的裁剪方式不做限定。
以下为便于描述,将上述第一裁剪图像或第二裁剪图像统称为裁剪图像。
可理解的,若对整个第一图像进行光照估计,则可以得到第一图像中每个2D像素点的光照信息。若仅对第一图像的裁剪图像进行光照估计,则仅可以得到第一图像中与裁剪图像对应的2D像素点的光照信息。
在本申请实施例中,上述步骤S103和S104的执行顺序可以是先后执行也可以是同时执行,本文对此不做限定。
阶段3:电子设备为第一图像对应的三维模型中的目标空间位置添加三维第一像素点。
S105,基于第一三维模型以及第一图像的光照信息,对第一三维模型中目标空间位置添加对应的第一像素点。
在本申请实施例中,上述目标空间位置为第一三维模型中除了物体的内部非实物空间之外的非实物空间位置。
可理解的,第一三维模型中除了物体的内部非实物空间之外的非实物部分空间中仅存在空间位置信息,而不存在颜色信息,例如该目标空间位置可以包括空气部分空间,但不包括物体的内部非实物空间。示例性的,上述对第一三维模型中目标空间位置添加对应的第一像素点,也可以理解为,为第一三维模型中除了物体的内部非实物空间之外的其他不具备颜色信息的空间位置添加第一像素点。
在本申请实施例中,上述第一像素点为3D像素点,该第一像素点的信息包括3D位置信息、RGB颜色值和透明度值。其中,第一三维模型中即包含了该第一像素点的3D位置信息。关于第一像素点的透明度,其取值范围为大于0且小于1,透明度值越趋近于0表征该3D像素点的光照强度越弱(光照强度越弱也即光照能量越弱,表征像素点距离光源越远),透明度值越趋近于1表征该3D像素点的光照强度越强(光照强度越强也即光照能量越强,表征像素点距离光源越近)。
在本申请实施例中,可以根据步骤S104得到的第一图像的光照信息中的光颜色,确定第一像素点的RGB颜色值。以及,可以根据第一图像的光照信息中的光照能量,确定第一像素点的透明度值。
示例性的,针对第一三维模型中与第一3D位置对应的第一像素点,根据3D到2D的位置映射关系,将第一3D位置信息转化为第一2D位置信息。再根据光照环境图中该第一2D位置信息对应的2D像素点A的光颜色确定该第一像素点的RGB颜色值。以及,根据光照环境图中该2D像素点A的光照能量确定该第一像素点的透明度值。示例性的,像素点A的光照能量越强则该第一像素点的透明度值越趋近于1。
例如,上述将第一3D位置信息转化为第一2D位置信息的方法可以有:设第一像素点的3D位置信息(也即第一3D位置)为(x1,y1,z1),则第一像素点对应的2D位置(也即第一2D位置)为(x2=focal_length*x1/y1,y2=focal_length*y1/z1)。其中,focal_length为预设数值。
可理解的,若在步骤S104中,对第一图像进行光照估计具体为对上述裁剪图像(第一裁剪图像或第二裁剪图像)进行光照估计,光照估计仅获取第一图像中与该裁剪图像对应的2D像素点的光照信息(光照信息包括光颜色),不获取第一图像中不属于裁剪图像部分区域的像素点的光照信息。
在本申请实施例中,对于未获取光照信息的该第一2D位置上的2D像素点的情况,则不为该第一2D位置对应的第一3D位置添加第一像素点。
示例性的,若在步骤S104中,对第一图像进行光照估计具体为先对第一裁剪图像进行光照估计得到初始光照方向,再根据初始光照方向获取上述第二裁剪图像,并对上述第二裁剪图像进行光照估计,则在步骤S105中,不属于上述裁剪图像区域的上述第一2D位置上的2D像素点,不为该第一2D位置对应的第一3D位置添加第一像素点。从而,一方面,减少进行径向模糊处理获取丁达尔光效的像素点数量,减少性能损耗,另外一方面,可理解的,径向模糊的方向是由中心点向四周各个方向散射,从而会出现径向模糊的方向与光照方向吻合度不高,导致最终生成的丁达尔光束真实性差的问题。然而,本申请基于光照方向裁剪上述第二裁剪图像,并基于第二裁剪图像对应的光照信息为三维模型中与第二裁剪图像对应的空间位置添加第一像素点,以目标区域(目标区域大致为第三像素点附近区域)作为中心对第一像素点做径向模糊处理以获得三维丁达尔光束。也即根据光照方向裁剪图像,选取与光照方向一致的空间位置添加像素点,从而使得对像素点做径向模糊处理后得到的丁达尔光束与光照方向吻合度更高,最终得到的第二图像中二维丁达尔光束效果更自然、真实。
在本申请实施例中的一些表述中,第一像素点也可以称为第一虚拟粒子像素点或第一虚拟胶体粒子像素点,处理后的第一像素点也称可以为第二虚拟粒子像素点或第二虚拟胶体粒子像素点,用于代表在自然条件下可以产生丁达尔效应的胶体粒子。
阶段4:电子设备对三维第一像素点做径向模糊,得到三维丁达尔光束。
S106,以第一三维模型中的目标区域为中心,对该目标区域之外的第一像素点做径向模糊处理,得到处理后的第一三维模型。
上述处理后的第一三维模型包括上述第一像素点做径向模糊处理后得到的处理后的第一像素点。
以下为便于描述,也将处理后的第一三维模型称为第二三维模型。
示例性的,如图5所示,对第一像素点做径向模糊处理包括以下步骤:
S1061,确定径向模糊的中心点。
在本申请实施例中,径向模糊的中心点即为上述目标区域的中心点,上述目标区域为第一图像中目标物体所属区域的光照环境图中的2D强光区域对应到第一三维模型中的中心区域,该中心区域也即上述目标区域。
在本申请实施例中,上述目标区域可以包括一个或多个像素点,该一个或多个像素点中可能包括实体物体对应的像素点,还可能会包括上述第一像素点,但本文仅对目标区域以外的第一像素点做径向模糊处理,不对目标区域中包含的第一像素点做径向模糊处理。
S1062,计算目标区域之外的第一像素点到上述中心点的第一距离,根据该第一距离确定与该第一像素点对应的第一偏移量。
在本申请实施例中,上述第一偏移量根据第一距离和偏移量预设规则确定,该偏移量预设规则包括第一距离越大则第一偏移量越大。示例性的,该偏移量预设规则包括:第一距离为100个像素点,对应的第一偏移量为10个像素点;第一距离为200个像素点,对应的第一偏移量为20个像素点。
S1063,根据第一偏移量和采样规则,在第一像素点到上述中心点的连线上的像素点进行采样,得到与第一像素点对应的一个或一个以上的采样点。
上述采样点也称为采样像素点。以下为便于描述,记第一像素点到上述中心点的连线为第一连线。
上述采样规则为:第一距离越小则采样点越密集,第一距离越大则采样点越稀疏的采样步进规则。示例性的,上述采样规则包括:若第一距离为100个像素点,则对应的采样步进距离为2个像素点;若第一距离为200个像素点,则对应的采样步进距离为3个像素点。以及,所采样的像素点(也即采样点)必须为上述目标区域以外的像素点。
可理解的,径向模糊中第一像素点距离中心点越远,对应的第一偏移量越大,以及对应的采样步进距离也越大;从而,与第一像素点对应的每个采样点与第一像素点之间的距离越远,该第一像素点的RGB会由第一连线上与第一像素点距离越远的一个或多个采样像素点的RGB共同决定。从而达到距离中心点越远则模糊效果越强以突出速度感的效果。
具体的,上述根据第一偏移量和采样规则,在第一像素点到上述中心点的连线上的像素点进行采样,得到采样点,包括:在上述第一连线上从与第一像素点距离小于或等于第一偏移量个像素点的像素点范围内根据采样步进距离和采样数量采样像素点,得到与采样数量一致的第一像素点对应的一个或一个以上采样点。该采样步进距离用于表征采样的密集程度,该采样数量小于或等于第一连线上的全部像素点数量与采样步进距离的比值。
可理解的,将采样方向记为由第一像素点向中心点位置采样,若第一个采样点离第一像素点太远,可能会出现沿着中心点方向按照第一偏移量和步进距离采样,无法完成与采样数量一致的采样点数量,则此时可以再沿着上述采样方向的反方向,以第一个采样点为起点再根据第一偏移量和步进距离再采样方向的反方向采样剩余数量的采样点,已达到采样点的数量与采用数量一致。在本申请实施例中,第一个采样点的位置可以通过随机采样的方式确定。
示例性的,第一像素点A(以下简称像素点A)对应的上述第一距离为100个像素点,第一偏移量为10个像素点,采样步进距离为2个像素点。则上述根据第一偏移量和采样规则,在第一像素点到上述中心点的连线上的像素点进行采样,得到采样点,包括:在第一连线上从与第一像素点A的距离小于或等于10个像素点的像素点范围内,按照步进距离为2个像素点的规则采样像素点,得到与第一像素点A对应的一个或一个以上采样点。
S1064,根据第一像素点对应的一个或一个以上的采样点的RGB颜色值确定第一像素点的第一RGB颜色值。
示例性的,上述根据第一像素点对应的一个或一个以上的采样点的RGB颜色值确定第一像素点的第一RGB颜色值,可以为:将第一像素点对应的一个或一个以上的采样点的RGB颜色值的平均和作为第一RGB颜色值。
示例性的,上述根据第一像素点对应的一个或一个以上的采样点的RGB颜色值确定第一像素点的第一RGB颜色值,也可以为:将第一像素点对应的一个或一个以上的采样点的RGB颜色值的加权平均和作为第一RGB颜色值。对采样像素点的RGB颜色的加权规则可以为0到1范围内的随机数。
在一些表述中,上述目标区域也称为第一区域。
S1065,根据迭代次数重复上述步骤S1063至S1064,得到与迭代次数对应的多个第一RGB颜色值,并将该多个第一RGB颜色值的总和与迭代次数的比值作为上述处理后的第一像素点的RGB颜色值。
上述处理后的第一像素点即为第一像素点进行径向模糊处理后得到的更新后的第一像素点。
可理解的,根据每一次迭代时,第一像素点的第一个采样点的起始位置的不同,以及,将第一像素点对应的一个或一个以上的采样点的RGB颜色值的加权平均中的加权随机数的不同,可以得到不同的采样点或不同的加权随机数,从而可以得到与迭代次数对应的多个第一RGB颜色值。
在本申请实施中,上述迭代次数大于或等于2,示例性的,迭代次数可以取值为3。可理解的,迭代次数越多,径向模糊效果越自然,但相应的电子设备的性能损耗越大。由此,可以基于具体需求设置所需的迭代次数。
可理解的,对第一三维模型中的全部第一像素点均进行径向模糊处理后,可以得到具备三维信息的丁达尔光束(该丁达尔光束由上述处理后的第一像素点构成)。从而可以将第一三维模型更新为包含该处理后的第一像素点的第二三维模型。在一些表述中,具备三维信息的丁达尔光束也可以称为三维丁达尔光束。
阶段5:电子设备对包含三维丁达尔光束的三维模型做渲染处理,得到包含丁达尔光束的二维图像。
S107,将处理后的第一三维模型中像素点的三维信息通过渲染技术转换为二维信息,得到与第一图像对应的具备丁达尔光效的第二图像。
示例性的,将第二三维模型(处理后的第一三维模型)渲染成2D图像,也可以理解为以第一图像中相机拍摄源为参考对该第二三维模型的场景成像,所得到的2D图像上的一个像素点A实际上对应了一条从相机拍摄源出发的射线上的所有连续空间像素点,电子设备可以通过渲染算法从这条射线上的所有像素点的颜色得到这条射线的最终渲染颜色,并根据这条射线的反向延长线确定与这条射线对应的该像素点A的位置信息。
示例性的,在渲染器的训练阶段,可以基于可微的光栅渲染器原理对步骤S104得到的光照信息进行逆向训练,进一步提高光照估计的精度。该训练阶段的光栅渲染器可以基于可微渲染softras算法实现。在运行阶段,将第二三维模型输入渲染器,基于体绘制渲染器原理对第二三维模型实现渲染,渲染出2D图像。
示例性的,还可以基于神经渲染(Neural rendering)技术将第二三维模型渲染成2D图像。渲染器的输入为第二三维模型中每个3D像素点的3D位置、RGB颜色值以及透明度值,在神经渲染训练阶段,通过体绘制方程进行渲染。运行阶段可基于可微渲染器、物理渲染器或者体绘制方程均可以获得与第二三维模型对应的2D图像。
由此,充分利用第一图像中隐含的光照信息、物体三维位置信息、以及空间三维位置信息,制作由上述处理后的第一像素点形成的具备三维信息的丁达尔光束,再对包含该具备三维信息的丁达尔光束的第二三维模型进行渲染处理得到第二图像,该第二图像中的丁达尔光效真实感强,在一定程度上提高了由后期图像处理技术形成的丁达尔光效的真实感。
S108,不对第一图像进行丁达尔光效处理,结束任务。
也即,在确定第一图像不包括目标物体的情况下,不对第一图像进行丁达尔光效处理,结束任务。
在本申请实施例中,电子设备可以自动识别是否对图像进行丁达尔光效处理。
示例性的,在一个场景中,电子设备获取到待存储的图像A,例如图像A可以是电子设备通过相机应用的摄像功能拍摄得到的待存储图像,电子设备基于步骤S101至S102在确定图像A中包括目标物体的情况下,通过上述步骤S103至S107对图像A进行丁达尔光效处理得到图像B,并将图像B作为拍摄图像存储到相册应用中。若电子设备基于步骤S102确定图像A中不包括目标物体,则不对第一图像进行丁达尔光效处理,直接将图像A作为拍摄图像存储到相册应用中。可理解的,在另外一些场景中,上述待存储的图像A也可以是电子设备通过网页下载得到的待存储图像,本文对此不做限定。
在一种可能的实现方式中,上述步骤S108在确定第一图像不包括目标物体的情况下,不对第一图像进行丁达尔光效处理,结束任务,具体包括:若上述第一图像为已存储到电子设备中且用户手动选择指定的需要进行丁达尔光效处理的数字图片,在电子设备确定第一图像中不包括上述目标物体的情况下,则输出第一提示信息,并不对第一图像进行丁达尔光效处理。该第一提示信息用于提示用户不对第一图像进行丁达尔光效处理的原因为上述第一图像中不满足进行丁达尔光效处理的条件,从而为避免出现丁达尔光效真实性差的问题,不对第一图像进行丁达尔光效处理。
在一种可能的实现方式中,也可以向用户提供自定义选择特定物体需要生成丁达尔效应的功能。示例性的,若电子设备为手机终端,则可以向用户提供如图6所示的用户界面,默认情况下,室内场景下的灯、窗户、门缝类别的物体对应的控件为开启状态,室外场景下的数目类别的物体对应的控件为关闭状态。若对应物体的控件为开启状态,则表明用户选择为包含该物体的图像进行丁达尔光效处理。若对应物体的控件为关闭状态,则表明用户选择不为包含该物体的图像进行丁达尔光效处理。由此,增加用户交互功能,优先满足用户需求,提高用户体验。
在一种可能的实现方式中,也可以向用户提供自定义设置上述第二图像中丁达尔光束的颜色信息、强度信息、数量信息以及范围信息中的一项或一项以上。
示例性的,若电子设备为手机终端,则可以向用户提供如图7所示的用户界面,向用户提高自定义设置丁达尔光束的颜色信息、强度信息、数量信息以及范围信息的可选项。
示例性的,关于丁达尔光束的颜色信息,可以通过将步骤S106中得到的上述第二三维模型中的全部处理后的第一像素点的RGB颜色值加上或减少第一数值的方式,满足用户自主选择的丁达尔光束的第一RGB颜色值的需求。例如,该第一数值可以是每一个上述处理后的第一像素点的RGB颜色值与上述第一RGB颜色值的差值的和的平均值。
示例性的,关于丁达尔光束的强度信息,可以通过增大或减小上述步骤S106中与第一像素点对应的第一偏移量的方式,满足用户自主选择的丁达尔光束的强度信息需求。和/或,还可以通过增大或减小上述步骤S106中与第一像素点对应的采样步进距离的方式,满足用户对丁达尔光束的强度信息需求。
例如,用户可选择的丁达尔光束的强度选项包括:强(等级A1)、正常(等级B1)、以及弱(等级C1)三个等级。默认情况下丁达尔光束的强度为等级B1。
例如,可选的,可以通过在等级B1的偏移量基础上增大第一像素点对应的偏移量值的方式,满足用户对等级A1丁达尔光束强度的需求;以及,通过在等级B1的偏移量基础上减小第一像素点对应的偏移量值的方式,满足用户对等级C1丁达尔光束强度的需求。例如,上述偏移量预设规则包括:针对等级B1丁达尔光束需求,若上述第一距离为100个像素点,则对应的第一偏移量为10个像素点;若第一距离为200个像素点,则对应的第一偏移量为20个像素点。针对等级A1丁达尔光束需求,若上述第一距离为100个像素点,则对应的第一偏移量为20个像素点;若第一距离为200个像素点,则对应的第一偏移量为30个像素点。针对等级C1丁达尔光束需求,若上述第一距离为100个像素点,则对应的第一偏移量为5个像素点;若第一距离为200个像素点,则对应的第一偏移量为10个像素点。
和/或,
例如,可选的,还可以通过在等级B1的采样步进距离的基础上增大第一像素点对应的采样步进距离的方式,满足用户对等级A1丁达尔光束强度的需求;以及,通过在等级B1的采样步进距离的基础上减小第一像素点对应的采样步进距离的方式,满足用户对等级C1丁达尔光束强度的需求。例如,上述采样规则包括:针对等级B1丁达尔光束强度需求,若第一距离为100个像素点,则对应的采样步进距离为2个像素点;若第一距离为200个像素点,则对应的采样步进距离为3个像素点。针对等级A1丁达尔光束强度需求,若第一距离为100个像素点,则对应的采样步进距离为3个像素点;若第一距离为200个像素点,则对应的采样步进距离为5个像素点。针对等级C1丁达尔光束强度需求,若第一距离为100个像素点,则对应的采样步进距离为1个像素点;若第一距离为200个像素点,则对应的采样步进距离为2个像素点。
示例性的,关于丁达尔光束的数量信息,可以通过控制步骤S106中进行径向模糊处理的第一像素点的数量满足用户对于丁达尔光束的数量要求。
例如,用户可选择的丁达尔光束的数量选项包括:多(等级A2)、正常(等级B2)、以及少(等级C2)三个等级。默认情况下丁达尔光束的数量等级为等级B2。
例如,若丁达尔光束的数量等级为B2,则在上述步骤S105中,对于上述第一2D位置上的2D像素点的光颜色为未知的情况,则不为对应的第一3D位置添加该第一像素点,从而可以在一定程度上将第一像素点的数量控制在与等级B2对应的正常级别数量,并在步骤S106中对全部第一像素点做径向模糊处理。若丁达尔光束的数量等级为C2,则选取一半数量的第一像素点(称为第三像素点),仅对于该第三像素点到中心点的连线上包括的第一像素点作径向模糊处理。若丁达尔光束的数量等级为等级A2,则在上述步骤S105中,对于第一2D位置上的2D像素点的光颜色为未知的情况,也仍为对应的第一3D位置对应添加该第一像素点,从而可以增加第一像素点的数量,并在步骤S106中对全部第一像素点做径向模糊处理。
示例性的,关于丁达尔光束的范围信息,可以通过控制步骤S106中进行径向模糊处理的第一像素点的范围满足用户对于丁达尔光束的范围要求。
例如,用户可选择的丁达尔光束的范围选项包括:大(等级A3)、中(等级B3)、以及小(等级C3)三个等级。默认情况下丁达尔光束的范围等级为等级B3。
例如,若丁达尔光束的数量等级为B3,则在步骤S106中,上述2D强光区域仅包括第一图像的光照环境图中光照能量最强的区域。若丁达尔光束的数量等级为A3,则上述2D强光区域可以包括第一图像的光照环境图中光照能量中强度排名前三的区域。若丁达尔光束的数量等级为C3,上述2D强光区域仅包括第一图像的光照环境图中光照能量最强的区域中的一半。
实施例2:
以下结合图8-图9,以通过电子设备的摄像头采集的单张室内含门缝的场景图像作为第一图像、以及采用第一图像的裁剪图像进行光照估计为例,详细说明本申请实施例提供的形成丁达尔光效的图像处理方法。如图8所示,本申请实施例提供的形成丁达尔光效的图像处理方法主要可以分为输入第一图像、三维重建、语义分割、光照估计、渲染器以及输出第二图像步骤。示例性的,基于输入的二维第一图像(具体实现可以参照以下步骤S901),对第一图像进行三维重建,其中三维重建包括深度估计和点云建模步骤(具体实现可以参照以下步骤S902和S903);以及,对第一图像进行语义分割(具体实现可以参照以下步骤S904),基于语义分割mask对第一图像中的裁剪图像进行光照估计(具体实现可以参照以下步骤S905)。并基于光照估计结果给三维模型添加第一像素点(具体实现可以参照以下步骤S906),以及,对三维模型中的第一像素点做径向模糊处理,得到包含具备三维信息的丁达尔光束的三维模型(具体实现可以参照以下步骤S907)。然后将三维模型输入渲染器,将三维信息转化为二维信息,从而得到具备丁达尔光效的二维第二图像(具体实现可以参照以下步骤S908)。
具体的,如图9所示,该方法包括:
S901,电子设备通过摄像头部件采集一张第一图像。
在本申请实施例中,上述第一图像中包括室内场景下的门缝物体。示例性的,上述电子设备通过摄像头部件采集第一图像,具体可以是:在室内含门缝的场景中,电子设备在接收到用户发起的拍摄指令后,执行拍摄任务采集得到一张对应的包括门缝的该第一图像。
在本申请实施例中,电子设备的摄像头部件可以包括前置主摄像头、前置副摄像头、后置主摄像头、以及后置副摄像头中的一项或多项。示例性的,电子设备可以通过后置主摄像头采集上述第一图像。
可理解的,在室内含门缝的场景中具备产生丁达尔光束的光源条件和胶体粒子条件的情况下,产生的丁达尔光束的明显程度与室内环境的幽暗程度成正比。也即室内环境越幽暗,产生丁达尔光束益加明显可见。从而,若希望第一图像经过本申请实施例提供的形成丁达尔光效的图像处理方法得到的丁达尔光束越明显可见,则可以在环境较暗的室内含门缝场景中采集上述第一图像。
S902,采用多视图立体法对第一图像进行深度估计,获取深度信息map图。
在本申请实施例中,基于多视图立体法的深度融合方法中的深度图生成步骤,得到与第一图像对应的深度信息map图(也即深度信息能量密度图)。该多视图立体法是一种可以实现深度图估计和稠密重建的三维重建技术。示例性的,可以围绕室内场景获得一张第一图像,深度估计筛选出参考帧计算图像视差,通过代价聚合方式计算出深度值,输出具体深度信息的map图。关于参考帧的说明请参照前文。
关于具体如何获得上述深度信息map图请参照本文其他实施例的相关说明(例如实施例1中步骤S103),在此不再详述。
S903,基于深度信息map图对第一图像对应的三维模型中的实物部分进行稠密点云建模,得到第一三维模型。
在本申请实施例中,基于多视图立体法的深度融合方法中的深度信息融合步骤进行稠密点云建模。示例性的,对第一图像的对应像素点进行特征值提取,特征匹配,基于几何条件的匹配优化获得稀疏点云;然后再利用深度信息map图配准原理融合深度,进而获得稠密点云,实现室内图像中物体的稠密点云建模。
本申请实施例提供的形成丁达尔光效的方法可以适用于第一图像是室内场景图像的情境,也可以适用于第一图像是室外场景图像的情境。示例性的,上述目标物体还可以包括室外场景中的树林类别的物体,具体处理流程与室内场景的第一图像的处理流程一致,在此不再详述。但一般地,采用多视图立体法对室内场景图像进行三维重建的精度较高,对室外场景图像进行三维重建的精度较低,针对第一图像是室外场景图像的情境生成的第二图像中的丁达尔光效的真实感会低于第一图像是室内场景图像的情境生成的第二图像中的丁达尔光效的真实感,但基于本申请提供的形成丁达尔光效的方法利用了第一图像的三维位置信息(虽然可能准确度不是十分完美)、且对三维模型添加虚拟粒子像素点等技术特征,从而采用本申请提供的形成丁达尔光效的方法得到的丁达尔光束的真实感略胜于其他形成丁达尔光效的方法(例如基于2D的PS技术)。
关于具体如何基于深度信息map图对第一图像对应的三维模型中的实物部分进行稠密点云建模还可以参照本文其他实施例的相关说明(例如实施例1中步骤S103),在此不再详述。
S904,基于全卷积神经网络(FCN)对第一图像进行语义分割,得到第一图像中的与目标物体对应的语义掩模(mask)输出。
关于目标物体的说明请参考其他实施例的相关描述(例如实施例1中S102的相关说明),在此不再详述。上述第一图像中包括的该目标物体至少有室内场景下的门缝,为便于描述,实施例2以第一图像中包括的该目标物体仅有室内场景下的门缝为例,说明本申请提供的形成丁达尔光效的图像处理方法。
在本申请实施例中,可以在FCN算法网络模型中设置语义分割仅输出与目标物体对应的语义mask。也即上述与目标物体对应的语义mask输出即为与窗门缝物体对应的语义mask。
关于具体如何根据FCN算法网络模型对第一图像进行语义分割请参照本文其他实施例的相关说明,在此不做详述。
可理解的,在确定第一图像中一定具备产生丁达尔光束的条件(也即第一图像中一定包括目标物体)的情况下,可以省略采用语义分割技术确定第一图像是否具备产生丁达尔光束的条件的步骤。例如在本申请实施例(也即实施例2)中,在确定第一图像一定包括室内场景下的门缝,则直接省略图1中的上述步骤S102),在实施例2中对第一图像进行语义分割目的是识别门缝位置,为对第一图像中的裁剪图像进行光照估计做准备。
S905,基于与目标物体对应的语义mask截取第一图像得到第一裁剪图像,对该第一裁剪图像进行光照估计,得到第一图像的光照环境图。
示例性的,目标物体为门缝,基于与门缝对应的语义mask中的位置信息,确定门缝的中心位置,并以门缝中心位置作为长方形左侧边长上的点,随机截取第一裁剪图像,使得第一裁剪图像的面积是第一图像的二分之一。
可理解的,以门缝中心位置作为长方形左侧边长上的点随机截取第一裁剪图像,使得第一裁剪图像的面积是第一图像的二分之一的裁剪方式仅为示例,也可以是其他裁剪方式,本文对此不做限定,例如以门缝中心位置作为圆的圆周上的点,随机截取第一裁剪图像,使得第一裁剪图像的面积是第一图像的二分之一(或三分之一等)。
在一些可能的实现方式中,还可以在利用第一裁剪图像进行光照估计得到上述光照环境图的基础上,根据该光照环境图中的光照方向(也可以理解为光照角度)、与门缝对应的语义mask位置信息,在第一图像中重新裁剪图像得到第二裁剪图像。再利用该第二裁剪图像进行光照估计,将对该第二裁剪图像进行光照估计得到的光照环境图作为上述第一图像的光照环境图,关于第二裁剪图像的裁剪方式具体可以参照其他实施例(例如实施例1中步骤S104)的相关说明在此不再详述。
在本申请实施例中,采用Spatially varying算法对上述第一裁剪图像或第二裁剪图像进行光照估计,实现室内局部环境光估计,兼顾物体间的遮挡关系,作为判断室内环境亮暗以及布光方向的依据。
示例性的,如图10所示,本申请提供的对第一图像进行光照估计的光照估计算法模型,主要分为输入图像、剪裁图像、密集卷积网络(DenseNet)、编码器(Encoder)、全连接层(fully connected layers,FC)和输出光照环境图步骤。输入图像指用户使用电子设备采集的第一图像。然后对输入图像根据语义分割进行剪裁,剪裁出门缝附近区域获得剪裁图像。再通过DenseNet网络提取中间层卷积输出,再接入一个Encoder网络,该Encoder网络可以为3层左右的一个编码器。最后经过一层全连接层FC输出36x3的feature map,该feature map就表示环境图,也即第一图像的光照环境图。
示例性的,采用上述第一裁剪图像对第一图像进行光照估计得到上述光照环境图,该光照环境图包括第一图像中与第一裁剪图像对应区域的2D像素点的光颜色和光照能量。光照能量越强则表示像素点离光源越近,光照能量越弱则表示像素点离光源越远,能量减弱的方向则代表光照方向。采用上述第二裁剪图像对第一图像进行光照估计得到的对应的光照环境图与此类似,在此不做详述。
S906,基于光照环境图对第一三维模型中的目标空间位置添加第一像素点。
也可以理解为,为第一三维模型中的目标空间位置增加具有透明度的点云,为后续形成丁达尔光效提供光像素点条件。
关于目标空间位置、以及具体如何基于光照环境图对第一三维模型中的目标空间位置添加第一像素点可以参照本文其他实施例的相关描述(例如实施例1中步骤S105中的相关说明),在此不再详述。
可理解的,关于第一图像的三维重建步骤(包括上述步骤S802和S803)和第一图像的光照估计步骤(包括上述步骤S804和S805)可以同时执行,也可以先后执行,本文对此不做限定。
S907,以第一三维模型中的目标区域为中心,对第一三维模型中的第一像素点做径向模糊处理生成具备三维信息的丁达尔光束,得到处理后的第一三维模型。
以下为便于描述,也将处理后的第一三维模型称为第二三维模型。
可理解的,对第一三维模型中的全部第一像素点均进行径向模糊处理后,可以得到具备三维信息的丁达尔光束(该丁达尔光束由上述处理后的第一像素点构成)。
关于目标区域的概念、具体如何对第一三维模型中的第一像素点做径向模糊处理请参照本文其他实施例的相关说明(例如实施例1中S1061至S1065中的相关说明),在此不再详述。
S908,将处理后的第一三维模型中像素点的三维信息通过渲染技术转换为二维信息,得到与第一图像对应的具备丁达尔光效的第二图像。
在本申请实施例中,渲染器的输入包括第二三维模型(包含三维模型中每个像素点的位置信息、颜色信息以及透明度信息)和步骤S805得到的光照环境图。在渲染器的训练阶段,基于可微的光栅渲染器原理对光照环境图进行逆向训练,进一步提高光照估计的精度。该训练阶段的光栅渲染器可以基于可微渲染softras算法实现。在运行阶段,将第二三维模型输入渲染器,基于体绘制渲染器原理对第二三维模型实现渲染,渲染出上述第二图像。
可理解的,相比于第二三维模型中的像素点的位置信息是经过配准原理将深度信息融合点云信息后得到的3D位置信息,深度信息map图中的深度信息由第一图像直接到的,从而深度信息map图中的3D位置信息则更为原始。在一些可能的实现方式中,还可以将上述深度信息map图和语义mask作为辅助信息(其作用与纹理贴图,也即UV贴图类似)输入渲染器,为3D模型到2D图像的渲染提供更为原始的3D深度位置信息和2D位置信息,进一步提高图像渲染精度。
示例性的,如图11所示,图11中的a为上述包括室内场景下的门缝物体的第一图像的示意图,图11中b为对第一图像执行上述步骤S901至S908步骤的操作处理后得到的与第一图像对应的具备丁达尔光效的第二图像的示意图。
在一种可能的表达方式中,上述步骤S901至S908所提供的形成丁达尔光效的图像处理方法的还可以用图12表示。如图12所示,本申请实施例提供的形成丁达尔光效的图像处理方法主要可以分为输入、光照估计和三维重建、渲染以及输出步骤。其中,输入即输入第一图像。光照估计和三维重建步骤,包括:通过全卷积神经网络FCN对第一图像进行语义分割得到语义分割图;基于语义分割图,通过光估计模型(例如Spatially varying或Spatially uniform)对上述第一裁剪图像或第二裁剪图像进行光照估计,得到光照环境图。另外,通过多视图立体法对第一图像进行深度估计,得到深度信息map图;基于深度信息map图,通过多视图立体法进行稠密点云建模得到第一图像对应的第一三维模型。然后,基于光照环境图为第一三维模型中的空间位置添加第一像素点;对第一像素点做径向模糊处理得到处理后的第一三维模型(也即第二三维模型)。在渲染步骤,将光照环境图、第二三维模型输入渲染器,以及将语义分割图和深度信息map图作为渲染器的辅助信息,将第二三维模型的三维信息转换为二维信息,得到第二图像。输出步骤即渲染器输出具备丁达尔光效的第二图像。具体实现过程可以参照本文相关实施例的说明,在此不再详述。
可理解的,关于向用户提供自定义选择特定物体需要生成丁达尔效应的功能和向用户提供自定义设置上述第二图像中丁达尔光束的颜色信息、强度信息、数量信息以及范围信息中的一项或一项以上的功能也同样适用于实施例2,具体可以参照实施例1中的相关说明,在此不再详述。
实施例3:
以下结合图13和图14,以通过电子设备的摄像头采集一张室内带窗场景下的第一图像、一张或一张以上第一图像在不同视角下的第三图像、以及采用完整的第一图像进行光照估计为例,详细说明本申请实施例提供的形成丁达尔光效的图像处理方法。如图13所示,本申请实施例提供的形成丁达尔光效的图像处理方法主要可以分为输入第一图像、语义分割、获取相机参数、光照估计、神经渲染以及输出第二图像步骤。示例性的,基于语义mask确定第一图像是否包括目标物体以及确定目标物体的二维位置信息(具体实现可以参照以下步骤S1401、S1402、以及S1408);若是,则基于相机参数和神经渲染中的NeRF原理对第一图像进行三维建模(具体实现可以参照以下步骤S1403),以及对第一图像进行光照估计(具体实现可以参照以下步骤S1404);然后基于光照估计得到的光照环境图对三维模型添加第一像素点(具体实现可以参照以下步骤S1405),以目标物体所属位置区域中的光照强度中的强光区域中心点对第一像素点做径向模糊(具体实现可以参照以下步骤S1406),再基于神经渲染方法将三维模型渲染为二维图像得到具备丁达尔光效的第二图像(具体实现可以参照以下步骤S1407)。如图14所示,该方法包括:
S1401,电子设备通过摄像头部件采集第一图像,以及通过摄像头部件采集一张或一张以上第三图像。
在本申请实施例中,上述第三图像为第一图像在其他不同视角下图像(也即其他不同于该第一图像的视角下的图像)。
关于第一图像的说明请参照本文其他实施例的相关描述(例如步骤S101中的相关说明),在此不再详述。
S1402,基于深度卷积神经网络(DeepLab)模型对第一图像进行语义分割,确定第一图像中是否包括第一图像。
在本申请实施例中,基于DeepLab网络模型对第一图像进行语义分割,可以得到第一图像中的与目标物体对应的语义分割掩模(mask)图输出。
关于目标物体的说明请参考其他实施例的相关描述(例如实施例1中S102的相关说明),在此不再详述。
在本申请实施例中,可以在DeepLab语义分割算法网络模型中设置仅输出与目标物体所属区域的语义mask。
示例性的,上述第一图像中包括的该目标物体为室内场景下的门缝。上述与目标物体所属区域对应的语义mask包括对应像素点的位置信息和该像素点的分类标签。
关于具体如何根据DeepLab语义分割算法网络模型对第一图像进行语义分割请参照本文其他实施例的相关说明,在此不做详述。
在本申请实施例中,鉴于FCN的语义分割方法下,采样过程中需要以损失分辨率为前提提升分割效率。实例3基于DeepLab网络的语义分割方法对第一图像进行语义分割,相比于FCN语义分割算法,DeepLab语义分割算法可以在使用相同样本参数的数量情况下,使卷积核拥有更大的感受野,从而可以更好地保留细节信息,提高语义分割图像的分辨率。
在确定第一图像中包括第一图像的情况下,执行步骤S1103和S1104;在确定第一图像中不包括第一图像的情况下,执行步骤S1108。
S1403,采用神经辐射场(NeRF)技术对第一图像进行三维重建,得到第一三维模型。
NeRF网络的输入包括多帧图像和相机参数,然后经过3层全连接网络,获得与该多帧图像对应的三维模型中每个3D像素点的深度信息(也即3D位置坐标)和RGB颜色值。
可理解的,电子设备中存储有相机的参数,从而可以电子设备可以直接读取相机内部参数和外部参数。
对比多视图立体算法,NeRF利用多个视角下的多张静态图像生成与第一图像对应的高质量的视图合成三维模型,可以获得更高精度的三维建模结果,使得最终得到的第二图像中的丁达尔效应更逼真。
本申请实施例提供的形成丁达尔光效的方法可以适用于第一图像是室内场景图像的情境,也可以适用于第一图像是室外场景图像的情境。示例性的,上述目标物体还可以包括室外场景中的树林,具体处理流程与室内场景的第一图像的处理流程一致,在此不再详述。但一般地,采用NeRF技术对室外场景的第一图像进行三维重建耗时较长,对电子设备的性能要求较高,所以本申请实施例主要以室内场景的第一图像为例详细说明本申请实施例提供的形成丁达尔光效的方法,但并不代表本申请实施例提供的形成丁达尔光效的方法不适用于第一图像是室外场景图像的情境。
S1404,采用完整的第一图像进行光照估计,得到第一图像的光照环境图。
示例性的,采用Spatially varying算法对第一图像进行光照估计,本文对此不做限定。
示例性的,如图15所示,相比于实施例2中关于图10所示的光照估计方法步骤,删减了裁剪图像步骤。主要分为输入图像、密集卷积网络(DenseNet)、编码器(Encoder)、全连接层(FC)和输出环境图步骤。输入图像指用户使用电子设备采集的第一图像。然后通过DenseNet网络提取中间层卷积输出,再接入一个Encoder网络,该Encoder网络可以为3层左右的一个编码器。最后经过一层全连接层FC输出36x3的feature map,该feature map就表示环境图,也即第一图像的光照环境图。
示例性的,对完整的第一图像进行光照估计得到上述光照环境图,该光照环境图包括第一图像中的每个2D像素点的光颜色和光照能量。
S1405,基于光照环境图对第一三维模型中的目标空间位置添加第一像素点。
关于目标空间位置、以及具体如何基于光照环境图对第一三维模型中的目标空间位置添加第一像素点可以参照本文其他实施例的相关描述(例如实施例1中步骤S105、实施例2中步骤S706中的相关说明),在此不再详述。
S1406,以第一三维模型中的目标区域为中心,对第一三维模型中的第一像素点做径向模糊处理生成具备三维信息的丁达尔光束,得到处理后的第一三维模型。
以下为便于描述,也将处理后的第一三维模型称为第二三维模型。
在本申请实施例中,上述目标区域为目标光照区域中的2D强光区域的中心点对应的3D位置,该目标光照区域为光照环境图中与语义mask为上述目标物体的像素点对应的区域。
关于具体如何对第一三维模型中的第一像素点做径向模糊处理,请参照本文其他实施例的相关说明(例如实施例1中S1061至S1065中的相关说明),在此不再详述。
S1407,将处理后的第一三维模型中像素点的三维信息通过渲染技术转换为二维信息,得到与第一图像对应的具备丁达尔光效的第二图像。
关于具体如何将处理后的第一三维模型中像素点的三维信息通过渲染技术转换为二维信息,请参照本文其他实施例的相关说明(例如实施例1中S107中的相关说明),在此不再详述。
S1408,不对第一图像进行丁达尔光效处理,结束任务。
也即,在确定第一图像不包括目标物体的情况下,不对第一图像进行丁达尔光效处理,结束任务。
在一种可能的表达方式中,上述步骤S1101至S1108所提供的形成丁达尔光效的图像处理方法的还可以用图16表示。如图16所示,本申请实施例提供的形成丁达尔光效的图像处理方法主要可以分为输入、光照估计和三维重建、渲染以及输出步骤。其中,输入即输入第一图像。光照估计和三维重建步骤,包括:通过DeepLab网络对第一图像进行语义分割得到语义分割图;通过光估计模型(例如Spatially varying或Spatially uniform)对第一图像进行光照估计,得到光照环境图。另外,通过NeRF对第一图像进行三维建模得到第一三维模型。然后,基于光照环境图为第一三维模型中的空间位置添加第一像素点;对第一像素点做径向模糊处理得到处理后的第一三维模型(也即第二三维模型)。在渲染步骤,将光照环境图、第二三维模型输入渲染器,以及将语义分割图和深度信息map图作为渲染器的辅助信息,将第二三维模型的三维信息转换为二维信息,得到第二图像。输出步骤即渲染器输出具备丁达尔光效的第二图像。
可理解的,关于向用户提供自定义选择特定物体需要生成丁达尔效应的功能和向用户提供自定义设置上述第二图像中丁达尔光束的颜色信息、强度信息、数量信息以及范围信息中的一项或一项以上的功能也同样适用于实施例3,具体可以参照实施例1中的相关说明,在此不再详述。
实施例4:
以下结合图17,说明本申请实施例提供的形成丁达尔光效的图像处理方法。如图17所示,该方法包括:
S1701,获取第一图像。
在本申请实施例中,上述第一图像为二维图像。关于第一图像的具体说明请参照本文其他实施例的相关说明(例如实施例1中的S101),在此不再详述。
S1702,对第一图像进行三维重建,得到第一三维模型。
示例性的,上述对第一图像进行三维重建包括:采用多视图立体法对第一图像进行深度估计得到深度信息map图,再基于深度信息map图对第一图像对应的三维模型中的实物部分进行稠密点云建模,得到上述第一三维模型,具体实现可以参照上述实施例1或实施例2中的相关说明(例如步骤S103、步骤S902以及S903),在此不再详述。
可理解的,采用多视图立体法对第一图像进行三维重建,对该第一图像在其他不同视角下的第三图像的数量不做要求,且三维重建复杂度更小,响应速度更快,可以在一定程度上减少性能损耗,以及提高用户使用体验。
或者,示例性的,上述对第一图像进行三维重建包括:获取与所述第一图像在不同视角下的一张或一张以上第三图像;所述对所述第一图像进行三维重建包括:根据所述第一图像、所述一张或一张以上第三图像、以及神经辐射场NeRF技术对所述第一图像进行三维重建。具体实现可以参照上述实施例1或实施例2中的相关说明(例如步骤S103和步骤S1303),在此不再详述。
可理解的,采用神经辐射场NeRF技术对第一图像进行三维重建可以进一步提高三维模型的精度信息,使得最终生成的第二图像的丁达尔光效更真实,以及保证第二图像的原始的第一图像的还原度。
在本申请实施例中,可以基于需求通过上述多视图立体法、NeRF技术或其他已知或未知的三维重建方法对第一图像进行三维重建,本文对此不做限定。
在一些可能的实现方式中,在S1701步骤获取到上述第一图像后,基于室内室外场景分类算法确定所述第一图像是否属于室内场景下的图像;若是,则基于语义分割算法确定所述第一图像中是否包含与所述目标物体对应的语义掩模;在确定所述第一图像属于室内场景下的图像且所述第一图像中包含与所述目标物体对应的语义掩模的情况下,再执行所述步骤S1702,具体可以参照上文S102、S108、S1402和S1408中的相关描述。
S1703,为第一三维模型中的目标空间位置添加第一像素点。
在本申请实施例中,所述目标空间位置为所述第一三维模型中除了实物物体内部的非实物空间位置之外的其他非实物空间位置,所述第一像素点的信息包括红绿蓝RGB颜色值和透明度值,所述第一像素点用于表征所述第一三维模型中包含胶体粒子。
可理解的,基于具体需求,上述目标空间位置还可以包括其他空间位置,例如目标空间位置还可以包括实物物体中的透光物体的内部实物空间位置,本文对此不做限定。
S1704,确定第一区域。
在本申请实施例中,所述第一区域为所述第一三维模型中目标物体所在区域中光照能量大于或等于第一阈值的区域,所述目标物体是能够为所述第一图像形成丁达尔效应提供光照条件的物体。
在本申请实施例中,上述确定第一区域也可以理解为基于对所述第一图像的光照估计得到的光照环境图确定上述第一区域。
示例性的,所述确定第一区域包括:基于语义分割技术确定所述第一图像中语义掩模为所述目标物体的第二区域;确定目标光照环境图中与所述第二区域对应的区域中光照能量大于或等于所述第一阈值的第三区域(该第三区域也可以理解为目标光照环境图中与所述第二区域对应的区域中强光区域),所述第一阈值根据所述目标光照环境图中所述目标物体所在区域像素点的光照能量的确定;确定所述第一三维模型中与所述第三区域对应的区域为所述第一区域。可理解的,上述目标光照环境图可以为基于完整的第一图像进行光照估计得到的光照环境图,也可以是基于第一裁剪图像进行光照估计得到的第二光照环境图,或者也可以是基于第二裁剪图像进行光照估计得到的第三光照环境图。
示例性的,在上述为第一三维模型中的目标空间位置添加第一像素点之前,所述方法还包括:根据所述第一图像中所述目标物体的位置区域裁剪所述第一图像,得到面积小于所述第一图像的第一裁剪图像;对所述第一裁剪图像进行光照估计,得到第二光照环境图;所述为所述第一三维模型中的目标空间位置添加第一像素点包括:确定所述第二光照环境图中是否包含与所述目标空间位置对应的第三像素点,所述第三像素点包括光RGB颜色值和光照能量;在确定所述第二光照环境图中包含所述第三像素点的情况下,为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第三像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第三像素点的光照能量确定。在确定所述第二光照环境图中不包含所述第三像素点的情况下,不为所述目标空间位置添加所述第一像素点。
例如,上述目标空间位置(三维空间位置)对应到第一图像中的位置的像素点不属于上述第一裁剪图像,也即未对第一图像中与目标空间位置对应的像素点进行光照估计,则不在该目标空间位置添加上述第一像素点。
示例性的,所述方法还包括根据所述第二光照环境图中像素点的光照能量确定光照方向;根据所述光照方向重新裁剪所述第一图像,得到第二裁剪图像,所述第二裁剪图像包括所述第一图像中与所述光照方向一致的图像区域,且所述第二裁剪图像小于所述第一图像的面积;对所述第二裁剪图像进行光照估计,得到第三光照环境图。确定所述第三光照环境图中是否包含与所述目标空间位置对应的第三像素点,所述第三像素点包括光RGB颜色值和光照能量;在确定所述第三光照环境图中包含所述第三像素点的情况下,为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第三像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第三像素点的光照能量确定。在确定所述第三光照环境图中不包含所述第三像素点的情况下,不为所述目标空间位置添加所述第一像素点。
例如,上述目标空间位置(三维空间位置)对应到第一图像中的位置的像素点不属于上述第二裁剪图像,也即未对第一图像中与目标空间位置对应的像素点进行光照估计,则不在该目标空间位置添加上述第一像素点。减少性能损耗,同时进一步提高第二图像中丁达尔光束的方向与光照方向的吻合度,使得丁达尔光束效果更自然、真实。
关于目标物体、第一裁剪图像、第二裁剪图像的可以参照本文其他实施例的相关说明(例如S104或S905的相关说明),在此不再详述。
本申请实施例对上述步骤S1703和S1704之间的先后执行顺序不做限定,可以同时执行也可以先后执行。
S1705,基于第一区域对第一像素点进行径向模糊处理,得到处理后的第一三维模型。
在本申请实施例中,所述处理后的第一三维模型中包含由处理后的所述第一像素点构成的三维丁达尔光束。
基于第一区域对第一像素点进行径向模糊处理,也可以理解为对以所述第一区域为径向模糊的中心区域(目标区域)对第一像素点进行径向模糊处理,具体可以参照S1061至S1065的相关描述。
可理解的,以第一区域为径向模糊中心对第一三维模型中添加的上述第一像素点进行径向模糊处理,径向模糊处理可以使得像素点间形成光线照射的速度感,由此可以使得第一三维模型中生成具备三维信息的丁达尔光束。
S1706,基于上述处理后的第一三维模型进行渲染处理,得到第二图像。
在本申请实施例中,所述第二图像为与所述第一图像对应的具备丁达尔光效的二维图像。
具体的,将上述处理后的第一三维模型输入渲染器,将上述处理后的第一三维模型的三维信息转换为二维信息,从而得到的具备丁达尔光效的二维第二图像。示例性的,上述渲染器可以是可微渲染器或物理渲染器,或也可以基于体绘制渲染技术或神经渲染NeRF技术将将上述处理后的第一三维模型的三维信息转换为二维图像信息。具体可以参照本文S107、S908或S1407中的相关说明。
可理解的,关于向用户提供自定义选择特定物体需要生成丁达尔效应的功能和向用户提供自定义设置上述第二图像中丁达尔光束的颜色信息、强度信息、数量信息以及范围信息中的一项或一项以上的功能也同样适用于实施例4,具体可以参照实施例1中的相关说明,在此不再详述。
示例性的,请参阅图18,图18为本申请实施例提供的电子设备100的结构示意图,下面通过移动终端作为该电子设备的一个示例进行详细的描述。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,传感器模块180,按键190,摄像头191,显示屏192,以及用户标识模块(subscriber identification module,SIM)卡接口193等。其中传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
示例性的,处理器210可以用于执行上述实施例1至实施例4所示的方法实施例中任意一个方法实施例的方法或步骤,也可以由处理器210和电子设备100中的其他模块配合执行上述实施例1至实施例3所示的实施例中任意一个方法实施例的方法或步骤,本文对此不做限定。例如,电子设备中的上述摄像头采集第一图像,电子设备中的该处理器210控制图像处理器对第一图像进行语义分割、光照估计、三维重建、径向模糊、渲染等处理以通过本申请实施例提供的形成丁达尔光效的图像处理方法,生成具备丁达尔光效的上述第二图像。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏192显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏192,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏192和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏192用于显示图像,视频等。显示屏192包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏192,N为大于1的正整数。
电子设备100可以通过ISP,摄像头191,视频编解码器,GPU,显示屏192以及应用处理器等实现拍摄功能。
ISP用于处理摄像头191反馈的数据。例如,拍照时,打开快门缝,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头191中。
摄像头191用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头191,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。通过NPU还可以实现本申请实施例提供的决策模型。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
图19是本申请实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将系统分为四层,从上至下分别为应用程序层,应用程序框架层,运行时(Runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图19所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序(也可以称为应用(application,App))。
本申请实施例中,该应用程序层还可以包括形成丁达尔光效的图像处理模块,该形成丁达尔光效的图像处理模块用于执行本申请实施例中的形成丁达尔光效的图像处理方法。
在本申请的一些实施例中,该形成丁达尔光效的图像处理模块、也可以位于该软件构架的其他层级中,例如应用程序框架层、系统库、内核层等,此处不作限定。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图19所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。视图系统包括可视控件,例如显示文字的控件,显示图像的控件等。视图系统可用于构建应用程序。电话管理器用于提供电子设备100的通信功能。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图像,布局文件,视频文件等等。通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。
运行时(Runtime)包括核心库和虚拟机。Runtime负责系统的调度和管理。
核心库包含两部分:一部分是编程语言(例如,jave语言)需要调用的功能函数,另一部分是系统的核心库。
应用程序层和应用程序框架层可以运行在虚拟机中。虚拟机可以将应用程序层和应用程序框架层的编程文件(例如,jave文件)执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),二维图形引擎(例如:SGL)等。
内核层是硬件和软件之间的层。内核层可以包含显示驱动,摄像头驱动,音频驱动,传感器驱动,虚拟卡驱动等。
上述实施例中所用,根据上下文,术语“当…时”可以被解释为意思是“如果…”或“在…后”或“响应于确定…”或“响应于检测到…”。类似地,根据上下文,短语“在确定…时”或“如果检测到(所陈述的条件或事件)”可以被解释为意思是“如果确定…”或“响应于确定…”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (13)
1.一种形成丁达尔光效的图像处理方法,其特征在于,所述方法包括:
获取第一图像,所述第一图像为二维图像;
对所述第一图像进行三维重建,得到第一三维模型;
为所述第一三维模型中的目标空间位置添加第一像素点,以及,确定第一区域,所述第一区域为所述第一三维模型中目标物体所在区域中光照能量大于或等于第一阈值的区域,所述目标物体是能够为所述第一图像形成丁达尔效应提供光照条件的物体;
基于所述第一区域对所述第一像素点进行径向模糊处理,得到处理后的第一三维模型,所述处理后的第一三维模型中包含由处理后的所述第一像素点构成的三维丁达尔光束;
基于所述处理后的第一三维模型进行渲染处理,得到第二图像,所述第二图像为与所述第一图像对应的具备丁达尔光效的二维图像。
2.根据权利要求1所述的方法,其特征在于,所述目标空间位置为所述第一三维模型中除了实物物体内部的非实物空间位置之外的其他非实物空间位置,所述第一像素点的信息包括红绿蓝RGB颜色值和透明度值,所述第一像素点用于表征所述第一三维模型中包含胶体粒子。
3.根据权利要求1或2所述的方法,其特征在于,在所述为所述第一三维模型中的目标空间位置添加第一像素点之前,所述方法还包括:
对所述第一图像进行光照估计,得到第一光照环境图;
所述为所述第一三维模型中的目标空间位置添加第一像素点包括:
确定所述第一光照环境图中与所述目标空间位置对应的第二像素点,所述第二像素点的信息包括光RGB颜色值和光照能量;
为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第二像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第二像素点的光照能量确定。
4.根据权利要求1或2所述的方法,其特征在于,在所述为所述第一三维模型中的目标空间位置添加第一像素点之前,所述方法还包括:
根据所述第一图像中所述目标物体的位置区域裁剪所述第一图像,得到面积小于所述第一图像的第一裁剪图像;
对所述第一裁剪图像进行光照估计,得到第二光照环境图;
所述为所述第一三维模型中的目标空间位置添加第一像素点包括:
确定所述第二光照环境图中是否包含与所述目标空间位置对应的第三像素点,所述第三像素点包括光RGB颜色值和光照能量;
在确定所述第二光照环境图中包含所述第三像素点的情况下,为所述目标空间位置添加所述第一像素点,所述第一像素点的RGB颜色值基于所述第三像素点的光RGB颜色值确定,所述第一像素点的透明度值基于所述第三像素点的光照能量确定。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在确定所述第二光照环境图中不包含所述第三像素点的情况下,不为所述目标空间位置添加所述第一像素点。
6.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
根据所述第二光照环境图中像素点的光照能量确定光照方向;
根据所述光照方向重新裁剪所述第一图像,得到第二裁剪图像,所述第二裁剪图像包括所述第一图像中与所述光照方向一致的图像区域,且所述第二裁剪图像小于所述第一图像的面积;
对所述第二裁剪图像进行光照估计,得到第三光照环境图,并将所述第三光照环境图作为新的所述第二光照环境图。
7.根据权利要求4至6任一项所述的方法,其特征在于,所述确定第一区域包括:
基于语义分割技术确定所述第一图像中语义掩模为所述目标物体的第二区域;
确定所述第二光照环境图中与所述第二区域对应的区域中光照能量大于或等于所述第一阈值的第三区域,所述第一阈值根据所述第二光照环境图中所述目标物体所在区域像素点的光照能量的确定;
确定所述第一三维模型中与所述第三区域对应的区域为所述第一区域。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述对所述第一图像进行三维重建包括:
在基于室内室外场景分类算法确定所述第一图像属于室内场景下的图像、且基于语义分割算法确定所述第一图像中包含与所述目标物体对应的语义掩模的情况下,对所述第一图像进行三维重建;所述目标物体为第一集合中的任意一个元素,所述第一集合的元素包括:室内场景下的窗户、室内场景下的门缝、以及室内场景下的灯中的一项或一项以上。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述第一区域包括一个或一个以上的像素点,所述基于所述第一区域对所述第一像素点进行径向模糊处理,包括:
根据第一偏移量和采样规则,针对所述第一区域以外的所述第一像素点,在所述第一像素点到所述第一区域的中心点的连线上采样像素点,得到与第一像素点对应的一个或一个以上采样点,且所述一个或一个以上采样点为所述第一区域以外的像素点;所述第一像素点到所述第一区域的中心点的第一距离越大则所述第一偏移量越大,所述采样规则为所述第一距离越大则所述采样点的采样步进距离越大;
根据所述一个或一个以上采样点的RGB颜色值的平均值或加权平均值确定第一颜色值;
根据所述一个或一个以上采样点中第一个采样点的采样起始位置的随机性,得到与迭代次数对应的一个或一个以上所述第一颜色值;
将所述一个或一个以上所述第一颜色值的总和与所述迭代次数的比值作为所述更新后的第一像素点的RGB颜色值。
10.根据权利要求1至8任一项所述的方法,其特征在于,在所述对所述第一图像进行三维重建之前,所述方法还包括:
获取与所述第一图像在不同视角下的一张或一张以上第三图像;
所述对所述第一图像进行三维重建包括:
根据所述第一图像、所述一张或一张以上第三图像、以及三维重建技术对所述第一图像进行三维重建,所述三维重建技术为多视图立体法或神经辐射场NeRF技术。
11.一种电子设备,其特征在于,所述电子设备包括:一个或多个处理器、存储器和显示屏;
所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行如权利要求1至10任一项所述的方法。
12.一种芯片系统,其特征在于,所述芯片系统应用于电子设备,所述芯片系统包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行如权利要求1至10中任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1至10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210675881.1A CN115131419B (zh) | 2022-06-15 | 2022-06-15 | 一种形成丁达尔光效的图像处理方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210675881.1A CN115131419B (zh) | 2022-06-15 | 2022-06-15 | 一种形成丁达尔光效的图像处理方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115131419A true CN115131419A (zh) | 2022-09-30 |
CN115131419B CN115131419B (zh) | 2023-05-30 |
Family
ID=83377615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210675881.1A Active CN115131419B (zh) | 2022-06-15 | 2022-06-15 | 一种形成丁达尔光效的图像处理方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115131419B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115861546A (zh) * | 2022-12-23 | 2023-03-28 | 四川农业大学 | 一种基于神经体渲染的作物几何感知与三维表型重建方法 |
CN116091953A (zh) * | 2023-04-11 | 2023-05-09 | 耕宇牧星(北京)空间科技有限公司 | 一种基于分组小波校准网络的建筑垃圾识别方法 |
CN116862923A (zh) * | 2023-09-05 | 2023-10-10 | 武汉必盈生物科技有限公司 | 一种面向纹理的3d打印模型的评价优化方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN207528597U (zh) * | 2017-12-20 | 2018-06-22 | 长春微纪元科技有限公司 | 一种利用丁达尔效应实时监测纳米晶生长过程的装置 |
CN110941101A (zh) * | 2019-12-27 | 2020-03-31 | 北京航空航天大学 | 一种基于液体散射层的集成成像3d显示装置 |
CN111882642A (zh) * | 2020-07-28 | 2020-11-03 | Oppo广东移动通信有限公司 | 三维模型的纹理填充方法及装置 |
-
2022
- 2022-06-15 CN CN202210675881.1A patent/CN115131419B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN207528597U (zh) * | 2017-12-20 | 2018-06-22 | 长春微纪元科技有限公司 | 一种利用丁达尔效应实时监测纳米晶生长过程的装置 |
CN110941101A (zh) * | 2019-12-27 | 2020-03-31 | 北京航空航天大学 | 一种基于液体散射层的集成成像3d显示装置 |
CN111882642A (zh) * | 2020-07-28 | 2020-11-03 | Oppo广东移动通信有限公司 | 三维模型的纹理填充方法及装置 |
Non-Patent Citations (1)
Title |
---|
流言: "照片里的炫光"人造"丁达尔效应", 《电脑爱好者》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115861546A (zh) * | 2022-12-23 | 2023-03-28 | 四川农业大学 | 一种基于神经体渲染的作物几何感知与三维表型重建方法 |
CN115861546B (zh) * | 2022-12-23 | 2023-08-08 | 四川农业大学 | 一种基于神经体渲染的作物几何感知与三维表型重建方法 |
CN116091953A (zh) * | 2023-04-11 | 2023-05-09 | 耕宇牧星(北京)空间科技有限公司 | 一种基于分组小波校准网络的建筑垃圾识别方法 |
CN116091953B (zh) * | 2023-04-11 | 2023-07-14 | 耕宇牧星(北京)空间科技有限公司 | 一种基于分组小波校准网络的建筑垃圾识别方法 |
CN116862923A (zh) * | 2023-09-05 | 2023-10-10 | 武汉必盈生物科技有限公司 | 一种面向纹理的3d打印模型的评价优化方法及装置 |
CN116862923B (zh) * | 2023-09-05 | 2023-12-01 | 武汉必盈生物科技有限公司 | 一种面向纹理的3d打印模型的评价优化方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115131419B (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115131419B (zh) | 一种形成丁达尔光效的图像处理方法及电子设备 | |
Siltanen | Diminished reality for augmented reality interior design | |
CN112262563B (zh) | 图像处理方法及电子设备 | |
CN111539960B (zh) | 图像处理方法以及相关设备 | |
CN115115688B (zh) | 一种图像处理方法及电子设备 | |
KR20220051376A (ko) | 메시징 시스템에서의 3d 데이터 생성 | |
KR20220167323A (ko) | 메시징 시스템 내의 3d 데이터를 포함하는 증강 현실 콘텐츠 생성기들 | |
WO2021078001A1 (zh) | 一种图像增强方法及装置 | |
KR20230079177A (ko) | 증강 현실 콘텐츠 생성기들을 절차적으로 생성함 | |
CN116324878A (zh) | 针对图像效果的分割 | |
US20240153209A1 (en) | Object Reconstruction Method and Related Device | |
CN116569213A (zh) | 图像区域的语义细化 | |
CN115661320B (zh) | 图像处理方法及电子设备 | |
WO2023020201A1 (zh) | 图像的增强方法和电子设备 | |
CN114612283A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN116630354B (zh) | 一种视频抠图方法、电子设备、存储介质及程序产品 | |
CN112822413B (zh) | 拍摄预览方法、装置、终端和计算机可读存储介质 | |
KR20230079264A (ko) | 증강 현실 콘텐츠 생성기들에 대한 수집 파이프라인 | |
CN113642359B (zh) | 人脸图像生成方法、装置、电子设备及存储介质 | |
US20230222736A1 (en) | Methods and systems for interacting with 3d ar objects from a scene | |
US20230131418A1 (en) | Two-dimensional (2d) feature database generation | |
CN115379208A (zh) | 一种摄像头的测评方法及设备 | |
CN113724151A (zh) | 一种图像增强方法、电子设备和计算机可读存储介质 | |
CN116258633A (zh) | 图像去反光的方法、图像去反光模型的训练方法与装置 | |
WO2021184303A1 (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |