CN116156311A - 摄像头控制方法及装置 - Google Patents
摄像头控制方法及装置 Download PDFInfo
- Publication number
- CN116156311A CN116156311A CN202111355496.0A CN202111355496A CN116156311A CN 116156311 A CN116156311 A CN 116156311A CN 202111355496 A CN202111355496 A CN 202111355496A CN 116156311 A CN116156311 A CN 116156311A
- Authority
- CN
- China
- Prior art keywords
- camera
- application
- application program
- cameras
- access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/617—Upgrading or updating of programs or applications for camera control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Studio Devices (AREA)
Abstract
本申请涉及一种摄像头控制方法及装置。该方法包括:接收并确定出调用请求对应的第一应用程序;获取第一应用程序的访问权限记录,至少一个第一摄像头为已安装的多个摄像头中的部分或全部;根据每个第一摄像头当前的调用状态、对应的调用策略和对应的第一访问权限,从至少一个第一摄像头中确定出第一应用程序当前能够调用的第二摄像头以及确定第二摄像头的第二访问权限;将第二摄像头的第二访问权限授予第一应用程序。可以对安装有多个摄像头权限授权控制实现精确管控,根据摄像头的类型和调用各摄像头的应用程序的类型对各摄像头进行控制,保证主体的正常运行的同时实现摄像头的分类、分级控制,满足用户在使用多摄像头主体的复杂应用场景需求。
Description
技术领域
本申请涉及摄像头控制领域,尤其涉及一种摄像头控制方法及装置。
背景技术
随着智能汽车、智能机器人等智能设备的不断发展和进步,为满足用户的不同需求智能设备中摄像头的数量越来越多,不同摄像头的功能用途也越来越多样化,摄像头的应用场景也变得越来越复杂。以智能汽车为例,智能汽车中会安装多个摄像头满足汽车的自动驾驶、倒车影像辅助、行车记录等汽车的功能需要。汽车的车机内可以安装有多个能够使用摄像头的应用程序,如何实现多应用程序对多个摄像头的可控精准调用,是亟待解决的技术问题。
发明内容
有鉴于此,提出了一种摄像头控制方法及装置,以解决上述技术问题。
第一方面,本申请的实施例提供了一种摄像头控制方法,所述方法包括:
接收用于申请调用摄像头的调用请求,并确定出所述调用请求对应的第一应用程序;
获取所述第一应用程序的访问权限记录,所述访问权限记录用于记录对应的应用程序被允许调用的至少一个第一摄像头和对应的应用程序访问对应的第一摄像头的第一访问权限,所述至少一个第一摄像头为已安装的多个摄像头中的部分或全部;
根据每个所述第一摄像头当前的调用状态、对应的调用策略和对应的第一访问权限,从所述至少一个第一摄像头中确定出所述第一应用程序当前能够调用的第二摄像头以及确定所述第二摄像头的第二访问权限;
将所述第二摄像头的第二访问权限授予所述第一应用程序。
在一种可能的实现方式中,所述方法还包括:
接收用于申请摄像头访问权限的访问请求,并确定出所述访问请求对应的第二应用程序;
根据所述第二应用程序的应用类型、每个所述摄像头与应用类型之间的映射关系,从已安装的多个摄像头中确定出允许所述第二应用程序访问的至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,所述第三访问权限包括控制类权限和/或数据类权限;
根据所述至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,更新所述第二应用程序的访问权限记录,所述第二应用程序包括所述第一应用程序。
在一种可能的实现方式中,根据所述至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,更新所述第二应用程序的访问权限记录,包括:
将所述第三摄像头以及对应的第三访问权限,分别确定为作为第一摄像头以及对应的第一访问权限,记录到所述第二应用程序的访问权限记录中。
在一种可能的实现方式中,根据所述至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,更新所述第二应用程序的访问权限记录,包括:
将每个所述第三摄像头的第一信息发送至所述第二应用程序,以使所述第二应用程序基于所述第一信息展示第一提示,所述第一提示用于提醒用户所述第二应用程序被允许访问的第三摄像头、提醒用户从所述第三摄像头中选择出用户指定所述第二应用程序能够调用的第一摄像头、和/或提醒用户确定每个第一摄像头的第一访问权限;
接收所述第二应用程序发送的用户指定权限报告,所述用户指定权限报告用于指示所述第二应用程序根据检测到的权限调整操作确定的所述第三摄像头中被用户指定的第一摄像头和用户指定的所述第一摄像头的第一访问权限;
将所述用户指定权限报告中指示的第一摄像头和对应的第一访问权限,记录到所述第二应用程序的访问权限记录中。
在一种可能的实现方式中,所述方法还包括:
根据每个所述摄像头的摄像头相关参数,对每个所述摄像头的摄像头类型进行设置以及设置专属类摄像头和共享类摄像头对应的摄像头应用场景,每个所述摄像头的摄像头类型包括专属类、共享类和通用类中的任意一种;
根据应用类型对应的程序应用场景与所述摄像头应用场景的匹配结果,建立应用类型与摄像头之间的映射关系;
根据不同摄像头类型的摄像头的使用特点,为每种摄像头类型设置对应的调用策略。
在一种可能的实现方式中,根据应用类型对应的程序应用场景与所述摄像头应用场景的匹配结果,建立应用类型与摄像头之间的映射关系,包括:
若所述应用类型对应的程序应用场景与共享类摄像头对应的摄像头应用场景匹配,则建立所述共享类摄像头与所述应用程序之间的映射关系;和/或
若所述应用类型对应的程序应用场景与专属类摄像头对应的摄像头应用场景匹配,则建立所述专属类摄像头与所述应用程序之间的映射关系;和/或
若所述应用类型对应的程序应用场景与任意摄像头应用场景均不匹配,则建立所述通用类摄像头与所述应用程序之间的映射关系。
在一种可能的实现方式中,所述方法还包括:
建立所有所述应用类型与所述通用类摄像头之间的映射关系。
在一种可能的实现方式中,根据每个所述第一摄像头当前的调用状态、对应的调用策略和对应的第一访问权限,从所述至少一个第一摄像头中确定出所述第一应用程序当前能够调用的第二摄像头以及确定所述第二摄像头的第二访问权限,包括以下操作中的至少一种:
若所述第一摄像头中包括专属类摄像头,则将所述专属类摄像头中当前的调用状态为空闲状态的专属类摄像头确定为第二摄像头,以及将对应的第一访问权限确定为对应的第二访问权限;
若所述第一摄像头中包括共享类摄像头,则将所述共享类摄像头中当前的调用状态为空闲状态的共享类摄像头确定为第二摄像头,以及将对应的第一访问权限确定为对应的第二访问权限;
若所述第一摄像头中包括共享类摄像头,则将所述共享类摄像头中当前的调用状态为已用状态的共享类摄像头确定为第二摄像头,以及将对应的第一访问权限中的数据类权限确定为对应的第二访问权限;
若所述第一摄像头中包括通用类摄像头,则将所述通用类摄像头确定为第二摄像头,以及将对应的第一访问权限确定为对应的第二访问权限。
在一种可能的实现方式中,将所述第二摄像头的第二访问权限授予所述第一应用程序,包括:
若所述第二摄像头的数量为多个,则确定出多个第二摄像头中的目标摄像头;
将所述目标摄像头的第二访问权限授予所述第一应用程序。
在一种可能的实现方式中,若所述第二摄像头的数量为多个,则确定出多个第二摄像头中的目标摄像头,包括以下操作中的任意一种:
接收所述第一应用程序发送的摄像头选定报告,将多个第二摄像头中所述摄像头选定报告中指示的摄像头确定为目标摄像头,所述摄像头选定报告用于指示多个第二摄像头中被选定的目标摄像头;
根据所述第一应用程序的摄像头调用历史将多个第二摄像头中用户偏好的摄像头确定为目标摄像头;
根据所述第一应用程序的摄像头调用历史将多个第二摄像头中上一次被所述第一应用程序调用的摄像头确定为目标摄像头。
在一种可能的实现方式中,接收所述第一应用程序发送的摄像头选定报告,将多个第二摄像头中所述摄像头选定报告中指示的摄像头确定为目标摄像头,包括:
若所述第二摄像头为多个,则向所述第一应用程序发送授权信息,所述授权信息用于指示所述多个第二摄像头以及指示每个所述第二摄像头对应的第二访问权限,以使所述第一应用程序基于所述授权信息发出摄像头选择提示,所述摄像头选择提示用于提醒用户从多个第二摄像头中选择出目标摄像头;
接收所述第一应用程序发送的摄像头选定报告,所述摄像头选定报告用于指示所述多个第二摄像头中被选中的目标摄像头,所述目标摄像头是所述第一应用程序根据检测到的用户响应于所述摄像头选择提示的操作确定的;
将多个第二摄像头中所述摄像头选定报告中指示的摄像头确定为目标摄像头。
在一种可能的实现方式中,所述方法还包括:
若被所述第一应用程序调用的第二摄像头为通用类摄像头且同一时刻接收到控制所述第二摄像头的多个控制指令,则从多个控制指令中确定出优先响应控制指令;
控制所述第二摄像头执行所述优先响应控制指令。
在一种可能的实现方式中,从多个控制指令中确定出优先响应控制指令,包括:
根据每个控制指令对应的应用程序的优先级和/或每个控制指令对应的应用程序的历史使用记录,从所述多个控制指令中确定出优先响应控制指令;
其中,应用程序的优先级是根据应用程序的应用类型确定的。
第二方面,本申请的实施例提供了一种数据的传输装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令时实现第一方面或者第一方面的多种可能的实现方式中的一种或几种的摄像头控制方法。
第三方面,一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现第一方面或者第一方面的多种可能的实现方式中的一种或几种的摄像头控制方法。
第四方面,一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行第一方面或者第一方面的多种可能的实现方式中的一种或几种的摄像头控制方法。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本申请的示例性实施例、特征和方面,并且用于解释本申请的原理。
图1示出相关技术中手机中应用程序申请摄像头权限的提示示意图。
图2示出根据本申请一实施例的摄像头控制方法的应用场景的示意图。
图3示出根据本申请一实施例的摄像头控制方法的流程图。
图4示出根据本申请一实施例的摄像头控制方法的流程示意图。
图5A-图5C示出根据本申请一实施例的第一提示的示意图。
图6示出根据本申请一实施例中车机通过界面展示摄像头权限的示意图。
图7示出根据本申请一实施例的控制装置的架构框图。
具体实施方式
以下将参考附图详细说明本申请的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。
相关技术中,手机、平板等终端设备中配置有至少一个摄像头,而终端设备中的应用程序可在首次安装到终端设备被用户打开时申请摄像头的使用权限,该使用权限包括能否使用摄像头以及使用摄像头的时间。例如,图1示出相关技术中手机中应用程序申请摄像头权限的提示示意图。如图1所示,以终端设备为手机为例,手机中某应用程序1在被首次打开之后,可以在根据应用程序1自身的配置参数确定需要申请获得手机的摄像头权限的情况下(例如,应用程序1可以通过自身的AndroidManifest.xml文件中的<uses-permissionandroid:name="android.permission.CAMERA"/>语段确定需要向手机的系统摄像头申请权限),在显示屏中展示摄像头权限申请提示T1,在该提示T1可以提醒用户选择“拒绝”、“询问”、“仅在使用中允许”三种使用权限中的任意一个授权给该应用程序1,而后根据检测到的用户的操作,向手机的系统申请以获取到用户授权的使用权限,使得该应用程序1可以根据被用户授予的权限调用手机的摄像头。但这样的摄像头使用权限授权方式,存在以下问题:
第一,以终端设备为包括前置摄像头和后置摄像头的手机为例,相关技术中的摄像头授权,授予应用程序1的是对手机的包括前、后摄像头在内的全部摄像头的一个统一的使用权限,并没有对前、后摄像头分别授予使用权限,对摄像头使用权限授权的粒度过于粗糙,仅适用于较为简单的摄像头使用场景。在摄像头正在被应用程序1使用的过程中,若检测到用户通过应用程序2要使用摄像头,终端设备会停止应用程序1对摄像头的使用,然后控制摄像头被应用程序2继续使用。也即,同一时刻,摄像头仅能被一个应用程序使用,限制了用户通过应用程序对摄像头的调用,使用户无法同时通过多个应用程序使用同一个摄像头。
第二,在包括多个摄像头的汽车等主体的复杂摄像头使用场景中,现有技术中为保证汽车的行车记录、驾驶员监控、辅助驾驶、倒车影像等各功能的正常实现,为汽车的不同功能需要设置对应的用来专门使用的摄像头。举例来说,假定汽车包括用于行车记录的摄像头1、用于倒车影像显示的摄像头2、用于进行辅助驾驶的摄像头3、用于进行车内驾驶员安全驾驶监控的摄像头4。用户在驾驶汽车行驶过程中为保障行车安全开启了汽车的行车记录应用程序C、驾驶员监控应用程序A和辅助驾驶的应用程序,摄像头1、3、4都需要开启,且分别为不同的应用程序输送采集到的数据。但摄像头1、3、4的数据仅会被对应的应用程序使用,不会授权给通过汽车内的车机安装控制的其他应用程序使用。其中,车机可为安装在汽车的内部,车机的屏幕安装于中控台上,用户可以在车机中安装各类应用程序,如音乐播放应用程序、视频播放应用程序等,驾驶员可通过点击车机屏幕中显示的用户界面,控制车机中的各应用程序以及对汽车的功能进行设置。例如:驾驶员可在车机上点击锁车自动关闭所有窗户功能的虚拟按键,以在锁车时关闭汽车的所有窗户。驾驶员可在车机上点击音乐播放应用程序的图标进入到应用程序中选择歌曲进行播放。现有技术中也没有提供针对多个摄像头分别进行使用权限授权的可实现方式,而若利用现有技术中给出的手机、平板等的摄像头使用权限授权方式进行汽车中多摄像头的授权控制,则会发生在摄像头4正在使用进行辅助驾驶的过程中,若其他应用程序使用摄像头4,摄像头4会将数据输送至新的应用程序,不再将数据输送至辅助驾驶应用程序会使得辅助驾驶应用程序的数据中断,无法正常辅助驾驶员进行驾驶,严重危害行车安全。
或者,即便同一摄像头的数据可以共享给不同的应用程序,但其也存在如下问题:
举例来说,假定应用程序A控制驾驶员监控摄像头4开启,以获取驾驶员的人脸信息,进而能够在驾驶员疲劳驾驶的情况下及时发出提醒信息。此时,若应用程序B也获取了驾驶员监控摄像头的控制权限,并发送缩放画面指令至该摄像头4,则会导致应用程序A获取到的人脸信息是基于缩放画面所生成的,进而影响了应用程序A的疲劳驾驶监测功能,危害了驾驶员的行车安全。再例如:用户在行车期间已通过应用程序C控制了行车记录摄像头1,在用户看到一处靓丽的景色时,用户启动了应用程序D,想要记录该景色。然而用户为通过应用程序D记录清楚的景色录像,对摄像头1的画面进行了局部放大后拍摄。此时应用程序C所得到的就是放大后的行车录像,对于发生的交通事故等情况可能无法正常进行行车记录,甚至于行车录像中可能出现未记录到与交通事故等相关的可供参考的图像,使得行车录像失去应有的作用。
上述问题也可能出现在安装有多个摄像头的智能机器人这一主体中,例如:智能机器人设有障碍物检测摄像头M,以使机器人能够通过分析该摄像头M采集到的图像实现自动避障功能。此时,若用户若想体验机器人视角,则可通过一应用程序7(已经获得摄像头M的使用权限),获取障碍物检测摄像头M的控制权限。而若用户通过应用程序7放大或缩小摄像头M采集的图像时,即便摄像头M的数据同时输送给应用程序7以及作为进行障碍物判断的依据,由于此时摄像头M的采集的图像已经被放大或缩小将会导致机器人障碍物检测结果不准确或检测异常,使得机器人可能无法及时或准确躲避实际存在的障碍物,致使机器人损坏等情况发生。
可见,相关技术中的摄像头权限控制难以实现多个摄像头授权使用的精准管控,甚至出现安装有摄像头的汽车等主体被损坏、用户安全受到威胁等严重问题。
为解决上述问题,本申请实施例提供了一种摄像头控制方法以及装置。可以对安装有多个摄像头的主体的摄像头权限授权控制实现精确管控,根据摄像头的类型和调用各摄像头的应用程序的类型对各摄像头进行控制,保证主体的正常运行的同时实现摄像头的分类、分级控制,满足用户在使用多摄像头主体的复杂应用场景需求。
为说明本申请实施例所提供的摄像头控制方法及装置,本申请实施例中将以智能汽车为安装有多个摄像头的主体为例,对摄像头控制方法及装置的实现方式进行说明,其余主体中摄像头控制方法及装置的实现方式不再赘述。图2示出根据本申请一实施例的摄像头控制方法的应用场景的示意图。图3示出根据本申请一实施例的摄像头控制方法的流程图。
如图2所示,假定汽车10中安装有多个摄像头,包括:用于进行行车记录的摄像头C1。用于进行车内后排座椅监控的后视辅助监控摄像头C2。用于实现辅助驾驶中的车道保持辅助的摄像头C3。用于进行驾驶员安全驾驶监控的摄像头C4。用于实现辅助驾驶中的倒车辅助的摄像头C5。用于驾驶员以及乘车人进行车内娱乐的摄像头C6。用于实现汽车10内部座舱监控的摄像头C7。汽车10中的车机10内安装的应用程序可以调用汽车10的摄像头。其中,汽车10中安装的应用程序可以包括与汽车10的各功能相匹配的内设的能够调用摄像头的应用程序,例如,进行行车记录、驾驶员监测、后视监控、车道保持辅助、倒车辅助、车内娱乐镜头控制的应用程序。汽车10中安装的应用程序还可以包括用户根据自身需要下载安装的应用程序,等等。
如图3所示,本申请所提供的摄像头控制方法包括设置阶段步骤和使用阶段步骤。
“设置阶段步骤”可以是主体实际使用之前执行的,主体的研发人员可以预先通过“设置阶段步骤”各步骤的执行保证后续“使用阶段步骤”可以如常进行。执行“设置阶段步骤”各步骤的可以是主体本身(如主体中用于控制主体的处理器等控制装置)、外部的不属于主体的应用于进行主体配置的设备等等。例如,假定主体为汽车,则汽车的研发人员可以在汽车出厂之前利用汽车的车机或者实现汽车出厂前配置的设备执行设置阶段各步骤。假定主体为智能机器人,则机器人的研发人员可以在机器人出厂之前利用机器人内部的控制装置或者实现机器人出厂前配置的设备执行设置阶段各步骤。其中,如图3所示,“设置阶段步骤”可包括步骤S11-步骤S16。
“使用阶段步骤”可以应用于主体,由主体的控制装置执行,使用户在使用主体期间主体的控制装置可以按照使用阶段的各步骤实现摄像头控制。其中,如图3所示,“使用阶段步骤”可包括步骤S21-步骤S28。
“设置阶段步骤”在“使用阶段步骤”之前执行。“设置阶段步骤”的执行完成与“使用阶段步骤”的开始执行之间的间隔是不固定的,“设置阶段步骤”执行完成后“使用阶段步骤”可以反复执行,“使用阶段步骤”每次执行之前可以不再执行“设置阶段步骤”。例如,假定主体为汽车,则“设置阶段步骤”在汽车出厂之前执行,出厂供用户使用的期间汽车的车机仅执行“使用阶段步骤”,不再执行“设置阶段步骤”。以下结合示例对“设置阶段步骤”和“使用阶段步骤”的实现方式进行描述。
“设置阶段步骤”
在步骤S11中,确定所需控制的每个摄像头的摄像头相关参数,所述摄像头相关参数可以是指与摄像头相关、且能够用于后续进行摄像头类型划分、应用场景划分的参数。在一些实施例中,摄像头相关参数可以包括:摄像头的功能用途。摄像头在主体中的安装参数,例如,安装位置、镜头朝向等。摄像头所在的主体的类型,例如,主体的类型可以包括:机器人、车辆、无人机、等等。
在步骤S12中,根据每个摄像头的摄像头相关参数,对每个摄像头的摄像头类型进行设置。并在执行完步骤S12之后执行步骤S13。其中,可以每次确定出一个摄像头的类型之后,执行步骤S13,也可以在分别确定出主体中所有摄像头的类型之后执行步骤S13。
在一种可能的实现方式中,步骤S12中可以直接根据各摄像头功能用途的不同,将汽车等主体中安装的多个摄像头进行摄像头类型划分。摄像头类型可以包括:专属类(也可以称为独占类、专享类等)、共享类(也可以称为公用类、同用类等)和通用类(也可以称为普通类、一般类等)。在一些实施例中,在步骤S12中,还可以在每个设置完摄像头类型的摄像头的配置文件中通过特定的字段标记摄像头的摄像头类型,以使得后续“使用阶段步骤”中可以通过每个摄像头的配置文件确定出摄像头的摄像头类型。举例来说,假定主体为如图2所示的汽车10,则根据摄像头功能用途的不同,可以确定摄像头C1为共享类摄像头。摄像头C2为专属类摄像头。摄像头C3为共享类摄像头。摄像头C4为专属类摄像头。摄像头C5为共享类摄像头。摄像头C6为通用类摄像头。摄像头C7为共享类摄像头。
在步骤S13中,对摄像头的类型进行判别,在摄像头为专属类摄像头或共享类摄像头的情况下,执行步骤S14。在摄像头为通用类摄像头的情况下,执行步骤S15。
在步骤S14中,设置摄像头对应的摄像头应用场景。并在完成步骤S14之后,执行步骤S15。
在一种可能的实现方式中,步骤S14中,在摄像头为专属类摄像头或共享类摄像头的情况下,可以根据摄像头的摄像头相关参数,确定出摄像头所对应的摄像头应用场景。因专属类摄像头和共享类摄像头在不同主体中的实际功能的不同,可以根据安装有摄像头的主体、以及专属类摄像头和共享类摄像头的功能,为每个专属类摄像头和每个共享类摄像头所能应用的摄像头应用场景进行设置。其中,不同的功能用途摄像头的摄像头应用场景可以不同。同一摄像头所对应的摄像头应用场景可以为一个或多个。举例来说,假定主体为如图2所示的汽车10,摄像头应用场景可以包括:行车记录场景、驾驶员安全驾驶监控场景、座舱监控场景、后视辅助场景、倒车辅助场景、车道保持辅助场景、等等。则图2中摄像头C1(共享类摄像头)对应的摄像头应用场景即为行车记录场景,摄像头C2(专属类摄像头)对应的摄像头应用场景即为后视辅助场景。摄像头C3(共享类摄像头)对应的摄像头应用场景即为车道保持辅助场景。摄像头C4(专属类摄像头)对应的摄像头应用场景即为驾驶员安全驾驶监控场景。摄像头C5(共享类摄像头)对应的摄像头应用场景即为倒车辅助场景。摄像头C7(共享类摄像头)对应的摄像头应用场景即为座舱监控场景。
在步骤S15中,建立摄像头与应用类型之间的映射关系。并在执行完步骤S15之后执行步骤S16。
在一种可能的实现方式中,在步骤S15中,可以先确定主体所能安装的全部应用程序以及确定每个应用程序的应用类型,得到多个应用类型;而后根据每个应用类型确定出对应的应用程序在实际运行中所对应的程序应用场景;将程序应用场景与至少一个摄像头应用场景(包括共享类摄像头对应的摄像头应用场景和/或专属类摄像头对应的摄像头应用场景)进行匹配。若至少一个摄像头应用场景中存在与程序应用场景匹配的摄像头应用场景,则可以将摄像头应用场景与程序应用场景匹配的专属类摄像头或共享类摄像头,确定为该程序应用场景对应的应用类型的应用程序所能调用的摄像头,建立该程序应用场景对应的应用类型与摄像头应用场景与程序应用场景匹配的专属类摄像头或共享类摄像头之间的映射关系。若程序应用场景与摄像头应用场景均不匹配,则可以将通用类摄像头确定为该程序应用场景所对应的应用类型的应用程序所能调用的摄像头,建立该程序应用场景对应的应用类型与通用类摄像头之间的映射关系。
在一种可能的实现方式中,在步骤S15中,可以将程序应用场景与摄像头应用场景不同的应用类型对应的应用程序所能调用的摄像头设置为通用类摄像头,这样,同一应用类型仅与一种类型的摄像头存在映射关系。或者,在步骤S15中还可以设置通用类摄像头与全部应用类型对应,则对于程序应用场景与摄像头应用场景匹配的应用类型其与匹配的共享类摄像头或专属类摄像头之间存在映射关系、且该应用类型还与通用类摄像头存在映射关系;对于程序应用场景与摄像头应用场景不匹配的应用类型则仅与通用类摄像头存在映射关系。这样,所有应用类型的应用程序均可以调用通用类摄像头,程序应用场景与摄像头应用场景匹配的摄像头可以调用通用类摄像头和摄像头应用场景与程序应用场景匹配的共享类摄像头或专属类摄像头。
在一些实施例中,程序应用场景与每个摄像头应用场景是否匹配可以通过场景相似程度来确定。场景相似程度越高,则匹配程度越高。可以预先设置相似程度阈值,若程序应用场景与摄像头应用场景之间的相似度大于或等于相似度阈值,则可以确定程序应用场景与摄像头应用场景匹配。例如,假定相似度阈值为80%,则若程序应用场景与某一个摄像头应用场景的相似度大于或等于80%,则可以确定该摄像头应用场景与程序应用场景匹配。
举例来说,假定主体为如图2所示的汽车10,汽车10上安装有图2所示的摄像头C1、C2…C7。摄像头C1(共享类摄像头)对应的摄像头应用场景即为行车记录场景,摄像头C2(专属类摄像头)对应的摄像头应用场景即为后视辅助场景。摄像头C3(共享类摄像头)对应的摄像头应用场景即为车道保持辅助场景。摄像头C4(专属类摄像头)对应的摄像头应用场景即为驾驶员安全驾驶监控场景。摄像头C5(共享类摄像头)对应的摄像头应用场景即为倒车辅助场景。摄像头C7(共享类摄像头)对应的摄像头应用场景即为座舱监控场景。摄像头C6为通用类摄像头。则在步骤S15中,在确定汽车10上可以安装的应用程序的应用类型包括:应用类型1、应用类型2……应用类型9的情况下,可以确定每个应用类型所对应的程序应用场景(如下表1所示),而后基于上述步骤S15的实现方式确定出应用类型1、应用类型2……应用类型10与汽车10的摄像头之间的映射关系(如下表1所示),得到如下表1所示的应用类型与摄像头映射关系表。
其中,如表1所示,应用类型1、应用类型2……应用类型9与摄像头C6存在映射关系。应用类型1与摄像头C4存在映射关系。应用类型2与摄像头C2存在映射关系。应用类型3、4与摄像头C3存在映射关系。应用类型6与摄像头C5存在映射关系。应用类型7、8与摄像头C7存在映射关系。应用类型9与摄像头C6存在映射关系。则,从调用摄像头的权限上分析,可以确定:
应用类型1的应用程序具有调用摄像头C4和C6的权限。
应用类型2的应用程序具有调用摄像头C2和C6的权限。
应用类型3的应用程序具有调用摄像头C1和C6的权限。
应用类型4的应用程序具有调用摄像头C3和C6的权限。
应用类型5的应用程序具有调用摄像头C3和C6的权限。
应用类型6的应用程序具有调用摄像头C5和C6的权限。
应用类型7的应用程序具有调用摄像头C7和C6的权限。
应用类型8的应用程序具有调用摄像头C7和C6的权限。
应用类型9的应用程序具有调用摄像头C6的权限。
表1应用类型与摄像头映射关系表
在一种可能的实现方式中,在步骤S15中,还可以根据不同应用类型的应用程序设置应用程序对应的分类类型,应用程序的分类类型可以为通用类、共享类和专属类中的一种。其中,若应用程序的应用类型所映射的摄像头仅包括通用类摄像头,则应用程序的分类类型可以设置为通用类。若应用程序的应用类型所映射的摄像头包括通用类摄像头和共享类摄像头,则应用程序的分类类型可以设置为共享类。若应用程序的应用类型所映射的摄像头包括通用类摄像头和专属类摄像头,则应用程序的分类类型可以设置为专属类。则通用类应用程序可以访问通用类摄像头。共享类应用程序可以访问共享类摄像头和通用类摄像头。专属类应用程序可以访问专属类摄像头和通用类摄像头。
在步骤S16中,确定每个类型的摄像头的调用策略。
在一种可能的实现方式中,在步骤S16中可以根据不同摄像头类型的摄像头的使用特点分别为不同的摄像头类型设置对应的调用策略,以保证摄像头的正常控制。
为说明不同类型的摄像头的区别,以下结合示例对专属类摄像头、共享类摄像头和通用类摄像头以及每种类型的摄像头的调用策略进行描述。
专属类摄像头,也可称独占类摄像头、专享类摄像头等。该专属类摄像头可以是安装在主体中的,具备特定功能仅由一个应用程序独占使用的摄像头,例如,图2中汽车10上安装的驾驶员安全驾驶监控摄像头C4。在一些实施例中,专属类摄像头的调用策略可以包括:每个专属类摄像头同一时刻仅能供一个最先申请调用该专属类摄像头的、应用类型与该专属类摄像头对应的应用程序调用;且正在调用该专属类摄像头的应用程序具有该专属类摄像头的完全访问权限。其中,完全访问权限包括对专属类摄像头的控制类权限和数据类权限。这样,正在调用该专属类摄像头的应用程序可以独占使用该专属类摄像头,避免其他应用程序的干扰。例如,在汽车10行进过程中,摄像头C4(专属类摄像头)始终仅供进行驾驶员安全驾驶监控的应用程序使用。而若假定汽车10车机100中安装有可以实现驾驶员安全驾驶监控的应用程序1、2、3,假定某一时刻应用程序1正在调用摄像头C4进行驾驶员安全驾驶监控,而此时若车机100检测到应用程序2也申请调用摄像头C4,则由于车机100判断出此时摄像头C4已经被应用程序1调用,则会拒绝应用程序2对摄像头C4调用。
共享类摄像头,也可以称共用类摄像头、同用类摄像头等。该共享类摄像头可以是主体中安装的,具备特定功能可以供多个应用程序共同调用的摄像头,例如,图2中汽车10上安装的行车记录摄像头C1。在一些实施例中,共享类摄像头的调用策略可以包括:每个共享类摄像头同一时刻可以被一个或多个应用类型与该共享类摄像头对应的应用程序调用。且在调用共享类摄像头的应用程序为多个的情况下,最先申请调用该共享类摄像头的应用程序具有该共享类摄像头的完全访问权限,其余应用程序仅具有该共享类摄像头的数据类权限。这样,可以保证最先申请调用该共享类摄像头的应用程序可以完全独占地使用该共享类摄像头,避免其他应用程序的干扰,而其他应用程序具有共享类摄像头的数据类权限可以保证这些应用程序可以使用该共享类摄像头采集到的数据。例如,在汽车10行进过程中,摄像头C1(共享类摄像头)在被行车记录的应用程序调用后,若车机100接收到应用程序4调用摄像头C1,则由于车机100判断出此时摄像头C1已经被行车记录的应用程序调用,车机100会允许应用程序4调用摄像头C1且授予应用程序4对摄像头C1的数据类权限。
通用类摄像头,也可以称普通类摄像头、一般类摄像头等。该通用类摄像头可以是主体中安装的,没有特定功能可以供多个应用程序共同调用的摄像头,例如,图2中汽车10上安装的车内娱乐摄像头C6。通用类摄像头的调用策略可以包括:每个通用类摄像头同一时刻可以被一个或多个应用类型与通用类摄像头对应的应用程序调用。且调用该通用类摄像头的各应用程序均具有该通用类摄像头的完全访问权限。其中,若在同一时刻有多个应用程序向该通用类摄像头发送控制指令,可以根据先预设的响应规则对多个控制指令进行筛选,确定出多个控制指令中的优先响应控制指令。这样,即可以保证调用该通用类摄像头的多个应用程序可以分别对该通用类摄像头进行使用,也可以保证同一时刻有多个控制指令的情况下也能有序控制通用类摄像头响应控制指令。其中,控制指令可以是对应于摄像头的控制类权限和/或数据类权限的指令。
在一种可能的实现方式中,响应规则可以包括:根据每个控制指令对应的应用程序的优先级的顺序,从多个控制指令中确定出优先响应控制指令。在一些实施例中,可以预先对不同应用类型的优先级进行设置,例如,可以将应用类型的优先级顺序由高到低设置为:与专属类摄像头对应的应用类型、与共享类摄像头对应的应用类型、与通用类摄像头对应的应用类型。也即,可以将应用类型的优先级顺序由高到低设置为:分类类型属于专属类的应用类型、分类类型属于共享类的应用类型、分类类型属于通用类的应用类型。
在一些实施例中,响应规则还可以包括:若同时向通用类摄像头发出控制指令的多个应用程序中优先级别最高的应用程序为多个,则还可以根据每个控制指令对应的应用程序的历史使用记录,进一步从应用程序优先级别最高的多个控制指令中,最终选择出优先响应控制指令。历史使用记录所记录的内容可以包括应用程序被使用的频率、被使用的总时长、上次被使用与当前时刻之间的间隔时长等表征应用程序的历史使用状况的数据。在一些实施例中,可以将“应用程序优先级别最高的多个控制指令”中使用频率高、使用总时长较长、间隔时长短的应用程序对应的控制指令确定为优先响应控制指令。在一些实施例中,可以根据每个应用程序的历史使用记录确定出每个应用程序的使用状态评价值,而后将“应用程序优先级别最高的多个控制指令”中使用状态评价值最高的应用程序的控制指令确定为优先响应控制指令。在一些实施例中,可以为每一类历史使用记录设置对应的权值,而后以加权求和的方式计算出应用程序的使用状态评价值。举例来说,假定如图2所示的汽车10中的摄像头C6同时被应用程序a、b、c、d、e调用,且同一时刻5个应用程序均向摄像头C6发出控制指令。例如,若按照优先级别确定应用程序a、b、c、d、e中应用程序e的优先级最高,则可以将应用程序e所发出的控制指令确定为优先响应控制指令。例如,若按照优先级别确定a、b、c三个应用程序的优先级别相同且均高于应用程序d、e。则可以分别计算应用程序a、b、c的使用状态评价值,而后将应用程序a、b、c中使用状态评价值的数值最高的应用程序如应用程序a所发出的控制指令确定为优先响应控制指令。
在一种可能的实现方式中,响应规则也可以仅为:根据每个控制指令对应的应用程序的历史使用记录,从多个控制指令中选择出优先响应控制指令。在一些实施例中,可以将“多个控制指令”中使用频率高、使用总时长较长、间隔时长短的应用程序对应的控制指令确定为优先响应控制指令。在一些实施例中,可以将多个控制指令中使用状态评价值最高的应用程序的控制指令确定为优先响应控制指令。举例来说,假定如图2所示的汽车10中的摄像头C6同时被应用程序a、b、c、d、e调用,且同一时刻5个应用程序均向摄像头C6发出控制指令。则,若确定出应用程序a、b、c、d、e中应用程序d的使用状态评价值最高,则可以将应用程序d发出的控制指令确定为优先响应控制指令。
在一种可能的实现方式中,应用程序对每个摄像头的访问权限包括对摄像头的控制类权限和/或数据类权限,完全访问权限包括控制类权限和数据类权限。
其中,控制类权限可以是能够改变摄像头进行图像采集的方式或者使得摄像头采集到的图像或视频发生变化的控制权限,应用程序拥有控制类权限之后可以基于应用程序检测到的用户操作对摄像头采集的图像或视频的方式、或者采集到的图像或视频内容本身进行调整或处理,使当前所有正在调用该摄像头的所有应用程序最终获得的摄像头采集到的图像或视频发生变化。控制类权限对摄像头的控制可以包括:对摄像头的曝光、对焦、白平衡的自动或手动控制。对摄像头采集的图像的缩放、拍摄角度等的控制。对摄像头的闪光灯是否开启的控制,例如,根据光线的强度自动调整闪光灯的开启或关闭,手动控制闪光灯的开启或关闭。对摄像头采集到的图像或视频的画面效果的控制,例如,为采集到的图像增加滤镜、进行美化、裁剪、校正等,设置对摄像头采集到的图像或视频进行处理的算法。
其中,数据类权限可以是对摄像头采集到的数据进行获取并进一步进行显示或存储的控制权限,应用程序拥有数据类权限之后可以基于应用程序检测到的用户操作对摄像头采集的图像或视频进行获取,不会使当前所有正在调用该摄像头的所有应用程序最终获得的摄像头采集到的图像或视频发生变化。数据类权限对摄像头的控制可以包括:预览权限,对摄像头采集到的图像进行预览的控制,使得检测到用户的预览操作的应用程序可以获取摄像头采集到的数据得到摄像头实时采集的图像进而为用户展示实现预览,可使得用户以预览的形式观看到摄像头实时采集到的图像。拍照权限,对摄像头采集到的图像进行拍照的控制,可使得检测到用户的拍照操作的应用程序可以获取摄像头采集到的数据得到摄像头实时采集的图像进而为用户拍照。录像权限,对摄像头采集到的图像进行录制(或称摄制、拍摄等)的控制,可使得检测到用户的录制操作的应用程序可以获取摄像头采集到的数据得到摄像头实时录制的视频(或称录像)。实时拇指图权限,对摄像头采集到的数据进行部分或全部数据的获取以得到数据量小的“小图像”,以进一步对“小图像”进行分析处理的控制,使得检测到用户的实时拇指图操作的应用程序可以获取摄像头采集到的图像的“小图像”进行分析处理,并未用户反馈分析处理的结果,可使得用户根据分析处理的结果进一步作出响应。“小图像”可以是指相比于摄像头实时采集到的图像的尺寸小、和/或分辨率小的图像,这样,可以便于应用程序对“小图像”的分析处理,并提高分析处理的速度。例如,AR类的应用程序在拥有实时拇指图权限的情况下,可以获取“小图像”的持续数据流,以便于AR应用程序可及时地实时生成AR虚拟影像,实现AR导航功能。
在本申请的摄像头控制方法中,执行完上述“设置阶段步骤”之后,由于主体可以安装的应用程序、应用程序的应用类型和程序应用场景可能会发生变化,这可能会使得摄像头与应用类型之间的映射关系发生变化,并且为了优化用户使用摄像头的体验,汽车等主体的厂家也可能会不断更新部分或全部类型的摄像头的调用策略。因此主体可以定期更新“摄像头与应用类型之间的映射关系”和/或“每个类型的摄像头的调用策略”。更新过程可以是主体主动向服务器发起的和/或服务器主动向主体发起的。在一些实施例中,调用策略、摄像头类型、摄像头应用场景、摄像头与应用类型之间的映射关系、应用程序的分类类型可以存储在车机的只读内存中,以降低这些信息被恶意修改的发生概率,保证主体的正常、安全运行。示例性地,在不考虑安全性的情况下,可以开放用户对调用策略、摄像头类型、摄像头应用场景、摄像头与应用类型之间的映射关系、应用程序的分类类型中的至少一个的更改权限,以增加用户端的可操控性,满足用户的多样化需求。
“使用阶段步骤”
图4示出根据本申请一实施例的摄像头控制方法的流程示意图。如图3、图4所示,在“使用阶段步骤”汽车的车机(主体的控制装置)用于执行步骤S21-步骤S28,其中,如图3所示“使用阶段步骤”可以包括:权限授权和摄像头调用。“权限授权”包括步骤S21-步骤S24,车机通过“权限授权”实现不同应用程序的摄像头权限车机允许和用户选择的授权,并完成每个应用程序的访问权限记录存储。“摄像头调用”包括步骤S25-步骤S26,车机可以根据访问权限记录进行摄像头调用控制。在本申请实施例所提供的摄像头控制方法中,如图4所示,在“权限授权”中第二应用程序用于执行步骤S31-步骤S34。其中,第二应用程序可以是车机中安装的任意一个应用程序。其中,“摄像头调用”是每次第一应用程序调用摄像头使用中车机均会执行的步骤;而“权限授权”实际上是“使用阶段步骤”的前续步骤,其可以仅在满足请求条件的情况下由第二应用程序(第二应用程序包括“摄像头调用”中所涉及的第一应用程序)执行。
“权限授权”
如图4所示,在步骤S31中,第二应用程序在确定满足请求条件的情况下,发出访问请求。
在一种可能的实现方式中,请求条件可以包括以下至少一种:第二应用程序首次被打开使用且第二应用程序运行中需要获取到摄像头访问权限、第二应用程序被开启且第二应用程序没有获得运行所需的摄像头访问权限。这样,使得第二应用程序可以在需要获取到摄像头访问权限且自身没有获得摄像头访问权限的情况下,发出访问请求。
在步骤S21中,如图3图、图4所示,车机接收用于申请摄像头访问权限的访问请求,确定访问请求对应的第二应用程序。
在一种可能的实现方式中,访问请求可以指示请求摄像头访问权限的第二应用程序。访问请求中可以包括用于指示第二应用程序是汽车的车机(主体的控制装置)中安装的多个应用程序的哪一个的程序标识,程序标识可以是应用程序的名称、编号等能够标识应用程序的信息,本申请对此不作限制。汽车的车机(主体的控制装置)在接收到访问请求之后,可以根据访问请求中的程序标识确定发出访问请求的第二应用程序。在一种可能的实现方式中,若访问请求中不存在指示第二应用程序的程序标识等信息,汽车的车机还可以直接将发出访问请求的应用程序确定为第二应用程序。
在步骤S22中,如图3图、图4所示,根据第二应用程序的应用类型、摄像头与应用类型之间的映射关系,从已安装的多个摄像头中确定出允许第二应用程序访问的至少一个第三摄像头以及每个第三摄像头的第三访问权限。
在一种可能的实现方式中,在步骤S22中,车机可以根据第二应用程序的应用类型、摄像头与应用类型之间的映射关系,从安装的多个摄像头中确定出车机允许第二应用程序访问的至少一个第三摄像头。在一些实施例中,访问请求中还可以包括第二应用程序的应用类型,在步骤S22中车机可以直接根据访问请求中的应用类型、本地存储的摄像头与应用类型之间的映射关系(上文步骤S15所确定出的映射关系),从车机所在的汽车安装的多个摄像头中筛选出允许第二应用程序访问的至少一个第三摄像头。在一些实施例中,若访问请求中并不包括第二应用程序的应用类型,则车机可以直接从第二应用程序的程序配置文件中获取到第二应用程序的程序类型,而后在步骤S22中车机可以根据确定出的应用类型、本地存储的摄像头与应用类型之间的映射关系,从车机所在的汽车安装的多个摄像头中筛选出允许第二应用程序访问的至少一个第三摄像头。举例来说,参照图2所示的汽车10、表1所示的映射关系示例,假定第二应用程序的应用类型为“应用类型3”,则车机根据表1可以确定出允许第二应用程序访问的第三摄像头包括摄像头C3和摄像头C6。
在一种可能的实现方式中,在步骤S22中,车机还可以先根据第二应用程序的分类类型先从多个摄像头中筛选出对应于分类类型的至少一个备选摄像头。而后若备选摄像头均为通用类摄像头则直接将备选摄像头确定为第三摄像头;否则若备选摄像头不完全是通用类摄像头可以再根据第二应用程序的应用类型、摄像头与应用类型之间的映射关系从备选摄像头中确定出车机允许第二应用程序访问的至少一个第三摄像头。例如,假定第二应用程序为共享类应用程序,则可以将所有共享类摄像头和通用类摄像头均确定为第三摄像头,而后根据摄像头与应用类型之间的映射关系确定出共享类摄像头中与第二应用程序的应用类型不对应的不可选摄像头,最终将备选摄像头中除不可选摄像头之外的其他摄像头确定为第三摄像头。假定第二应用程序为专属类应用程序,则可以将所有专属类摄像头和通用类摄像头均确定为备选摄像头,而后根据摄像头与应用类型之间的映射关系确定出专属类摄像头中与第二应用程序的应用类型不对应的不可选摄像头,最终将备选摄像头中除不可选摄像头之外的其他摄像头确定为第三摄像头。假定第二应用程序为通用类应用程序,则可以将所有通用类摄像头均确定为第三摄像头。这样,可以简化确定第三摄像头的过程,提高确定第三摄像头的速度。
在一种可能的实现方式中,在步骤S22中,车机在确定出至少一个第三摄像头之后或者确定第三摄像头的过程中,还可以根据第三摄像头的被调用记录和调用策略,确定出第二应用程序对每个第三摄像头进行访问的第三访问权限,其中,第三访问权限的确定步骤为可选步骤。在一些实施例中,第二应用程序对每个第三摄像头的第三访问权限可以包括:具有完全访问权限(包括控制类权限和数据类权限)、数据类权限、无权限中的任意一项。
在一些实施例中,由于不同摄像头的功能的不同,导致各个摄像头被调用的状态存在区别,因此,车机在确定每个第三摄像头的第三访问权限时,可以先根据第三摄像头的被调用记录确定第三摄像头是否处于一直开启被调用的状态。若第三摄像头处于一直开启被调用的状态,则车机可以根据第三摄像头的调用策略确定出车机能够给予第二应用程序对第三摄像头的第三访问权限具体为哪一种。若第三摄像头并未处于一直开启被调用的状态,则车机可以确定能够给予第二应用程序对第三摄像头的第三访问权限为完全访问权限。
举例来说,以如图2的汽车10为例,部分汽车用户为保护车辆安全会设置仅用于行车记录的摄像头C1处于一直开启被调用的状态,以进行行车记录录像。则在这种情况下,若第三摄像头包括摄像头C1,且根据摄像头C1的被调用记录确定摄像头C1处于一直开启被调用的状态,则根据第三摄像头C1的调用策略(如上文所述的共享类摄像头的调用策略),可以确定出第二应用程序对摄像头C1的第三访问权限仅为数据类权限,不具有摄像头C1的完全访问权限(也即不具有摄像头C1的控制类权限)。又例如,以如图2的汽车10为例,若第三摄像头包括摄像头C4,且根据摄像头C4的被调用记录确定摄像头C4处于一直开启被调用的状态,则根据第三摄像头C4的调用策略(如上文所述的专属类摄像头的调用策略),可以确定出第二应用程序对摄像头C4的第三访问权限为无权限。再例如,以如图2的汽车10为例,若第三摄像头包括摄像头C6,且根据摄像头C6的被调用记录确定摄像头C6处于一直开启被调用的状态,则根据第三摄像头C6的调用策略(如上文所述的通用类摄像头的调用策略),可以确定出第二应用程序对摄像头C6的第三访问权限为完全访问权限。
在步骤S23中,如图3图、图4所示,发送每个第三摄像头的第一信息,第一信息包括每个第三摄像头的摄像头标识、摄像头的功能用途、安装参数中的至少一种。在一些实施例中,第一信息中还可以包括每个第三摄像头的第三访问权限。
在一种可能的实现方式中,如图4所示,第二应用程序接收到第一信息之后,可以执行步骤S32。在一些实施例中,在步骤S32中,第二应用程序接收到第一信息之后,可以为用户展示第一提示。为说明本申请所提供的第一提示的不同实现方式,图5A-图5C示出根据本申请一实施例的第一提示的示意图。
在一种可能的实现方式中,第一提示可以用于提醒用户车机允许第二应用程序调用访问的第三摄像头。第一提示中可以包括第一信息中的至少一种信息。在一些实施例中,第一提示可以在显示屏(如车机显示屏)中的弹窗、侧边栏等中为用户展示第一提示,第一提示可以是能够指示第三摄像头的示意图(如图5A所示的Q11)、和/或列表(如图5B所示的Q12)等等。例如,以图2所示的汽车10为例,假定第三摄像头为摄像头C1和摄像头C6,则如图5B所示可以在车机的显示屏中为用户通过列表(图中未示出表格线)展示第一提示,或者也可以如图5A所示在车机的显示屏中为用户通过示意图展示第一提示。
在一种可能的实现方式中,第一提示在用于提醒用户车机允许第二应用程序调用的第三摄像头的同时,还可以用于提醒用户从第三摄像头中选择出用户指定第二应用程序能够调用的第一摄像头、和/或提醒用户确定第一摄像头的第一访问权限。第一访问权限可以为用户从被用户选为第一摄像头的第三摄像头的第三访问权限中选择确定出的访问权限。
在一些实施例中,如图5A的Q11和图5B的Q12中所示,可以在第一提示中展示第三摄像头的第三访问权限以及与每个第三访问权限对应的第一选择控件K1,和/或对应于每个第三摄像头的第二选择控件K2。第二选择控件K2可以指示对应的第三摄像头是否被用户选择为第一摄像头(如图5A、5B中展示的K2的状态即表示对应的第三摄像头被用户选择为第一摄像头,如图5C中摄像头C6的对应的K2的状态即表示C6已经被用户选择不授权给第二应用程序、C6不是第一摄像头)。如图5A、图5B所示摄像头C1的第三访问权限包括:预览权限、拍照权限、录像权限和实时拇指图权限。摄像头C6的第三访问权限包括:曝光、对焦、白平衡控制权限,缩放、闪光灯、画面效果控制权限,预览权限,拍照权限,录像权限和实时拇指图权限。在一些实施例中,第一选择控件K1还可以指示对应的第三访问权限当前是否被用户授权指定给第二应用程序(如图5A、5B中展示的K1的状态即表示对应的第三访问权限被用户选择授权给第二应用程序,如图5C中摄像头C6的各第三访问权限对应的K1的状态即表示C6的各第三访问权限已经被用户选择不授权给第二应用程序)。第二应用程序可以控制第二选择控件K2响应于检测到的用户针对K2的点击、滑动等触发操作,确定出用户从第三摄像头中选择确定的第一摄像头。第二应用程序可以控制第一选择控件K1响应于检测到的用户针对K1的点击、滑动等触发操作,确定出用户从第三访问权限中选择确定的第一访问权限。举例来说,第二应用程序根据接收到的第一信息可以为用户展示图5B所示的第一提示Q12。而后根据用户对摄像头C6的第二选择控件K2的触发操作确定用户选择不将C6授权给第二应用程序调用;以及根据用户对C1的“录像权限对应的K1”、“实时拇指图权限对应的K1”的触发操作确定用户不将C6的“录像权限、实时拇指图权限”授权给第二应用程序。而后第二应用程序为用户展示如图5C所示的检测到用户操作确定出用户的选择后的第一提示Q13,从Q13中用户可以看出第三摄像头为摄像头C1、C1的第三访问权限为预览权限和拍照权限。
在一种可能的实现方式中,如图4所示,在第一提示可以提醒用户指定第一摄像头和/或指定第一摄像头的第一访问权限时,第二应用程序还可以执行步骤S33。其中,步骤S33为可选步骤。
在步骤S33中,第二应用程序可以根据检测到的用户针对第一提示的权限调整操作(如上文用户针对K1和/或K2的触发操作),确定第三摄像头中用户指定第二应用程序可以调用的第一摄像头和第一摄像头的第一访问权限。若步骤S33中确定出第一摄像头和第一摄像头的第一访问权限则第二应用程序还可以执行步骤S34,在步骤S34中第二应用程序向车机发送用户指定权限报告,用户指定权限报告可以用于指示用户从第三摄像头中选择的第一摄像头以及第一摄像头的第一访问权限。例如,用户指定权限报告中可以包括第一摄像头的摄像头标识、第一摄像头的第一访问权限;或者用户指定权限报告可以包括中可以包括第三摄像头中被用户选择不授权给第二应用程序调用的第三摄像头的摄像头标识、第三摄像头的第三访问权限中用户选择不授权给第二应用程序控制的访问权限;等等。
在一些实施例中,若无步骤S33、步骤S33中并未检测到权限调整操作、或者步骤S33中基于权限调整操作发现调整后权限无变化(如,全部第三摄像头均被用户选定为第一摄像头、每个第三摄像头的第三访问权限即为对应的第一访问权限),则第二应用程序在执行完步骤S32之后,可以直接执行步骤S34’或不向车机返回任何信息。在步骤S34’中第二应用程序向车机返回接收成功报告,该接收成功报告用于指示第二应用程序已经成功收到第一信息。
在步骤S24中,如图3、图4所示,更新第二应用程序的访问权限记录。访问权限记录中记录了第二应用程序可以且经用户授权可以调用的至少一个第一摄像头以及每个第一摄像头对应的第一访问权限。
在一些实施例中,车机可以在接收到“接收成功报告”或者未接收到第二应用程序的任何反馈的情况下,直接将车机确定的各第三摄像头以及对应的第三访问权限,作为第一摄像头以及对应的第一访问权限进行第二应用程序的访问权限记录的更新。例如,若车机确定摄像头C1和摄像头C6为第三摄像头,且C1和C6的第三访问权限均为完全访问权限,则若接收到“接收成功报告”或者未接收到第二应用程序的任何反馈,车机可以直接将摄像头C1、C6作为第一摄像头、C1和C6的第一访问权限均确定为完全访问权限,并将这些记录到第二应用程序的访问权限记录中,完成第二应用程序的访问权限记录的更新。
在一些实施例中,车机可以在接收到用户指定权限报告的情况下,根据用户指定权限报告确定出用户指定的第一摄像头以及每个第一摄像头的第一访问权限,并将其更新记录到第二应用程序的访问权限记录中,完成第二应用程序的访问权限记录的更新。
在一种可能的实现方式中,车机本地可以设置指定的存储空间用于进行各个应用程序的访问权限记录的存储。每一个访问权限记录对应地记录一个应用程序车机允许且用户授权可以调用的第一摄像头以及第一摄像头对应的第一访问权限。在一些实施例中,用户还可以通过车机进行车机内安装的每个应用程序的摄像头访问权限的设置。例如,用户可以通过车机的“设置”功能进入到能够对每个应用程序的权限进行设置的功能界面,在该界面中可以展示每个应用程序当前所拥有的各类权限。车机可以基于用户针对该界面中各类权限的操作,进行权限更新。其中,“各类权限”中可以包括摄像头权限,界面中可以展示车机允许对应的应用程序访问的第三摄像头以及对应的各第三访问权限,以及第三摄像头中被用户选择授权的第一摄像头以及第一摄像头的第一访问权限。或者,界面中还可以展示车机不允许对应的应用程序访问的其他摄像头。权限更新可以包括:若检测到针对第一摄像头以及第一摄像头的第一访问权限的调整操作,则确定调整后应用程序对应的第一摄像头以及第一摄像头的第一访问权限,并进行对应的访问权限记录更新。
举例来说,图6示出根据本申请一实施例中车机通过界面展示摄像头权限的示意图。如图6所示,界面Q2中通过对应的控件和标识来进行第三摄像头、第一摄像头以及车机不允许应用程序m访问的其他摄像头的展示,具体地:控件K31、K32、K41和K42均为用户可操作控件,B1为禁止访问标识。K31、K32可以分别指示摄像头对应的访问权限中的第一访问权限和第三访问权限,K31表示对应的访问权限为第一访问权限、K32表示对应的访问权限为第三访问权限但当前已经被用户禁止应用程序m使用,K41表示对应的摄像头为第三摄像头且该第三摄像头已经被用户选择为第一摄像头、K42表示对应的摄像头为第三摄像头但当前已经被用户禁止应用程序m使用。B1用于指示对应的摄像头为车机不允许应用程序m访问的摄像头。也即,如图6中应用程序m的第一摄像头为摄像头C1、C1的第一访问权限为预览权限和拍照权限;应用程序m的第三摄像头为C1和C6,C1的第三访问权限为预览权限、拍照权限、录像权限和实时拇指图权限,C6的第三访问权限图中未示出(若检测到C6对应的控件K42被触发切换为K41,则可以参照C1展示C6的第三访问权限);车机不允许应用程序m访问的摄像头为摄像头C5。若车机检测到针对C1的录像权限对应的控件K32的触发操作,则车机可以将K32切换为K31,以及可以确定应用程序m的第一摄像头C1的第一访问权限被用户调整为预览权限、拍照权限、录像权限。
上述“权限授权”中步骤S21-步骤S24是为了保证最终确定的第二应用程序的第一摄像头和第一摄像头的第一访问权限是在车机允许以及用户授权的双重保证下得到的。而若车机授予应用程序的权限无需用户选择指定,则“权限授权”还存在另外一种实现方式:车机在检测到第二应用程序被安装、接收到访问请求或者接收到调用请求等情况下,直接根据第二应用程序的应用类型、应用类型与摄像头之间的映射关系,确定出允许第二应用程序访问的至少一个第三摄像头;以及根据第三摄像头的被调用记录和调用策略,确定出第二应用程序对每个第三摄像头的第三访问权限(参见上文步骤S22的实现过程)。而后,将第二应用程序的至少一个第三摄像头直接作为第一摄像头、以及将每个第三摄像头的第三访问权限作为对应的第第一访问权限在访问权限记录中更新记录。这样,可以简化“权限授权”的实现过程。
“摄像头调用”
在步骤S25中,如图3所示,接收用于申请调用摄像头的调用请求,并确定出调用请求对应的第一应用程序。其中,第一应用程序为上述第二应用程序中的任意一个。
在一些实施例中,第一应用程序可以在确定满足摄像头调用条件的情况下,向车机发送调用请求。摄像头调用条件可以是第一应用程序因自身运行需要而自发启动的或者可以是第一应用程序响应于用户启动摄像头的操作等等。例如,若第一应用程序为用于进行照片拍摄、照片处理的应用程序w1,若该应用程序w1检测到用户发出了需要进行拍照的操作,则可以确定需要调用摄像头,可以生成调用请求并发送至车机。若第一应用程序为登录需要进行人脸识别的应用程序w2,若该应用程序w2检测到用户发出了启动应用程序w2的操作,则可以确定需要调用摄像头,可以生成调用请求并发送至车机。
在一种可能的实现方式中,调用请求可以指示请求调用摄像头的第一应用程序。调用请求中可以包括用于指示第一应用程序是车机中安装的多个应用程序的哪一个的程序标识,以指示第一应用程序。车机在接收到调用请求之后,可以根据调用请求中的程序标识确定发出调用请求的第一应用程序。在一种可能的实现方式中,若调用请求中不存在指示第一应用程序的程序标识等信息,汽车的车机还可以直接将发出调用请求的应用程序确定为第一应用程序。
在步骤S26中,如图3所示,在执行完步骤S25之后,根据第一应用程序的访问权限记录,确定出第一应用程序对应的第一摄像头和第一应用程序访问第一摄像头的第一访问权限。
在一些实施例中,步骤S26中车机确定出第一应用程序之后,可以从本地对应的存储空间中获取到第一应用程序的权限访问记录,进而根据权限访问记录确定出第一应用程序对应的第一摄像头和第一摄像头的第一访问权限。
在步骤S27中,如图3所示,在执行步骤S26之后,根据第一应用程序的第一摄像头当前的调用状态、对应的调用策略和对应的第一访问权限,从第一摄像头中确定出第一应用程序当前能够调用的第二摄像头以及第二摄像头的第二访问权限。
在一种可能的实现方式中,步骤S27中车机确定出第一应用程序对应的至少一个第一摄像头和每个第一摄像头对应的第一访问权限之后,可以根据每个第一摄像头的摄像头类型确定出第一摄像头对应的调用策略。而后可以根据每个第一摄像头对应的调用策略和第一摄像头当前的调用状态,从至少一个第一摄像头中确定出第二摄像头,以及从第一访问权限中确定出第二访问权限。第一摄像头当前的调用状态为空闲状态或已用状态,空闲状态可以指示对应的摄像头当前并未被其他应用程序调用,已用状态可以指示对应的摄像头当前正在处于被其他应用程序调用。
在一些实施例中,若第一摄像头为专属类摄像头且第一摄像头的调用状态为已用状态,则可以确定该第一摄像头不能授权第一应用程序进行调用,该第一摄像头不能作为第二摄像头。若第一摄像头为专属类摄像头且第一摄像头的调用状态为空闲状态,则可以确定该第一摄像头为第二摄像头、以及将对应的第一访问权限确定为对应的第二访问权限。
在一些实施例中,若第一摄像头为共享类摄像头且第一摄像头的调用状态为已用状态,则可以确定该第一摄像头为第二摄像头,以及将对应的第一访问权限中的数据类权限作为第二访问权限(例如,若第一访问权限为完全访问权限,则第二访问权限即为数据类权限。若第一访问权限为控制类权限中的全部权限、预览权限(数据类权限)、拍照权限(数据类权限),则第二访问权限即为第一访问权限中的数据类权限“预览权限、拍照权限”)。若第一摄像头为共享类摄像头且第一摄像头的调用状态为空闲状态,则可以确定该第一摄像头为第二摄像头,以及将对应的第一访问权限作为对应的第二访问权限。
在一些实施例中,若第一摄像头为通用类摄像头,则无论第一摄像头是否已经被其他应用程序调用,均可以确定该第一摄像头为第二摄像头,以及将对应的第一访问权限作为对应的第二访问权限。
在步骤S28中,如图3所示,步骤S27执行完后,将第二摄像头的第二访问权限授予第一应用程序。
在一种可能的实现方式中,为实现将第二摄像头的第二访问权限授予第一应用程序,步骤S28中车机执行的操作可以包括:向第一应用程序发送授权信息,授权信息可以指示授予第一应用程序的第二摄像头以及指示第一应用程序得到了第二摄像头的哪些第二访问权限。在一些实施例中,在第二摄像头为多个的情况下,第一应用程序可以基于接收到的授权信息发出摄像头选择提示,该摄像头选择提示用于提醒用户从多个第二摄像头中选择出第一应用程序当前需要立即调用的目标摄像头。在一些实施例中,在第二摄像头为多个的情况下,第一应用程序可以通过以下方式中的任意一种确定出目标摄像头:根据检测到的用户响应于摄像头选择提示的操作从多个第二摄像头中选择出目标摄像头。也可以根据第一应用程序的摄像头调用历史将多个第二摄像头中用户偏好的摄像头确定为目标摄像头。还可以根据第一应用程序的摄像头调用历史将多个第二摄像头中上一次被第一应用程序调用的摄像头确定为目标摄像头。等等。在一些实施例中,第一应用程序确定出目标摄像头之后,可以向车机发送摄像头选定报告,以使得车机可以基于摄像头选定报告确定多个第二摄像头中被选定的目标摄像头,也使得第一应用程序可以获取目标摄像头实时采集的数据。
在一种可能的实现方式中,在第一应用程序获取到目标摄像头实时采集的数据之后,若第一应用程序为“用于为用户进行照片和/或视频拍摄的应用程序”、或“对应的第二访问权限包括预览权限”等需要为用户展示目标摄像头采集的画面的情况下,第一应用程序可以直接控制在车机的显示屏中为用户展示根据目标摄像头实时采集的数据生成的目标摄像头实时采集的画面。在一些实施例中,第一应用程序在显示屏中展示目标摄像头的实时画面的同时,还可以展示摄像头切换控件和/或对应于目标摄像的第二访问权限的至少一个操作控件(例如,可以为每一个第二访问权限分别设置一个对应的操作控件)。
在一种可能的实现方式中,在第一应用程序获取到目标摄像头或第二摄像头(在第二摄像头为一个的情况下,则无需选定目标摄像头,该第二摄像头即为目标摄像头)实时采集的数据之后,若第一应用程序为无需为用户展示目标摄像头采集的画面的情况下,可以直接控制在车机的显示屏中为用户展示摄像头切换控件和/或对应于目标摄像头的第二访问权限的至少一个操作控件,以便于用户可以进行摄像头切换和/或控制目标摄像头。
在一些实施例中,第一应用程序在检测到用户发出的针对任意一个操作控件的点击、滑动等触发操作的情况下,可以基于被触发的操作控件所对应的第二访问权限生成对应的控制指令(例如,若被触发的操作控件对应的第二访问权限为“拍照权限”,则第一应用程序即可以生成用于进行拍照的控制指令。若被触发的操作控件对应的第二访问权限为“缩放权限”,则第一应用程序即可以生成用于对目标摄像头进行缩小或放大的控制指令)。在一些实施例中,第一应用程序在检测到用户针对摄像头切换控件的点击、滑动等触发操作的情况下,可以确定摄像头切换控件被触发,则第一应用程序可以按照摄像头切换顺序(对于多个第二摄像头所对应的摄像头切换顺序可以是任意的,也可以是按照设定的规则排布的,本申请对此不作限制)将目标摄像头切换为多个第二摄像头中的下一个摄像头。举例来说,假定第一应用程序可调用的第二摄像头为摄像头C3、C5、C6且摄像头切换顺序从前到后依次为C3、C5、C6,第一应用程序当前的目标摄像头为摄像头C3,若第一应用程序检测到摄像头切换控件被触发则将目标摄像头切换为摄像头C5。
在一些实施例中,第一应用程序可以在确定控制指令中对应的第二访问权限为控制类权限的情况下,直接将控制指令发送至摄像头或者将控制指令发送至车机(以使得车机将该控制指令转发至摄像头),这样,目标摄像头就可以及时响应控制指令。
在一种可能的实现方式中,为实现将第二摄像头的第二访问权限授予第一应用程序,步骤S28中车机执行的操作还可以包括:在第二摄像头为一个的情况下,车机可以直接将该第二摄像头确定为目标摄像头,并按照第一应用程序对目标摄像头的第二访问权限将目标摄像头实时采集的数据中的部分或全部发送至第一应用程序。或者,车机还可以向目标摄像头发送调用指令,调用指令用于指示调用目标摄像头的第一应用程序、第一应用程序调用目标摄像头所拥有的第二访问权限。这样,目标摄像头接收到调用指令后,目标摄像头内部的控制器可以按照第一应用程序对目标摄像头的第二访问权限将目标摄像头实时采集的数据中的部分或全部发送至第一应用程序。
在一种可能的实现方式中,为实现将第二摄像头的第二访问权限授予第一应用程序,步骤S28中车机执行的操作还可以包括:在第二摄像头为多个的情况下,车机可以直接根据摄像头选定报告确定出目标摄像头。或者,在第二摄像头为多个的情况下,车机若未接收到摄像头选定报告,可以直接从多个第二摄像头中确定出目标摄像头,例如,车机可以根据第一应用程序的摄像头调用历史将多个第二摄像头中用户偏好的摄像头确定为目标摄像头。车机还可以根据第一应用程序的摄像头调用历史将多个第二摄像头中上一次被第一应用程序调用的摄像头确定为目标摄像头。等等。
在一种可能的实现方式中,在步骤S28之后,若目标摄像头为通用类摄像头、目标摄像头当前被多个应用程序(多个应用程序中包括第一应用程序)调用,且车机(或目标摄像头)在同一时刻接收到来自不同应用程序的控制指令的情况下,可以按照响应规则从多个控制指令中选择出优先响应控制指令,并控制目标摄像头执行优先响应控制指令。
图7示出根据本申请一实施例的控制装置的架构框图。如图7所示,车机等控制装置的架构包括:应用程序、相机服务模块和硬件物理模块。车机在执行上述步骤S11-步骤S16、步骤S231-步骤S28的过程中应用程序、相机服务模块和硬件物理模块用于执行个步骤中的部分或全部操作。
应用程序:可以用于实现与用户之间的交互,执行上述步骤S31-步骤S34。
相机服务模块:用于设置各类型的摄像头的调用策略(执行上述步骤S16),设置摄像头的访问权限(控制类权限和/或数据类权限)。还可以用于执行“权限授权”中的各步骤(上述步骤S21-步骤S24)和“摄像头调用”中的各步骤(上述步骤S25-步骤S28)。
硬件物理模块:用于设置每个摄像头的摄像头类型,定义专属类摄像头和共享类摄像头对应的摄像头应用场景,设置应用类型与摄像头之间的映射关系。硬件物理模块可以执行上述步骤S11-步骤S15。
在一种可能的实现方式中,本申请摄像头控制方法中所涉及的应用程序,可以是直接安装在车机中的应用程序,还可以是安装在能够远程控制车机的终端设备中的应用程序。终端设备可以包括手机、可折叠电子设备、平板电脑、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备、或智慧城市设备中的至少一种。本申请实施例对终端设备的具体类型不作特殊限制。
本申请实施例还提供了一种摄像头控制装置,包括:处理器以及用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述方法。
本申请实施例还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
本申请实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在终端设备的处理器中运行时,所述终端设备中的处理器执行上述方法。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(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)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其它单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
附图中的流程图和框图显示了根据本申请的多个实施例的装置、系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。
也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行相应的功能或动作的硬件(例如电路或ASIC(Application SpecificIntegrated Circuit,专用集成电路))来实现,或者可以用硬件和软件的组合,如固件等来实现。
尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其它变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其它单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (16)
1.一种摄像头控制方法,其特征在于,所述方法包括:
接收用于申请调用摄像头的调用请求,并确定出所述调用请求对应的第一应用程序;
获取所述第一应用程序的访问权限记录,所述访问权限记录用于记录对应的应用程序被允许调用的至少一个第一摄像头和对应的应用程序访问对应的第一摄像头的第一访问权限,所述至少一个第一摄像头为已安装的多个摄像头中的部分或全部;
根据每个所述第一摄像头当前的调用状态、对应的调用策略和对应的第一访问权限,从所述至少一个第一摄像头中确定出所述第一应用程序当前能够调用的第二摄像头以及确定所述第二摄像头的第二访问权限;
将所述第二摄像头的第二访问权限授予所述第一应用程序。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收用于申请摄像头访问权限的访问请求,并确定出所述访问请求对应的第二应用程序;
根据所述第二应用程序的应用类型、每个所述摄像头与应用类型之间的映射关系,从已安装的多个摄像头中确定出允许所述第二应用程序访问的至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,所述第三访问权限包括控制类权限和/或数据类权限;
根据所述至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,更新所述第二应用程序的访问权限记录,所述第二应用程序包括所述第一应用程序。
3.根据权利要求2所述的方法,其特征在于,根据所述至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,更新所述第二应用程序的访问权限记录,包括:
将所述第三摄像头以及对应的第三访问权限,分别确定为作为第一摄像头以及对应的第一访问权限,记录到所述第二应用程序的访问权限记录中。
4.根据权利要求2所述的方法,其特征在于,根据所述至少一个第三摄像头以及每个所述第三摄像头对应的第三访问权限,更新所述第二应用程序的访问权限记录,包括:
将每个所述第三摄像头的第一信息发送至所述第二应用程序,以使所述第二应用程序基于所述第一信息展示第一提示,所述第一提示用于提醒用户所述第二应用程序被允许访问的第三摄像头、提醒用户从所述第三摄像头中选择出用户指定所述第二应用程序能够调用的第一摄像头、和/或提醒用户确定每个第一摄像头的第一访问权限;
接收所述第二应用程序发送的用户指定权限报告,所述用户指定权限报告用于指示所述第二应用程序根据检测到的权限调整操作确定的所述第三摄像头中被用户指定的第一摄像头和用户指定的所述第一摄像头的第一访问权限;
将所述用户指定权限报告中指示的第一摄像头和对应的第一访问权限,记录到所述第二应用程序的访问权限记录中。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述方法还包括:
根据每个所述摄像头的摄像头相关参数,对每个所述摄像头的摄像头类型进行设置以及设置专属类摄像头和共享类摄像头对应的摄像头应用场景,每个所述摄像头的摄像头类型包括专属类、共享类和通用类中的任意一种;
根据应用类型对应的程序应用场景与所述摄像头应用场景的匹配结果,建立应用类型与摄像头之间的映射关系;
根据不同摄像头类型的摄像头的使用特点,为每种摄像头类型设置对应的调用策略。
6.根据权利要求5所述的方法,其特征在于,根据应用类型对应的程序应用场景与所述摄像头应用场景的匹配结果,建立应用类型与摄像头之间的映射关系,包括:
若所述应用类型对应的程序应用场景与共享类摄像头对应的摄像头应用场景匹配,则建立所述共享类摄像头与所述应用程序之间的映射关系;和/或
若所述应用类型对应的程序应用场景与专属类摄像头对应的摄像头应用场景匹配,则建立所述专属类摄像头与所述应用程序之间的映射关系;和/或
若所述应用类型对应的程序应用场景与任意摄像头应用场景均不匹配,则建立所述通用类摄像头与所述应用程序之间的映射关系。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
建立所有所述应用类型与所述通用类摄像头之间的映射关系。
8.根据权利要求1所述的方法,其特征在于,根据每个所述第一摄像头当前的调用状态、对应的调用策略和对应的第一访问权限,从所述至少一个第一摄像头中确定出所述第一应用程序当前能够调用的第二摄像头以及确定所述第二摄像头的第二访问权限,包括以下操作中的至少一种:
若所述第一摄像头中包括专属类摄像头,则将所述专属类摄像头中当前的调用状态为空闲状态的专属类摄像头确定为第二摄像头,以及将对应的第一访问权限确定为对应的第二访问权限;
若所述第一摄像头中包括共享类摄像头,则将所述共享类摄像头中当前的调用状态为空闲状态的共享类摄像头确定为第二摄像头,以及将对应的第一访问权限确定为对应的第二访问权限;
若所述第一摄像头中包括共享类摄像头,则将所述共享类摄像头中当前的调用状态为已用状态的共享类摄像头确定为第二摄像头,以及将对应的第一访问权限中的数据类权限确定为对应的第二访问权限;
若所述第一摄像头中包括通用类摄像头,则将所述通用类摄像头确定为第二摄像头,以及将对应的第一访问权限确定为对应的第二访问权限。
9.根据权利要求1所述的方法,其特征在于,将所述第二摄像头的第二访问权限授予所述第一应用程序,包括:
若所述第二摄像头的数量为多个,则确定出多个第二摄像头中的目标摄像头;
将所述目标摄像头的第二访问权限授予所述第一应用程序。
10.根据权利要求9所述的方法,其特征在于,若所述第二摄像头的数量为多个,则确定出多个第二摄像头中的目标摄像头,包括以下操作中的任意一种:
接收所述第一应用程序发送的摄像头选定报告,将多个第二摄像头中所述摄像头选定报告中指示的摄像头确定为目标摄像头,所述摄像头选定报告用于指示多个第二摄像头中被选定的目标摄像头;
根据所述第一应用程序的摄像头调用历史将多个第二摄像头中用户偏好的摄像头确定为目标摄像头;
根据所述第一应用程序的摄像头调用历史将多个第二摄像头中上一次被所述第一应用程序调用的摄像头确定为目标摄像头。
11.根据权利要求10所述的方法,其特征在于,接收所述第一应用程序发送的摄像头选定报告,将多个第二摄像头中所述摄像头选定报告中指示的摄像头确定为目标摄像头,包括:
若所述第二摄像头为多个,则向所述第一应用程序发送授权信息,所述授权信息用于指示所述多个第二摄像头以及指示每个所述第二摄像头对应的第二访问权限,以使所述第一应用程序基于所述授权信息发出摄像头选择提示,所述摄像头选择提示用于提醒用户从多个第二摄像头中选择出目标摄像头;
接收所述第一应用程序发送的摄像头选定报告,所述摄像头选定报告用于指示所述多个第二摄像头中被选中的目标摄像头,所述目标摄像头是所述第一应用程序根据检测到的用户响应于所述摄像头选择提示的操作确定的;
将多个第二摄像头中所述摄像头选定报告中指示的摄像头确定为目标摄像头。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若被所述第一应用程序调用的第二摄像头为通用类摄像头且同一时刻接收到控制所述第二摄像头的多个控制指令,则从多个控制指令中确定出优先响应控制指令;
控制所述第二摄像头执行所述优先响应控制指令。
13.根据权利要求12所述的方法,其特征在于,从多个控制指令中确定出优先响应控制指令,包括:
根据每个控制指令对应的应用程序的优先级和/或每个控制指令对应的应用程序的历史使用记录,从所述多个控制指令中确定出优先响应控制指令;
其中,应用程序的优先级是根据应用程序的应用类型确定的。
14.一种数据的传输装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令时实现权利要求1-13任意一项所述的方法。
15.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1-13中任意一项所述的方法。
16.一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行权利要求1-13中任意一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111355496.0A CN116156311A (zh) | 2021-11-16 | 2021-11-16 | 摄像头控制方法及装置 |
PCT/CN2022/127049 WO2023088040A1 (zh) | 2021-11-16 | 2022-10-24 | 摄像头控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111355496.0A CN116156311A (zh) | 2021-11-16 | 2021-11-16 | 摄像头控制方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116156311A true CN116156311A (zh) | 2023-05-23 |
Family
ID=86351108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111355496.0A Pending CN116156311A (zh) | 2021-11-16 | 2021-11-16 | 摄像头控制方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116156311A (zh) |
WO (1) | WO2023088040A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116866545A (zh) * | 2023-06-30 | 2023-10-10 | 荣耀终端有限公司 | 摄像头模组的映射关系调整方法、设备及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11374936B2 (en) * | 2017-08-11 | 2022-06-28 | Motorola Solutions, Inc | System, device, and method for transferring security access permissions between in-camera users |
CN109729270A (zh) * | 2018-12-30 | 2019-05-07 | 联想(北京)有限公司 | 一种控制方法、装置及电子设备 |
CN112399232A (zh) * | 2019-08-18 | 2021-02-23 | 海信视像科技股份有限公司 | 一种显示设备、摄像头优先级使用的控制方法及装置 |
CN113873140A (zh) * | 2020-06-30 | 2021-12-31 | 华为技术有限公司 | 一种摄像头的调用方法、电子设备和摄像头 |
CN112637508B (zh) * | 2020-12-31 | 2022-11-11 | 维沃移动通信有限公司 | 摄像头的控制方法、装置和电子设备 |
-
2021
- 2021-11-16 CN CN202111355496.0A patent/CN116156311A/zh active Pending
-
2022
- 2022-10-24 WO PCT/CN2022/127049 patent/WO2023088040A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023088040A1 (zh) | 2023-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20120148117A1 (en) | System and method for facial identification | |
US10764536B2 (en) | System and method for a dynamic human machine interface for video conferencing in a vehicle | |
US20210150232A1 (en) | Method and device for detecting a state of signal indicator light, and storage medium | |
CN108351951A (zh) | 智能隐私系统、设备及其方法 | |
KR101596896B1 (ko) | 이종 카메라로부터의 영상을 이용하여 불법 주정차 단속을 수행하는 단속 시스템 및 이를 포함하는 관제 시스템 | |
DE112008002030T5 (de) | Informationsbereitstellende Vorrichtung in Fahrzeug | |
US20220105951A1 (en) | Remotely supervised passenger intervention of an autonomous vehicle | |
CN109218598B (zh) | 一种相机切换方法、装置及无人机 | |
KR102355855B1 (ko) | 각 Vid-Fence 별 이벤트 룰 및 서비스 설정을 통한 객체 추적 및 서비스 실행 시스템 | |
WO2023088040A1 (zh) | 摄像头控制方法及装置 | |
CN115640059B (zh) | 自动驾驶操作系统、电子设备及存储介质 | |
CN114237454A (zh) | 一种项目显示方法、装置、电子设备、存储介质及产品 | |
US20230129668A1 (en) | Server, information processing system and information processing method | |
CN110933314B (zh) | 追焦拍摄方法及相关产品 | |
KR20190113393A (ko) | 차량 인식 프로그램 내장형 촬상 장치, 상기 장치의 동작 방법 및 상기 방법을 실행하기 위하여 매체에 저장된 컴퓨터 프로그램 | |
CN112449111A (zh) | 一种监控设备处理方法和装置 | |
CN111385410B (zh) | 终端设备的控制方法、装置及存储介质 | |
CN115134533B (zh) | 自动调用车载图像采集装置的拍摄方法及设备 | |
US20190098127A1 (en) | Driver device locking | |
WO2022161080A1 (zh) | 一种摄像方法及装置 | |
KR20230174941A (ko) | 도난방지기능을 갖는 대시캠 및 대시캠에 대한 도난방지시스템 | |
CN110837258A (zh) | 自动驾驶控制方法及装置、系统、电子设备和存储介质 | |
EP4246460A2 (en) | Vehicle identification system | |
US20230129564A1 (en) | Server, information processing system and information processing method | |
KR102563758B1 (ko) | 3차원 모델을 활용한 시멘틱 세그멘테이션 학습 데이터 생성 장치 |
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 |