掌桥专利:专业的专利平台
掌桥专利
首页

录像方法和相关装置

文献发布时间:2024-04-18 19:59:31


录像方法和相关装置

本申请是分案申请,原申请的申请号是202210946060.7,原申请日是2022年08月08日,原申请的全部内容通过引用结合在本申请中。

技术领域

本申请涉及终端技术领域,尤其涉及录像方法和相关装置。

背景技术

为提高用户体验,手机、平板电脑等终端设备通常配置多个摄像头。终端设备可以通过配置的多个摄像头,为用户提供多种拍摄模式,例如,前摄模式、后摄模式、前后双摄模式、等。用户可以根据拍摄场景,选择相应的拍摄模式进行拍摄。

在终端设备接收到用户选取拍摄模式的操作时,终端设备进入相应的预览界面,显示拍摄的图像。当终端设备接收到用户录制视频的操作时,终端设备进入相应的录制界面,显示拍摄的图像以及保存拍摄的图像。

但是,终端设备录制视频时,功耗大。

发明内容

本申请实施例提供一种录像方法和相关装置,应用于终端技术领域。通过将预览缓存队列、录像缓存队列均与同一个内存队列相对应;在录制过程中,获取内存队列中的原始图像进行处理,将处理后的图像保存至其对应的预览缓存队列和其对应的录像缓存队列中。这样,可以减少终端设备缓存的原始图像数量,减少内存占用,进而降低功耗。

第一方面,本申请实施例提出一种录像方法。该方法包括:终端设备显示第一界面,第一界面包括第一窗口和录制控件,第一窗口显示有摄像头实时采集的第一画面;终端设备在接收到针对录制控件的第一操作时,生成第一录制请求;终端设备基于第一录制请求获取摄像头采集的原始图像并存储至第一内存队列中;终端设备对第一内存队列的原始图像进行处理,得到第一图像;终端设备将第一图像存储至第一预览缓存队列和第一录制缓存队列,第一预览缓存队列和第一录制缓存队列均与第一内存队列相对应;终端设备显示第二界面,第二界面包括第一窗口,第一窗口显示有第一画面,第一画面是基于第一预览缓存队列中的第一图像生成的;终端设备基于第一录制缓存队列中的第一图像进行编码以保存第一视频。

本申请实施例中,第一界面可以预览界面,用于显示图像进行预览。第一界面可以对应于图4所示的界面。第一窗口可以对应于下文中的大窗。第二界面可以为录制界面,在显示图像进行预览的同时,还录制有视频。第一录制请求可以对应于下文中的第三请求或第四请求。

第一操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第一操作的类型、方式等均不做限定。

可以理解的是,在录制过程中,获取内存队列中的原始图像进行处理,将处理后的图像保存至其对应的预览缓存队列和其对应的录像缓存队列中。这样,可以减少终端设备缓存的原始图像数量,减少内存占用,进而降低功耗。

可选的,终端设备显示第一界面之前,方法还包括:终端设备显示第三界面,第三界面包括第一控件,第一控件与第一录像模式相对应;终端设备接收到针对第一控件的第二操作;终端设备基于第一录像模式配置第一预览缓存队列、第一录制缓存队列和第一内存队列。

第一控件可以为录像控件,用于指示常规录像模式;也可以用于指示其他录像模式的控件。第二操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第二操作的类型、方式等均不做限定。第三界面可以对应于下文图4所示的相机预览界面。

这样,可以适用于一次录像生成一路视频的录像的模式,例如,常规录像模式、专业录像模式等。

可选的,终端设备显示第一界面之前,方法还包括:终端设备显示第四界面,第四界面包括第二控件,第二控件与第二录像模式相对应;终端设备接收到针对第二控件的第三操作;终端设备基于第二录像模式配置第一预览缓存队列、第二预览缓存队列、第一录制缓存队列、第二录制缓存队列、第一内存队列和第二内存队列;其中,第二预览缓存队列和第二录制缓存队列均与第二内存队列相对应。

第二控件可以为主角模式控件,也可以为其他录像模式的控件。第三操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第三操作的类型、方式等均不做限定。第四界面可以对应于下文图4所示的主角模式对应的预览界面。

这样,可以适用于一次录像生成两路视频的录像的模式,例如,主角模式等,适用范围广。

可选的,第二界面显示有一个或多个追踪标识;终端设备接收到针对第一追踪标识的第四操作,第一追踪标识为一个或多个追踪标识中的一个;响应于第四操作,终端设备生成第二录制请求;终端设备基于第二录制请求将获取摄像头采集的原始图像存储至第一内存队列和第二内存队列中;终端设备对第一内存队列的原始图像进行算法处理,得到第一图像,以及对第二内存队列的原始图像进行算法处理,得到第二图像;终端设备将第一图像存储至第一预览缓存队列和第一录制缓存队列,并将第二图像存储至第二预览缓存队列和第二录制缓存队列;终端设备显示第五界面,第五界面包括第一窗口和第二窗口,第一窗口显示有第一画面,第一画面是基于第一预览缓存队列中的第一图像生成的,第二窗口显示有第二画面,第二画面是基于第二预览缓存队列中的第二图像生成的;其中,第二画面为第一窗口中与第一对象有关的一部分画面,第一对象为第一追踪标识对应的对象;终端设备基于第一录制缓存队列中的第一图像进行编码以保存第一视频,以及基于第二录制缓存队列中的第二图像进行编码以保存第二视频。

追踪标识可以为下文中的追踪框,也可以为其他标识。第二窗口可以对应于下文中的小窗。第四操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第四操作的类型、方式等均不做限定。第二录制请求可以对应于下文中的第四请求。第五界面可以对应于下文图5所示的界面。

终端设备可以在录制时设置追踪目标进行追踪。当终端设备在录制时选取追踪目标,终端设备获取两个内存队列中的原始图像进行处理,将处理后的图像保存至其对应的预览缓存队列和其对应的录像缓存队列中。这样,可以减少终端设备缓存的原始图像数量,减少内存占用,进而降低功耗。

可选的,第一界面显示有一个或多个追踪标识;终端设备接收到针对录制控件的第一操作之前,方法还包括:终端设备接收到针对第二追踪标识的第五操作,第二追踪标识为一个或多个追踪标识中的一个;响应于第五操作,终端设备显示第六界面,第六界面包括第一窗口、第二窗口和录制控件,第一窗口显示有第一画面,第二窗口显示第二画面,第二画面为第一窗口中与第一对象有关的一部分画面,第一对象为第一追踪标识对应的对象;终端设备基于第录制请求将获取摄像头采集的原始图像存储至第二内存队列中;终端设备对第二内存队列的原始图像进行处理,得到第二图像;终端设备将第二图像存储至第二预览缓存队列和第二录制缓存队列;第二界面还包括第二窗口,第二窗口显示有第二画面,第二画面是基于第二预览缓存队列中的第二图像生成的;终端设备基于第二录制缓存队列中的第二图像进行编码以保存第二视频。

追踪标识可以为下文中的追踪框,也可以为其他标识。第二窗口可以对应于下文中的小窗。第五操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第五操作的类型、方式等均不做限定。第五界面可以对应于下文图5所示的界面。第一录制请求可以对应于下文中的第四请求。

终端设备可以在设置追踪目标后开始录制。终端设备可以显示小窗额外进行一路的录制。

可选的,在第一时刻,终端设备检测到第一窗口的第一位置显示有第一对象,第二窗口显示第一窗口中第一位置处、与第一对象有关的一部分画面;在第二时刻,终端设备检测到第一窗口的第二位置显示有第一对象,第二窗口显示第一窗口中第二位置处、与第一对象有关的一部分画面。

这样,小窗基于追踪目标显示。本申请实施例中,第二窗口显示的画面(追踪画面)随追踪目标的位置变化而变化。具体的,第二窗口显示的画面中第一对象(追踪对象)的位置变化而变化,可以参照图1A或图1B。例如,第一时刻的界面可以为图1A中的a所示的界面,第二时刻的界面可以为图1A中的b所示的界面;或者,第一时刻的界面可以为图1B中的a所示的界面,第二时刻的界面可以为图1B中的b所示的界面。

一些实施例中,焦点随追踪目标的位置变化而变化。具体的,焦点随追踪目标的位置变化而变化,可以参照图1A或图1B。

可选的,第二画面是基于第一画面裁剪得到的。

可选的,终端设备在接收到第一操作之前,方法还包括:终端设备生成第一预览请求;终端设备基于第一预览请求获取摄像头采集的原始图像并存储至第一内存队列中;终端设备对第一内存队列的原始图像进行处理,得到第一图像;终端设备将第一图像存储至第一预览缓存队列,以生成第一画面。

这样,终端设备在预览时,录制缓存队列中没有图像缓存,不会保存视频。

可选的,终端设备为第一预览缓存队列和第一录制缓存队列设置第一标识;和/或,终端设备为第二预览缓存队列和第二录制缓存队列设置第二标识。

终端设备可以通过标识识别相对应的预览缓存队列和录制缓存队列,方便控制,易于实现。

第二方面,本申请实施例提供一种终端设备,终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。

该终端设备包括:包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得终端设备执行如第一方面的方法。

第三方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现如第一方面的方法。

第四方面,本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面的方法。

第五方面,本申请实施例提供了一种芯片,芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行如第一方面所述的方法。

应当理解的是,本申请的第二方面至第五方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。

附图说明

图1A为本申请实施例提供的一种主角模式的预览界面示意图;

图1B为本申请实施例提供的一种主角模式的录制界面示意图;

图2为可能的设计中一种软件结构示意图;

图3为本申请实施例提供的一种终端设备的软件结构示意图;

图4为本申请实施例提供的一种终端设备的界面示意图;

图5为本申请实施例提供的一种终端设备的界面示意图;

图6为本申请实施例提供的一种录像方法的流程示意图;

图7为本申请实施例提供的一种录像方法的流程示意图;

图8为本申请实施例提供的一种录像方法的流程示意图;

图9为本申请实施例提供的一种录像装置的结构示意图;

图10为本申请实施例提供的一种终端设备的硬件结构示意图。

具体实施方式

为了便于清楚描述本申请实施例的技术方案,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。

需要说明的是,本申请实施例中的“在……时”,可以为在某种情况发生的瞬时,也可以为在某种情况发生后的一段时间内,本申请实施例对此不作具体限定。此外,本申请实施例提供的显示界面仅作为示例,显示界面还可以包括更多或更少的内容。

为方便理解,下面对本申请实施例中涉及的一些名词进行说明。

1、主角模式:在终端设备录制视频时,可额外生成一份人像追焦视频的模式,也就是在录制完成时保存两个以上视频,其中一个为录制的原视频,其他视频为根据追踪的目标人像从原视频中自动剪裁的视频。其中,该人像追焦视频中的人像可以理解为用户关注的“主角”,生成“主角”对应的视频的方式可以为:从终端设备常规录制的视频中裁剪出“主角”对应的视频内容。

其中,“主角”可以人物、动物等生命体,也可以是车辆等非生命体。可以理解的是,任一可基于算法模型识别的物品均可作为本申请实施例的“主角”。本申请实施例中可将“主角”定义为追焦对象,追焦对象还可称为主角对象、追踪目标、追踪对象与追焦目标等,本申请实施例对“主角”的概念不做限制。

示例性的,终端设备中主角模式的预览界面可如图1A所示。该预览界面包括大窗101、录制控件102。

大窗101显示有大窗预览画面。当终端设备识别到大窗预览画面中包括人物时,大窗显示有追踪框(例如,追踪框104和追踪框105)。追踪框可以提示用户相应人物可设置或可切换为追踪目标,还可以方便用户设置或切换追踪目标。当终端设备识别到大窗预览画面中包括多个人物时,大窗可以显示有多个追踪框。追踪框的数量小于或等于终端设备识别到的人物的数量。追踪目标为大窗预览画面中多个对应有追踪框的人物中的任一个。追踪目标可以称为追焦对象、主角对象等,本申请实施对此不做限定。

一些实施例中,设置为追踪目标的人物对应的追踪框(例如,追踪框104)与未被设置为追踪目标的人物(例如,追踪框105)对应的追踪框显示样式不同。这样,方便用户区分识别被追踪的人物(追踪目标)。除追踪框的样式不同,本申请实施例还可设置追踪框的颜色,例如,追踪框104与追踪框105的颜色不同。这样,可直观的区分追踪目标与其他人物。

追踪框可以为虚框,如,追踪框104;也可以为虚框与“+”的组合,如追踪框105,该追踪框也可以是任意显示形式,追踪框满足能够被用户触发实现追踪可设置为追踪目标的功能即可。该追踪框可以标记在可设置为追踪目标的人物的任意位置,本申请实施例对此不作具体限定。

可以理解的是,追踪框为追踪标识的一种,终端设备还可以显示其他形式的追踪标识,以方便用户设置追踪目标。示例性的,其他形式的追踪标识可以为对象的缩略图,数字、字母和图形等。此外,追踪标识可以设置在对象的任意位置,也可以设置在对象的附近,还可以设置在大窗的边缘。本申请实施例对于追踪标识的具体位置不作具体限定。

示例性的,终端设备可以将一个或多个对象的缩略图排列显示在大窗的边缘,当终端设备接收到用户点击任一追踪标识的操作时,设置点击的追踪标识对应的对象为追踪目标。

可能的实现方式中,终端设备可以通过人脸识别技术识别人物,并显示追踪框。终端设备可根据人体识别等技术确定追踪框的显示位置,例如人物身体较居中的位置。这样,基于人体计算追踪框的位置,可以减少追踪框位于人脸位置的情况,可以减少追踪框对人脸的遮挡,提升用户体验。本申请实施例对于人物的识别技术以及追踪框位置计算所采用的技术不做具体限定。

一些实施例中,图1A还包括小窗103。小窗103显示有小窗预览画面。小窗预览画面与追踪目标相对应。当追踪目标切换时,小窗103显示的小窗预览画面中的人物进行切换。示例性的,若追踪目标从追踪框104对应人物切换为追踪框105对应人物,小窗103显示的小窗预览画面也相应发生变化。

小窗预览画面可以为大窗预览画面的一部分。可能的实现方式中,小窗预览画面是终端设备基于追踪目标按照一定比例实时裁剪大窗预览画面得到的。本申请实施例对于小窗显示的画面不做具体限定。

一些实施例中,小窗的规格、位置和横竖屏显示方式等可调,用户可根据录像习惯调整小窗口的样式。可选的,小窗预览画面中追踪目标居中显示。可选的,小窗浮于大窗的上方。此处不做限定。

一些实施例中,小窗103还包括关闭控件106和第一切换控件107。

可以理解的是,当终端设备接收到用户设置追踪目标的操作后,在预览界面显示有小窗,以显示追踪目标的小窗预览画面。当终端设备未接收到用户设置追踪目标的操作,预览界面不显示小窗。

当用户在图1A所示的预览界面中通过点击、触摸等操作触发关闭控件106时,终端设备接收到关闭小窗的操作,终端设备关闭小窗,取消对追踪目标的预览。当用户在图1A所示的预览界面中通过点击、触摸等操作触发第一切换控件107时,终端设备接收到切换小窗显示方式(小窗样式)的操作,终端设备切换小窗的样式。具体的,可将小窗从横向切换为竖向,或者从竖向切换为横向。当用户在图1A所示的预览界面通过点击、触摸等操作触发录制控件102时,终端设备接收到开始录制的操作,开始录制视频和追焦视频。

可选的,预览界面还可以包括其他控件,例如,主角模式退出控件108、设置控件109、闪光灯控件110、第二切换控件111、变焦控件112等。

当主角模式退出控件108被触发时,终端设备退出主角模式,进入录像模式。当设置控件109被触发时,终端设备可调整多种设置参数。设置参数包括但不限于:是否开启水印、存储路径、编码方式、是否保存地理位置等。当闪光灯控件110被触发时,终端设备可设置闪光灯效果,例如,控制闪光灯强制开启、强制关闭、拍照时开启及根据环境适应性开启等。当变焦控件112被触发时,终端设备可调整摄像头的焦距,进而调整大窗预览画面的放大倍数。

当用户在图1A所示的预览界面通过点击或触摸等操作触发第二切换控件111时,终端设备接收到设置小窗样式的操作,显示小窗样式选择项,以供用户选取。小窗样式选择项包括但不限于:横向或竖向等。本申请实施例对此不作限定。可能的实现方式中,第二切换控件111与小窗的显示样式相对应,方便用户区分小窗样式。

需要说明的是,图1A所示的预览界面中可以通过第一切换控件107控制小窗样式切换,也可以通过第二切换控件111控制小窗样式切换。可能的实现方式中,小窗中的第一切换控件107与大窗的第二切换控件111可设置联动。示例性的,当小窗从横向切换为竖向时,第一切换控件107的图标为竖向预览时的样式,第二切换控件111的图标也为竖向预览时的样式,或者,第一切换控件107和第二切换控件111的图标都是横向预览时的样式,提示用户,再次点击切换后预览的样式。

可以理解的是,在预览场景中,当终端设备设置追踪目标后,小窗的小窗预览画面可居中显示追踪目标。一些场景中,追踪目标可处于移动状态,当追踪目标发生移动但未离开镜头时,小窗的小窗预览画面可持续居中显示追踪目标。

例如,预览界面中可设置为追踪目的对象包括男性人物与女性人物,终端设备响应于用户针对男性人物的追踪框的点击操作,终端设备设置男性人物为追踪目标,并进入如图1A中的a所示的界面。图1A中的a所示的界面中,小窗的小窗预览画面居中显示男性人物,男性人物居于女性人物的右侧。男性人物发生移动,终端设备可持续追焦男性人物,并将男性人物居中显示到小窗中。当男性人物走到女性人物左侧时,终端设备的界面可如图1A的b所示。图1A中的b界面中,小窗的小窗预览画面仍居中显示男性人物,男性人物居于女性人物的左侧。

可能的实现方式中,当终端设备追踪目标后,焦点随追踪目标移动而移动,示例性的,图1A中的a所示的界面中,焦点位于男性人物的脸部区域,位于画面的中间偏右部分;男性人物发生移动,终端设备可持续追焦男性人物,当男性人物走到女性人物左侧时,终端设备的界面可如图1A的b所示。图1A中的b所示的界面中,焦点位于男性人物的脸部区域,位于画面的中间偏左部分。

主角模式的录制模式中,终端设备可以在大窗显示摄像头获得的图像(大窗预览画面),在小窗显示用户选定的追踪目标的图像(小窗预览画面),并生成开启录制模式后录制得到的录制视频和追焦视频。在录制结束时,终端设备保存基于大窗预览画面生成的视频,以及基于小窗预览画面生成的追焦视频。

一些实施例中,相比较于大窗的录制,小窗可提前结束录制。在小窗录制结束时,终端设备保存基于小窗预览画面生成的追焦视频。或者可以理解为,相比较于整个视频,终端设备可以提前结束追焦视频的录制。

一些实施例中,相比较于大窗的录制,小窗可延迟开始录制。或者可以理解为,在终端设备开始录制视频后检测到用户设置追踪目标的操作,终端设备开启小窗,开始追焦视频的录制。

示例性的,终端设备中主角模式的录制界面可如图1B所示。该录制界面包括大窗113、暂停控件114、结束控件115。

大窗113显示有大窗预览画面和录制时长。当终端设备识别到大窗预览画面中包括人物时,大窗显示有追踪框(例如,追踪框117和追踪框118)。可以理解的是,追踪框的数量小于或等于终端设备识别到的人物的数量。

一些实施例中,录制界面还显示有小窗116。小窗116显示有小窗预览画面。小窗预览画面与追踪目标相对应。当追踪目标切换时,小窗116显示的小窗预览画面中的人物进行切换。示例性的,若追踪目标从追踪框117对应人物切换为追踪框118对应人物,小窗116显示的小窗预览画面也相应发生变化。

小窗预览画面可以为大窗预览画面的一部分。可能的实现方式中,小窗预览画面是基于追踪目标按照一定比例实时裁剪大窗预览画面得到的。本申请实施例对于小窗显示的画面不做具体限定。

可选的,小窗预览画面中追踪目标居中显示。可选的,小窗浮于大窗的上方。此处不做限定。

小窗116还包括小窗结束控件119和小窗录制时长。

可以理解的是,当终端设备接收到用户设置追踪目标的操作后,在录制界面显示有小窗,以显示追踪目标的小窗预览画面。当终端设备未接收到用户设置追踪目标的操作,录制界面不显示小窗。

当用户在图1B所示的录制界面通过点击、触摸等操作触发结束控件115时,终端设备接收到用户结束录制的操作,终端设备进入主角模式的预览界面,并存储大窗预览画面对应的视频,以及小窗预览画面对应的追焦视频。当用户在图1B所示的录制界面通过点击、触摸等操作触发暂停控件114时,终端设备接收到用户暂停录制的操作,终端设备暂停大窗113中视频的录制,以及小窗116中追焦视频的录制。当用户在图1B示的录制界面通过点击、触摸等操作触发小窗结束控件119时,终端设备接收到用户结束小窗录制的操作,终端设备继续显示大窗113中的大窗预览画面,关闭小窗116并存储小窗116中小窗预览画面对应的追焦视频。

可能的实现方式中,录制界面中还包括闪光灯控件120。当闪光灯控件120被触发时,终端设备可设置闪光灯效果。

可以理解的是,终端设备通过主角模式录制时,可基于大窗的大窗预览画面生成一路视频,并基于小窗的小窗预览画面额外生成一路追踪目标对应的追焦视频。两路视频独立保存在终端设备中。这样,无需后续对整个视频进行人工剪辑,即可得到追踪目标对应的视频,操作简单方便,提升用户体验。

可以理解的是,在录制场景中,当终端设备设置追踪目标后,小窗的小窗预览画面可居中显示追踪目标。一些场景中,追踪目标可处于移动状态,当追踪目标发生移动但未离开镜头时,小窗的小窗预览画面可持续居中显示追踪目标。

例如,预览界面中可设置为追踪目的对象包括男性人物与女性人物,终端设备响应于用户针对男性人物的追踪框的点击操作,终端设备设置男性人物为追踪目标,并进入如图1B中的a所示的界面。图1B中的a所示的界面中,小窗的小窗预览画面居中显示男性人物,男性人物居于女性人物的右侧。男性人物发生移动,终端设备可持续追焦男性人物,并将男性人物居中显示到小窗中。当男性人物走到女性人物左侧时,终端设备的界面可如图1B的b所示。图1A中的b界面中,小窗的小窗预览画面仍居中显示男性人物,男性人物居于女性人物的左侧。

可能的实现方式中,当终端设备追踪目标后,焦点随追踪目标移动而移动,示例性的,图1B中的a所示的界面中,焦点位于男性人物的脸部区域,位于画面的中间偏右部分;男性人物发生移动,终端设备可持续追焦男性人物,当男性人物走到女性人物左侧时,终端设备的界面可如图1B的b所示。图1B中的b所示的界面中,焦点位于男性人物的脸部区域,位于画面的中间偏左部分。

可以理解的是,本申请实施例将基于追踪目标可以额外生成一路或多路追焦视频的拍摄模式定义为主角模式,该拍摄模式还可以称为追焦模式等,本申请实施例对此不作限定。

本申请实施例提供的录像方法可以应用于具有录像功能的电子设备中。电子设备包括终端设备。终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。

本申请实施例中,终端设备也可以称为终端(terminal)、用户设备(userequipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。

本申请实施例提供的录像方法可以应用于终端设备的多种录像模式中。例如,主角模式、常规录像模式、前后双摄等。可以理解的是,终端设备在采用主角模式录制时,可以在录制人物所在环境全景时,针对选定的特写人物进行视频录制,一次录制,多种模式成片。

为提高用户体验,手机、平板电脑等终端设备通常配置多个摄像头。终端设备可以通过配置的多个摄像头,为用户提供多种拍摄模式,例如,前摄模式、后摄模式、前后双摄模式等。用户可以根据拍摄场景,选择相应的拍摄模式进行拍摄。

在终端设备接收到用户选取拍摄模式的操作时,终端设备进入相应的预览界面,显示拍摄的图像。当终端设备接收到用户录制视频的操作时,终端设备进入相应的录制界面,显示拍摄的图像以及保存拍摄的图像。

示例性的,以一次录制保存一个视频为例,当终端设备接收到用户选取拍摄模式的操作时,终端设备获取摄像头采集的原始图像存储在第一内存队列,并对第一内存队列中的原始图像进行处理,以显示在预览界面;当终端设备接收到用户录制视频的操作时,获取摄像头采集的原始图像存储在第一内存队列,并对第一内存队列中的原始图像进行处理,以显示在预览界面;以及获取摄像头采集的原始图像存储在第二内存队列,并对第二内存队列中的原始图像进行处理,以进行编码以进行保存。

这样,终端设备录制视频时,需要两个内存队列存储图像,内存占用较大,导致终端设备的功耗大。

可以理解的是,采用主角模式录制时,可以在录制人物所在环境全景时,针对选定的人物进行特写录制,一次录制,得到全景视频和选定的人物的追焦视频。当拍摄模式为主角模式时,会占用大量内存,终端设备的功耗较大。

以拍摄模式为主角模式为例,下面结合图2对可能的设计中主角模式的录像过程进行说明。

示例性的,图2为可能的设计中一种终端设备的内部实现流程示意图。如图2所示,终端设备可以分为五层,从上至下分别为应用程序层、应用程序框架(framework)层、硬件抽象层(hardware abstraction layer,HAL)、内核层(kernel)、以及硬件(hardware)层。

应用程序层可以包括一系列应用程序包。如图2所示,应用程序包可以包括相机,图库,电话,地图等应用程序。

应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。

如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,资源管理器,视图系统,相机访问接口等。

窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,触摸屏幕,拖拽屏幕,截取屏幕等。

内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。

视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。

资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。

相机访问接口使得应用程序可以进行相机管理,访问相机设备。比如管理相机进行图像拍摄等。

硬件抽象层,可以包含多个库模块,库模块如可以为相机库模块等。Android系统可以为设备硬件加载相应的库模块,进而实现应用程序框架层访问设备硬件的目的。本申请实施例中,相机库模块包括控制模块、图像处理模块、收图模块、内存队列和缓存队列。

控制模块基于相机应用下发的配置命令(配置命令与拍摄模式相对应)配置内存队列和缓存队列。控制模块还用于在配置结束后基于应用下发的请求调整相机的拍摄方式(例如,大窗预览模式、小窗预览模式、大窗录制模式、小窗录制模式、美颜参数、防抖参数、曝光时间等)。控制模块还可以基于应用下发的请求调整后续图像处理时的相关参数,例如,从内存队列中选取的图像的数量、算法处理时的美颜参数、防抖参数等。

可以理解的是,相机应用中的拍摄模式可以包括但不限于:常规录像模式、主角模式、多镜录像模式等。常规录像模式对应的配置命令中包括一路预览流和一路录制流。多镜录像模式对应的配置命令中包括两路预览流和两路录制流。主角模式对应的配置命令中包括两路预览流和两路录制流。

可以理解的是,请求中包括的具体内容与相机的录像模式相关。示例性的,当终端设备进入主角模式的大窗预览场景时,该请求用于指示第一视角(全景)的预览。当终端设备进入主角模式的小窗预览场景时,该请求用于指示第一视角(全景)的预览和第二视角(基于追踪目标)的预览。当终端设备进入主角模式的大窗录制场景时,该请求用于指示第一视角的预览和录制。当终端设备进入主角模式的小窗录制场景时,该请求用于指示第一视角的预览和录制,以及第二视角的预览和录制。

图像处理模块用于对图像进行降噪、融合等算法处理以及转换格式等处理,并将处理后的图像存储至相应的缓存队列。

收图模块用于获取底层硬件(例如,TOF相机、摄像头等)拍摄的原始图像,并将原始图像保存至相应的内存队列。

内存队列用于存储收图模块获取的底层硬件(例如,TOF相机)拍摄的原始图像。

缓存队列用于存储经图像处理模块处理后的图像,以供上层应用预览显示或者进行编码处理。

可能的设计中,缓存队列的队列数量与内存队列的队列数量相同。

内核层是硬件和软件之间的层。内核层用于驱动硬件,使得硬件工作。内核层可以包含相机驱动,显示驱动,音频驱动等,本申请实施例对此不做限制。

硬件层可以各种类型的传感器,拍摄类传感器例如包括TOF相机、多光谱传感器等。

下面结合图2对可能的设计中主角模式的录像过程进行说明。录像过程包括配置流程、预览显示和录制。

示例性的,可能的设计中主角模式的录像过程中的配置流程如下:终端设备接收到主角模式的触发操作时,相机应用经相机访问接口向硬件抽象层中的相机库模块下发配置命令,配置命令用于指示配置两路预览流和两路录像流。相机库模块中的控制模块基于配置命令分配两个预览缓存队列(例如,预览1、预览2)和两个录像缓存队列(例如,录像1、录像2),以及4个内存队列(例如,内存1、内存2、内存3、内存4);相机库模块在配置结束后,向上层应用发送用于指示配置结束的消息。

下面对可能的设计中主角模式的录像过程中的预览显示进行说明。

应用在接收到用于指示配置结束的消息后,经相机访问接口向硬件抽象层中的相机库模块下发预览请求。以预览请求用于指示大窗预览和小窗预览为例,控制模块基于预览请求控制,收图模块将相机拍摄的原始图像保存至内存1和内存3中。图像处理模块选取内存1中保存的原始图像进行算法处理、格式转换等,得到第一图像,并将第一图像保存至预览1,以供回调至应用进行大小窗预览显示;图像处理模块选取内存3中保存的原始图像进行算法处理、格式转换等,得到第三图像,并将第三图像保存至预览2,以供回调至应用进行小窗预览显示。

下面对可能的设计中主角模式的录像过程中的录制进行说明。

若终端设备接收到录制操作,相机应用经相机访问接口向硬件抽象层中的相机库模块下发录制请求。以预览请求用于指示大窗录制和小窗录制为例,控制模块基于录制请求控制收图模块将原始图像保存至内存1至内存4中。

图像处理模块选取内存1中保存的原始图像进行算法处理、格式转换等,得到第一图像,并将第一图像保存至预览1,以供回调至应用进行大小窗预览显示;图像处理模块选取内存2中保存的原始图像进行算法处理、格式转换等,得到第二图像,并将第二图像并将处理后的图像保存至录像1,以供回调至应用进行大窗编码保存。图像处理模块选取内存3中保存的原始图像进行算法处理、格式转换等,得到第三图像,并将第三图像保存至预览2,以供回调至应用进行小窗预览显示。图像处理模块选取内存4中保存的原始图像进行算法处理、格式转换等,得到第四图像,并将第四图像保存至录像2,以供回调至应用进行小窗编码保存。

可以理解的是,终端设备在采用主角模式录制时,可能会有4个内存队列存储原始图像,进而会占用大量内存,导致终端设备的功耗大。此外,还会进行4组图像处理,计算内存占用较大。

基于此,本申请实施例提供一种录像方法,将预览缓存队列、录像缓存队列与同一个内存队列相对应;在录制过程中,获取内存队列中的原始图像进行处理,将处理后的图像保存至其对应的预览缓存队列和其对应的录像缓存队列中,进而减少终端设备缓存的原始图像数量,减少内存占用,进而降低功耗。

为方便理解,下面结合图3对终端设备的软件架构进行说明。

终端设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的安卓(android)系统为例,示例性说明终端设备的软件结构。

如图3所示,终端设备可以分为五层,从上至下分别为应用程序层、应用程序框架(framework)层、硬件抽象层(hardware abstraction layer,HAL)、内核层(kernel)、以及硬件(hardware)层。

应用程序层可以包括一系列应用程序包。如图3所示,应用程序包可以包括相机,图库,电话,地图等应用程序。

应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。

如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,资源管理器,视图系统,相机访问接口等。

窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,触摸屏幕,拖拽屏幕,截取屏幕等。

内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。

视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。

资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。

相机访问接口使得应用程序可以进行相机管理,访问相机设备。比如管理相机进行图像拍摄等。

硬件抽象层,可以包含多个库模块,库模块如可以为相机库模块等。Android系统可以为设备硬件加载相应的库模块,进而实现应用程序框架层访问设备硬件的目的。本申请实施例中,相机库模块包括控制模块、图像处理模块、收图模块、内存队列和缓存队列。

控制模块基于相机应用下发的配置命令(配置命令与拍摄模式相对应)配置内存队列和缓存队列。

可以理解的是,相机应用中的拍摄模式可以包括但不限于:常规录像模式、主角模式、多镜录像模式等。常规录像模式对应的配置命令中包括一路预览流和一路录制流。多镜录像模式对应的配置命令中包括两路预览流和两路录制流。主角模式对应的配置命令中包括两路预览流和两路录制流。

本申请实施例中,控制模块在配置内存队列和缓存队列时,将预览缓存队列、录制缓存队列均与同一个内存队列绑定。(示例性的,预览1、录制1均与内存1绑定;预览2、录制2均与内存2绑定)。

控制模块还用于在配置结束后基于应用下发的请求调整相机的拍摄方式(例如,大窗预览模式、小窗预览模式、大窗录制模式、小窗录制模式、美颜参数、防抖参数、曝光时间等)。控制模块还可以基于应用下发的请求调整后续图像处理时的相关参数,例如,从内存队列中选取的图像的数量、算法处理时的美颜参数、防抖参数、是否进行分流处理等。

可以理解的是,请求中包括的具体内容与相机的录像模式相关。示例性的,当终端设备进入主角模式的大窗预览场景时,该请求用于指示第一视角(全景)的预览。当终端设备进入主角模式的小窗预览场景时,该请求用于指示第一视角(全景)的预览和第二视角(基于追踪目标)的预览。当终端设备进入主角模式的大窗录制场景时,该请求用于指示第一视角的预览和录制。当终端设备进入主角模式的小窗录制场景时,该请求用于指示第一视角的预览和录制,以及第二视角的预览和录制。

图像处理模块用于对图像进行降噪、融合等算法处理以及转换格式等处理,并将处理后的图像存储至相应的缓存队列。

收图模块用于获取底层硬件(例如,TOF相机)拍摄的原始图像,并将原始图像保存至相应的内存队列。

内存队列用于存储底层硬件(例如,TOF相机)拍摄的原始图像。

缓存队列用于存储经图像处理模块处理后的图像,以供上层应用预览显示或者进行编码处理。

可能的设计中,缓存队列的队列数量与内存队列的队列数量相同。

内核层是硬件和软件之间的层。内核层用于驱动硬件,使得硬件工作。内核层可以包含相机驱动,显示驱动,音频驱动等,本申请实施例对此不做限制。

硬件层可以各种类型的传感器,拍摄类传感器例如包括TOF相机、多光谱传感器等。

下面结合图3对本申请实施例中主角模式的录像过程进行说明。录像过程包括配置流程、预览显示和录制。

本申请实施例中主角模式的录像过程中的配置流程如下:终端设备接收到主角模式的触发操作时,相机应用经相机访问接口向硬件抽象层中的相机库模块下发配置命令,配置命令用于指示配置两路预览流和两路录像流。相机库模块中的控制模块基于配置命令分配两个预览缓存队列(例如,预览1、预览2)和两个录像缓存队列(例如,录像1、录像2),以及2个内存队列(例如,内存1、内存2);相机库模块在配置结束后,向上层应用发送用于指示配置结束的消息。

下面对本申请实施例中主角模式的录像过程中的预览显示进行说明。

应用在接收到用于指示配置结束的消息后,经相机访问接口向硬件抽象层中的相机库模块下发预览请求。以预览请求用于指示大窗预览和小窗预览为例,控制模块基于预览请求控制,收图模块将相机拍摄的原始图像保存至内存1和内存2中。图像处理模块选取内存1中保存的原始图像进行算法处理、格式转换等,得到第一图像,并将第一图像保存至预览1,以供回调至应用进行大小窗预览显示;图像处理模块选取内存2中保存的原始图像进行算法处理、格式转换等得到第二图像,并将第二图像保存至预览2,以供回调至应用进行小窗预览显示。

下面对本申请实施例中主角模式的录像过程中的录制进行说明。

若终端设备接收到录制操作,相机应用经相机访问接口向硬件抽象层中的相机库模块下发录制请求。以录制请求用于指示大窗录制和小窗录制为例,控制模块基于录制请求控制收图模块将原始图像保存至内存1和内存2中。图像处理模块选取内存1中保存的原始图像进行算法处理、格式转换等得到第一图像,并对第一图像进行分流处理,将第一图像保存至预览1和录制1,以供回调至应用进行大小窗预览显示,以及供回调至应用进行大窗编码保存。图像处理模块选取内存2中保存的原始图像进行算法处理、格式转换等,得到第二图像,并对第二图像进行分流处理,将第二图像保存至预览2和录制2,以供回调至应用进行小窗预览显示,以及供回调至应用进行小窗编码保存。

为方便理解,下面结合图4和图5对主角模式的录制流程进行说明。

示例性的,图4为本申请实施例提供的一种主角模式录制流程示意图。如图4所示,当终端设备在图4中的a所示的主界面中,接收到用户打开相机应用程序401的操作时,终端设备可以进入到图4中的b所示的拍照预览界面。该拍照预览界面中可以包括大窗402和拍摄模式选择项。大窗402实时显示有大窗预览画面;拍摄模式选择项包括但不限于:人像、拍照、录像403、专业或其他类型拍摄模式选择项。

当用户在图4中的b所示的相机预览界面通过点击、触摸等操作触发录像403时,终端设备接收到用户选取录像模式的操作,进入图4中的c所示的录像预览界面。该录像预览界面包括:大窗404、录制参数选择项和拍摄模式选择项。大窗404实时显示有大窗预览画面;录制参数选择项包括但不限于:主角模式405、闪光灯、滤镜、设置或其他类型录制参数选择项。拍摄模式选择项包括但不限于:人像、拍照、录像、专业或其他类型拍摄模式选择项。

当用户在图4中的c所示的录像预览界面通过点击、触摸等操作触发主角模式405时,终端设备接收到用户选取主角模式预览的操作,进入图4中的d所示的主角模式对应的预览界面。该预览界面包括:大窗406和录制控件。大窗406显示有大窗预览画面。当大窗预览画面中有人物时,大窗406还显示有追踪框407。

可以理解的是,终端设备还可以通过其他方式进入图4中的d所示的主角模式对应的预览界面。示例性的,终端设备还可以通过图4中的b所示的拍照预览界面中的“其他类型拍摄模式选择项”图4中的d所示的主角模式对应的预览界面。本申请实施例对于主角模式对应的预览界面的进入方式等不做限定。

可能的实现方式一中,当用户通过点击或触摸等操作触发追踪框407时,终端设备接收到设置追踪目标的操作,设置追踪框对应的人物为追踪目标,进入图4中的e所示的界面。该预览界面包括:大窗408、小窗409和录制控件410。大窗显示有大窗预览画面。小窗409显示有小窗预览画面。小窗预览画面与追踪目标相对应。

当用户在图4中的e所示的预览界面中通过点击、触摸等操作触发录制控件410时,终端设备接收到开始录制的操作,进入图4中的f所示的录制界面。该录制界面包括:大窗、暂停控件、结束控件和小窗。大窗显示有大窗预览画面。小窗显示小窗预览画面,小窗预览画面与追踪目标相对应。小窗预览画面为大窗预览画面的一部分。

可以理解的是,当终端设备开始录制时,终端设备在录制界面显示小窗预览画面和大窗预览画面时,也会保存小窗预览画面对应的内容和大窗预览画面对应的内容,进而在录制结束时保存小窗对应的视频和大窗对应的视频。

可能的实现方式二中,当用户在图4中的d所示的界面通过点击或触摸等操作触发录制控件511时,终端设备接收到开始录制的操作,进入图5中的a所示的录制界面。该录制界面包括:大窗501、暂停控件和结束控件。大窗501显示有大窗预览画面。大窗501显示有大窗预览画面。当大窗预览画面中有人物时,大窗501还显示有追踪框502。

当用户通过点击或触摸等操作触发追踪框502时,终端设备接收到设置追踪目标的操作,设置追踪框对应的人物为追踪目标,进入图4中的e所示的界面。该预览界面包括:大窗、小窗和录制控件。大窗显示有大窗预览画面。小窗显示有小窗预览画面。小窗预览画面与追踪目标相对应。

可以理解的是,图4和图5所示的界面仅作为示例,相应界面还可包括更多或更少的内容,此处不做限定。终端设备还可以通过其他方式选取主角模式,本申请实施例对此不作限定。

下面结合图6对主角模式的录像配置和预览显示过程中终端设备的内部模块交互过程进行说明。如图6所示,终端设备包括相机应用、相机访问接口、控制模块、收图模块、内存、缓存队列、处理模块为例,交互过程包括:

S601、终端设备接收到针对第一录像控件的点击操作。

第一录像控件与录像模式相对应。示例性的,第一录像控件可以为图4中的c所示的界面中的主角模式405。终端设备接收到针对主角模式405的点击操作时,进入主角模式。

S602、相机应用经相机访问接口向控制模块下发配置命令。

配置命令与第一录像控件对应的录像模式相对应。示例性的,当第一录像控件为主角模式时,配置命令用于指示配置两路预览流和两路录制流。

配置命令中还包括摄像头编号,以用于开启相应的摄像头。

可以理解的是,终端设备中可以包括一个或多个摄像头,摄像头包括但不限于:前置摄像头、后置主摄像头(可以简称为后置主摄)、广角摄像头(也可以称为超广角摄像头)和远焦摄像头等。

S603、控制模块基于配置命令配置缓存队列和内存队列。

示例性的,控制模块基于配置命令配置两个预览缓存队列(预览1和预览2)、两个录制缓存队列(录制1和录制2)和两个内存队列(内存1和内存2),以及将预览缓存队列和录制缓存队列进行绑定,以实现大窗的预览缓存队列(预览1)和大窗的录制缓存队(内存1)列对应,小窗的预览缓存队列(预览2)和小窗的录制缓存队列(内存2)对应。

可能的实现方式中,终端设备将绑定的预览缓存队列和录制缓存队列设置同一个标识(例如,stream ID)。这样,方便后续终端设备识别控制。

示例性的,终端设备为预览1、录像1设置同一个标识;终端设备为预览2、录像2设置同一个标识。

这样,终端设备在进入主角模式时,将录像流和预览流进行绑定,配置两路预览流以及相应的两组内存队列,减少配流耗时和内存的使用;并且通过大窗预览流和录像流一一对应使得大窗的预览和录制结果一致;以及通过小窗预览流和录像流一一对应,使得小窗的预览和录制结果一致。

S604、控制模块在配置结束后经相机访问接口向相机应用发送用于指示配置结束的消息。

S605、相机应用经相机访问接口向控制模块下发第一请求。

第一请求用于指示大窗预览。

S606、控制模块基于第一请求控制收图模块获取底层硬件采集的原始图像。

S607、收图模块将原始图像存储至内存1。

S608、图像处理模块选取内存1保存的原始图像进行算法处理、格式转换等处理,得到第一图像。

本申请实施例中,算法处理包括但不限于:降噪、线性提亮、色调映射、伽马校正、融合等处理。算法处理还可以包括美颜、防抖等处理。

S609、图像处理模块将第一图像存储至预览1。

S610、相机应用经相机访问接口调用预览1中的第一图像进行大窗预览显示。

适应性的,终端设备显示包括大窗的预览界面。

示例性的,终端设备显示图4中的d所示的界面。

这样,终端设备可以实现大窗的预览显示。

S611、终端设备接收到用户点击追踪框的操作,相机应用经相机访问接口向控制模块下发第二请求。

第二请求用于指示大窗预览和小窗预览。

S612、控制模块基于第二请求控制收图模块获取底层硬件采集的原始图像;

S613、收图模块将原始图像存储至内存1和内存2。

S614、图像处理模块选取内存1保存的原始图像进行算法处理、格式转换等处理,得到第一图像;选取内存2保存的原始图像进行算法处理、格式转换等处理,得到第二图像。

S615、图像处理模块将第一图像存储至预览1,并将第二图像存储至预览2。

S616、相机应用经相机访问接口调用预览1中的第一图像进行大窗预览显示,调用预览2中的第二图像进行小窗预览显示。

适应性的,终端设备显示包括大窗和小窗的预览界面。

示例性的,终端设备显示图4中的e所示的界面。

这样,终端设备可以实现大窗的预览显示,以及小窗的预览显示。

下面结合图7对录制过程中终端设备的内部模块交互过程进行说明。终端设备包括相机应用、相机访问接口、控制模块、收图模块、内存、缓存队列、处理模块,交互过程包括:若终端设备在执行上述S611之前,接收到录制操作。

S701、终端设备接收到录制操作,相机应用经相机访问接口向控制模块下发第三请求。

第三请求用于指示大窗预览和大窗录制。

示例性的,终端设备在显示图4中的d所示的界面时,接收到用户点击录制控件411的操作,相机应用经相机访问接口向控制模块下发第三请求。

S702、控制模块基于预览请求控制收图模块获取底层硬件采集的原始图像;

S703、收图模块将原始图像存储至内存1。

S704、图像处理模块选取内存1保存的原始图像进行算法处理、格式转换等处理,得到第一图像。

S705、图像处理模块将第一图像存储至预览1和录制1。

S706、相机应用经相机访问接口调用预览1中的第一图像进行大窗预览显示;调用录制1中的第一图像进行编码处理,以保存大窗对应的视频。

适应性的,终端设备显示包括大窗的录制界面。

示例性的,终端设备显示图5中的a所示的界面。

这样,终端设备可以实现大窗的预览显示及录制。并且,大窗对应的录像流请求不进行底层处理,进而减少两路录像流处理的内存占用。

S707、终端设备接收到用户点击追踪框的操作,相机应用经相机访问接口向控制模块下发第四请求。

第四请求用于指示大窗预览和大窗录制,以及小窗预览和小窗录制。

示例性的,终端设备在显示图5中的a所示的界面时,接收到用户点击追踪框502的操作,相机应用经相机访问接口向控制模块下发第四请求。

S708、控制模块基于第四请求控制收图模块获取底层硬件采集的原始图像。

S709、收图模块将原始图像存储至内存1和内存2。

S710、图像处理模块选取内存1保存的原始图像进行算法处理、格式转换等处理,得到第一图像;选取内存2保存的原始图像进行算法处理、格式转换等处理,得到第二图像。

S711、图像处理模块将第一图像存储至预览1和录制1,并将第二图像存储至预览2和录制2。

S712、相机应用经相机访问接口调用预览1中的第一图像进行大窗预览显示,调用录制1中的第一图像进行编码处理,以保存大窗对应的视频;相机应用经相机访问接口调用预览2中的第二图像进行小窗预览显示,调用录制2中的第一图像进行编码处理,以保存小窗对应的视频。

适应性的,终端设备显示包括大窗和小窗的录制界面。

示例性的,终端设备显示图5中的b所示的界面。

这样,终端设备可以实现大窗的预览显示及录制,以及小窗的预览显示及录制。并且,大窗对应的录制请求不进行底层处理(即录制1中保存的图像未进行图像处理),小窗对应的录像流请求不进行底层处理(即录制2中保存的图像未进行图像处理),进而减少两路录像流处理的内存占用。

可以理解的是,若终端设备在执行上述S611之后,接收到录制操作,相机应用经相机访问接口向控制模块下发第四请求。终端设备执行S708-S712。适应性的,终端设备显示包括大窗和小窗的录制界面。示例性的,终端设备显示图4中的e所示的界面。

综上,终端设备可以根据大窗和小窗的动态请求,采用灵活适配的缓存策略,两路预览流数据分别用于送显大窗和小窗,并通过预览流分流出与之绑定的录像流,得到两路视频流用于视频编码录制,实现一录多得。

上述实施例是以主角模式的录像过程进行说明的。本申请实施例提供的方法还可以应用于其他录像模式。其他录像模式的录像过程与上述主角模式的录像过程类似,此处不再赘述。

示例性的,以常规录像模式(即一次录制生成一路视频)为例,终端设备配置一路预览流和一路录制流。具体的,终端设备接收到针对第二录像控件的点击操作。相机应用经相机访问接口向控制模块下发配置命令。控制模块基于配置命令配置一个预览缓存队列(预览1)、一个录制缓存队列(录制1)和一个内存队列(内存1),以及将预览缓存队列和录制缓存队列进行绑定,以实现大窗的预览缓存队列(预览1)和大窗的录制缓存队(内存1)列对应。

终端设备采用常规录像模式预览时,终端设备执行上述S604-S610。终端设备采用常规录像模式录制时,终端设备执行上述S701-S706。

可以理解的是,上述实施例是以相机应用为例,本申请实施例还可以适用于三方相机应用,例如,微信、短视频拍摄应用等。本申请实施例对此不作限定。

一些实施例中,用户可以设置使用本申请实施例提供的录像方法对应的拍摄模式。当终端设备接收到用户设置第一拍摄模式(例如,美颜录像、防抖录像、主角模式等)为第一模式(例如,省电模式、省流模式等)时,在使用第一拍摄模式进行预览和录制使用本申请实施例提供的录像方法。当终端设备接收到用户设置第一拍摄模式为第二模式(例如,优化模式等)时,在使用第一拍摄模式进行预览和录制不使用本申请实施例提供的录像方法。

示例性的,图8为本申请实施例提供的一种录像方法的流程示意图。如图8所示,录像方法包括:

S801、终端设备显示第一界面,第一界面包括第一窗口和录制控件,第一窗口显示有摄像头实时采集的第一画面。

本申请实施例中,第一界面可以预览界面,用于显示图像进行预览。第一界面可以对应于图4所示的界面。第一窗口可以对应于上文中的大窗。

S802、终端设备在接收到针对录制控件的第一操作时,生成第一录制请求。

第一操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第一操作的类型、方式等均不做限定。

S803、终端设备基于第一录制请求获取摄像头采集的原始图像并存储至第一内存队列中;终端设备对第一内存队列的原始图像进行处理,得到第一图像。

第一录制请求可以对应于上文中的第三请求或第四请求。

S804、终端设备将第一图像存储至第一预览缓存队列和第一录制缓存队列,第一预览缓存队列和第一录制缓存队列均与第一内存队列相对应。

S805、终端设备显示第二界面,第二界面包括第一窗口,第一窗口显示有第一画面,第一画面是基于第一预览缓存队列中的第一图像生成的。

S806、终端设备基于第一录制缓存队列中的第一图像进行编码以保存第一视频。

第二界面可以为录制界面,在显示图像进行预览的同时,还录制有视频。第一视频可以对应于大窗录制的视频。

可以理解的是,在录制过程中,获取内存队列中的原始图像进行处理,将处理后的图像保存至其对应的预览缓存队列和其对应的录像缓存队列中。这样,可以减少终端设备缓存的原始图像数量,减少内存占用,进而降低功耗。

可选的,终端设备显示第一界面之前,方法还包括:终端设备显示第三界面,第三界面包括第一控件,第一控件与第一录像模式相对应;终端设备接收到针对第一控件的第二操作;终端设备基于第一录像模式配置第一预览缓存队列、第一录制缓存队列和第一内存队列。

第一控件可以为录像控件,用于指示常规录像模式;也可以用于指示其他录像模式的控件。第二操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第二操作的类型、方式等均不做限定。第三界面可以对应于上文图4所示的相机预览界面。

这样,可以适用于一次录像生成一路视频的录像的模式,例如,常规录像模式、专业录像模式等。

可选的,终端设备显示第一界面之前,方法还包括:终端设备显示第四界面,第四界面包括第二控件,第二控件与第二录像模式相对应;终端设备接收到针对第二控件的第三操作;终端设备基于第二录像模式配置第一预览缓存队列、第二预览缓存队列、第一录制缓存队列、第二录制缓存队列、第一内存队列和第二内存队列;其中,第二预览缓存队列和第二录制缓存队列均与第二内存队列相对应。

第二控件可以为主角模式控件,也可以为其他录像模式的控件。第三操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第三操作的类型、方式等均不做限定。第四界面可以对应于上文图4所示的主角模式对应的预览界面。

这样,可以适用于一次录像生成两路视频的录像的模式,例如,主角模式等,适用范围广。

可选的,第二界面显示有一个或多个追踪标识;终端设备接收到针对第一追踪标识的第四操作,第一追踪标识为一个或多个追踪标识中的一个;响应于第四操作,终端设备生成第二录制请求;终端设备基于第二录制请求将获取摄像头采集的原始图像存储至第一内存队列和第二内存队列中;终端设备对第一内存队列的原始图像进行算法处理,得到第一图像,以及对第二内存队列的原始图像进行算法处理,得到第二图像;终端设备将第一图像存储至第一预览缓存队列和第一录制缓存队列,并将第二图像存储至第二预览缓存队列和第二录制缓存队列;终端设备显示第五界面,第五界面包括第一窗口和第二窗口,第一窗口显示有第一画面,第一画面是基于第一预览缓存队列中的第一图像生成的,第二窗口显示有第二画面,第二画面是基于第二预览缓存队列中的第二图像生成的;其中,第二画面为第一窗口中与第一对象有关的一部分画面,第一对象为第一追踪标识对应的对象;终端设备基于第一录制缓存队列中的第一图像进行编码以保存第一视频,以及基于第二录制缓存队列中的第二图像进行编码以保存第二视频。

追踪标识可以为上文中的追踪框,也可以为其他标识。第二窗口可以对应于上文中的小窗。第四操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第四操作的类型、方式等均不做限定。第二录制请求可以对应于上文中的第四请求。第五界面可以对应于上文图5所示的界面。第二视频可以对应于小窗录制的视频。

终端设备可以在录制时设置追踪目标进行追踪。当终端设备在录制时选取追踪目标,终端设备获取两个内存队列中的原始图像进行处理,将处理后的图像保存至其对应的预览缓存队列和其对应的录像缓存队列中。这样,可以减少终端设备缓存的原始图像数量,减少内存占用,进而降低功耗。

可选的,第一界面显示有一个或多个追踪标识;终端设备接收到针对录制控件的第一操作之前,方法还包括:终端设备接收到针对第二追踪标识的第五操作,第二追踪标识为一个或多个追踪标识中的一个;响应于第五操作,终端设备显示第六界面,第六界面包括第一窗口、第二窗口和录制控件,第一窗口显示有第一画面,第二窗口显示第二画面,第二画面为第一窗口中与第一对象有关的一部分画面,第一对象为第一追踪标识对应的对象;终端设备基于第录制请求将获取摄像头采集的原始图像存储至第二内存队列中;终端设备对第二内存队列的原始图像进行处理,得到第二图像;终端设备将第二图像存储至第二预览缓存队列和第二录制缓存队列;第二界面还包括第二窗口,第二窗口显示有第二画面,第二画面是基于第二预览缓存队列中的第二图像生成的;终端设备基于第二录制缓存队列中的第二图像进行编码以保存第二视频。

追踪标识可以为上文中的追踪框,也可以为其他标识。第二窗口可以对应于上文中的小窗。第五操作可以为点击操作,也可以为触摸操作,还可以为其他方式的操作(例如,语音等),本申请实施例对于第五操作的类型、方式等均不做限定。第五界面可以对应于上文图5所示的界面。第一录制请求可以对应于上文中的第四请求。第二视频可以对应于小窗录制的视频。

终端设备可以在设置追踪目标后开始录制。终端设备可以显示小窗额外进行一路的录制。

可选的,在第一时刻,终端设备检测到第一窗口的第一位置显示有第一对象,第二窗口显示第一窗口中第一位置处、与第一对象有关的一部分画面;在第二时刻,终端设备检测到第一窗口的第二位置显示有第一对象,第二窗口显示第一窗口中第二位置处、与第一对象有关的一部分画面。

这样,小窗基于追踪目标显示。本申请实施例中,第二窗口显示的画面(追踪画面)随追踪目标的位置变化而变化。具体的,第二窗口显示的画面中第一对象(追踪对象)的位置变化而变化,可以参照图1A或图1B。例如,第一时刻的界面可以为图1A中的a所示的界面,第二时刻的界面可以为图1A中的b所示的界面;或者,第一时刻的界面可以为图1B中的a所示的界面,第二时刻的界面可以为图1B中的b所示的界面。

一些实施例中,焦点随追踪目标的位置变化而变化。具体的,焦点随追踪目标的位置变化而变化,可以参照图1A或图1B。

可选的,第二画面是基于第一画面裁剪得到的。

可选的,终端设备在接收到第一操作之前,方法还包括:终端设备生成第一预览请求;终端设备基于第一预览请求获取摄像头采集的原始图像并存储至第一内存队列中;终端设备对第一内存队列的原始图像进行处理,得到第一图像;终端设备将第一图像存储至第一预览缓存队列,以生成第一画面。

这样,终端设备在预览时,录制缓存队列中没有图像缓存,不会保存视频。

可选的,终端设备为第一预览缓存队列和第一录制缓存队列设置第一标识;和/或,终端设备为第二预览缓存队列和第二录制缓存队列设置第二标识。

终端设备可以通过标识识别相对应的预览缓存队列和录制缓存队列,方便控制,易于实现。

一些实施例中,用户可以设置使用本申请实施例提供的录像方法对应的拍摄模式。当终端设备接收到用户设置第一拍摄模式(例如,美颜录像、防抖录像、主角模式等)为第一模式(例如,省电模式、省流模式等)时,在使用第一拍摄模式进行预览和录制使用本申请实施例提供的录像方法。当终端设备接收到用户设置第一拍摄模式为第二模式(例如,优化模式等)时,在使用第一拍摄模式进行预览和录制不使用本申请实施例提供的录像方法。

上面已对本申请实施例的录像方法进行了说明,下面对本申请实施例提供的执行上述录像方法的装置进行描述。本领域技术人员可以理解,方法和装置可以相互结合和引用,本申请实施例提供的相关装置可以执行上述录像方法中的步骤。

如图9所示,图9为本申请实施例提供的一种录像装置的结构示意图,该录像装置可以是本申请实施例中的终端设备,也可以是终端设备内的芯片或芯片系统。

如图9所示,录像装置2100可以用于通信设备、电路、硬件组件或者芯片中,该录像装置包括:显示单元2101、以及处理单元2102。其中,显示单元2101用于支持录像装置2100执行的显示的步骤;处理单元2102用于支持录像装置2100执行信息处理的步骤。

可能的实现方式中,该录像装置2100中也可以包括通信单元2103。具体的,通信单元用于支持录像装置2100执行数据的发送以及数据的接收的步骤。其中,该通信单元2103可以是输入或者输出接口、管脚或者电路等。

可能的实施例中,录像装置还可以包括:存储单元2104。处理单元2102、存储单元2104通过线路相连。存储单元2104可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。存储单元2104可以独立存在,通过通信线路与录像装置具有的处理单元2102相连。存储单元2104也可以和处理单元2102集成在一起。

存储单元2104可以存储终端设备中的方法的计算机执行指令,以使处理单元2102执行上述实施例中的方法。存储单元2104可以是寄存器、缓存或者RAM等,存储单元2104可以和处理单元2102集成在一起。存储单元2104可以是只读存储器(read-only memory,ROM)或者可存储静态信息和指令的其他类型的静态存储设备,存储单元2104可以与处理单元2102相独立。

本申请实施例提供的录像方法,可以应用在具备录像功能的电子设备中。电子设备包括终端设备,终端设备的具体设备形态等可以参照上述相关说明,此处不再赘述。

本申请实施例提供一种终端设备,该终端设备包括:包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得终端设备执行上述方法。

示例性的,图10示出了终端设备的结构示意图。

终端设备可以包括处理器1010,外部存储器接口1020,内部存储器1021,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。

可以理解的是,本申请实施例示意的结构并不构成对终端设备的具体限定。在本申请另一些实施例中,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

处理器1010可以包括一个或多个处理单元,例如:处理器1010可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。

控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。

处理器1010中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器1010中的存储器为高速缓冲存储器。该存储器可以保存处理器1010刚用过或循环使用的指令或数据。如果处理器1010需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器1010的等待时间,因而提高了系统的效率。

在一些实施例中,处理器1010可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。

ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。

摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端设备可以包括1个或N个摄像头193,N为大于1的正整数。

可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备的结构限定。在本申请另一些实施例中,终端设备也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。

本申请实施例提供一种芯片。芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行上述实施例中的技术方案。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。

本申请实施例还提供了一种计算机可读存储介质。计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现上述方法。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。

一种可能的实现方式中,计算机可读介质可以包括RAM,ROM,只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储器,磁盘存储器或其它磁存储设备,或目标于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(Digital Subscriber Line,DSL)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘,激光盘,光盘,数字通用光盘(Digital Versatile Disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。

本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行上述方法。

本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

相关技术
  • 一种交互力检测集成关节
  • 一种机器人关节交互力感知与控制方法及装置
技术分类

06120116522462