CN116051361B - 图像维测数据的处理方法及装置 - Google Patents
图像维测数据的处理方法及装置 Download PDFInfo
- Publication number
- CN116051361B CN116051361B CN202210762302.7A CN202210762302A CN116051361B CN 116051361 B CN116051361 B CN 116051361B CN 202210762302 A CN202210762302 A CN 202210762302A CN 116051361 B CN116051361 B CN 116051361B
- Authority
- CN
- China
- Prior art keywords
- image
- data
- blurring
- camera
- dimension
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title abstract description 9
- 238000012545 processing Methods 0.000 claims abstract description 122
- 238000005259 measurement Methods 0.000 claims abstract description 66
- 238000000034 method Methods 0.000 claims abstract description 44
- 230000005856 abnormality Effects 0.000 claims abstract description 41
- 230000000694 effects Effects 0.000 claims abstract description 35
- 230000002159 abnormal effect Effects 0.000 claims abstract description 13
- 230000015654 memory Effects 0.000 claims description 40
- 230000003750 conditioning effect Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012360 testing method Methods 0.000 abstract description 25
- 238000012423 maintenance Methods 0.000 abstract description 13
- 238000004458 analytical method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 102100027282 Fanconi anemia group E protein Human genes 0.000 description 4
- 101000914677 Homo sapiens Fanconi anemia group E protein Proteins 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000008602 contraction Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- 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/04—Context-preserving transformations, e.g. by using an importance map
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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/10004—Still image; Photographic 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/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
Abstract
本申请提供一种图像维测数据的处理方法及装置,应用于电子设备,电子设备包括第一摄像头和第二摄像头,方法包括:响应一次拍照操作,获取第一摄像头采集的第一图像和第二摄像头采集的第二图像;基于第一图像和第二图像,获取虚化维测数据;对第一图像和第二图像进行虚化处理,得到第三图像,第三图像是具有背景虚化效果的图像,虚化维测数据用于在第三图像的背景虚化效果存在虚化异常时对虚化异常进行分析定位,第三图像保存在电子设备的图库应用中;在图像维测数据中保存虚化维测数据,以在对第一图像和第二图像进行虚化处理之前,获取到虚化维测数据,将虚化维测数据保存到图像维测数据中,在虚化异常时基于虚化维测数据对虚化进行维护测试。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像维测数据的处理方法及装置。
背景技术
电子设备具有背景虚化功能,通过电子设备的背景虚化功能可以拍摄到具有背景虚化效果的图像,背景虚化效果是指图像的背景是模糊的,但是对具有背景虚化效果的图像的维护测试存在一定难度。
发明内容
本申请提供了一种图像维测数据的处理方法及装置,目的在于使得电子设备能够对具有背景虚化效果的图像进行维护测试。为了实现上述目的,本申请提供了以下技术方案:
第一方面,本申请提供一种图像维测数据的处理方法,应用于电子设备,电子设备包括第一摄像头和第二摄像头,方法包括:响应一次拍照操作,获取第一摄像头采集的第一图像和第二摄像头采集的第二图像;基于第一图像和第二图像,获取虚化维测数据;对第一图像和第二图像进行虚化处理,得到第三图像,第三图像是具有背景虚化效果的图像,虚化维测数据用于在第三图像的背景虚化效果存在虚化异常时对虚化异常进行分析定位,第三图像保存在电子设备的图库应用中;在图像维测数据中保存虚化维测数据。在本申请中,电子设备通过一次拍照操作获取到第一图像和第二图像,可以在对第一图像和第二图像进行虚化处理之前,获取到虚化维测数据,将虚化维测数据保存到图像维测数据中,这样在虚化异常时,电子设备可以基于虚化维测数据对虚化进行维护测试,以分析定位出虚化异常的原因等。
一些示例中,虚化维测数据作为图像维测数据的一部分数据,在保存图像维测数据时实现对虚化维测数据的保存。其中第一摄像头可以是电子设备的主摄像头,第二摄像头可以是电子设备的辅助摄像头,如电子设备的广角摄像头可以作为辅助摄像头,第一摄像头采集到的第一图像和第二摄像头采集到的第二图像是为了获取虚化维测数据,第一图像和第二图像没有保存在图库应用中,第三图像是具有背景虚化效果的图像,第三图像可以称为虚化图像,保存在图库应用中。
在一种可能的实现方式中,在图像维测数据中保存虚化维测数据包括:如果电子设备开启数据扩展开关,在图像维测数据中保存虚化维测数据;和/或,基于第一图像和第二图像,获取虚化维测数据包括:如果电子设备开启数据扩展开关,基于第一图像和第二图像,获取虚化维测数据。在本实施例中,通过数据扩展开关控制虚化维测数据的保存和/或获取,例如在具有虚化维护测试需求时电子设备可以开启数据扩展开关,在没有虚化维护测试需求时电子设备可以关闭数据扩展开关,从而在有虚化维护测试需求时获取并保存虚化维测数据,以在出现虚化异常时进行分析定位。没有虚化维护测试需求时电子设备可以不获取也不保存虚化维测数据,减少对电子设备的存储空间的占用,且电子设备可以有更多资源处理其他任务等。
在一种可能的实现方式中,方法还包括:获取用户输入的扩展数据控制命令,如果扩展数据控制命令用于指示开启数据扩展开关,开启数据扩展开关,以由用户控制数据扩展开关的开启或关闭。
在一种可能的实现方式中,方法还包括:如果确定第四图像的虚化异常,开启数据扩展开关,第四图像是对第一摄像头采集的第五图像和第二摄像头采集的第六图像虚化处理得到,第四图像的获取时刻早于第一图像和第二图像的获取时刻;或者,如果确定第四图像的虚化异常,输出提示信息;如果接收到用户基于提示信息作出的预设操作,开启数据扩展开关;或者,方法还包括:如果拍照操作指示对第一图像和第二图像进行第二次虚化,第二次虚化与对第一图像和第二图像的第一次虚化相同,开启数据扩展开关。在本申请中,电子设备通过对虚化处理的监控决定是否开启数据扩展开关,实现对数据扩展开关的自动控制。在一些示例中,在自动控制数据扩展开关过程中可以引入用户操作,从用户角度确定虚化是否有异常,在虚化有异常时用户可以作出预设操作,以开启数据扩展开关,保证数据扩展开关准确及时开启。其中第二次虚化与对第一图像和第二图像的第一次虚化相同表示电子设备连续两次对相同图像进行虚化处理。
在一种可能的实现方式中,基于第一图像和第二图像,获取虚化维测数据包括:基于第一图像的图像数据、第二图像的图像数据、第一摄像头和第二摄像头的摄像头相关数据,得到虚化维测数据,虚化维测数据包括第一图像的像素数据、第二图像的像素数据、摄像头的标定数据、虚化控制数据;摄像头的标定数据用于定位摄像头在电子设备中的位置和摄像头之间的位置关系;虚化控制数据用于体现第一图像和第二图像的虚化处理方式。在本申请中,虚化维测数据可以包括多种类型(方面)的数据,以尽可能获取与虚化相关的各类型数据,满足虚化维护测试需求。
在一种可能的实现方式中,虚化控制数据包括:第一图像元数据、第二图像元数据、关键对象数据、对焦点数据、图像调控数据;第一图像元数据用于指示第一图像的属性,第二图像元数据用于指示第二图像的属性,关键对象数据用于指示关键对象在第一图像或第二图像中的情况,对焦点数据用于指向摄像头在拍摄时的对焦点,图像调控数据用于对第一图像和第二图像进行调整。
在一种可能的实现方式中,第一图像元数据包括:第一图像的宽度、高度、格式、宽度的步长和高度的步长;第二图像元数据包括:第二图像的宽度、高度、格式、宽度的步长和高度的步长;关键对象数据包括:关键对象的数量、关键对象的坐标、关键对象的角度和镜头偏移;对焦点数据包括:对焦点的坐标;图像调控数据包括:旋转角度、第一摄像头的裁剪宽度、第一摄像头的裁剪高度、第二摄像头的裁剪宽度和第二摄像头的裁剪高度,将指向同一对象的相关数据作为一类数据保存,如第一图像的属性相关的数据保存在第一图像元数据中,这样在分析定位时容易定位是哪类数据导致的虚化异常。
在一种可能的实现方式中,基于第一图像和第二图像,获取虚化维测数据包括:基于第一图像的图像数据,获取第一图像的像素数据和第一图像元数据;基于第二图像的图像数据,获取第二图像的像素数据和第二图像元数据;基于第一摄像头和第二摄像头的摄像头相关数据,得到摄像头的标定数据、对焦点数据和图像调控数据;基于第一图像的图像数据或第二图像的图像数据,得到关键对象数据。在获取图像调控数据时还可以基于第一图像的图像数据和第二图像的图像数据,如第一图像的尺寸和第二图像的尺寸,尺寸可通过宽度和高度确定。第一图像的像素数据可以是YCbCr格式或RGB格式,第一摄像头采集的是RAW格式的像素数据,电子设备可以对其进行格式转换,将YCbCr格式或RGB格式的像素数据作为第一图像的像素数据。同样的第二图像的像素数据可以是YCbCr格式或RGB格式,第一摄像头采集的是RAW格式的像素数据,电子设备可以对第二摄像头采集的RAW格式的像素数据进行格式转换,将YCbCr格式或RGB格式的像素数据作为第二图像的像素数据。
在一种可能的实现方式中,虚化控制数据包括:环境标识符,环境标识符用于指示摄像头所处环境,如通过环境标识符指示在室内还是室外,室内和室外的虚化是存在差异的,因此在分析虚化异常时可以结合环境标识符进行分析定位,以保证分析定位的准确度。
在一种可能的实现方式中,在图像维测数据中保存虚化维测数据包括:基于虚化维测数据的长度、图像维测数据中除虚化维测数据之外的其他数据在电子设备的存储地址,获得虚化维测数据在电子设备中的扩展起始地址;基于虚化维测数据的长度和扩展起始地址,获取虚化维测数据在电子设备中的存储区域;在存储区域中保存虚化维测数据,以在一个地址连续的存储区域中存储虚化维测数据,便于数据写入和读取。
在一种可能的实现方式中,在图像维测数据中保存虚化维测数据包括:获取虚化维测数据中每个参数的最大值;基于每个参数的最大值,确定每个参数占用的比特位;基于每个参数占用的比特位,在电子设备的预设存储区域中保存虚化维测数据,预设存储区域用于存储图像维测数据,通过位压缩方式减少虚化维测数据占用的空间,如减少虚化维测数据对内存的占用。
第二方面,本申请提供一种电子设备,包括:第一摄像头;第二摄像头;一个或多个处理器;一个或多个存储器;存储器存储有一个或多个程序,当一个或者多个程序被处理器执行时,使得电子设备执行上述图像维测数据的处理方法。
第三方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储了计算机程序,当计算机程序被处理器执行时,使得处理器执行上述图像维测数据的处理方法。
第四方面,本申请提供一种图像维测数据的处理装置,应用于电子设备,电子设备包括第一摄像头和第二摄像头,装置包括:第一图像处理算法模块,用于响应一次拍照操作,获取第一摄像头采集的第一图像和第二摄像头采集的第二图像;基于第一图像和第二图像,获取虚化维测数据;虚化处理模块,用于对第一图像和第二图像进行虚化处理,得到第三图像,第三图像是具有背景虚化效果的图像,虚化维测数据用于在第三图像的背景虚化效果存在虚化异常时对虚化异常进行分析定位,第三图像保存在电子设备的图库应用中;第二图像处理算法模块,用于在图像维测数据中保存虚化维测数据。在本申请中,电子设备可以在对第一图像和第二图像进行虚化处理之前,获取到虚化维测数据,将虚化维测数据保存到图像维测数据中,这样在虚化异常时,电子设备可以基于虚化维测数据对虚化进行维护测试,以分析定位出虚化异常的原因等。
一些示例中,虚化维测数据作为图像维测数据的一部分数据,在保存图像维测数据时实现对虚化维测数据的保存。其中第一摄像头可以是电子设备的主摄像头,第二摄像头可以是电子设备的辅助摄像头,如电子设备的广角摄像头可以作为辅助摄像头,第一摄像头采集到的第一图像和第二摄像头采集到的第二图像是为了获取虚化维测数据,第一图像和第二图像没有保存在图库应用中,第三图像是具有背景虚化效果的图像,第三图像可以称为虚化图像,保存在图库应用中。
在一种可能的实现方式中,第二图像处理算法模块,用于如果电子设备开启数据扩展开关,在图像维测数据中保存虚化维测数据;和/或,第一图像处理算法模块,用于如果电子设备开启数据扩展开关,基于第一图像和第二图像,获取虚化维测数据。在本实施例中,通过数据扩展开关控制虚化维测数据的保存和/或获取,例如在具有虚化维护测试需求时电子设备可以开启数据扩展开关,在没有虚化维护测试需求时电子设备可以关闭数据扩展开关,从而在有虚化维护测试需求时获取并保存虚化维测数据,以在出现虚化异常时进行分析定位。没有虚化维护测试需求时电子设备可以不获取也不保存虚化维测数据,减少对电子设备的存储空间的占用,且电子设备可以有更多资源处理其他任务等。
在一种可能的实现方式中,图像维测数据的处理装置还包括:开关控制模块,用于获取用户输入的扩展数据控制命令,如果扩展数据控制命令用于指示开启数据扩展开关,开启数据扩展开关,以由用户控制数据扩展开关的开启或关闭。
在一种可能的实现方式中,图像维测数据的处理装置还包括:开关控制模块,用于如果确定第四图像的虚化异常,开启数据扩展开关,第四图像是对第一摄像头采集的第五图像和第二摄像头采集的第六图像虚化处理得到,第四图像的获取时刻早于第一图像和第二图像的获取时刻;或者,如果确定第四图像的虚化异常,输出提示信息;如果接收到用户基于提示信息作出的预设操作,开启数据扩展开关;或者,装置还包括:如果拍照操作指示对第一图像和第二图像进行第二次虚化,第二次虚化与对第一图像和第二图像的第一次虚化相同,开启数据扩展开关。在本申请中,电子设备通过对虚化处理的监控决定是否开启数据扩展开关,实现对数据扩展开关的自动控制。在一些示例中,在自动控制数据扩展开关过程中可以引入用户操作,从用户角度确定虚化是否有异常,在虚化有异常时用户可以作出预设操作,以开启数据扩展开关,保证数据扩展开关准确及时开启。
在一种可能的实现方式中,第一图像处理算法模块,用于基于第一图像的图像数据、第二图像的图像数据、第一摄像头和第二摄像头的摄像头相关数据,得到虚化维测数据,虚化维测数据包括第一图像的像素数据、第二图像的像素数据、摄像头的标定数据、虚化控制数据;摄像头的标定数据用于定位摄像头在电子设备中的位置和摄像头之间的位置关系;虚化控制数据用于体现第一图像和第二图像的虚化处理方式。在本申请中,虚化维测数据可以包括多种类型(方面)的数据,以尽可能获取与虚化相关的各类型数据,满足虚化维护测试需求。
在一种可能的实现方式中,虚化控制数据包括:第一图像元数据、第二图像元数据、关键对象数据、对焦点数据、图像调控数据;第一图像元数据用于指示第一图像的属性,第二图像元数据用于指示第二图像的属性,关键对象数据用于指示关键对象在第一图像或第二图像中的情况,对焦点数据用于指向摄像头在拍摄时的对焦点,图像调控数据用于对第一图像和第二图像进行调整。
在一种可能的实现方式中,第一图像元数据包括:第一图像的宽度、高度、格式、宽度的步长和高度的步长;第二图像元数据包括:第二图像的宽度、高度、格式、宽度的步长和高度的步长;关键对象数据包括:关键对象的数量、关键对象的坐标、关键对象的角度和镜头偏移;对焦点数据包括:对焦点的坐标;图像调控数据包括:旋转角度、第一摄像头的裁剪宽度、第一摄像头的裁剪高度、第二摄像头的裁剪宽度和第二摄像头的裁剪高度,将指向同一对象的相关数据作为一类数据保存,如第一图像的属性相关的数据保存在第一图像元数据中,这样在分析定位时容易定位是哪类数据导致的虚化异常。
在一种可能的实现方式中,第一图像处理算法模块,用于基于第一图像的图像数据,获取第一图像的像素数据和第一图像元数据;基于第二图像的图像数据,获取第二图像的像素数据和第二图像元数据;基于第一摄像头和第二摄像头的摄像头相关数据,得到摄像头的标定数据、对焦点数据和图像调控数据;基于第一图像的图像数据或第二图像的图像数据,得到关键对象数据。第一图像的像素数据可以是YCbCr格式或RGB格式,第一摄像头采集的是RAW格式的像素数据,电子设备可以对其进行格式转换,将YCbCr格式或RGB格式的像素数据作为第一图像的像素数据。同样的第二图像的像素数据可以是YCbCr格式或RGB格式,第一摄像头采集的是RAW格式的像素数据,电子设备可以对第二摄像头采集的RAW格式的像素数据进行格式转换,将YCbCr格式或RGB格式的像素数据作为第二图像的像素数据。
在一种可能的实现方式中,虚化控制数据包括:环境标识符,环境标识符用于指示摄像头所处环境,如通过环境标识符指示在室内还是室外,室内和室外的虚化是存在差异的,因此在分析虚化异常时可以结合环境标识符进行分析定位,以保证分析定位的准确度。
在一种可能的实现方式中,第二图像处理算法模块,用于基于虚化维测数据的长度、图像维测数据中除虚化维测数据之外的其他数据在电子设备的存储地址,获得虚化维测数据在电子设备中的扩展起始地址;基于虚化维测数据的长度和扩展起始地址,获取虚化维测数据在电子设备中的存储区域;在存储区域中保存虚化维测数据,以在一个地址连续的存储区域中存储虚化维测数据,便于数据写入和读取。
在一种可能的实现方式中,第二图像处理算法模块,用于获取虚化维测数据中每个参数的最大值;基于每个参数的最大值,确定每个参数占用的比特位;基于每个参数占用的比特位,在电子设备的预设存储区域中保存虚化维测数据,预设存储区域用于存储图像维测数据,通过位压缩方式减少虚化维测数据占用的空间,如减少虚化维测数据对内存的占用。
附图说明
图1为本申请提供的虚化处理的一种示意图;
图2为本申请提供的电子设备的硬件结构示意图;
图3为本申请提供的电子设备的软件架构示意图;
图4为本申请提供的图像维测数据的处理方法的时序图;
图5为本申请提供的图像维测数据的处理方法的示意图;
图6为本申请提供的写入虚化维测数据的示意图;
图7为本申请提供的虚化控制数据的示意图;
图8为本申请提供的控制数据扩展开关的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例涉及的多个,是指大于或等于两个。需要说明的是,在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
在相机领域中,人像模式和大光圈模式广泛使用了背景虚化功能,使得人像模式和大光圈模式下拍摄到的图像具有背景虚化效果。图1为得到具有背景虚化效果的图像的一种示例,电子设备显示图1中的(1)桌面,用户点击桌面中的相机应用,电子设备跳转至图1中的(2)所示的拍照预览界面,拍照预览界面显示摄像头当前对准的对象,且拍照预览界面还显示多个拍摄模式,如图1中的(2)所示的人像模式、大光圈模式、夜景模式和拍照模式,人像模式和大光圈模式拍摄到的图像可以具有背景虚化效果;夜景模式主要针对的是夜晚拍摄,使夜晚拍摄到的图像更加清晰;拍照模式是没有特殊效果也没有针对特定时间的模式。
在图1中的(2)所示的拍照预览界面中,摄像头的拍照模式为人像模式,拍照预览界面显示的图像具有背景虚化效果。如果用户点击拍照预览界面的拍照按钮,电子设备跳转至图1中的(3)所示的界面,相对于图1中的(2)来说,不同之处在于拍到的图像显示在已拍摄图像按钮中,已拍摄图像按钮为已经拍摄到的图像的入口,如果用户点击已拍摄图像按钮,电子设备显示图像,显示的图像与图1中的(2)或(3)所示内容相似,用户也可以对显示的图像进行编辑操作。除了人像模式拍摄到的图像具有背景虚化效果,大光圈模式拍摄到的图像也具有背景虚化效果,其过程与图1相似,用户点击大光圈模式即可,此处不再赘述。
图像的背景虚化效果可能影响用户的使用体验,主要是图像的背景虚化效果较差,使得图像的背景虚化效果无法满足用户的使用需求,影响用户的使用体验,由此虚化异常的分析定位显得非常重要,但是基于图像维测数据进行虚化异常的分析定位存在一定难度。
申请人经研究发现,虚化是对摄像头采集到的至少两张图像(简称原始图像)进行虚化处理而融合成一张具有背景虚化效果的图像,如对两张原始图像中像素的像素值进行融合叠加,得到具有背景虚化效果的图像中像素的像素值,从而完成对两张原始图像的虚化处理。但是原始图像中像素值的融合叠加可能会使得具有背景虚化效果的图像的像素不准确,例如对存在人脸的两张原始图像进行虚化时,虚化算法将人脸中的多个像素识别为背景,在融合叠加时将这些像素虚化成背景,使得具有背景虚化效果的图像的人脸中多个像素的像素值不准确,图像的背景虚化效果差,虚化异常。然而电子设备存储的是具有背景虚化效果的图像以及该图像的图像维测数据,图像维测数据记录的是具有背景虚化效果的图像的像素数据,图像维测数据中的像素数据与虚化不相关,通过这些像素数据不能推算出原始图像的像素数据,因此图像维测数据不支持虚化的维护测试,基于图像维测数据难以进行虚化异常的分析定位。
针对这一问题,本申请提供的图像维测数据的处理方法,虚化维测数据作为图像维测数据中的一部分数据,在图像维测数据中保存虚化维测数据。一种示例中,电子设备将虚化维测数据写入到内存中,在虚化异常时基于虚化维测数据进行虚化的维护测试,以对虚化异常进行分析定位。
在本实施例中,图像维测数据的处理方法应用电子设备中,电子设备可以是手机、智慧屏、平板电脑、可穿戴电子设备(如手表、手环、耳机等)、车载电子设备、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、投影仪等等。
图2示出了一种电子设备的硬件结构示意图。电子设备可以包括:处理器,外部存储器接口,内部存储器,通用串行总线(universal serial bus,USB)接口,充电管理模块,电源管理模块,电池,天线1,天线2,移动通信模块,无线通信模块,传感器模块,按键,马达,指示器,音频模块,摄像头,显示屏以及用户标识模块(subscriber identificationmodule,SIM)卡接口等。其中音频模块可以包括扬声器,受话器,麦克风,耳机接口等,传感器模块可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器,重力传感器等。
可以理解的是,本实施例示意的结构并不构成对电子设备的具体限定。在另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器可以包括一个或多个处理单元,例如:处理器可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器是电子设备的神经中枢和指挥中心,控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
外部存储器接口可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口与处理器通信,实现数据存储功能。例如将运动数据和训练数据等保存在外部存储卡中。内部存储器可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器通过运行存储在内部存储器的指令,从而执行电子设备的各种功能应用以及数据处理。例如,在本实施例中,处理器可以通过执行存储在内部存储器中的指令,执行图像维测数据的处理方法。
内部存储器可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如显示功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如虚化维测数据)等。此外,内部存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器通过运行存储在内部存储器的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备的各种功能应用以及数据处理。
显示屏可以用于显示图像或视频,如显示摄像头拍摄到的图片。显示屏包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)、有源矩阵有机发光二极体(active-matrixorganic light-emitting diode,AMOLED)、柔性发光二极管(flex light-emittingdiode,FLED)、迷你发光二极管(mini light-emitting diode,Mini LED)、微型发光二极管(micro light-emitting diode,Micro LED)、微型OLED(Micro OLED)或量子点发光二极管(quantumdot light emitting diodes,QLED)。在一些实施例中,电子设备可以包括1个或N个显示屏,N为大于1的正整数。
摄像头用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备可以包括1个或N个摄像头,N为大于1的正整数。
另外,在上述部件之上,运行有操作***。例如苹果公司所开发的iOS操作***,谷歌公司所开发的Android开源操作***,微软公司所开发的Windows操作***等。在该操作***上可以安装运行应用程序。
电子设备的操作***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android***为例,示例性说明电子设备的软硬件结构。图3是电子设备的软硬件结构框图。软硬件结构采用分层架构,分层架构将软硬件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。以Android***为例,在一些实施例中,将Android***分为五层,从上至下分别为应用程序层,应用程序框架层(Framework),硬件抽象层(hardware abstraction layer,HAL)层,内核层以及硬件层。其中,应用程序层可以包括一系列应用程序包。应用程序包可以包括相机,图库,日历,通话,地图,视频,运动等APP。应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。例如应用程序框架层可以包括窗口管理器,内容提供器,通知管理器,电话管理器,资源管理器,视图***等。例如,在本申请中,在虚化场景中,应用程序框架层可以为应用程序层提供虚化相关的API,以在相机应用启动虚化功能时向HAL层发送指令等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。电话管理器用于提供电子设备的通信功能。例如通话状态的管理(包括接通,挂断等)。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
HAL层运行于用户空间(user space),对内核层驱动进行封装,向上层(如应用程序层)提供调用接口。例如HAL层包括第一图像处理算法模块、第二图像处理算法模块和虚化处理模块,第一图像处理算法模块用于得到图像数据和虚化维测数据等,第二图像处理算法模块用于将虚化维测数据写入到内存中。虚化处理模块用于得到具有背景虚化效果的图像(简称虚化图像)。
内核层是硬件和软件之间的层。内核层可以包括多种驱动,例如内核层包括摄像头驱动和显示驱动等。硬件层包括摄像头、显示屏和内存等,摄像头驱动可以驱动摄像头工作,摄像头采集到的数据可以通过摄像头驱动向上层传输,如传输给第一图像处理算法模块。
在本实施例中,硬件层可以包括2个或2个以上摄像头,2个或2个以上摄像头中至少一个摄像头为主摄像头,至少一个摄像头为广角摄像头(可以为辅助摄像头)。主摄像头拍摄到(或采集到)的图像作为左视图使用,广角摄像头拍摄到(或采集到)的图像作为右视图使用,左视图和右视图可以是主摄像头和广角摄像头拍摄同一对象时得到的两张图像,摄像头拍摄到的图像为原始图像,即没有经过虚化处理的图像。
可以理解的是,因为主摄像头和广角摄像头在电子设备上的位置不同,所以主摄像头的视角与广角摄像头的视角不同,主摄像头和广角摄像头之间存在视角的差异,使得主摄像头拍摄到的图像与广角摄像头拍摄到的图像之间存在差异。虽然这里将视角不同的图像称为“左视图”和“右视图”,但可以理解的是,“左”和“右”仅为示例,主摄像头和广角摄像头还可以是上下排列。也就是说,“左”和“右”的目的在于区分,而非对位置关系的限定,“左视图”和“右视图”还可以被表示为“第一视图”和“第二视图”,或者“第一图像”和“第二图像”,或者“左眼图”和“右眼图”。
HAL层的虚化处理模块可以基于左视图和右视图得到虚化图像,左视图的数量可以大于或等于1,右视图的数量可以大于或等于1,如果左视图和右视图的数量大于1,在虚化之前,将多张左视图融合成一张左视图、多张右视图融合成一张右视图,然后对融合后的左视图和融合后的右视图进行虚化处理(Bokeh),得到一张虚化图像。
以应用程序层的相机应用为例,对本申请提供的图像维测数据的处理方法进行说明,其中相机应用可以采用人像模式或大光圈模式拍照,图像维测数据的处理方法的示意图如图4所示,可以包括以下步骤:
S11、相机应用向摄像头驱动发送拍照指令,其中拍照指令中携带拍照模式,如人像模式或大光圈模式等。在人像模式或大光圈模式下,用户可以点击相机应用中的拍照按钮,电子设备接收到用户给出的拍照操作,相机应用可以向摄像头驱动发送拍照指令。
S12、摄像头驱动在拍照指令作用下从摄像头中获取图像数据。
在本实施例中,拍照指令可以指示摄像头驱动从主摄像头和辅助摄像头中获取图像数据,即一个拍照指令得到至少两张图像的图像数据,用户执行一次拍照操作,摄像头驱动可以获取至少两张图像的图像数据。其中主摄像头拍摄的图像为左视图,辅助摄像头拍摄的图像为右视图,主摄像头可以向摄像头驱动发送左视图的图像数据,左视图的图像数据包括左视图的像素数据和左视图的属性数据,左视图的像素数据记录了左视图中各像素的像素值,左视图的属性数据记录了左视图的属性,如左视图的宽度、高度、格式、高度的步长(stride)、高度的stride等。辅助摄像头可以向摄像头驱动发送右视图的图像数据,右视图的图像数据包括右视图的像素数据和右视图的属性数据,右视图的像素数据记录了右视图中个像素的像素值,右视图的属性数据记录了右视图的属性。摄像头采集到的左视图和右视图的像素数据,其格式可以是RAW格式。
如果主摄像头得到至少两张左视图和/或辅助摄像头得到至少两张右视图,主摄像头和辅助摄像头以一张图像为单位,将每张图像的图像数据发送给摄像头驱动。
S13、摄像头驱动向第一图像处理算法模块发送图像数据、摄像头相关数据。
摄像头相关数据用于指向摄像头和摄像头之间的关系,如摄像头相关数据包括摄像头的参数、摄像头之间的位置关系等,摄像头的参数包括焦距、视角、畸变系数、旋转系数、平移系数、预设图像的像素数据等;摄像头之间的位置关系是摄像头在电子设备中的相对位置关系,如摄像头之间的位置关系通过摄像头之间的距离、摄像头在电子设备上的排布关系(如上下位置关系)等表示。
S14、第一图像处理算法模块基于图像数据和摄像头相关数据,得到虚化维测数据。
S15、第一图像处理算法模块将虚化维测数据发送给第二图像处理算法模块。
S16、第二图像处理算法模块将虚化维测数据写入到内存中。
图4所示图像维测数据的处理方法仅是示例,本实施例不限定,如第一图像处理算法模块可以从摄像头中获取图像数据,从摄像头驱动中获取摄像头相关数据,摄像头相关数据包括主摄像头的参数、辅助摄像头的参数,也可以包括主摄像头和辅助摄像头之间的位置关系等等。又例如通过HAL层的其他模块(如相机HAL)获取图像数据和摄像头相关数据发送给第一图像处理算法模块。第一图像处理算法模块和第二图像处理算法模块是HAL层中用于得到虚化维测数据和保存虚化维测数据的两个功能模块,并不限定是HAL层的第几个功能模块。又例如第一图像处理算法模块和第二图像处理算法模块可以继承在一个功能模块中,通过一个功能模块来得到虚化维测数据和保存虚化维测数据。
在本实施例中,第一图像处理算法模块可以通过对图像数据和摄像头相关数据的分析,得到虚化维测数据,虚化维测数据用于对虚化图像进行维护测试,以对虚化图像的虚化异常进行分析定位,例如通过虚化维测数据定位出虚化异常的原因等等,因此虚化维测数据是与虚化相关的数据,可以是在虚化处理时使用的数据。
虚化可以是对左视图和右视图进行虚化,在左视图和右视图虚化时可以参照摄像头相关数据,因此虚化异常与左视图的数据、右视图的数据、摄像头相关数据有极大关系,由此虚化维测数据包括多种类型的数据,一种示例中,虚化维测数据可以包括左视图的像素数据(第一图像的像素数据)、右视图的像素数据(第一图像的像素数据)、摄像头的标定数据、虚化控制数据等等。
在这里说明一点,左视图和右视图是摄像头拍摄到的原始图像,如果虚化处理是对至少两张左视图和至少两张右视图,则虚化维测数据可以包括每张左视图的像素数据、每张右视图的像素数据,左视图的像素数据可以记录左视图中每个像素的像素值,像素值可以是YCbCr格式,通过左视图的像素数据可以还原出左视图,通过右视图的像素数据可以还原出右视图。
第一图像处理算法模块在接收到摄像头驱动发送的图像数据后,从图像数据中提取出第一类型格式(如RAW格式)的像素数据,将第一类型格式的像素数据转换为第二类型格式(如YCbCr格式)的像素数据。例如对于左视图和右视图来说,第一图像处理算法模块可以从左视图的图像数据中提取出RAW格式的像素数据,将左视图的RAW格式的像素数据转换为左视图的YCbCr格式的像素数据,左视图的YCbCr格式的像素数据为左视图的像素数据,被记录在虚化维测数据中,同样的第一图像处理算法模块可以基于右视图的图像数据,得到右视图的YCbCr格式的像素数据,右视图的YCbCr格式的像素数据作为右视图的像素数据,被记录在虚化维测数据中。即第一图像处理算法模块在得到每张图像的图像数据后,可以对每张图像的图像数据中的像素数据进行格式转换,得到虚化维测数据中左视图的像素数据和右视图的像素数据。除了转换成YCbCr格式,第一图像处理算法模块可以将像素数据转换为RGB格式,本实施例不进行限定。
摄像头的标定数据至少用于定位摄像头在电子设备中的位置和摄像头之间的位置关系,例如摄像头的标定数据可以包括焦距、视角、畸变系数、旋转系数、平移系数等。摄像头的标定数据也用于指示摄像头拍摄到的图像和预设图像之间的像素差异,由此摄像头的标定数据可以包括摄像头拍摄到的图像和预设图像之间的像素差异值。在本实施例中,第一图像处理算法模块可以从摄像头相关数据中提取到焦距、视角、畸变系数、旋转系数、平移系数等;第一图像处理算法模块可以将摄像头拍摄到的图像的像素数据和预设图像的像素数据进行比对,以得到像素差异值。在本实施例中,摄像头的标定数据可以包括主摄像头的标定数据和辅助摄像头的标定数据,第一图像处理算法模块可以从主摄像头和辅助摄像头的摄像头相关数据中,获取主摄像头的标定数据和辅助摄像头的标定数据。
虚化控制数据用于体现左视图和右视图的虚化处理方式,由此虚化控制数据可以记录虚化处理时使用的一些参数,如虚化控制数据包括左视图元数据(第一图像元数据)、右视图元数据(第二图像元数据)、关键对象数据、对焦点数据、图像调控数据。左视图元数据用于指示左视图的属性,右视图元数据用于指示右视图的属性,如左视图元数据可以包括:左视图的宽度、高度、格式、宽度的stride和高度的stride,右视图元数据可以包括:右视图的宽度、高度、格式、宽度的stride和高度的stride。第一图像处理算法模块可以从图像数据中提取到左视图元数据和右视图元数据。
关键对象数据用于指向没有被虚化处理的对象,如关键对象可以是人脸。关键对象数据用于指示关键对象在图像(如左视图或右视图)中的情况,如关键对象数据用于指示关键对象在左视图中的位置。一些示例中,关键对象数据可以包括关键对象的数量、关键对象的坐标、关键对象的角度和镜头偏移,镜头偏移用于标识镜头的伸缩量,镜头的伸缩量不同意味着焦距不同,摄像头采集到的图像的景深也会有差异,使得关键对象在图像中的位置可能不同,由此镜头偏移在定位关键对象时具有一定作用,将镜头偏移作为与关键对象相关的参数,记录在关键对象数据中。第一图像处理算法模块可以通过图像识别算法对左视图或右视图进行处理,得到关键对象数据。一种示例中,第一图像处理算法模块可以对左视图进行下采样,得到左视图的小图,通过图像识别算法对左视图的小图进行识别,得到关键对象数据。左视图的小图的尺寸小于左视图的尺寸。
对焦点数据用于指向摄像头在拍摄时的对焦点,对焦点数据可以包括对焦点的坐标。第一图像处理算法模块可以基于摄像头相关数据得到对焦点数据。
图像调控数据特指虚化处理时使用到的与摄像头相关的各参数,用于对左视图和右视图进行调整,如图像调控数据可以包括旋转角度、主摄(主摄像头)裁剪宽度、主摄裁剪高度、辅摄(辅助摄像头)裁剪宽度和辅摄裁剪高度。第一图像处理算法模块可以基于左视图的图像数据、右视图的图像数据和摄像头相关数据,得到图像调控数据。如第一图像处理算法模块可以基于摄像头的安装数据、左视图的尺寸、右视图的尺寸、摄像头的倍率和像素对齐算法,得到图像调控数据。摄像头的倍率可以基于摄像头的焦距得到,摄像头的安装数据表示摄像头在电子设备中的位置,通过摄像头驱动获取,摄像头的安装数据可以作为摄像头的参数,记录在摄像头相关数据中。
以关键对象为人脸,摄像头采集到JPEG(joint photographic experts group)格式的图像为例,阐述本申请提供的图像维测数据的处理方法。如图5所示,电子设备通过人脸超分辨重建技术(facesr)重建出左视图中的高分辨率人脸图像,在对左视图和右视图进行虚化处理之前,调用第一图像处理算法模块获取虚化维测数据,其中,虚化维测数据可以包括左视图的像素数据、右视图的像素数据、摄像头的标定数据、虚化控制数据;虚化控制数据可以包括左视图元数据、右视图元数据、关键对象数据、对焦点数据、图像调控数据。
第一图像处理算法模块得到的虚化维测数据,通过第二图像处理算法模块保存虚化维测数据,如通过第二图像处理算法模块将虚化维测数据写入到内存中。一种示例中,虚化维测数据作为图像维测数据中的一部分数据,通过第二图像处理算法模块写入到JPEG中,JPEG中记录了图像维测数据,JPEG可以存储在内存中。第二图像处理算法模块在写入图像维测数据至JPEG后,JPEG可以从内存中搬移到硬盘中存储,在读取JPEG时先将JPEG从硬盘搬移到内存,再从内存中读取。第二图像处理算法模块可以使用内存中一块连续区域写入虚化维测数据,连续区域是地址连续,从而便于数据写入以及数据解读。虚化维测数据在内存中的存储方式如图6所示。
在图6中,JPEG-HEADER为JPEG文件头,左图数据(Bokeh-左图)字段中记录左视图的像素数据,右图数据(Bokeh-右图)字段中记录右视图的像素数据,标定数据(Bokeh-标定)字段中记录摄像头的标定数据,虚化控制数据(Bokeh-MISC)字段中记录左视图元数据、右视图元数据、关键对象数据、对焦点数据、图像调控数据。JPEG中还可以包括其他扩展字段和JPEG字段,JPEG字段中可以记录虚化图像的像素数据,其他扩展字段可以记录与虚化图像相关的除虚化维测数据之外的扩展数据。
Bokeh-左图字段、Bokeh-右图字段、Bokeh-标定字段和Bokeh-MISC字段这四个扩展字段中还可以写入一个名为hwa_jpeg_expand的结构体,该结构体包含两个属性,一个属性用于记录扩展字段中写入的数据量的大小,另一个属性记录扩展字段的名称。也就是说hwa_jpeg_expand用于存储扩展字段中写入的数据量的大小,该数据量指向的数据是与虚化维测相关的,与hwa_jpeg_expand所占用长度无关。hwa_jpeg_expand的一个属性(分量)记为length,length分量中存储扩展字段的长度(如字节数),通过长度指示该扩展字段中写入的数据量的大小,另一个属性(分量)记为name,name分量用于存储扩展字段的名称,如Bokeh-左图。
在定位虚化维测数据时,电子设备可以通过name分量定位,通过name分量确定虚化维测数据在内存中的扩展起始点,然后通过每个name分量所在扩展字段中的length分量记录的长度计算出偏移量(offset),通过偏移量和扩展起始点从内存中读取虚化维测数据,如从扩展起始点开始读取,向上偏移offset(朝JPEG-HEADER偏移)来完成虚化维测数据的读取,扩展起始点可以称为扩展起始地址,是虚化维测数据中最后一位数据在内存中的地址。
其中,虚化控制数据、虚化控制数据中的左视图元数据、右视图元数据、人脸对象数据(人脸对象是关键对象)、对焦点数据、图像调控数据可以通过预设的结构体表示,如图7所示,虚化控制数据以BKH_MISC表示,BKH_MISC结构体包括leftImageCount(左视图数量)、BKH_IMAGE_INFO leftImage(左视图元数据)、BKH_IMAGE_INFO rightImage(右视图元数据)、BKH_MFBOKEH_PARAM bokehParam(图像调控数据)、BKH_FACE_INFO faceInfo(人脸对象数据)、BKH_POINT focusPoint(对焦点数据)和shineFlag(环境标识符)。leftImageCount可以记录用于虚化的左视图的数量,shineFlag可以记录摄像头所处环境,如室内还是室外。
BKH_IMAGE_INFO可以包括width(宽度)、height(高度)、format(格式)、widthStride(宽度的stride)、heightStride(高度的stride)。BKH_MFBOKEH_PARAM可以包括i32CameraRotation(旋转角度)、i32MasterSensorCropWidth(主摄裁剪宽度)、i32MasterSensorCropHeight(主摄裁剪高度)、i32AuxSensorCropWidth(辅摄裁剪宽度)、i32AuxSensorCropHeight(辅摄裁剪高度)。BKH_FACE_INFO可以包括face_num(人脸数量)、BKH_RECT faces[10](人脸坐标,可以记录10个人脸的人脸坐标),faceAngles[10](人脸角度,可以记录10个人脸的角度)、lens_shift_mm(镜头偏移),其中BKH_RECT可以包括left(左)、top(上)、right(右)、bottom(下),通过左上右下四个坐标来表示人脸坐标,也可以用左上角和右小角两个坐标来表示人脸坐标。BKH_POINT可以包括x轴坐标和y轴坐标。
第二图像处理算法模块可以通过位压缩方式在内存中写入虚化维测数据。其中位压缩方式可以是获取虚化维测数据中每个参数的最大值,基于每个参数的最大值,确定参数占用的比特位,基于参数占用的比特位在内存中写入虚化维测数据,通过位压缩方式减少虚化维测数据占用的空间,如减少虚化维测数据对内存的占用。
此外,第二图像处理算法模块可以在数据扩展开关打开(开启)的情况下,保存虚化维测数据;如果数据扩展开关关闭,禁止第二图像处理算法模块保存虚化维测数据。其他示例中,第一图像处理算法模块可以在数据扩展开关打开的情况下,获取虚化维测数据;如果数据扩展开关关闭,禁止第一图像处理算法模块获取虚化维测数据。
其中数据扩展开关的打开和关闭可以由用户控制,如图8所示,电脑和手机通过数据线连接,用户在电脑上写入setprop命令,通过setprop命令设置数据扩展开关的打开或关闭,setprop命令是扩展数据控制命令的一个示例。
在本申请中,数据扩展开关的打开和关闭也可以是自动控制。一种示例中,电子设备在确定虚化异常时,控制数据扩展开关打开;一种示例中,电子设备在确定虚化异常时,在电子设备中输出提示信息,提示信息用于提示虚化异常。如果用户通过观看发现虚化确实存在异常,用户可以作出预设操作(如点击提示信息中的是),以打开数据扩展开关。在一种示例中,如果用户发现虚化异常,用户可以操作电子设备复现该虚化异常。例如电子设备可以重复相同图像的虚化处理,如果电子设备确定连续两次对相同图像进行虚化处理,电子设备可以控制数据扩展开关打开。数据扩展开关的使用可以是在电子设备的维护测试阶段,电子设备出厂后,电子设备可以默认关闭数据扩展开关。
此外,本申请还提供一种电子设备,包括:第一摄像头;第二摄像头;一个或多个处理器;一个或多个存储器;存储器存储有一个或多个程序,当一个或者多个程序被处理器执行时,使得电子设备执行上述图像维测数据的处理方法。
本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储了计算机程序,当计算机程序被处理器执行时,使得处理器执行上述图像维测数据的处理方法。
本申请还提供一种图像维测数据的处理装置,应用于电子设备,电子设备包括第一摄像头和第二摄像头,图像维测数据的处理装置包括:第一图像处理算法模块、虚化处理模块和第二图像处理算法模块。
第一图像处理算法模块,用于响应一次拍照操作,获取第一摄像头采集的第一图像和第二摄像头采集的第二图像;基于第一图像和第二图像,获取虚化维测数据,第一图像处理算法模块可以通过摄像头驱动获取第一图像和第二图像,如摄像头驱动响应拍照操作对应的拍照指令,获取第一摄像头采集的第一图像和第二摄像头采集的第二图像,一个拍照指令可以获取到两张图像。虚化处理模块,用于对第一图像和第二图像进行虚化处理,得到第三图像,第三图像是具有背景虚化效果的图像,虚化维测数据用于在第三图像的背景虚化效果存在虚化异常时对虚化异常进行分析定位,第三图像保存在电子设备的图库应用中。第二图像处理算法模块,用于在图像维测数据中保存虚化维测数据。在本申请中,电子设备可以在对第一图像和第二图像进行虚化处理之前,获取到虚化维测数据,将虚化维测数据保存到图像维测数据中,这样在虚化异常时,电子设备可以基于虚化维测数据对虚化进行维护测试,以分析定位出虚化异常的原因等。
在一种可能的实现方式中,第二图像处理算法模块,用于如果电子设备开启数据扩展开关,在图像维测数据中保存虚化维测数据;和/或,第一图像处理算法模块,用于如果电子设备开启数据扩展开关,基于第一图像和第二图像,获取虚化维测数据。在本实施例中,通过数据扩展开关控制虚化维测数据的保存和/或获取,例如在具有虚化维护测试需求时电子设备可以开启数据扩展开关,在没有虚化维护测试需求时电子设备可以关闭数据扩展开关,从而在有虚化维护测试需求时获取并保存虚化维测数据,以在出现虚化异常时进行分析定位。没有虚化维护测试需求时电子设备可以不获取也不保存虚化维测数据,减少对电子设备的存储空间的占用,且电子设备可以有更多资源处理其他任务等。
在一种可能的实现方式中,图像维测数据的处理装置还包括:开关控制模块,用于获取用户输入的扩展数据控制命令,如果扩展数据控制命令用于指示开启数据扩展开关,开启数据扩展开关,以由用户控制数据扩展开关的开启或关闭。
在一种可能的实现方式中,图像维测数据的处理装置还包括:开关控制模块,用于如果确定第四图像的虚化异常,开启数据扩展开关,第四图像是对第一摄像头采集的第五图像和第二摄像头采集的第六图像虚化处理得到,第四图像的获取时刻早于第一图像和第二图像的获取时刻;或者,如果确定第四图像的虚化异常,输出提示信息;如果接收到用户基于提示信息作出的预设操作,开启数据扩展开关;或者,装置还包括:如果拍照操作指示对第一图像和第二图像进行第二次虚化,第二次虚化与对第一图像和第二图像的第一次虚化相同,开启数据扩展开关。在本申请中,电子设备通过对虚化处理的监控决定是否开启数据扩展开关,实现对数据扩展开关的自动控制。在一些示例中,在自动控制数据扩展开关过程中可以引入用户操作,从用户角度确定虚化是否有异常,在虚化有异常时用户可以作出预设操作,以开启数据扩展开关,保证数据扩展开关准确及时开启。
在一种可能的实现方式中,第一图像处理算法模块,用于基于第一图像的图像数据、第二图像的图像数据、第一摄像头和第二摄像头的摄像头相关数据,得到虚化维测数据,虚化维测数据包括第一图像的像素数据、第二图像的像素数据、摄像头的标定数据、虚化控制数据;摄像头的标定数据用于定位摄像头在电子设备中的位置和摄像头之间的位置关系;虚化控制数据用于体现第一图像和第二图像的虚化处理方式。在本申请中,虚化维测数据可以包括多种类型(方面)的数据,以尽可能获取与虚化相关的各类型数据,满足虚化维护测试需求。
在一种可能的实现方式中,虚化控制数据包括:第一图像元数据、第二图像元数据、关键对象数据、对焦点数据、图像调控数据;第一图像元数据用于指示第一图像的属性,第二图像元数据用于指示第二图像的属性,关键对象数据用于指示关键对象在第一图像或第二图像中的情况,对焦点数据用于指向摄像头在拍摄时的对焦点,图像调控数据用于对第一图像和第二图像进行调整。
在一种可能的实现方式中,第一图像元数据包括:第一图像的宽度、高度、格式、宽度的步长和高度的步长;第二图像元数据包括:第二图像的宽度、高度、格式、宽度的步长和高度的步长;关键对象数据包括:关键对象的数量、关键对象的坐标、关键对象的角度和镜头偏移;对焦点数据包括:对焦点的坐标;图像调控数据包括:旋转角度、第一摄像头的裁剪宽度、第一摄像头的裁剪高度、第二摄像头的裁剪宽度和第二摄像头的裁剪高度,将指向同一对象的相关数据作为一类数据保存,如第一图像的属性相关的数据保存在第一图像元数据中,这样在分析定位时容易定位是哪类数据导致的虚化异常。
在一种可能的实现方式中,第一图像处理算法模块,用于基于第一图像的图像数据,获取第一图像的像素数据和第一图像元数据;基于第二图像的图像数据,获取第二图像的像素数据和第二图像元数据;基于第一摄像头和第二摄像头的摄像头相关数据,得到摄像头的标定数据、对焦点数据和图像调控数据;基于第一图像的图像数据或第二图像的图像数据,得到关键对象数据。第一图像的像素数据可以是YCbCr格式或RGB格式,第一摄像头采集的是RAW格式的像素数据,电子设备可以对其进行格式转换,将YCbCr格式或RGB格式的像素数据作为第一图像的像素数据。同样的第二图像的像素数据可以是YCbCr格式或RGB格式,第一摄像头采集的是RAW格式的像素数据,电子设备可以对第二摄像头采集的RAW格式的像素数据进行格式转换,将YCbCr格式或RGB格式的像素数据作为第二图像的像素数据。
在一种可能的实现方式中,虚化控制数据包括:环境标识符,环境标识符用于指示摄像头所处环境,如通过环境标识符指示在室内还是室外,室内和室外的虚化是存在差异的,因此在分析虚化异常时可以结合环境标识符进行分析定位,以保证分析定位的准确度。
在一种可能的实现方式中,第二图像处理算法模块,用于基于虚化维测数据的长度、图像维测数据中除虚化维测数据之外的其他数据在电子设备的存储地址,获得虚化维测数据在电子设备中的扩展起始地址;基于虚化维测数据的长度和扩展起始地址,获取虚化维测数据在电子设备中的存储区域;在存储区域中保存虚化维测数据,以在一个地址连续的存储区域中存储虚化维测数据,便于数据写入和读取。
在一种可能的实现方式中,第二图像处理算法模块,用于获取虚化维测数据中每个参数的最大值;基于每个参数的最大值,确定每个参数占用的比特位;基于每个参数占用的比特位,在电子设备的预设存储区域中保存虚化维测数据,预设存储区域用于存储图像维测数据,通过位压缩方式减少虚化维测数据占用的空间,如减少虚化维测数据对内存的占用。
Claims (12)
1.一种图像维测数据的处理方法,其特征在于,应用于电子设备,所述电子设备包括第一摄像头和第二摄像头,所述方法包括:
响应一次拍照操作,获取所述第一摄像头采集的第一图像和所述第二摄像头采集的第二图像;
基于所述第一图像和所述第二图像,获取虚化维测数据;
对所述第一图像和所述第二图像进行虚化处理,得到第三图像,所述第三图像是具有背景虚化效果的图像,所述虚化维测数据用于在所述第三图像的背景虚化效果存在虚化异常时对所述虚化异常进行分析定位,所述第三图像保存在所述电子设备的图库应用中;
在所述图像维测数据中保存所述虚化维测数据;
其中,所述虚化维测数据包括所述第一图像的像素数据、所述第二图像的像素数据、摄像头的标定数据、虚化控制数据;所述摄像头的标定数据用于定位摄像头在电子设备中的位置和摄像头之间的位置关系;所述虚化控制数据用于体现所述第一图像和所述第二图像的虚化处理方式,所述虚化控制数据包括:第一图像元数据、第二图像元数据、关键对象数据、对焦点数据、图像调控数据;所述第一图像元数据用于指示所述第一图像的属性,所述第二图像元数据用于指示所述第二图像的属性,所述关键对象数据用于指示关键对象在所述第一图像或所述第二图像中的情况,所述对焦点数据用于指向摄像头在拍摄时的对焦点,所述图像调控数据是虚化处理时使用到的与摄像头相关的各参数,用于对所述第一图像和所述第二图像进行调整。
2.根据权利要求1所述的方法,其特征在于,所述在所述图像维测数据中保存所述虚化维测数据包括:如果所述电子设备开启数据扩展开关,在所述图像维测数据中保存所述虚化维测数据;
和/或,
所述基于所述第一图像和所述第二图像,获取虚化维测数据包括:如果所述电子设备开启数据扩展开关,基于所述第一图像和所述第二图像,获取所述虚化维测数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:获取用户输入的扩展数据控制命令,如果所述扩展数据控制命令用于指示开启所述数据扩展开关,开启所述数据扩展开关。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:如果确定第四图像的虚化异常,开启所述数据扩展开关,所述第四图像是对所述第一摄像头采集的第五图像和所述第二摄像头采集的第六图像虚化处理得到,所述第四图像的获取时刻早于所述第一图像和所述第二图像的获取时刻;
或者,
如果确定所述第四图像的虚化异常,输出提示信息;如果接收到用户基于所述提示信息作出的预设操作,开启所述数据扩展开关;
或者,
所述方法还包括:如果所述拍照操作指示对所述第一图像和所述第二图像进行第二次虚化,所述第二次虚化与对所述第一图像和所述第二图像的第一次虚化相同,开启所述数据扩展开关。
5.根据权利要求1至4中任意一项所述的方法,其特征在于,所述基于所述第一图像和所述第二图像,获取虚化维测数据包括:
基于所述第一图像的图像数据、所述第二图像的图像数据、所述第一摄像头和所述第二摄像头的摄像头相关数据,得到虚化维测数据。
6.根据权利要求1所述的方法,其特征在于,所述第一图像元数据包括:所述第一图像的宽度、高度、格式、宽度的步长和高度的步长;
所述第二图像元数据包括:所述第二图像的宽度、高度、格式、宽度的步长和高度的步长;
所述关键对象数据包括:关键对象的数量、关键对象的坐标、关键对象的角度和镜头偏移;
所述对焦点数据包括:对焦点的坐标;
所述图像调控数据包括:旋转角度、所述第一摄像头的裁剪宽度、所述第一摄像头的裁剪高度、所述第二摄像头的裁剪宽度和所述第二摄像头的裁剪高度。
7.根据权利要求1至4、6中任意一项所述的方法,其特征在于,所述基于所述第一图像和所述第二图像,获取虚化维测数据包括:
基于所述第一图像的图像数据,获取所述第一图像的像素数据和第一图像元数据;
基于所述第二图像的图像数据,获取所述第二图像的像素数据和第二图像元数据;
基于所述第一摄像头和所述第二摄像头的摄像头相关数据,得到摄像头的标定数据、对焦点数据和图像调控数据;
基于所述第一图像的图像数据或所述第二图像的图像数据,得到关键对象数据。
8.根据权利要求1所述的方法,其特征在于,所述虚化控制数据包括:环境标识符,所述环境标识符用于指示摄像头所处环境。
9.根据权利要求1至4、6、8中任意一项所述的方法,其特征在于,在所述图像维测数据中保存所述虚化维测数据包括:
基于所述虚化维测数据的长度、所述图像维测数据中除所述虚化维测数据之外的其他数据在电子设备的存储地址,获得所述虚化维测数据在所述电子设备中的扩展起始地址;
基于所述虚化维测数据的长度和所述扩展起始地址,获取所述虚化维测数据在所述电子设备中的存储区域;
在所述存储区域中保存所述虚化维测数据。
10.根据权利要求1至4、6、8中任意一项所述的方法,其特征在于,在所述图像维测数据中保存所述虚化维测数据包括:
获取所述虚化维测数据中每个参数的最大值;
基于所述每个参数的最大值,确定每个参数占用的比特位;
基于所述每个参数占用的比特位,在所述电子设备的预设存储区域中保存所述虚化维测数据,所述预设存储区域用于存储所述图像维测数据。
11.一种电子设备,其特征在于,包括:
第一摄像头;
第二摄像头;
一个或多个处理器;
一个或多个存储器;
所述存储器存储有一个或多个程序,当所述一个或者多个程序被所述处理器执行时,使得所述电子设备执行如权利要求1至10中任意一项所述的图像维测数据的处理方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储了计算机程序,当所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至10中任意一项所述的图像维测数据的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210762302.7A CN116051361B (zh) | 2022-06-30 | 2022-06-30 | 图像维测数据的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210762302.7A CN116051361B (zh) | 2022-06-30 | 2022-06-30 | 图像维测数据的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116051361A CN116051361A (zh) | 2023-05-02 |
CN116051361B true CN116051361B (zh) | 2023-10-24 |
Family
ID=86111991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210762302.7A Active CN116051361B (zh) | 2022-06-30 | 2022-06-30 | 图像维测数据的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116051361B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117474926A (zh) * | 2023-12-28 | 2024-01-30 | 荣耀终端有限公司 | 图像检测方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020011112A1 (zh) * | 2018-07-09 | 2020-01-16 | 奇酷互联网络科技(深圳)有限公司 | 图像处理方法、***、可读存储介质及终端 |
WO2020036468A1 (ko) * | 2018-08-16 | 2020-02-20 | 주식회사 날비컴퍼니 | 이미지에 보케 효과를 적용하는 방법 및 기록매체 |
CN112165575A (zh) * | 2020-09-25 | 2021-01-01 | Oppo(重庆)智能科技有限公司 | 图像虚化处理方法及装置、存储介质和电子设备 |
EP3792873A1 (en) * | 2019-09-12 | 2021-03-17 | Kabushiki Kaisha Toshiba | Image processing device, method, and storage medium |
-
2022
- 2022-06-30 CN CN202210762302.7A patent/CN116051361B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020011112A1 (zh) * | 2018-07-09 | 2020-01-16 | 奇酷互联网络科技(深圳)有限公司 | 图像处理方法、***、可读存储介质及终端 |
WO2020036468A1 (ko) * | 2018-08-16 | 2020-02-20 | 주식회사 날비컴퍼니 | 이미지에 보케 효과를 적용하는 방법 및 기록매체 |
EP3792873A1 (en) * | 2019-09-12 | 2021-03-17 | Kabushiki Kaisha Toshiba | Image processing device, method, and storage medium |
CN112165575A (zh) * | 2020-09-25 | 2021-01-01 | Oppo(重庆)智能科技有限公司 | 图像虚化处理方法及装置、存储介质和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116051361A (zh) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114205522B (zh) | 一种长焦拍摄的方法及电子设备 | |
CN113747085B (zh) | 拍摄视频的方法和装置 | |
US20160065856A1 (en) | Photographing method and electronic device | |
CN113938602B (zh) | 图像处理方法、电子设备、芯片及可读存储介质 | |
WO2021190348A1 (zh) | 图像处理方法和电子设备 | |
CN114640783B (zh) | 一种拍照方法及相关设备 | |
CN113538227B (zh) | 一种基于语义分割的图像处理方法及相关设备 | |
CN115359105B (zh) | 景深扩展图像生成方法、设备及存储介质 | |
CN113660408A (zh) | 一种视频拍摄防抖方法与装置 | |
CN116051361B (zh) | 图像维测数据的处理方法及装置 | |
CN114926351B (zh) | 图像处理方法、电子设备以及计算机存储介质 | |
WO2023231697A1 (zh) | 一种拍摄方法及相关设备 | |
US20140111678A1 (en) | Method and system for capturing, storing and displaying animated photographs | |
CN116723383B (zh) | 一种拍摄方法及相关设备 | |
CN116739908A (zh) | 图像处理方法、装置及设备 | |
CN116055863B (zh) | 一种相机的光学图像稳定装置的控制方法及电子设备 | |
CN117135448B (zh) | 拍摄的方法和电子设备 | |
CN116668836B (zh) | 拍照处理方法和电子设备 | |
CN117389745B (zh) | 一种数据处理方法、电子设备及存储介质 | |
CN117689545B (zh) | 图像处理方法、电子设备和计算机可读存储介质 | |
US11961539B2 (en) | Methods and apparatus for enabling playback of content during an ongoing capture | |
US20240249484A1 (en) | Display Method and Electronic Device | |
CN117395496A (zh) | 一种拍摄方法及相关设备 | |
CN114268553A (zh) | 小区共享通信设施ar定位引导***及方法 | |
CN117119285A (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 |