CN116228936A - 图像处理方法、装置、终端设备、存储介质及程序产品 - Google Patents

图像处理方法、装置、终端设备、存储介质及程序产品 Download PDF

Info

Publication number
CN116228936A
CN116228936A CN202310145621.8A CN202310145621A CN116228936A CN 116228936 A CN116228936 A CN 116228936A CN 202310145621 A CN202310145621 A CN 202310145621A CN 116228936 A CN116228936 A CN 116228936A
Authority
CN
China
Prior art keywords
image
virtual pixel
partition
mapping
screen
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
Application number
CN202310145621.8A
Other languages
English (en)
Inventor
约翰·拉斯比
西蒙·埃克斯特兰德
玛雅·阿尔布雷克森
孙晓康
朱玉婷
黄琴
卡米拉·尤西斯
祁琪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202310145621.8A priority Critical patent/CN116228936A/zh
Publication of CN116228936A publication Critical patent/CN116228936A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/506Illumination models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Architecture (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请涉及一种图像处理方法、装置、终端设备、存储介质及程序产品,所述方法包括:根据分区信息将待处理图像拆分成多个分区图像;使用各分区图像对应的贴图参数对所述待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,所述贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化;将凹凸图像、置换图像中的至少一个与所述待处理图像叠加渲染,得到用于显示在所述终端设备的屏幕上的显示图像。根据本申请实施例的图像处理方法,使得图像能够响应于时间、终端设备状态、用户操作状态中的至少一种的变化而变化,从而增强图像的动态效果。

Description

图像处理方法、装置、终端设备、存储介质及程序产品
技术领域
本申请涉及图像增强领域,尤其涉及一种图像处理方法、装置、终端设备、存储介质及程序产品。
背景技术
电子设备通过密集阵列的像素点发光来组合成视觉上的图像,使得用户能够通过图像来捕捉信息。对于电子设备的屏幕来说,物理像素点排布在同一平面上,因此,电子设备只能呈现平面图像。在平面图像上可以通过贴图处理的方式来改变平面图像的显示效果,使得平面图像在视觉上具有3D立体的效果(下文称为平面3D效果)。这样的平面图像虽然实现了3D效果,但仍然是静态图像,即在一个持续时间段内显示的图像不变。
为了进一步提升图像的显示效果,现有技术还提出在贴图处理的平面图像基础上增加动态效果,以进一步增强图像的视觉效果。但现有技术添加动态效果的方式较为单一,导致最终呈现的动态效果比较差,图像的动态效果尚有提升空间。
发明内容
有鉴于此,提出了一种图像处理方法、装置、终端设备、存储介质及程序产品,根据本申请实施例的图像处理方法,使得图像能够响应于时间、终端设备状态、用户操作状态中的至少一种的变化而变化,从而增强图像的动态效果。
第一方面,本申请的实施例提供了一种图像处理方法,所述方法包括:根据分区信息将待处理图像拆分成多个分区图像;使用各分区图像对应的贴图参数对所述待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,所述贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化;将所述凹凸图像、置换图像中的至少一个与所述待处理图像叠加渲染,得到用于显示在所述终端设备的屏幕上的显示图像。
根据本申请实施例的图像处理方法,根据分区信息将待处理图像拆分成多个分区图像,使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,能够实现多种贴图方式得到图像,且贴图参数是与分区图像对应,因此得到的凹凸图像和置换图像效果更好;贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化,从而,在不同时刻、不同终端设备状态、不同用户操作状态可以对应得到不同的凹凸图像和/或置换图像,图像的动态效果与环境的适应性更强,进一步增强图像的动态效果。将凹凸图像、置换图像中的至少一个与待处理图像叠加渲染,得到用于显示在终端设备的屏幕上的显示图像,使得用户最终观看到的可以是效果提升的图像。
根据第一方面,在所述图像处理方法的第一种可能的实现方式中,所述终端设备状态包括陀螺仪角度,所述用户操作状态包括用户触摸屏幕的位置、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积中的至少一种。
由于终端设备状态、用户操作状态变化时,贴图参数也跟随变化,通过丰富终端设备状态、用户操作状态的类型,使得贴图参数的变化方式也更灵活。
根据第一方面的第一种可能的实现方式,在所述图像处理方法的第二种可能的实现方式中,所述贴图参数包括凹凸贴图参数,所述凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子、凹凸贴图的高度中的一种或多种,所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:使用各分区图像对应的光源属性参数、光源位置、光源照射角度、镜面反射因子、虚拟像素点的高度中的一种或多种,调整待处理图像的每一虚拟像素点的像素值,得到第一调整图像;根据所述第一调整图像得到所述凹凸图像;其中,待处理图像的每一虚拟像素点对应的光源属性参数、光源位置均相同,同一分区图像的虚拟像素点对应的光源照射角度、镜面反射因子相同。
通过这种方式,可以使得第一调整图像和凹凸图像具备凹凸效果,从而优化显示图像的显示效果。
根据第一方面的第二种可能的实现方式,在所述图像处理方法的第三种可能的实现方式中,所述凹凸贴图参数还包括每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,所述第一方向、所述第二方向为所述待处理图像所在平面上两个具有预设夹角的方向,根据所述第一调整图像得到所述凹凸图像,包括:根据所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,移动所述第一调整图像中的虚拟像素点,得到第一移动图像;根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像。
通过在凹凸贴图处理中引入虚拟像素点的移动,在使用单独的凹凸图像与待处理图像叠加时,在增强动态效果的同时,能够丰富表面细节的处理。
根据第一方面的第三种可能的实现方式,在所述图像处理方法的第四种可能的实现方式中,所述凹凸贴图参数还包括第一透明度、第一模糊值中的至少一种,所述第一模糊值指示虚拟像素点的模糊程度,所述第一透明度指示虚拟像素点的透明程度,根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像,包括:在凹凸贴图参数还包括第一透明度时,根据所述第一透明度调整所述第一移动图像的虚拟像素点的像素值;在凹凸贴图参数还包括第一模糊值时,根据所述第一模糊值调整所述第一移动图像的虚拟像素点的像素值;根据调整后的第一移动图像得到所述凹凸图像。
通过引入第一透明度和第一模糊值,使得调节凹凸图像和置换图像、待处理图像的叠加效果的方式更灵活。
根据第一方面的第四种可能的实现方式,在所述图像处理方法的第五种可能的实现方式中,所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;所述第一模糊值、所述第一透明度的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
通过响应环境中多种因素的变化调整凹凸贴图参数,可以提升凹凸贴图参数的调整方式与环境变化的适应性。
根据第一方面,或以上第一方面的任意一种可能的实现方式,在所述图像处理方法的第六种可能的实现方式中,所述贴图参数包括置换贴图参数,所述置换贴图参数包括每个分区图像的虚拟像素点在其法线方向的移动值,所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像;根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
通过在置换贴图处理中引入虚拟像素点的移动,在使用单独的置换图像与待处理图像叠加时,在增强动态效果的同时,能够丰富表面细节的处理。且使用置换图像与待处理图像、凹凸图像叠加时,显示图像中最多将同时存在置换贴图处理和凹凸贴图处理的引入的虚拟像素点的三重移动,能够进一步增强景深的效果。
根据第一方面的第六种可能的实现方式,在所述图像处理方法的第七种可能的实现方式中,所述根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像,包括:所述第二移动图像的任意一个虚拟像素点与至少两个分区图像的虚拟像素点对应时,叠加所述至少两个分区图像的虚拟像素点,以叠加后的数值作为所述第二移动图像中的该虚拟像素点的像素值;所述第二移动图像的任意一个虚拟像素点与所述多个分区图像的虚拟像素点均不对应时,以0值作为所述第二移动图像中的该虚拟像素点的像素值。
通过这种方式,可以在出现虚拟像素点移动冲突时,根据冲突的虚拟像素点的像素值调整第二移动图像中的相应虚拟像素点的像素值,从而保证物理像素点的正常显示,且显示效果综合了相冲突的至少两个虚拟像素点,使得显示效果更好。
根据第一方面的第六种或第七种可能的实现方式,在所述图像处理方法的第八种可能的实现方式中,所述置换贴图参数还包括第二模糊值、第二透明度中的至少一种,所述第二模糊值指示虚拟像素点的模糊程度,所述第二透明度指示虚拟像素点的透明程度,根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像,包括:在置换贴图参数还包括第二模糊值时,根据所述第二模糊值调整所述第二移动图像的虚拟像素点的像素值;在置换贴图参数还包括第二透明度时,根据所述第二透明度调整所述第二移动图像的虚拟像素点的像素值;根据调整后的第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
通过引入第二透明度和第二模糊值,使得调节置换图像和凹凸图像、待处理图像的叠加效果的方式更灵活。
根据第一方面的第八种可能的实现方式,在所述图像处理方法的第九种可能的实现方式中,所述每个分区图像的虚拟像素点在其法线方向的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;所述第二模糊值、所述第二透明度的的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
通过响应环境中多种因素的变化调整置换贴图参数,可以提升置换贴图参数的调整方式与环境变化的适应性。
根据第一方面,或以上第一方面的任意一种可能的实现方式,在所述图像处理方法的第十种可能的实现方式中,所述分区信息指示多种拆分方式,所述根据分区信息将待处理图像拆分成多个分区图像,包括:根据所述分区信息将待处理图像拆分成多组分区图像,每组分区图像对应不同的拆分方式,多组分区图像的分区图像数量不同;所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:存在分区图像数量大于第一阈值的任意一组分区图像时,使用凹凸贴图参数对该组分区图像进行贴图处理,得到所述凹凸贴图;存在分区图像数量小于或等于第一阈值的任意一组分区图像时,使用置换贴图参数对该组分区图像进行贴图处理,得到所述置换贴图。
通过这种方式,使得叠加凹凸图像、置换图像和待处理图像时,凹凸效果可以覆盖置换效果,使得得到的显示图像的显示效果更优。
第二方面,本申请的实施例提供了一种图像处理装置,所述装置包括:分区模块,用于根据分区信息将待处理图像拆分成多个分区图像;贴图模块,用于使用各分区图像对应的贴图参数对所述待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,所述贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化;渲染模块,用于将所述凹凸图像、置换图像中的至少一个与所述待处理图像叠加渲染,得到用于显示在所述终端设备的屏幕上的显示图像。
根据第二方面,在所述图像处理装置的第一种可能的实现方式中,所述终端设备状态包括陀螺仪角度,所述用户操作状态包括用户触摸屏幕的位置、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积中的至少一种。
根据第二方面的第一种可能的实现方式,在所述图像处理装置的第二种可能的实现方式中,所述贴图参数包括凹凸贴图参数,所述凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子、凹凸贴图的高度中的一种或多种,所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:使用各分区图像对应的光源属性参数、光源位置、光源照射角度、镜面反射因子、虚拟像素点的高度中的一种或多种,调整待处理图像的每一虚拟像素点的像素值,得到第一调整图像;根据所述第一调整图像得到所述凹凸图像;其中,待处理图像的每一虚拟像素点对应的光源属性参数、光源位置均相同,同一分区图像的虚拟像素点对应的光源照射角度、镜面反射因子相同。
根据第二方面的第二种可能的实现方式,在所述图像处理装置的第三种可能的实现方式中,所述凹凸贴图参数还包括每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,所述第一方向、所述第二方向为所述待处理图像所在平面上两个具有预设夹角的方向,根据所述第一调整图像得到所述凹凸图像,包括:根据所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,移动所述第一调整图像中的虚拟像素点,得到第一移动图像;根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像。
根据第二方面的第三种可能的实现方式,在所述图像处理装置的第四种可能的实现方式中,所述凹凸贴图参数还包括第一透明度、第一模糊值中的至少一种,所述第一模糊值指示虚拟像素点的模糊程度,所述第一透明度指示虚拟像素点的透明程度,根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像,包括:在凹凸贴图参数还包括第一透明度时,根据所述第一透明度调整所述第一移动图像的虚拟像素点的像素值;在凹凸贴图参数还包括第一模糊值时,根据所述第一模糊值调整所述第一移动图像的虚拟像素点的像素值;根据调整后的第一移动图像得到所述凹凸图像。
根据第二方面的第四种可能的实现方式,在所述图像处理装置的第五种可能的实现方式中,所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;所述第一模糊值、所述第一透明度的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
根据第二方面,或以上第二方面的任意一种可能的实现方式,在所述图像处理装置的第六种可能的实现方式中,所述贴图参数包括置换贴图参数,所述置换贴图参数包括每个分区图像的虚拟像素点在其法线方向的移动值,所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像;根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
根据第二方面的第六种可能的实现方式,在所述图像处理装置的第七种可能的实现方式中,所述根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像,包括:所述第二移动图像的任意一个虚拟像素点与至少两个分区图像的虚拟像素点对应时,叠加所述至少两个分区图像的虚拟像素点,以叠加后的数值作为所述第二移动图像中的该虚拟像素点的像素值;所述第二移动图像的任意一个虚拟像素点与所述多个分区图像的虚拟像素点均不对应时,以0值作为所述第二移动图像中的该虚拟像素点的像素值。
根据第二方面的第六种或第七种可能的实现方式,在所述图像处理装置的第八种可能的实现方式中,所述置换贴图参数还包括第二模糊值、第二透明度中的至少一种,所述第二模糊值指示虚拟像素点的模糊程度,所述第二透明度指示虚拟像素点的透明程度,根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像,包括:在置换贴图参数还包括第二模糊值时,根据所述第二模糊值调整所述第二移动图像的虚拟像素点的像素值;在置换贴图参数还包括第二透明度时,根据所述第二透明度调整所述第二移动图像的虚拟像素点的像素值;根据调整后的第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
根据第二方面的第八种可能的实现方式,在所述图像处理装置的第九种可能的实现方式中,所述每个分区图像的虚拟像素点在其法线方向的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;所述第二模糊值、所述第二透明度的的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
根据第二方面,或以上第二方面的任意一种可能的实现方式,在所述图像处理装置的第十种可能的实现方式中,所述分区信息指示多种拆分方式,所述根据分区信息将待处理图像拆分成多个分区图像,包括:根据所述分区信息将待处理图像拆分成多组分区图像,每组分区图像对应不同的拆分方式,多组分区图像的分区图像数量不同;所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:存在分区图像数量大于第一阈值的任意一组分区图像时,使用凹凸贴图参数对该组分区图像进行贴图处理,得到所述凹凸贴图;存在分区图像数量小于或等于第一阈值的任意一组分区图像时,使用置换贴图参数对该组分区图像进行贴图处理,得到所述置换贴图。
第三方面,本申请的实施例提供了一种终端设备,包括:处理器;屏幕;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的图像处理方法。
第四方面,本申请的实施例提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的图像处理方法。
第五方面,本申请的实施例提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的图像处理方法。
本申请的这些和其他方面在以下(多个)实施例的描述中会更加简明易懂。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本申请的示例性实施例、特征和方面,并且用于解释本申请的原理。
图1示出根据本申请实施例的图像处理方法的示例性应用场景。
图2示出根据本申请实施例的图像处理方法的示例性流程图。
图3示出根据本申请实施例将待处理图像拆分成多个分区图像的示例性方式。
图4示出根据本申请实施例得到凹凸图像的一个示例。
图5示出根据本申请实施例的某个分区图像的虚拟像素点在其法线方向的移动值的示例。
图6示出根据本申请实施例得到置换图像时出现虚拟像素点冲突时的像素值确定方式。
图7示出根据本申请实施例的显示图像的一个示例。
图8示出根据本申请实施例使用不同凹凸贴图参数和/或置换贴图参数进行贴图处理得到的显示图像的示意图。
图9示出根据本申请实施例的图像处理装置的示例性结构图。
图10示出根据本申请实施例的终端设备的示例性结构图。
具体实施方式
以下将参考附图详细说明本申请的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。
下面对本文中可能出现的术语进行解释。
物理像素点:即存在于事实空间中的屏幕上的布置的像素。举例来说,对于发光二极管(light-emitting diode,LED)类屏幕(例如手机上常用的有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)屏幕),物理像素点即为排布在灯板上的一颗颗发光二极管;对于液晶屏幕,物理像素点为液晶。
虚拟像素点:和物理像素点一一对应,本质上是一个颜色点。当图像显示在屏幕上时,物理像素点的发光颜色即为虚拟像素点的颜色,所有物理像素点同时发光,批量颜色点组成完整的图像。
电子设备通过密集阵列的像素点发光来组合成视觉上的图像,使得用户能够通过图像来捕捉信息。对于电子设备的屏幕来说,物理像素点排布在同一平面上,因此,电子设备只能呈现平面图像。在平面图像上可以通过贴图处理的方式来改变平面图像的显示效果,使得平面图像在视觉上具有3D立体的效果(下文称为平面3D效果)。这样的平面图像虽然实现了3D效果,但仍然是静态图像,即在一个持续时间段内显示的图像不变。
为了进一步提升图像的显示效果,现有技术还提出在贴图处理的平面图像基础上增加动态效果,以进一步增强图像的视觉效果。现有技术增加动态效果的方式为对贴图处理后的平面图像进行淡入淡出处理,将连续的多帧图像的透明度从0%上升到100%,再逐渐下降回0%。由于图像本身是静态图像,只通过淡入淡出处理呈现的动态效果较弱,且这种处理会对用户的观看位置有要求,在不同的观看位置,效果存在差异。
有鉴于此,提出了一种图像处理方法、装置、终端设备、存储介质及程序产品,根据本申请实施例的图像处理方法,使得图像能够响应于时间、终端设备状态、用户操作状态中的至少一种的变化而变化,从而增强图像的动态效果。
图1示出根据本申请实施例的图像处理方法的示例性应用场景。
如图1所示,应用场景中可包括终端设备,终端设备可设置有处理器和屏幕,处理器用于运行本申请实施例的图像处理方法。终端设备还可以包括用于获取待处理图像的图形处理器,处理器执行本申请实施例的图像处理方法,可以对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,再与待处理图像进行叠加渲染,得到可以显示在终端设备的屏幕上的显示图像。或者,终端设备也可以与设置有图形处理器的其他终端设备相连接,以获取其他终端设备的图形处理器输出的待处理图像,执行图像处理方法得到显示图像后,在自身的屏幕上显示。本申请实施例对于待处理图像的具体获取方式不作限制。
本申请的终端设备可以是智能手机、上网本、平板电脑、笔记本电脑、可穿戴电子设备(如智能手环、智能手表等)、TV、虚拟现实设备等等。只要终端设备具备能够执行本申请实施例的图像处理方法的处理器以及屏幕即可,本申请对于终端设备的具体类型不作限制。
图2示出根据本申请实施例的图像处理方法的示例性流程图。
如图2所示,在一种可能的实现方式中,所述方法包括步骤S21-步骤S23:
步骤S21,根据分区信息将待处理图像拆分成多个分区图像。
本申请实施例中,待处理图像可以有两种类型:一种是恒定不变的图像,即在一个线性时间段内,所有时刻对应的图像帧为同一图像。举例来说,待处理图像可以是计算器应用界面,在未输入数据或指令时,界面可以是恒定不变的,因此待处理图像也恒定不变。另一种是随时间变化的图像,即在一个线性的时间段内,图像中至少部分元素会随着时间的变化而变化。举例来说,待处理的图像可以是智能手表的表盘界面,时间指针是转动的,则界面为随时间变化的,因此待处理图像也随时间变化。在本申请实施例中,待处理图像可以为即将输送到终端设备进行显示的实时画面(比如手机的应用界面、主屏界面、熄屏显示界面,智能手表的表盘界面等)。
分区信息可以由处理器基于现有技术生成,例如可根据当前的计算资源(内存、图形处理器能力等,既受限于可供支配的资源,同时也受限于硬件能力上限),结合图像识别等能力来确定。图像识别到的客体或元素的边缘,可以作为某个分区图像的边缘。
分区信息可以指示在对待处理图像进行分区后,各分区图像的边缘的参数。各个分区图像的边缘可以是规则的,也可以是不规则的。例如,对于图像中的某个客体,如果该客体的边缘为不规则的,则靠近客体边缘的分区图像的边缘也可以为不规则的,位于客体内的分区边缘可以是规则的,也可以根据客体内部的元素分成边缘不规则的分区图像。
根据分区信息可将待处理图像拆分成多个分区图像,以方便对每个区域进行贴图处理。图3示出根据本申请实施例将待处理图像拆分成多个分区图像的示例性方式。
如图3所示,待处理图像包括球体的其中一部分,球体显示为二维平面图。在进行图像识别时,识别到球体并确定球体边缘,可确定对球体内部区域单独分区的方式,且球体的边缘作为分区图像的边缘。如果当前的计算资源不足或者硬件计算能力不足,则可以按照图3中实线作为边缘来生成分区信息。如果当前的计算资源充足,且硬件计算能力满足,则可以按照图3中的虚线作为边缘来生成分区信息。对于球体外的区域中的元素或客体(未示出),也可以采用类似的方式生成分区信息。
步骤S22,使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化。
其中,贴图参数可以由预先配置的函数实时确定的,并受到至少一个变量的影响,以确保这个贴图参数是动态变化的。变量可以是时间、终端设备状态、用户操作状态中的至少一种。各分区图像对应的贴图参数的示例可以参见下文及图5、图6的相关描述。
动态变化的贴图参数使得即使待处理图像为恒定不变的,在使用各分区图像对应的贴图参数对待处理图像进行贴图处理时,也可以在不同时刻、终端设备的不同状态下、用户操作的不同状态下得到不同的凹凸图像和/或置换图像,从而优化图像处理效果。使用各分区图像对应的贴图参数对待处理图像进行贴图处理的示例性实现方式可以参见下文对步骤S22的进一步描述。
步骤S23,将凹凸图像、置换图像中的至少一个与待处理图像叠加渲染,得到用于显示在终端设备的屏幕上的显示图像。
例如,在叠加时,以屏幕的物理像素点为基准进行叠加,置换图像和/或凹凸图像、待处理图像上的虚拟像素点均一一对应一个物理像素点,则置换图像、凹凸图像和待处理图像在叠加时,对应同一个物理像素点的虚拟像素点进行叠加渲染。叠加得到显示图像后,就可以将显示图像输送到屏幕上进行显示。
根据本申请实施例的图像处理方法,根据分区信息将待处理图像拆分成多个分区图像,使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,能够实现多种贴图方式得到图像,且贴图参数是与分区图像对应,因此得到的凹凸图像和置换图像效果更好;贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化,从而,在不同时刻、不同终端设备状态、不同用户操作状态可以对应得到不同的凹凸图像和/或置换图像,图像的动态效果与环境的适应性更强,进一步增强图像的动态效果。将凹凸图像、置换图像中的至少一个与待处理图像叠加渲染,得到用于显示在终端设备的屏幕上的显示图像,使得用户最终观看到的可以是效果提升的图像。
在一种可能的实现方式中,终端设备状态包括陀螺仪角度,用户操作状态包括用户触摸屏幕的位置、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积中的至少一种。
举例来说,终端设备状态可以与终端设备的位置变化相关,例如可以包括陀螺仪角度。用户操作状态可以是用户对终端设备的操作相关,例如可包括用户触摸屏幕的位置、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积等等。
由于终端设备状态、用户操作状态变化时,贴图参数也跟随变化,通过丰富终端设备状态、用户操作状态的类型,使得贴图参数的变化方式也更灵活。
本申请实施例的贴图处理包括凹凸贴图处理和置换贴图处理两种。其中凹凸贴图处理使用凹凸贴图参数,得到凹凸贴图;置换贴图处理使用置换贴图参数,得到置换贴图。下面对本申请实施例的凹凸贴图参数以及得到凹凸贴图的示例性方式进行介绍。
在一种可能的实现方式中,贴图参数包括凹凸贴图参数,凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子、凹凸贴图的高度中的一种或多种,步骤S22包括:
使用各分区图像对应的光源属性参数、光源位置、光源照射角度、镜面反射因子、虚拟像素点的高度中的一种或多种,调整待处理图像的每一虚拟像素点的像素值,得到第一调整图像;
根据第一调整图像得到凹凸图像;
其中,待处理图像的每一虚拟像素点对应的光源属性参数、光源位置均相同,同一分区图像的虚拟像素点对应的光源照射角度、镜面反射因子相同。
举例来说,凹凸贴图处理是以每个分区图像为单位,分别使用不同的凹凸贴图参数来进行处理的。下面介绍凹凸贴图处理涉及的凹凸贴图参数。
(1)光源属性参数:即指示光源内部属性的参数,在进行凹凸贴图处理时,终端设备会模拟一个光源,不同分区图像基于分区图像与光源的相对方位,对自身的虚拟像素点的像素值进行不同的处理。光源属性参数又可以包括:
①光源大小:指示光源所占的面积大小。
②高光面颜色/阴影面颜色:模拟光源为球体光源,球体光源悬于图像上方,可以将球体光源视为由高光面和阴影面两个半球面组成,高光面和阴影面分别具有不同的颜色。
③光强:指示光源的光照强度。
(2)光源位置:即模拟光源的位置,可用于确定每个分区图像与模拟光源的相对方位,进而确定光源对分区的影响。
(3)光源照射角度:光源照射某个分区图像的光入射角度。对于某个分区来说,认为该分区的所有虚拟像素点的光源照射角度相同。
(4)镜面反射因子:用于指示光源照射到某个分区图像平面上时,平面的光反射效果的参数。
(5)凹凸图像的高度:指示某个虚拟像素点的高度信息,高度越高则越亮,反之,则越暗。通常可以用灰度值来指代,将0-255转化为[-1,1]区间的数值,[-1,0)对应凹陷,(0,1]对应凸起。
上述凹凸贴图参数中,凹凸贴图参数(1)-凹凸贴图参数(2)为适用于待处理图像上的所有像素点的参数,即待处理图像的每一虚拟像素点对应的光源属性参数、光源位置均相同。凹凸贴图参数(3)-凹凸贴图参数(4)为分区层面的参数,同一分区图像的虚拟像素点对应的光源照射角度、镜面反射因子相同。凹凸贴图参数(5)为针对某个具体的虚拟像素点来定义的参数,不同的虚拟像素点对应的凹凸图像的高度可能相同或不同。
凹凸贴图处理时,可以基于待处理图像的分区信息创建一个空白贴图,使得空白贴图的分区方式与待处理图像的分区方式一致,然后分别对空白贴图的各个分区的虚拟像素点进行参数配置,在完成参数配置后,将空白贴图贴到待处理图像上,相当于使用各分区图像对应的光源属性参数、光源位置、光源照射角度、镜面反射因子、虚拟像素点的高度中的一种或多种,调整待处理图像的每一虚拟像素点的像素值,得到第一调整图像;再根据第一调整图像得到凹凸图像。其中,如果除凹凸贴图参数(1)-凹凸贴图参数(5)外,不再包括其他凹凸贴图参数,则第一调整图像可以直接作为凹凸图像。如果还包括其他凹凸贴图参数,可以使用其他凹凸贴图参数对第一调整图像进一步处理得到凹凸图像。
通过这种方式,可以使得第一调整图像和凹凸图像具备凹凸效果,从而优化显示图像的显示效果。
下面介绍使用其他凹凸贴图参数对第一调整图像进一步处理得到凹凸图像的示例性方式。
在一种可能的实现方式中,凹凸贴图参数还包括每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,第一方向、第二方向为待处理图像所在平面上两个具有预设夹角的方向,
根据第一调整图像得到凹凸图像,包括:
根据每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,移动第一调整图像中的虚拟像素点,得到第一移动图像;
根据第一移动图像中与屏幕的物理像素点对应的虚拟像素点,得到凹凸图像。
举例来说,凹凸贴图参数还可以包括:(6)虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值。该参数为针对某个具体的虚拟像素点来定义的参数,不同的虚拟像素点对应的在第一方向和第二方向中的至少一个方向上的移动值可能相同或不同。
本申请实施例中,在凹凸贴图处理可以移动虚拟像素点,并分别定义虚拟像素点在X方向(第一方向)和Y方向(第二方向)中上的移动值。在凹凸贴图处理过程中,虚拟像素点可以仅针对X方向或Y方向进行移动,或者同时对X方向和Y方向移动,本申请实施例对于虚拟像素点的最终移动方向不作限制。
根据第一调整图像得到凹凸图像时,可以根据每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,移动第一调整图像中的虚拟像素点,得到第一移动图像。如果虚拟像素点经过移动后的新位置仍在屏幕之内,可以认为第一移动图像中该虚拟像素点与屏幕的物理像素点对应,可以用于得到凹凸图像;反之,如果虚拟像素点经过移动后的新位置为屏幕之外的区域,可以认为第一移动图像中该虚拟像素点不再与屏幕的物理像素点对应,该虚拟像素点不再用于得到凹凸图像。虚拟像素点的示例性移动方式可以与下文置换贴图处理部分的虚拟像素点移动方式相类似,将置换贴图处理中的法线方向替换为第一方向和第二方向即可。
其中,如果除凹凸贴图参数(1)-凹凸贴图参数(6)外,不再包括其他凹凸贴图参数,则第一移动图像可以直接作为凹凸图像。如果还包括其他凹凸贴图参数,可以使用其他凹凸贴图参数对第一移动图像进一步处理得到凹凸图像。
通过在凹凸贴图处理中引入虚拟像素点的移动,在使用单独的凹凸图像与待处理图像叠加时,在增强动态效果的同时,能够丰富表面细节的处理。
下面介绍使用其他凹凸贴图参数对第一移动图像进一步处理得到凹凸图像的示例性方式。
在一种可能的实现方式中,凹凸贴图参数还包括第一透明度、第一模糊值中的至少一种,第一模糊值指示虚拟像素点的模糊程度,第一透明度指示虚拟像素点的透明程度,
根据第一移动图像中与屏幕的物理像素点对应的虚拟像素点,得到凹凸图像,包括:
在凹凸贴图参数还包括第一透明度时,根据第一透明度调整第一移动图像的虚拟像素点的像素值;
在凹凸贴图参数还包括第一模糊值时,根据第一模糊值调整第一移动图像的虚拟像素点的像素值;
根据调整后的第一移动图像得到凹凸图像。
举例来说,凹凸贴图参数还可以包括:
(7)第一透明度:指示某个虚拟像素点的透明程度。当虚拟像素点完全透明时,即透过虚拟像素点显示其他图层图像。
(8)第一模糊值:指示某个虚拟像素点的模糊程度。当虚拟像素点模糊时,用户不能完全看清。
例如,如果第一透明度的数值使用[0,1]区间的数值,且第一透明度数值越高透明效果越强,则第一透明度数值为1时虚拟像素点完全透明,调整后的虚拟像素点的像素值为0。在凹凸图像与置换图像、待处理图像叠加时,第一透明度的设置可以实现对图像的不同区域采用不同的叠加方式,例如某个区域可以只叠加凹凸图像与待处理图像,另一区域可以叠加凹凸图像与置换图像、待处理图像。
第一模糊值也使用[0,1]区间的数值,且第一模糊值越高模糊效果越强,则第一模糊值为0时没有模糊效果,调整后的虚拟像素点的像素值与调整前一致。
通过引入第一透明度和第一模糊值,使得调节凹凸图像和置换图像、待处理图像的叠加效果的方式更灵活。
以上以凹凸贴图参数(1)-凹凸贴图参数(8)按序号顺序使用作为示例。本领域技术人员应理解,在实际应用中,上述凹凸贴图参数(1)-凹凸贴图参数(8)的使用顺序可以不限于以上示例,也可以是凹凸贴图参数(6)先使用,然后使用凹凸贴图参数(7)-凹凸贴图参数(8),然后使用凹凸贴图参数(1)-凹凸贴图参数(5)等等。本申请实施例对于各凹凸贴图参数的具体使用顺序不作限制。
下面介绍各凹凸贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化的示例性方式。
在一种可能的实现方式中,每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值的变化趋势与陀螺仪角度、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积的变化趋势相同,并与时间的变化趋势相同或相反;
第一模糊值、第一透明度的变化趋势与时间、陀螺仪角度、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积的变化趋势相同或相反。
举例来说,凹凸贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化的方式可以根据用户对终端设备的操作习惯预先设置。例如,在用户使用终端设备时,可以认为陀螺仪角度(终端设备状态)、用户触摸屏幕的时间(用户操作状态)、用户触摸屏幕的力度(用户操作状态)、用户与屏幕的接触面积(用户操作状态)的变化越大,用户希望看到的显示图像的动态效果越明显,而可认为时间、用户触摸屏幕的位置(用户操作状态)变化变大时,用户希望看到的显示图像的动态效果是否更明显与用户需求有关。为实现上述效果,可使得凹凸贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化,以改变凹凸图像的动态效果,从而改变根据凹凸图像得到的显示图像的动态效果。
如上文所述,凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子、凹凸贴图的高度、每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值、第一透明度、第一模糊值中的至少一种。
其中,对于每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值来说,使得凹凸图像的动态效果更明显的方式可以是移动值变大,则可以设置每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值的变化趋势与陀螺仪角度、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积的变化趋势相同。并设置每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值与时间的变化趋势相同或相反。
对于第一模糊值、第一透明度来说,使得凹凸图像的动态效果更明显的方式可能是数值变大,也可能是数值变小,具体选择变大或变小可以根据应用场景需求确定,因此,可以设置第一模糊值、第一透明度的变化趋势与时间、陀螺仪角度、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积的变化趋势相同或相反。
光源属性参数、光源位置、光源照射角度、镜面反射因子、凹凸贴图的高度可以设置为固定不变,也可以设置为与时间、终端设备状态、用户操作状态中的至少一种的变化趋势相同或相反。
可以根据用户对终端设备的操作习惯,为每种凹凸贴图参数预先设置在每种变量下(时间、终端设备状态、用户操作状态中的至少一种)对应的变化函数,在时间、终端设备状态、用户操作状态中的至少一种变化时,使用预设的变化函数完成凹凸贴图参数的映射即可。本申请实施例对于实现凹凸贴图参数变化的方式不作限制。
通过响应环境中多种因素的变化调整凹凸贴图参数,可以提升凹凸贴图参数的调整方式与环境变化的适应性。
图4示出根据本申请实施例得到凹凸图像的一个示例。
如图4所示,P1-P3可以是待处理图像拆分得到的三个分区图像,模拟光源的位置在分区图像P1-P3的左前方。根据光源属性参数、光源位置、光源照射角度和镜面反射因子确定光源对虚拟像素点显示颜色的影响,可以确定虚拟像素点最终的显示颜色、亮度等显示属性,为便于示例,分区图像P1-P3最后呈现效果可分别为黑色、深灰色和浅灰色。结合凹凸贴图的高度,可确定各虚拟像素点的灰度值。此时各虚拟像素点可以是第一调整图像中的像素点。根据每个虚拟像素点在第一方向和第二方向上的移动值执行位移后,各虚拟像素点可以是第一移动图像中的像素点。假设图4的示例中不存在第一模糊值和第一透明度,则第一移动图像可以直接作为凹凸图像,也即图4中的图像。
由于同一分区图像内各虚拟像素点的移动值可以不同,因此凹凸图像中的分区图像(的位置/大小)相对待处理图像产生变化,例如图4最后得到的图像中,三个分区图像P1-P3不仅位置发生了变化,且分区图像P1面积减少,分区图像P2、分区图像P3面积增大。
下面对本申请实施例的置换贴图参数以及得到置换贴图的示例性方式进行介绍。
在一种可能的实现方式中,所述贴图参数包括置换贴图参数,所述置换贴图参数包括每个分区图像的虚拟像素点在其法线方向的移动值,
所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:
根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像;
根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
举例来说,在进行置换贴图处理时,首先可确定各个分区图像的法线方向,然后确定各个分区图像在法线方向的移动值。可以将法线方向的信息也包括在分区信息内。图5示出根据本申请实施例的某个分区图像的虚拟像素点在其法线方向的移动值的示例。
如图5所示,针对待处理图像拆分得到的一个分区图像B1,确定的法线方向可以是F(二维方向),分区图像B1的虚拟像素点在法线方向F的移动值可以是L1。
在确定各个分区图像的法线方向和分区图像的虚拟像素点在法线方向的移动值后,将各个分区图像的虚拟像素点沿着法线方向移动该移动值。例如,可以将分区图像B1的所有虚拟像素点沿着法线方向F移动,得到移动后的分区图像B2。
示例性地,可以建立一个二维直角坐标系<x,y>,假设共n个分区图像,根据各分区图像的法线方向和虚拟像素点的移动值,可以分别为每个分区图像i(0≤i≤n)确定一个向量αi,并将向量αi转换为使用二维坐标(xi,yi)来表示。各分区图像内的虚拟像素点的二维坐标与二维坐标(xi,yi)相加,就可以得到虚拟像素点移动后的二维坐标,即确定了虚拟像素点在移动后的位置。
所有虚拟像素点的移动均为在平面上执行,而非立体空间中的移动。所有虚拟像素点移动完成后,可得到第二移动图像。如果虚拟像素点经过移动后的新位置仍在屏幕之内,可以认为第二移动图像中该虚拟像素点与屏幕的物理像素点对应,可以用于得到置换图像;反之,如果虚拟像素点经过移动后的新位置为屏幕之外的区域,可以认为第二移动图像中该虚拟像素点不再与屏幕的物理像素点对应,该虚拟像素点不再用于得到置换图像。
如果除每个分区图像的虚拟像素点在其法线方向的移动值外,不再包括其他置换贴图参数,则第二移动图像可以直接作为置换图像。如果还包括其他置换贴图参数,可以使用其他置换贴图参数对第二移动图像进一步处理得到置换图像。
通过在置换贴图处理中引入虚拟像素点的移动,在使用单独的置换图像与待处理图像叠加时,在增强动态效果的同时,能够丰富表面细节的处理。且使用置换图像与待处理图像、凹凸图像叠加时,显示图像中最多将同时存在置换贴图处理和凹凸贴图处理的引入的虚拟像素点的三重移动,能够进一步增强景深的效果。
在一种可能的实现方式中,根据每个分区图像的虚拟像素点在其法线方向的移动值,移动多个分区图像中的虚拟像素点,得到第二移动图像,包括:
第二移动图像的任意一个虚拟像素点与至少两个分区图像的虚拟像素点对应时,叠加至少两个分区图像的虚拟像素点,以叠加后的数值作为第二移动图像中的该虚拟像素点的像素值;
第二移动图像的任意一个虚拟像素点与多个分区图像的虚拟像素点均不对应时,以0值作为第二移动图像中的该虚拟像素点的像素值。
举例来说,尽管在待处理图像中,虚拟像素点之间不存在重叠,但是,由于不同分区图像的法线方向可能不同,且不同分区图像的虚拟像素点在法线方向的移动值也可能不同,导致不同分区图像的虚拟像素点在移动后可能会产生重叠。同时,伴随着产生重叠,则在第二移动图像上必然存在空白的虚拟像素点。
因此,如果第二移动图像的任意一个虚拟像素点与至少两个分区图像的虚拟像素点对应,可以叠加至少两个分区图像的虚拟像素点,以叠加后的数值作为第二移动图像中的该虚拟像素点的像素值,第二移动图像上该虚拟像素点的颜色显示为至少两个分区图像的虚拟像素点叠加后的颜色。
如果第二移动图像的任意一个虚拟像素点与至少两个分区图像的虚拟像素点对应,以0值作为第二移动图像中的该虚拟像素点的像素值,第二移动图像上该虚拟像素点可以是显示为黑色或白色。该虚拟像素点对应屏幕上的一个物理像素点,如果对应同一物理像素点的其他虚拟像素点(例如凹凸图像和/或待处理图像的像素点)仍然有颜色,则显示其他虚拟像素点(叠加后)的颜色。
图6示出根据本申请实施例得到置换图像时出现虚拟像素点冲突时的像素值确定方式。
如图6所示,C11-C13分别为屏幕上的物理像素点,C21-C23为分别对应C11-C13的、待处理图像的虚拟像素点,其中虚拟像素点C21位于待处理图像的分区图像P1内,移动方式对应向量F1,虚拟像素点C22位于分区图像P2内,移动方式对应向量F2。假设虚拟像素点C21颜色为红色,虚拟像素点C22颜色为绿色。置换贴图参数仅包括每个分区图像的虚拟像素点在其法线方向的移动值。
虚拟像素点C21按照向量F1执行移动后,移动到物理像素点C13的位置。同时,虚拟像素点C22按照向量F2执行移动后,也移动到物理像素点C13的位置。也就是说,移动后,虚拟像素点C21、C22均显示在物理像素点C13上,则物理像素点按照红+绿叠加后得到的颜色——黄色来进行显示,即置换图像上对应物理像素点C13的虚拟像素点C23显示黄色。
当虚拟像素点C21、C22重叠后,置换图像中会有一个虚拟像素点的像素值为0。假设置换图像和待处理图像叠加显示,待处理图像位于置换图像的下方,该值为0的虚拟像素点对应的物理像素点可以显示待处理图像上的对应虚拟像素点的颜色。例如待处理图像上的对应虚拟像素点为橙色,则该物理像素点发出橙色光。如果该物理像素点对应的其他虚拟像素点的像素值也为0,则该物理像素点可以发白光,或者不发光(即在视觉上显示黑色)。
通过这种方式,可以在出现虚拟像素点移动冲突时,根据冲突的虚拟像素点的像素值调整第二移动图像中的相应虚拟像素点的像素值,从而保证物理像素点的正常显示,且显示效果综合了相冲突的至少两个虚拟像素点,使得显示效果更好。
在一种可能的实现方式中,置换贴图参数还包括与第二模糊值、第二透明度中的至少一种,第二模糊值指示虚拟像素点的模糊程度,第二透明度指示虚拟像素点的透明程度,
根据第二移动图像中与屏幕的物理像素点对应的虚拟像素点,得到置换图像,包括:
在置换贴图参数还包括第二模糊值时,根据第二模糊值调整所述第二移动图像的虚拟像素点的像素值;
在置换贴图参数还包括第二透明度时,根据第二透明度调整所述第二移动图像的虚拟像素点的像素值;
根据调整后的第二移动图像中与屏幕的物理像素点对应的虚拟像素点,得到置换图像。
举例来说,在进行置换贴图处理时,还可以为每个虚拟像素点配置第二模糊值和第二透明度,第二模糊值指示该虚拟像素点在置换图像上的模糊程度,第二透明度指示该虚拟像素点在置换图像上的透明程度。在置换图像与凹凸图像、待处理图像叠加时,第二透明度的设置可以实现对图像的不同区域采用不同的叠加方式,例如某个区域可以只叠加置换图像与待处理图像,另一区域可以叠加置换图像与凹凸图像、待处理图像。
第二模糊值和第二透明度的使用方式,与第一模糊值和第一透明度的使用方式可以相同,将被调整对象替换为第二移动图像即可,在此不再赘述。
通过引入第二透明度和第二模糊值,使得调节置换图像和凹凸图像、待处理图像的叠加效果的方式更灵活。
以上以置换贴图处理中,各置换贴图参数按每个分区图像的虚拟像素点在其法线方向的移动值、第二模糊值、第二透明度的顺序使用作为示例。本领域技术人员应理解,在实际应用中,各置换贴图参数的使用顺序可以不限于以上示例,也可以是第二模糊值、第二透明度先使用,然后使用每个分区图像的虚拟像素点在其法线方向的移动值等等。本申请实施例对于各置换贴图参数的具体使用顺序不作限制。
下面介绍置换贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化的示例性方式。
在一种可能的实现方式中,每个分区图像的虚拟像素点在其法线方向的移动值的变化趋势与陀螺仪角度、用户触摸屏幕的时间、用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;
第二模糊值、第二透明度的变化趋势与时间、陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
举例来说,置换贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化的方式可以根据用户对终端设备的操作习惯预先设置。例如,在用户使用终端设备时,可以认为陀螺仪角度(终端设备状态)、用户触摸屏幕的时间(用户操作状态)、用户触摸屏幕的力度(用户操作状态)、用户与屏幕的接触面积(用户操作状态)的变化越大,用户希望看到的显示图像的动态效果越明显,而可认为时间、用户触摸屏幕的位置(用户操作状态)变化变大时,用户希望看到的显示图像的动态效果是否更明显与用户需求有关。为实现上述效果,可使得置换贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化,以改变置换图像的动态效果,从而改变根据置换图像得到的显示图像的动态效果。
如上文所述,置换贴图参数包括每个分区图像的虚拟像素点在其法线方向的移动值、第二透明度、第二模糊值中的至少一种。
其中,对于每个分区图像的虚拟像素点在其法线方向的移动值来说,使得置换图像的动态效果更明显的方式可以是移动值变大,则可以设置每个分区图像的虚拟像素点在法线方向的移动值的变化趋势与陀螺仪角度、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积的变化趋势相同。并设置每个分区图像的与时间的变化趋势相同或相反。
对于第二模糊值、第二透明度来说,使得置换图像的动态效果更明显的方式可能是数值变大,也可能是数值变小,具体选择变大或变小可以根据应用场景需求确定,因此,可以设置第二模糊值、第二透明度的变化趋势与时间、陀螺仪角度、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积的变化趋势相同或相反。
可以根据用户对终端设备的操作习惯,为每种置换贴图参数预先设置在每种变量下(时间、终端设备状态、用户操作状态中的至少一种)对应的变化函数,在时间、终端设备状态、用户操作状态中的至少一种变化时,使用预设的变化函数完成置换贴图参数的映射即可。本申请实施例对于实现置换贴图参数变化的方式不作限制。
通过响应环境中多种因素的变化调整置换贴图参数,可以提升置换贴图参数的调整方式与环境变化的适应性。
在一种可能的实现方式中,分区信息指示多种拆分方式,
步骤S21包括:
根据分区信息将待处理图像拆分成多组分区图像,每组分区图像对应不同的拆分方式,多组分区图像的分区图像数量不同;
步骤S22包括:
存在分区图像数量大于第一阈值的任意一组分区图像时,使用凹凸贴图参数对该组分区图像进行贴图处理,得到凹凸贴图;
存在分区图像数量小于或等于第一阈值的任意一组分区图像时,使用置换贴图参数对该组分区图像进行贴图处理,得到置换贴图。
举例来说,参见图3及相关描述,分区方式可以有多种,因此,在步骤S21中,根据分区信息将待处理图像拆分成多个分区图像时,可以根据分区信息将待处理图像拆分成多组分区图像,每组分区图像对应不同的拆分方式,多组分区图像的分区图像数量不同。
置换贴图处理和凹凸贴图处理均为基于分区图像进行贴图处理,由于凹凸贴图处理对于表面细节的处理较为粗糙,置换贴图处理对局部的处理较为精细,因此,根据置换贴图处理和凹凸贴图处理的上述特点,在步骤S22中,可以使得凹凸贴图处理时针对尺寸较大的分区图像,而置换贴图处理时针对尺寸较小的分区图像,来实现不同颗粒度的贴图处理。例如,可以预设一个第一阈值,存在分区图像数量大于第一阈值的任意一组分区图像时,认为该组分区图像是尺寸较小的,使用凹凸贴图参数对该组分区图像进行贴图处理,得到凹凸贴图;存在分区图像数量小于或等于第一阈值的任意一组分区图像时,认为该组分区图像是尺寸较大的,使用置换贴图参数对该组分区图像进行贴图处理,得到置换贴图。
通过这种方式,使得叠加凹凸图像、置换图像和待处理图像时,凹凸效果可以覆盖置换效果,使得得到的显示图像的显示效果更优。
在步骤S23中,将凹凸图像、置换图像中的至少一个与待处理图像叠加渲染时,同一对应物理像素点的多个虚拟像素点显示颜色不同时,可按照颜色叠加进行处理。在进行叠加时,综合考虑凹凸图像的各虚拟像素点的第一模糊值和置换图像的各虚拟像素点的第二模糊值,来确定一个物理像素点对应的显示图像上的虚拟像素点最终的模糊效果。
叠加得到显示图像后,就可以将显示图像输送到屏幕上进行显示。由于本申请实施例为配置了与虚拟像素点的移动值相关的凹凸贴图参数,从而在凹凸图像中实现了虚拟像素点的移动,实现更细节的平面3D效果显示。同时置换图像、移动了虚拟像素点的凹凸图像和待处理图像叠加输出的方式,一方面,增强了平面的3D显示效果,另一方面,凹凸贴图参数和置换贴图参数都包括虚拟像素点的移动值相关的参数,因而可以实现三重错位,增加平面图像的深度显示效果,搭配平面3D显示效果,可以实现更多的表面细节变化。
图7示出根据本申请实施例的显示图像的一个示例。
如图7所示,待处理图像可以是计算器界面,用户触摸屏幕的位置可以是计算器按键“8”,本申请实施例使用包括该按键“8”的分区图像对应的凹凸贴图参数和置换贴图参数对待处理图像进行贴图处理,其中凹凸贴图参数可以包括待处理图像的每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,在图7的示例中,除包括该按键“8”的分区图像中的虚拟像素点外,待处理图像的其他虚拟像素点的移动值可以是0;置换贴图参数可以包括待处理图像的每个分区图像的虚拟像素点在其法线方向的移动值,在图7的示例中,除包括该按键“8”的分区图像中的虚拟像素点外,待处理图像的其他分区图像在其法线方向的移动值可以是0。包括该按键“8”的分区图像对应的凹凸贴图参数和置换贴图参数可以随着用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积等用户操作状态的变化而变化,是动态变化的参数,从而在不同时刻能够配置不同的移动值,连续时间内移动值的变化,即呈现图7中的波纹效果,以及按键的显示效果变化。
图8示出根据本申请实施例使用不同凹凸贴图参数和/或置换贴图参数进行贴图处理得到的显示图像的示意图。
如图8所示,假设待处理图像是终端设备水平放置时主屏显示图像中的一部分(包括图8中所示的三个图标),在陀螺仪角度指示终端设备向左侧倾斜时,得到的显示图像可能是(a)或者(b),其中(a)使用的凹凸贴图参数不包括光源属性参数、光源位置、光源照射角度、镜面反射因子,(b)使用的凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子,且光源位置在左起第二个图标和左起第三个图标的上方。可以看出,(a)和(b)中的三个图标在视觉效果上也向左侧倾斜。
在陀螺仪角度指示终端设备向右侧倾斜时,得到的显示图像可能是(c)或者(d),其中(c)使用的凹凸贴图参数不包括光源属性参数、光源位置、光源照射角度、镜面反射因子,(d)使用的凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子,且光源位置在左起第一个图标和左起第三个图标的左上方。可以看出,(c)和(d)中的三个图标在视觉效果上也向右侧倾斜。
通过终端设备的陀螺仪角度的变化,引起凹凸贴图参数中光源位置的变化,从而在视觉上认为图标也在跟随终端设备的转动而进行倾斜,但图标实际的大小并未产生变化。
本申请的实施例提供了一种图像处理装置,图9示出根据本申请实施例的图像处理装置的示例性结构图。
如图9所示,所述装置包括:
分区模块91,用于根据分区信息将待处理图像拆分成多个分区图像;
贴图模块92,用于使用各分区图像对应的贴图参数对所述待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,所述贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化;
渲染模块93,用于将凹凸图像、置换图像中的至少一个与所述待处理图像叠加渲染,得到用于显示在所述终端设备的屏幕上的显示图像。
在一种可能的实现方式中,所述终端设备状态包括陀螺仪角度,所述用户操作状态包括用户触摸屏幕的位置、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积中的至少一种。
在一种可能的实现方式中,所述贴图参数包括凹凸贴图参数,所述凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子、凹凸贴图的高度中的一种或多种,所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:使用各分区图像对应的光源属性参数、光源位置、光源照射角度、镜面反射因子、虚拟像素点的高度中的一种或多种,调整待处理图像的每一虚拟像素点的像素值,得到第一调整图像;根据所述第一调整图像得到所述凹凸图像;其中,待处理图像的每一虚拟像素点对应的光源属性参数、光源位置均相同,同一分区图像的虚拟像素点对应的光源照射角度、镜面反射因子相同。
在一种可能的实现方式中,所述凹凸贴图参数还包括每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,所述第一方向、所述第二方向为所述待处理图像所在平面上两个具有预设夹角的方向,根据所述第一调整图像得到所述凹凸图像,包括:根据所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,移动所述第一调整图像中的虚拟像素点,得到第一移动图像;根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像。
在一种可能的实现方式中,所述凹凸贴图参数还包括第一透明度、第一模糊值中的至少一种,所述第一模糊值指示虚拟像素点的模糊程度,所述第一透明度指示虚拟像素点的透明程度,根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像,包括:在凹凸贴图参数还包括第一透明度时,根据所述第一透明度调整所述第一移动图像的虚拟像素点的像素值;在凹凸贴图参数还包括第一模糊值时,根据所述第一模糊值调整所述第一移动图像的虚拟像素点的像素值;根据调整后的第一移动图像得到所述凹凸图像。
在一种可能的实现方式中,所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;所述第一模糊值、所述第一透明度的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
在一种可能的实现方式中,所述贴图参数包括置换贴图参数,所述置换贴图参数包括每个分区图像的虚拟像素点在其法线方向的移动值,所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像;根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
在一种可能的实现方式中,所述根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像,包括:所述第二移动图像的任意一个虚拟像素点与至少两个分区图像的虚拟像素点对应时,叠加所述至少两个分区图像的虚拟像素点,以叠加后的数值作为所述第二移动图像中的该虚拟像素点的像素值;所述第二移动图像的任意一个虚拟像素点与所述多个分区图像的虚拟像素点均不对应时,以0值作为所述第二移动图像中的该虚拟像素点的像素值。
在一种可能的实现方式中,所述置换贴图参数还包括第二模糊值、第二透明度中的至少一种,所述第二模糊值指示虚拟像素点的模糊程度,所述第二透明度指示虚拟像素点的透明程度,根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像,包括:在置换贴图参数还包括第二模糊值时,根据所述第二模糊值调整所述第二移动图像的虚拟像素点的像素值;在置换贴图参数还包括第二透明度时,根据所述第二透明度调整所述第二移动图像的虚拟像素点的像素值;根据调整后的第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
在一种可能的实现方式中,所述每个分区图像的虚拟像素点在其法线方向的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;所述第二模糊值、所述第二透明度的的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
在一种可能的实现方式中,所述分区信息指示多种拆分方式,所述根据分区信息将待处理图像拆分成多个分区图像,包括:根据所述分区信息将待处理图像拆分成多组分区图像,每组分区图像对应不同的拆分方式,多组分区图像的分区图像数量不同;所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:存在分区图像数量大于第一阈值的任意一组分区图像时,使用凹凸贴图参数对该组分区图像进行贴图处理,得到所述凹凸贴图;存在分区图像数量小于或等于第一阈值的任意一组分区图像时,使用置换贴图参数对该组分区图像进行贴图处理,得到所述置换贴图。
本申请的实施例提供了一种终端设备,包括:处理器;屏幕;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述方法。
本申请的实施例提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
本申请的实施例提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
图10示出根据本申请实施例的终端设备的示例性结构图。
如图10所示,终端设备可以包括手机、可折叠电子设备、手持计算机、超级移动个人计算机(ultra-mobile personal computer,UMPC)、个人数字助理(personal digitalassistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备、或智慧城市设备中的至少一种。本申请实施例对该终端设备的具体类型不作特殊限制。
终端设备可以包括处理器110,存储器121,通信模块160,屏幕170。可以理解的是,本申请实施例示意的结构并不构成对终端设备的具体限定。在本申请另一些实施例中,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器可以为高速缓冲存储器。该存储器可以保存处理器110用过或使用频率较高的指令或数据,例如本申请实施例中的分区信息等。如果处理器110需要使用该指令或数据,可从该存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
存储器121可以用于存储计算机可执行程序代码,该可执行程序代码包括指令。存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如贴图处理)等。存储数据区可存储终端设备使用过程中所获取或创建的数据(比如凹凸图像、置换图像等)等。此外,存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在存储器121的指令,和/或存储在设置于处理器中的存储器的指令,实现上述终端设备所执行的各种方法。
通信模块160可以用于通过无线通信/有线通信的方式从其他装置或设备接收数据(例如本申请实施例中的待处理图像),以及向其他装置或设备输出数据。例如可以提供包括WLAN(如Wi-Fi网络)、蓝牙(Bluetooth,BT)、全球导航卫星系统(global navigationsatellite system,GNSS)、调频(frequency modulation,FM)、近距离无线通信技术(nearfield communication,NFC)、红外技术(infrared,IR)等无线通信的解决方案。
屏幕170可以是发光二极管(light-emitting diode,LED)类屏幕(例如手机上常用的有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)屏幕),以及液晶屏幕等自发光的屏幕。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RandomAccess Memory,RAM)、只读存储器(Read Only Memory,ROM)、可擦式可编程只读存储器(Electrically Programmable Read-Only-Memory,EPROM或闪存)、静态随机存取存储器(Static Random-Access Memory,SRAM)、便携式压缩盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能盘(Digital Video Disc,DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
这里所描述的计算机可读程序指令或代码可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(Instruction Set Architecture,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(Local Area Network,LAN)或广域网(WideArea Network,WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(Field-ProgrammableGate Array,FPGA)或可编程逻辑阵列(Programmable Logic Array,PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。
这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本申请的多个实施例的装置、系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。
也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行相应的功能或动作的硬件(例如电路或ASIC(Application SpecificIntegrated Circuit,专用集成电路))来实现,或者可以用硬件和软件的组合,如固件等来实现。
尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其它变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其它单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (15)

1.一种图像处理方法,其特征在于,所述方法包括:
根据分区信息将待处理图像拆分成多个分区图像;
使用各分区图像对应的贴图参数对所述待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,所述贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化;
将所述凹凸图像、置换图像中的至少一个与所述待处理图像叠加渲染,得到用于显示在所述终端设备的屏幕上的显示图像。
2.根据权利要求1所述的方法,其特征在于,所述终端设备状态包括陀螺仪角度,所述用户操作状态包括用户触摸屏幕的位置、用户触摸屏幕的时间、用户触摸屏幕的力度、用户与屏幕的接触面积中的至少一种。
3.根据权利要求2所述的方法,其特征在于,所述贴图参数包括凹凸贴图参数,所述凹凸贴图参数包括光源属性参数、光源位置、光源照射角度、镜面反射因子、凹凸贴图的高度中的一种或多种,
所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:
使用各分区图像对应的光源属性参数、光源位置、光源照射角度、镜面反射因子、虚拟像素点的高度中的一种或多种,调整待处理图像的每一虚拟像素点的像素值,得到第一调整图像;
根据所述第一调整图像得到所述凹凸图像;
其中,待处理图像的每一虚拟像素点对应的光源属性参数、光源位置均相同,同一分区图像的虚拟像素点对应的光源照射角度、镜面反射因子相同。
4.根据权利要求3所述的方法,其特征在于,所述凹凸贴图参数还包括每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,所述第一方向、所述第二方向为所述待处理图像所在平面上两个具有预设夹角的方向,
根据所述第一调整图像得到所述凹凸图像,包括:
根据所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值,移动所述第一调整图像中的虚拟像素点,得到第一移动图像;
根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像。
5.根据权利要求4所述的方法,其特征在于,所述凹凸贴图参数还包括第一透明度、第一模糊值中的至少一种,所述第一模糊值指示虚拟像素点的模糊程度,所述第一透明度指示虚拟像素点的透明程度,
根据所述第一移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述凹凸图像,包括:
在凹凸贴图参数还包括第一透明度时,根据所述第一透明度调整所述第一移动图像的虚拟像素点的像素值;
在凹凸贴图参数还包括第一模糊值时,根据所述第一模糊值调整所述第一移动图像的虚拟像素点的像素值;
根据调整后的第一移动图像得到所述凹凸图像。
6.根据权利要求5所述的方法,其特征在于,所述每个虚拟像素点在第一方向和第二方向中的至少一个方向上的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;
所述第一模糊值、所述第一透明度的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述贴图参数包括置换贴图参数,所述置换贴图参数包括每个分区图像的虚拟像素点在其法线方向的移动值,
所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:
根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像;
根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
8.根据权利要求7所述的方法,其特征在于,所述根据所述每个分区图像的虚拟像素点在其法线方向的移动值,移动所述多个分区图像中的虚拟像素点,得到第二移动图像,包括:
所述第二移动图像的任意一个虚拟像素点与至少两个分区图像的虚拟像素点对应时,叠加所述至少两个分区图像的虚拟像素点,以叠加后的数值作为所述第二移动图像中的该虚拟像素点的像素值;
所述第二移动图像的任意一个虚拟像素点与所述多个分区图像的虚拟像素点均不对应时,以0值作为所述第二移动图像中的该虚拟像素点的像素值。
9.根据权利要求7或8所述的方法,其特征在于,所述置换贴图参数还包括第二模糊值、第二透明度中的至少一种,所述第二模糊值指示虚拟像素点的模糊程度,所述第二透明度指示虚拟像素点的透明程度,
根据所述第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像,包括:
在置换贴图参数还包括第二模糊值时,根据所述第二模糊值调整所述第二移动图像的虚拟像素点的像素值;
在置换贴图参数还包括第二透明度时,根据所述第二透明度调整所述第二移动图像的虚拟像素点的像素值;
根据调整后的第二移动图像中与所述屏幕的物理像素点对应的虚拟像素点,得到所述置换图像。
10.根据权利要求9所述的方法,其特征在于,所述每个分区图像的虚拟像素点在其法线方向的移动值的变化趋势与所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同,并与所述时间的变化趋势相同或相反;
所述第二模糊值、所述第二透明度的的变化趋势与所述时间、所述陀螺仪角度、所述用户触摸屏幕的时间、所述用户触摸屏幕的力度、所述用户与屏幕的接触面积的变化趋势相同或相反。
11.根据权利要求1-10中任一项所述的方法,其特征在于,所述分区信息指示多种拆分方式,
所述根据分区信息将待处理图像拆分成多个分区图像,包括:
根据所述分区信息将待处理图像拆分成多组分区图像,每组分区图像对应不同的拆分方式,多组分区图像的分区图像数量不同;
所述使用各分区图像对应的贴图参数对待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,包括:
存在分区图像数量大于第一阈值的任意一组分区图像时,使用凹凸贴图参数对该组分区图像进行贴图处理,得到所述凹凸贴图;
存在分区图像数量小于或等于第一阈值的任意一组分区图像时,使用置换贴图参数对该组分区图像进行贴图处理,得到所述置换贴图。
12.一种图像处理装置,其特征在于,所述装置包括:
分区模块,用于根据分区信息将待处理图像拆分成多个分区图像;
贴图模块,用于使用各分区图像对应的贴图参数对所述待处理图像进行贴图处理,得到凹凸图像、置换图像中的至少一个,所述贴图参数随时间、终端设备状态、用户操作状态中的至少一种的变化而变化;
渲染模块,用于将所述凹凸图像、置换图像中的至少一个与所述待处理图像叠加渲染,得到用于显示在所述终端设备的屏幕上的显示图像。
13.一种终端设备,其特征在于,包括:
处理器;屏幕;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令时实现权利要求1-11任意一项所述的方法。
14.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1-11中任意一项所述的方法。
15.一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,其特征在于,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行权利要求1-11中任意一项所述的方法。
CN202310145621.8A 2023-02-15 2023-02-15 图像处理方法、装置、终端设备、存储介质及程序产品 Pending CN116228936A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310145621.8A CN116228936A (zh) 2023-02-15 2023-02-15 图像处理方法、装置、终端设备、存储介质及程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310145621.8A CN116228936A (zh) 2023-02-15 2023-02-15 图像处理方法、装置、终端设备、存储介质及程序产品

Publications (1)

Publication Number Publication Date
CN116228936A true CN116228936A (zh) 2023-06-06

Family

ID=86586891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310145621.8A Pending CN116228936A (zh) 2023-02-15 2023-02-15 图像处理方法、装置、终端设备、存储介质及程序产品

Country Status (1)

Country Link
CN (1) CN116228936A (zh)

Similar Documents

Publication Publication Date Title
US11270506B2 (en) Foveated geometry tessellation
US10573067B1 (en) Digital 3D model rendering based on actual lighting conditions in a real environment
CN108525298B (zh) 图像处理方法、装置、存储介质及电子设备
CN110989878B (zh) 小程序中的动画展示方法、装置、电子设备及存储介质
US20190206119A1 (en) Mixed reality display device
US10719920B2 (en) Environment map generation and hole filling
US20150243086A1 (en) Method and device for controlling a scene comprising real and virtual objects
KR20230007358A (ko) 증강 현실을 위한 멀티레이어 재투영 기법들
US11276150B2 (en) Environment map generation and hole filling
CN111539905B (zh) 用于生成图像的方法、装置、设备以及存储介质
EP4290464A1 (en) Image rendering method and apparatus, and electronic device and storage medium
CN112891946B (zh) 游戏场景生成方法和装置、可读存储介质、电子设备
CN104281426A (zh) 一种图像显示方法及装置
CN116136784A (zh) 数据处理方法、装置、存储介质及程序产品
CN114842120A (zh) 一种图像渲染处理方法、装置、设备及介质
US11593908B2 (en) Method for preprocessing image in augmented reality and related electronic device
CN116091329B (zh) 图像处理方法、装置、设备及存储介质
JP7422734B2 (ja) 視覚的ノイズ低減のための深度レイ層
CN108604367B (zh) 一种显示方法以及手持电子设备
CN116228936A (zh) 图像处理方法、装置、终端设备、存储介质及程序产品
CN114428573B (zh) 特效图像处理方法、装置、电子设备及存储介质
CN115761103A (zh) 基于虚拟现实的控制方法、装置、电子设备和存储介质
CN114049425B (zh) 图像中的照明仿真方法、装置、设备及存储介质
CN113467602B (zh) Vr显示方法及系统
US11451718B1 (en) Detecting flicker bands using multi-exposure sensors

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