数据处理方法、装置、计算机可读存储介质和电子设备转让专利

申请号 : CN201810403359.1

文献号 : CN108769508B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周海涛郭子青

申请人 : OPPO广东移动通信有限公司

摘要 :

本申请涉及一种数据处理方法、装置、计算机可读存储介质和电子设备。所述方法包括:当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接;控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。上述数据处理方法、装置、计算机可读存储介质和电子设备,可以节省电子设备的资源。

权利要求 :

1.一种数据处理方法,其特征在于,所述方法包括:

当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接;

控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。

2.根据权利要求1所述的方法,其特征在于,所述当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,包括:当检测到电子设备启动前置摄像头时,获取图像采集指令;

若获取到的图像采集指令为深度图像采集指令,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。

3.根据权利要求2所述的方法,其特征在于,所述若获取到的图像采集指令为深度图像采集指令,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,包括:若获取到的图像采集指令为深度图像采集指令,则获取所述深度图像采集指令中包含的应用标识,所述应用标识用于标示发出所述深度图像采集指令的应用程序;

若所述应用标识为预设应用标识,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。

4.根据权利要求3所述的方法,其特征在于,所述控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,包括:获取所述深度图像采集指令中包含的操作标识,所述操作标识用于标示需通过采集的深度图像完成的应用操作;

若所述操作标识为预设操作标识,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。

5.根据权利要求1至4中任一项所述的方法,其特征在于,所述控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器之后,还包括:当检测到所述前置摄像头被关闭或所述后置摄像头被启动时,控制所述第一图像处理器与所述第二图像处理器连接的第二处理器接口断开连接;

控制所述第一图像处理器通过所述第二处理器接口连接到所述后置摄像头。

6.根据权利要求1至4中任一项所述的方法,其特征在于,所述控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器之后,还包括:当检测到所述前置摄像头被关闭时,开始计时;

当计时时长超过时长阈值时,控制所述第一图像处理器与所述第二图像处理器连接的第二处理器接口断开连接;

控制所述第一图像处理器通过所述第二处理器接口连接到所述后置摄像头。

7.根据权利要求6中所述的方法,其特征在于,所述方法还包括:统计所述前置摄像头被启动的启动频率,根据所述启动频率获取对应的时长阈值。

8.一种数据处理装置,其特征在于,所述装置包括:

启动检测模块,用于当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接;

接口切换模块,用于控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法的步骤。

10.一种电子设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述的方法的步骤。

说明书 :

数据处理方法、装置、计算机可读存储介质和电子设备

技术领域

[0001] 本申请涉及计算机技术领域,特别是涉及一种数据处理方法、装置、计算机可读存储介质和电子设备。

背景技术

[0002] 智能终端中集成的功能越多,对智能终端的硬件和软件的要求也越高。例如,智能终端可以用于打电话、玩游戏、购物、拍照等。为了实现拍照功能,智能终端上需要安装摄像头。为了实现打电话的功能,智能终端上需要安装麦克风和听筒。这样就需要智能终端的硬件资源集成度非常高,才能实现智能终端的便携性。同时多个应用程序同时运行时,对智能终端的内存和处理器的消耗也非常大,如何减少终端资源的消耗就显得尤为重要。

发明内容

[0003] 本申请实施例提供一种数据处理方法、装置、计算机可读存储介质和电子设备,可以节省电子设备的资源。
[0004] 一种数据处理方法,所述方法包括:
[0005] 当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接;
[0006] 控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。
[0007] 一种数据处理装置,所述装置包括:
[0008] 启动检测模块,用于当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接;
[0009] 接口连接模块,用于控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。
[0010] 一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
[0011] 当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接;
[0012] 控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。
[0013] 一种电子设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行如下步骤:
[0014] 当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接;
[0015] 控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。
[0016] 上述数据处理方法、装置、计算机可读存储介质和电子设备,电子设备在检测到前置摄像头被启动时,可以控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,并控制第一图像处理器与第二图像处理器通过第二处理器接口建立连接。电子设备在通过摄像头拍摄的时候,一般只会同时开启前置摄像头和后置摄像头中的一个,那么在检测到前置摄像头开启的时候,就可以将连接后置摄像头的第二处理器接口用来连接第二图像处理器,这样就可以实现后置摄像头和第二图像处理器对第二处理器接口的分时复用,节省了电子设备的资源。

附图说明

[0017] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018] 图1为一个实施例中数据处理方法的应用环境图;
[0019] 图2为一个实施例中数据处理方法的流程图;
[0020] 图3为一个实施例中电子设备的内部结构示意图;
[0021] 图4为另一个实施例中数据处理方法的流程图;
[0022] 图5为又一个实施例中数据处理方法的流程图;
[0023] 图6为又一个实施例中数据处理方法的流程图;
[0024] 图7为又一个实施例中数据处理方法的流程图;
[0025] 图8为另一个实施例中电子设备的内部结构示意图;
[0026] 图9为一个实施例中实现数据传输方法的软件架构示意图;
[0027] 图10为一个实施例中数据处理装置的结构示意图;
[0028] 图11为另一个实施例中数据处理装置的结构示意图;
[0029] 图12为一个实施例中图像处理电路的示意图。

具体实施方式

[0030] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0031] 可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。
[0032] 图1为一个实施例中数据处理方法的应用环境图。如图1所示,该数据处理方法的应用环境中包括电子设备10,该电子设备10上安装了前置摄像头102和后置摄像头104,该电子设备10中还包括第一图像处理器和第二图像处理器。其中,第一图像处理器与前置摄像头102通过第一处理器接口连接,第一图像处理器与后置摄像头104通过第二处理器接口连接,第二图像处理器连接于前置摄像头102。当检测到电子设备10启动前置摄像头102时,可以控制第一图像处理器与后置摄像头104连接的第二处理器接口断开连接;然后控制第一图像处理器通过第二处理器接口连接到第二图像处理器。电子设备102可以为任何安装有前置摄像头和后置摄像头的设备,在本实施例中不进行限定。例如,可以是个人电脑、移动终端、个人数字助理、可穿戴电子设备等。
[0033] 图2为一个实施例中数据处理方法的流程图。如图2所示,该数据处理方法包括步骤202至步骤204。其中:
[0034] 步骤202,当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,第一图像处理器与前置摄像头通过第一处理器接口连接。
[0035] 在一个实施例中,电子设备上可以安装摄像头,并通过安装的摄像头获取图像。摄像头可以根据获取的图像的不同分为激光摄像头、可见光摄像头等类型,激光摄像头可以获取激光照射到物体上所形成的图像,可见光图像可以获取可见光照射到物体上所形成的图像。电子设备上可以安装若干个摄像头,且安装的位置不做限定。例如,可以在电子设备的正面面板上安装一个摄像头,在背面面板上安装两个摄像头,摄像头还可以以内嵌的方式安装于电子设备的内部,然后通过旋转或滑动的方式打开摄像头。
[0036] 图像处理器是指可以对摄像头获取的图像进行处理的处理器。图像处理器连接于摄像头,摄像头获取的图像就可以传输给图像处理器,并通过图像处理器进行裁剪、亮度调节、人脸检测等处理。前置摄像头和后置摄像头可以从不同的视角获取图像,一般前置摄像头可以从电子设备的正面视角获取图像,后置摄像头可以从电子设备的背面视角获取图像。前置摄像头和后置摄像头都连接于图像处理器,并通过图像处理器对获取图像进行处理。
[0037] 在本申请提供的实施例中,电子设备中包含第一图像处理器和第二图像处理器,第一图像处理器和第二图像处理器都可以对图像进行处理。具体地,前置摄像头和后置摄像头都连接于第一图像处理器,且前置摄像头与第二图像处理器连接。第一图像处理器可以对前置摄像头和后置摄像头获取的图像进行处理,第二图像处理器一般只对前置摄像头获取的图像进行处理。处理器接口是指图像处理器与其他元器件进行连接的接口,第一图像处理器包含第一处理器接口和第二处理器接口,并分别通过第一处理器接口和第二处理器接口与前置摄像头和后置摄像头进行连接。
[0038] 图3为一个实施例中电子设备的内部结构示意图。如图3所示,该电子设备中包括前置摄像头30、第一图像处理器31、第二图像处理器32和后置摄像头33,前置摄像头30包括激光摄像头302和可见光摄像头304。其中,前置摄像头30与第一图像处理器31通过第一处理器接口34进行连接,第一图像处理器31和后置摄像头33通过第二处理器接口35进行连接,前置摄像头和30和第二图像处理器32通过第三处理器接口36进行连接。当电子设备检测到前置摄像头30被启动时,控制第一图像处理器31与后置摄像头33连接的第二处理器接口35断开连接,并控制第一图像处理器31通过第二处理器接口35连接到第二图像处理器32。可以理解的是,激光摄像头302一般可以获取激光散斑照射到物体上所形成的散斑图像,并根据散斑图像来计算深度图像。获取的深度图像可以用来进行支付、解锁等验证。第一图像处理器31可以是电子设备的中央处理器(Central Processing Unit,CPU),第二图像处理器32可以是一个外置的微处理单元(Microcontroller Unit,MCU)。外置的微处理单元是一个外置的处理器,与电子设备的系统是相隔离的,因此该外置的微处理单元能够保证处理数据的安全性。当通过前置摄像头30获取图像进行支付、解锁等操作时,为了保证数据的安全性就可以通过该外置的微处理单元(第二图像处理器32)来对获取的散斑图像进行处理,计算得到深度图像,并将得到的深度图像发送到中央处理器(第一图像处理器31)中的可信运行环境中进行后续的处理。
[0039] 步骤204,控制第一图像处理器通过第二处理器接口连接到第二图像处理器,其中,第二图像处理器连接于前置摄像头。
[0040] 由于前置摄像头和后置摄像头分别是从不同视角获取的图像,因此电子设备在拍摄图像的时候,一般不会同时开启前置摄像头和后置摄像头进行拍摄。则为了节省图像处理器的接口资源,可以在电子设备启动前置摄像头时,第一图像处理器与后置摄像头连接的第二处理器接口断开,并将通过第二处理器接口将第一图像处理器和第二图像处理器进行连接。连接之后,前置摄像头就可以分别与第一图像处理器和第二图像处理器进行连接,且第一图像处理器和第二图像处理器也已经连接。那么前置摄像头生成的图像就可以直接发送给第一图像处理器进行处理,也可以先发送给第二图像处理器,再由第二图像处理器发送给第一图像处理器,即可以由第一图像处理器和第二图像处理器共同完成对图像的处理。
[0041] 上述实施例提供的数据处理方法,电子设备在检测到前置摄像头被启动时,可以控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,并控制第一图像处理器与第二图像处理器通过第二处理器接口建立连接。电子设备在通过摄像头拍摄的时候,一般只会同时开启前置摄像头和后置摄像头中的一个,那么在检测到前置摄像头开启的时候,就可以将连接后置摄像头的第二处理器接口用来连接第二图像处理器,这样就可以实现后置摄像头和第二图像处理器对第二处理器接口的分时复用,节省了电子设备的资源。
[0042] 图4为另一个实施例中数据处理方法的流程图。如图4所示,该数据处理方法包括步骤402至步骤410。其中:
[0043] 步骤402,当检测到电子设备启动前置摄像头时,获取图像采集指令。
[0044] 在一个实施例中,电子设备可以实时对前置摄像头的状态进行监听,检测到前置摄像头被启动,则可以实时检测是否接收到图像采集指令。监听前置摄像头状态时,可以通过软件方式实现,也可以通过硬件来实现。具体地,当前置摄像头被启动时,电子设备的系统可以通过广播的形式将前置摄像头的状态发送给各个应用程序(Application,APP),注册了广播接收器的应用程序就可以监听到前置摄像头的状态。另外,在前置摄像头被启动时,可以检测前置摄像头的电信号,若前置摄像头检测到的电压、电流、I/O(Input/Output,输入/输出)等电信号,则认为前置摄像头被启动。
[0045] 电子设备中可以安装应用程序,应用程序可以调用摄像头进行图像采集。图像采集指令是指通过摄像头采集图像的指令,可以是用户输入的,也可以是电子设备自动生成的。例如,用户在拍摄照片的时候,可以直接调用摄像头进行照片拍摄。用户还可以通过人脸进行解锁验证,当用户点亮屏幕的时候,电子设备自动生成图像采集指令,并根据图像采集指令获取图像进行解锁验证。
[0046] 当前置摄像头被启动之后,有可能并没有通过前置摄像头来拍摄图像。例如,在拍摄照片的时候,拍摄过程一般分为预览阶段和拍摄阶段。在预览阶段的过程中,摄像头会实时采集当前拍摄画面作为预览图像,并将预览图像在电子设备的显示屏上进行显示。预览过程中采集的预览图像不会被存储,用户可以通过显示屏上显示的预览图像实时调整当前拍摄的位置和角度。只有当用户调整好拍摄的位置和角度后,输入图像采集指令。电子设备在检测到图像采集指令后,才会根据图像采集指令拍摄图像。因此,电子设备在检测到前置摄像头被启动之后,可以不用立即将第二处理器接口连接到第二图像处理器上。在获取到图像采集指令之后,再将第二处理器接口连接到第二图像处理器上,这样可以避免处理器接口的频繁切换,节省资源。
[0047] 步骤404,若获取到的图像采集指令为深度图像采集指令,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。
[0048] 具体地,前置摄像头包括激光摄像头和可见光摄像头,激光摄像头可以获取激光散斑照射到物体上所形成的散斑图像,根据散斑图像可以计算得到深度图像。可见光摄像头可以获取RGB(Red Green Blue,红绿蓝)图,RGB图和深度图像都是由若干个像素点构成的。一般获取的RGB图和深度图像是对应的,RGB图中的像素值用于表示像素点的颜色,深度图像中的像素值用于表示该像素点的深度。
[0049] 在前置摄像头被开启时,若获取到图像采集指令,则可以判断该图像采集指令是用来获取RGB图,还是用来获取深度图像的。若是获取RGB图的,则可以直接将前置摄像头获取的RGB图通过第一处理器接口发送到第一图像处理器中,由第一图像处理器对图像进行处理。若是获取深度图像,则可以认为获取的该深度图像需要用来做支付、解锁等安全性较高的处理,则可以直接将前置摄像头获取的散斑图像发送到第二图像处理器中计算深度图像,并由第二图像处理器通过第二处理器接口将深度图像发送到第一图像处理器进行处理。
[0050] 在一个实施例中,图像采集指令中可以包含用于标示所采集图像的类型的类型标识,则根据该类型标识就可以判断该图像采集指令是用于获取RGB图还是深度图像的。例如,类型标识可以为“RGBget”或“Depthget”,“RGBget”表示该图像获取指令用来获取RGB图像,“Depthget”表示该图像采集指令用来获取深度图像。当获取的图像采集指令为深度图像采集指令的话,就可以控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,并控制第一图像处理器通过第二处理器接口连接到第二图像处理器。
[0051] 步骤406,控制第一图像处理器通过第二处理器接口连接到第二图像处理器,其中,第二图像处理器连接于前置摄像头。
[0052] 在一个实施例中,第一处理器接口和第二处理器接口可以实现图像处理器与摄像头之间的数据传输,也可以实现图像处理器与图像处理器之间的数据传输。例如,该第一处理器接口和第二处理器接口可以是MIPI(Mobile Industry Processor Interface,移动产业处理器接口)接口。具体地,处理器接口的切换可以通过软件的方式实现,也可以通过硬件的方式实现。通过软件方式实现时,可以对第一图像处理器发起接口转换指令,将第二处理器连接到第二图像处理器上。通过硬件方式实现时,可以直接通过switch(转换)电路,将第二处理器接口切换到连接第二图像处理器。
[0053] 步骤408,当检测到前置摄像头被关闭或后置摄像头被启动时,控制第一图像处理器与第二图像处理器连接的第二处理器接口断开连接。
[0054] 当第一图像处理器与后置摄像头断开连接,并与第二图像处理器建立连接之后,为了保证后置摄像头的正常工作,需要重新建立后置摄像头与第一图像处理器的连接。具体地,可以检测前置摄像头的状态,也可以检测后置摄像头的状态,在检测到前置摄像头被关闭或后置摄像头被启动时,再重新建立第一图像处理器与后置摄像头的连接,以保证后置摄像头的正常工作。
[0055] 步骤410,控制第一图像处理器通过第二处理器接口连接到后置摄像头。
[0056] 在一个实施例中,在检测到获取的图像采集指令为深度图像采集指令时,可以获取深度图像采集指令中包含的应用标识,根据应用标识判断发起该深度图像采集指令的应用程序,并根据应用程序判断是否需要将第二处理器接口连接到第二图像处理器中。具体的包括:
[0057] 步骤502,若获取到的图像采集指令为深度图像采集指令,则获取深度图像采集指令中包含的应用标识,应用标识用于标示发出深度图像采集指令的应用程序。
[0058] 具体地,电子设备中可以安装应用程序,应用程序是指电子设备中针对某种应用目的所撰写的软体,电子设备可以通过应用程序实现对用户的需求服务。例如,用户可以通过游戏类应用程序玩游戏,也可以通过支付类应用程序进行交易支付,还可以通过音乐类应用程序播放音乐等。应用标识可以标示发出深度图像采集指令的应用程序,根据应用标识可以识别图像采集指令是由哪一个应用程序发起的。
[0059] 步骤504,若应用标识为预设应用标识,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。
[0060] 可以理解的是,用户需要通过电子设备完成的应用操作都是通过应用程序来实现的,电子设备中的应用程序可以分为安全类应用程序和非安全类应用程序。安全类应用程序对数据安全性要求较高,非安全类应用程序对数据安全性要求相对比较低。例如,支付类应用程序对数据安全性就比较高,游戏类应用程序对数据安全性要求相对比较低。那么就可以通过发起深度图像采集指令的应用程序,来判断是否需要通过安全通道来获取深度图像。
[0061] 具体地,若应用标识为预设应用标识,则认为获取的深度图像可能用于进行安全性要求较高的应用操作,则可以通过安全通道来获取深度图像。控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,并控制第一图像处理器与第二图像处理器通过第二处理器接口建立连接。这样前置摄像头获取的散斑图像就可以发送给第二图像处理器,并在第二图像处理器中计算得到深度图像,第二图像处理器再将计算得到的深度图像发送给第一图像处理器。由于第二图像处理器是一个外置的微处理单元,可以实现图像的安全处理。
[0062] 更进一步地,安全类应用程序获取深度图像,可能是用于进行安全性较高的应用操作,也可能是用于安全性要求比较低的应用操作。例如,支付类应用程序可能是通过获取深度图像来完成支付验证,也可能会通过获取深度图像来实现AR(Augmented Reality,增强现实)技术。就可以通过具体的应用操作来判断是否需要切换处理器接口,则在判断深度图像采集指令中包含的应用标识为预设应用标识之后,还可以包括:
[0063] 步骤602,获取深度图像采集指令中包含的操作标识,操作标识用于标示需通过采集的深度图像完成的应用操作。
[0064] 在一个实施例中,操作标识用于标示需要通过采集的深度图像完成的应用操作,电子设备可以预先设置各个应用操作所对应的操作标识,通过该操作标识可以识别应用操作。例如,通过采集的深度图像来完成对RGB图像中的人像进行美颜处理,那么该操作标识就为美颜处理对应的操作标识。若需要通过采集的深度图像来将2D图像转换为3D图像,那么该操作标识就为3D转换对应的操作标识。
[0065] 步骤604,若操作标识为预设操作标识,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。
[0066] 若操作标识为预设操作标识,则认为获取的深度图像要用于进行安全性要求较高的应用操作,可以将第一图像处理器与后置摄像头断开连接,并将第一图像处理器与第二图像处理器通过第二处理器接口进行连接。
[0067] 后置摄像头与第一图像处理器断开连接之后,若检测到前置摄像头被关闭,则可以立即重新连接后置摄像头和第一图像处理器,也可以过一段时间之后再重新连接。则重新建立连接的过程具体可以包括:
[0068] 步骤702,当检测到前置摄像头被关闭时,开始计时。
[0069] 可以在电子设备中设置一个计时器,当检测到前置摄像头被关闭之后,启动计时器开始计时。以Android系统为例,系统可以预先定义一个计时器,当检测到前置摄像头被关闭时,通过timer.setBase(SystemClock.elapsedRealtime())将计时器清零,然后通过timer.start()函数启动计时器,开始计时。
[0070] 步骤704,当计时时长超过时长阈值时,控制第一图像处理器与第二图像处理器连接的第二处理器接口断开连接。
[0071] 当计时时长超过时长阈值时,重新控制第一图像处理器与后置摄像头通过第二处理器接口进行连接。用户可以对时长阈值进行设置,系统也可以预先对时长阈值进行设置。例如,时长阈值可以为5秒,当检测到前置摄像头被关闭的时长超过5秒时,就可以控制第一图像处理器重新与后置摄像头进行连接。这样可以防止用户前置摄像头被误关闭,用户又重新开启前置摄像头的过程中,处理器接口被频繁切换而造成电子设备的电量损耗。
[0072] 在一个实施例中,电子设备可以对前置摄像头的启动频率进行统计,并根据启动频率来调节时长阈值。一般地,若启动频率越高,则认为前置摄像头被关闭后,再次启动的可能性越大,则可以在前置摄像头被关闭之后,间隔较长的时间之后再将第二处理器接口连接到后置摄像头上。具体地,统计前置摄像头被启动的启动频率,根据启动频率获取对应的时长阈值。
[0073] 电子设备可以对前置摄像头的运行数据进行记录,记录的数据可以包括启动时间、关闭时间、启动时长等。则电子设备可以获取记录的前置摄像头的历史运行数据,并根据该历史运行数据来统计启动频率。统计的启动频率可以是某一段时间内的启动次数,例如,可以统计前置摄像头在一天之内的平均启动次数作为启动频率。然后建立启动频率与时长阈值的对应关系,根据统计的启动频率来获取时长阈值。
[0074] 步骤706,控制第一图像处理器通过第二处理器接口连接到后置摄像头。
[0075] 上述实施例提供的数据处理方法,电子设备在检测到前置摄像头被启动时,可以根据图像采集指令控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,并控制第一图像处理器与第二图像处理器通过第二处理器接口建立连接。电子设备在通过摄像头拍摄的时候,一般只会同时开启前置摄像头和后置摄像头中的一个,那么在检测到前置摄像头开启的时候,就可以将连接后置摄像头的第二处理器接口用来连接第二图像处理器,这样就可以实现后置摄像头和第二图像处理器对第二处理器接口的分时复用,节省了电子设备的资源。同时只有采集深度图像时,才需要通过第二图像处理器进行图像处理,才会将处理器接口进行切换,这样能够更准确地判断是否需要切换处理器接口,避免造成资源的浪费。
[0076] 应该理解的是,虽然图2、4、5、6、7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、4、5、6、7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0077] 图8为另一个实施例中电子设备的内部结构示意图。如图8所示,该电子设备中可包括前置摄像头模组810、第一图像处理器820、第二图像处理器830等,上述前置摄像头模组810中包括激光摄像头812、泛光灯814、可见光摄像头816和镭射灯818。其中,第一图像处理器820中包括在TEE(Trusted execution environment,可信运行环境)下运行的第一图像处理器内核和在REE(Rich Execution Environment,自然运行环境)下运行的第一图像处理器内核。TEE和REE均为ARM模块(Advanced RISC Machines,高级精简指令集处理器)的运行模式。通常情况下,电子设备中安全性较高的操作行为需要在TEE下执行,其他操作行为则可在REE下执行。第二图像处理器830是一个外置的微处理器,包括PWM(Pulse Width Modulation,脉冲宽度调制)模块832、SPI/I2C(Serial Peripheral Interface/Inter-Integrated Circuit,串行外设接口/双向二线制同步串行接口)模块834、RAM(Random Access Memory,随机存取存储器)模块836、Depth Engine模块838。本申请实施例中,当第一图像处理器820接收到应用程序的深度图像采集指令,例如当应用程序需要人脸信息进行解锁、应用程序需要人脸信息进行支付时,在TEE下运行的第一图像处理器内核可通过SECURE SPI/I2C向MCU830中SPI/I2C模块834发送深度图像采集指令,第二图像处理器830可通过PWM模块832发射脉冲波控制前置摄像头模组810中泛光灯814开启来采集红外图像、控制前置摄像头模组810中镭射灯818开启来采集散斑图像。前置摄像头模组810可将采集到的散斑图像传送给第二图像处理器830中Depth Engine模块838,第二图像处理器830可根据散斑图像计算得到深度图像,再将红外图像和深度图像发送给第一图像处理器820。第一图像处理器820根据获取到的红外图像进行人脸识别,检测上述红外图像中是否存在人脸以及检测到的人脸与存储的人脸是否匹配;若人脸识别通过,再根据上述红外图像和深度图像来进行活体检测,检测上述人脸是否存在生物活体。在一个实施例中,第一图像处理器820在获取到红外图像和深度图像后,可先进行活体检测再进行人脸识别,或同时进行人脸识别和活体检测。第一图像处理器820可人脸识别和活体检测的结果发送给应用程序,应用程序再根据人脸识别和活体检测的结果进行解锁、支付等处理。
[0078] 图9为一个实施例中实现图像处理方法的软件架构示意图。如图9所示,该软件架构包括应用层910、操作系统920和安全运行环境930。其中,处于安全运行环境930中的模块包括第二图像处理器931、摄像头模组932、第一图像处理器933和加密模块934等;操作系统930中包含安全管理模块921、人脸管理模块922、摄像头驱动923和摄像头框架924;应用层
910中包含应用程序911。应用程序911可以发起图像采集指令,并将图像采集指令发送给第二图像处理器931进行处理。例如,在通过采集人脸进行支付、解锁、美颜、增强现实技术(Augmented Reality,AR)等操作时,应用程序会发起采集人脸图像的图像采集指令。可以理解的是,应用程序911发起的图像指令可以首先发送到第一图像处理器933,再由第一图像处理器933发送给第二图像处理器931。
[0079] 第二图像处理器931接收到图像采集指令之后,若判断图像采集指令对应的应用操作为安全操作(如支付、解锁操作),则会根据图像采集指令控制摄像头模组932采集红外图像和散斑图像,摄像头模组932采集的红外图像和散斑图像传输给第二图像处理器931。第二图像处理器931根据散斑图像计算得到包含深度信息的深度图像,并根据深度图像计算得到深度视差图像,根据红外图像计算得到红外视差图像。然后通过安全传输通道将深度视差图像和红外视差图像发送给第一图像处理器933。第一图像处理器933会根据红外视差图像进行校正得到校正红外图像,根据深度视差图像进行校正得到校正深度图像。然后根据校正红外图像进行人脸认证,检测上述校正红外图像中是否存在人脸,以及检测到的人脸与存储的人脸是否匹配;若人脸认证通过,再根据上述校正红外图像和校正深度图像来进行活体检测,判断上述人脸是否为活体人脸。第一图像处理器933得到的人脸识别结果可以发送给加密模块934,通过加密模块934进行加密后,将加密后的人脸识别结果发送给安全管理模块921。一般地,不同的应用程序911都有对应的安全管理模块921,安全管理模块921会将加密后的人脸识别结果进行解密处理,并将解密处理后得到的人脸识别结果发送给相应的人脸管理模块922。人脸管理模块922会将人脸识别结果发送给上层的应用程序
911,应用程序911再根据人脸识别结果进行相应的操作。
[0080] 若第二图像处理器931接收到的图像采集指令对应的应用操作为非安全操作(如美颜、AR操作),则第二图像处理器931可以控制摄像头模组932采集散斑图像,并根据散斑图像计算深度图像,然后根据深度图像得到深度视差图像。第二图像处理器931会通过非安全传输通道将深度视差图像发送给摄像头驱动923,摄像头驱动923再根据深度视差图像进行校正处理得到校正深度图像,然后将校正深度图像发送给摄像头框架924,再由摄像头框架924发送给人脸管理模块922或应用程序911。
[0081] 图10为一个实施例中数据处理装置的结构示意图。如图10所示,该数据处理装置1000包括启动检测模块1002和接口切换模块1004。其中:
[0082] 启动检测模块1002,用于当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接。
[0083] 接口切换模块1004,用于控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。
[0084] 上述实施例提供的数据处理装置,电子设备在检测到前置摄像头被启动时,可以控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,并控制第一图像处理器与第二图像处理器通过第二处理器接口建立连接。电子设备在通过摄像头拍摄的时候,一般只会同时开启前置摄像头和后置摄像头中的一个,那么在检测到前置摄像头开启的时候,就可以将连接后置摄像头的第二处理器接口用来连接第二图像处理器,这样就可以实现后置摄像头和第二图像处理器对第二处理器接口的分时复用,节省了电子设备的资源。
[0085] 图11为另一个实施例中数据处理装置的结构示意图。如图11所示,该数据处理装置1100包括启动检测模块1102和接口切换模块1104。其中:
[0086] 启动检测模块1102,用于当检测到电子设备启动前置摄像头时,控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接;其中,所述第一图像处理器与所述前置摄像头通过第一处理器接口连接。
[0087] 接口切换模块1104,用于控制所述第一图像处理器通过所述第二处理器接口连接到第二图像处理器,其中,所述第二图像处理器连接于所述前置摄像头。
[0088] 接口复位模块1106,用于当检测到所述前置摄像头被关闭时,开始计时;当计时时长超过时长阈值时,控制所述第一图像处理器与所述第二图像处理器连接的第二处理器接口断开连接;控制所述第一图像处理器通过所述第二处理器接口连接到所述后置摄像头。
[0089] 上述实施例提供的数据处理装置,电子设备在检测到前置摄像头被启动时,可以控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接,并控制第一图像处理器与第二图像处理器通过第二处理器接口建立连接。电子设备在通过摄像头拍摄的时候,一般只会同时开启前置摄像头和后置摄像头中的一个,那么在检测到前置摄像头开启的时候,就可以将连接后置摄像头的第二处理器接口用来连接第二图像处理器,这样就可以实现后置摄像头和第二图像处理器对第二处理器接口的分时复用,节省了电子设备的资源。
[0090] 在一个实施例中,接口切换模块1104还用于当检测到电子设备启动前置摄像头时,获取图像采集指令;若获取到的图像采集指令为深度图像采集指令,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。
[0091] 在一个实施例中,接口切换模块1104还用于若获取到的图像采集指令为深度图像采集指令,则获取所述深度图像采集指令中包含的应用标识,所述应用标识用于标示发出所述深度图像采集指令的应用程序;若所述应用标识为预设应用标识,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。
[0092] 在一个实施例中,接口切换模块1104还用于获取所述深度图像采集指令中包含的操作标识,所述操作标识用于标示需通过采集的深度图像完成的应用操作;若所述操作标识为预设操作标识,则控制第一图像处理器与后置摄像头连接的第二处理器接口断开连接。
[0093] 在一个实施例中,接口复位模块1106还用于当检测到所述前置摄像头被关闭时,开始计时;当计时时长超过时长阈值时,控制所述第一图像处理器与所述第二图像处理器连接的第二处理器接口断开连接;控制所述第一图像处理器通过所述第二处理器接口连接到所述后置摄像头。
[0094] 在一个实施例中,接口复位模块1106还用于统计所述前置摄像头被启动的启动频率,根据所述启动频率获取对应的时长阈值。
[0095] 上述数据处理装置中各个模块的划分仅用于举例说明,在其他实施例中,可将数据处理装置按照需要划分为不同的模块,以完成上述数据处理装置的全部或部分功能。
[0096] 本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行上述实施例提供的数据处理方法。
[0097] 一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的数据处理方法。
[0098] 本申请实施例还提供一种移动终端。上述移动终端中包括图像处理电路,图像处理电路可以利用硬件和/或软件组件实现,可包括定义ISP(Image Signal Processing,图像信号处理)管线的各种处理单元。图12为一个实施例中图像处理电路的示意图。如图12所示,为便于说明,仅示出与本申请实施例相关的图像处理技术的各个方面。
[0099] 如图12所示,图像处理电路包括ISP处理器1240和控制逻辑器1250。成像设备1210捕捉的图像数据首先由ISP处理器1240处理,ISP处理器1240对图像数据进行分析以捕捉可用于确定和/或成像设备1210的一个或多个控制参数的图像统计信息。成像设备1210可包括具有一个或多个透镜1212和图像传感器1214的照相机。图像传感器1214可包括色彩滤镜阵列(如Bayer滤镜),图像传感器1214可获取用图像传感器1214的每个成像像素捕捉的光强度和波长信息,并提供可由ISP处理器1240处理的一组原始图像数据。传感器1220(如陀螺仪)可基于传感器1220接口类型把采集的图像处理的参数(如防抖参数)提供给ISP处理器1240。传感器1220接口可以利用SMIA(Standard Mobile Imaging Architecture,标准移动成像架构)接口、其它串行或并行照相机接口或上述接口的组合。
[0100] 此外,图像传感器1214也可将原始图像数据发送给传感器1220,传感器1220可基于传感器1220接口类型把原始图像数据提供给ISP处理器1240,或者传感器1220将原始图像数据存储到图像存储器1230中。
[0101] ISP处理器1240按多种格式逐个像素地处理原始图像数据。例如,每个图像像素可具有8、10、12或14比特的位深度,ISP处理器1240可对原始图像数据进行一个或多个图像处理操作、收集关于图像数据的统计信息。其中,图像处理操作可按相同或不同的位深度精度进行。
[0102] ISP处理器1240还可从图像存储器1230接收图像数据。例如,传感器1220接口将原始图像数据发送给图像存储器1230,图像存储器1230中的原始图像数据再提供给ISP处理器1240以供处理。图像存储器1230可为存储器装置的一部分、存储设备、或移动终端内的独立的专用存储器,并可包括DMA(Direct Memory Access,直接直接存储器存取)特征。
[0103] 当接收到来自图像传感器1214接口或来自传感器1220接口或来自图像存储器1230的原始图像数据时,ISP处理器1240可进行一个或多个图像处理操作,如时域滤波。处理后的图像数据可发送给图像存储器1230,以便在被显示之前进行另外的处理。ISP处理器
1240从图像存储器1230接收处理数据,并对所述处理数据进行原始域中以及RGB和YCbCr颜色空间中的图像数据处理。ISP处理器1240处理后的图像数据可输出给显示器1270,以供用户观看和/或由图形引擎或GPU(Graphics Processing Unit,图形处理器)进一步处理。此外,ISP处理器1240的输出还可发送给图像存储器1230,且显示器1270可从图像存储器1230读取图像数据。在一个实施例中,图像存储器1230可被配置为实现一个或多个帧缓冲器。此外,ISP处理器1240的输出可发送给编码器/解码器1260,以便编码/解码图像数据。编码的图像数据可被保存,并在显示于显示器1270设备上之前解压缩。编码器/解码器1260可由CPU或GPU或协处理器实现。
[0104] ISP处理器1240确定的统计数据可发送给控制逻辑器1250单元。例如,统计数据可包括自动曝光、自动白平衡、自动聚焦、闪烁检测、黑电平补偿、透镜1212阴影校正等图像传感器1214统计信息。控制逻辑器1250可包括执行一个或多个例程(如固件)的处理器和/或微控制器,一个或多个例程可根据接收的统计数据,确定成像设备1210的控制参数及ISP处理器1240的控制参数。例如,成像设备1210的控制参数可包括传感器1220控制参数(例如增益、曝光控制的积分时间、防抖参数等)、照相机闪光控制参数、透镜1212控制参数(例如聚焦或变焦用焦距)、或这些参数的组合。ISP控制参数可包括用于自动白平衡和颜色调整(例如,在RGB处理期间)的增益水平和色彩校正矩阵,以及透镜1212阴影校正参数。
[0105] 在本申请实施例中,该移动终端执行存储在存储器上的计算机程序时实现本申请实施例中数据处理方法的步骤。
[0106] 本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
[0107] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。