CN116055867B - 一种拍摄方法和电子设备 - Google Patents

一种拍摄方法和电子设备 Download PDF

Info

Publication number
CN116055867B
CN116055867B CN202210601990.9A CN202210601990A CN116055867B CN 116055867 B CN116055867 B CN 116055867B CN 202210601990 A CN202210601990 A CN 202210601990A CN 116055867 B CN116055867 B CN 116055867B
Authority
CN
China
Prior art keywords
image
terminal
video
window
close
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
Application number
CN202210601990.9A
Other languages
English (en)
Other versions
CN116055867A (zh
Inventor
韩钰卓
朱世宇
张志超
代秋平
张农
杜远超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202210601990.9A priority Critical patent/CN116055867B/zh
Priority to PCT/CN2023/088018 priority patent/WO2023231595A1/zh
Publication of CN116055867A publication Critical patent/CN116055867A/zh
Application granted granted Critical
Publication of CN116055867B publication Critical patent/CN116055867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72439User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for image or video messaging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording

Abstract

本申请提供了一种拍摄方法。实施该方法,手机、平板电脑等终端设备可以在开始拍摄或拍摄过程中,根据用户操作确定拍摄主角。在拍摄的过程中,终端设备可以在预览窗中显示摄像头采集的图像流,同时,终端设备还可生成一个专门显示主角的小窗。在结束录制之后,用户可以得到两个视频:基于预览窗中的图像流生成的原始视频,和基于小窗中主角图像流生成的特写视频。这样,用户可以选择用原始视频和/或特写视频,以满足自身不同时刻不同场景下的个性化需求。

Description

一种拍摄方法和电子设备
技术领域
本申请涉及终端领域,尤其涉及一种拍摄方法和电子设备。
背景技术
现在,手机等支持拍摄视频的终端设备可以实现自动追踪的拍摄模式。在录制视频时,终端设备可以接收用户选中的主角。然后,终端设备可以在后续录制视频的过程中,始终跟随该主角,从而得到视频中心始终为上述被选中主角的特写视频。
发明内容
第一方面,本申请提供了一种拍摄方法,应用于具备摄像头的电子设备,该方法包括:显示第一界面,第一界面包括预览窗和第一控件,预览窗用于显示摄像头采集的图像;检测到对第一控件的第一操作;响应于第一操作,显示第二界面,第二界面包括预览窗,预览窗中显示第一图像,在第一图像上显示一个或多个标记,一个或多个标记对应于第一图像中的一个或多个拍摄对象,一个或多个标记包括第一标记,第一标记对应第一图像中的第一拍摄对象;检测到对第一标记的第二操作;响应于第二操作,显示第三界面,第三界面包括预览窗和第一窗口,在第一窗口中显示以第一拍摄对象为主角的第二图像;响应于结束录像的操作,保存原始视频和特写视频;原始视频是基于录制过程中预览窗中显示的图像得到的视频,特写视频是基于录制过程中第一窗口中显示的图像得到的视频,原始视频包括第一图像,特写视频包括第二图像;其中,录制过程中,部分或者全部特写视频是基于相似距离来确定特写视频中的主角的。
实施上述方法,电子设备(终端100)可以选定主角,在录制视频的同时追焦主角,然后保存两个视频:基于预览窗中的图像流生成的原始视频,和基于小窗中主角图像流生成的特写视频。这样,用户可以选择使用原始视频和/或特写视频,以满足自身不同时刻不同场景下的个性化需求。
结合第一方面提供的方法,在一些实施例中,在显示第三界面之后,该方法还包括:响应于开始录制的第四操作,基于预览窗显示的图像录制原始视频,并开始基于第一窗口显示的图像录制特写视频。
实施上述方法,用户可以在开始录制之前,即预览过程中,选定主角,然后,在点击拍摄控件开始录制视频时,同时录制原始视频和特写视频。
结合第一方面提供的方法,在一些实施例中,在检测到对第一标记的第二操作之前,该方法还包括:响应于开始录制的第四操作,基于预览窗显示的图像录制原始视频;响应于第二操作,基于第一窗口显示的图像录制特写视频,特写视频的时长短于原始视频。
实施上述方法,用户可以在开始录制之后,即录制过程中,选定主角。
结合第一方面提供的方法,在一些实施例中,响应于结束录像的操作,保存原始视频和特写视频,具体包括:响应于结束录制的操作,停止录制第一窗口中的图像,保存特写视频;同时,响应于结束录制的操作,停止录制预览窗中的图像,保存原始视频。
实施上述方法,用户可以同时结束录制原始视频和特写视频。
结合第一方面提供的方法,在一些实施例中,响应于结束录像的操作,保存原始视频和特写视频,具体包括:响应于结束录制特写视频的操作,停止录制第一窗口中的图像,保存特写视频;响应于结束录制的操作,停止录制预览窗中的图像,保存原始视。
实施上述方法,用户可以先关闭第一窗口,结束录制特写视频,然后再结束录制原始视频。
结合第一方面提供的方法,在一些实施例中,第一窗口中包括第二控件,结束录制特写视频的操作,具体为:作用于第二控件的用户操作。
实施上述方法,用户可以点击第一窗口的关闭控件,实现关闭小窗,结束特写图像的预览。
结合第一方面提供的方法,在一些实施例中,对象的类型包括人物、动物和植物。
实施上述方法,可以保证主角的多样性。
结合第一方面提供的方法,在一些实施例中,在第一窗口中显示以第一拍摄对象为主角的第二图像,具体包括:确定第一图像中第一对象所在的第二图像,在第一窗口中显示第二图像。
实施上述方法,第二图像中显示的第一对象,可以不显示其他对象。
结合第一方面提供的方法,在一些实施例中,该方法还包括:确定第三图像包括第一对象;确定第三图像中第一对象所在的第四图像,在第一窗口中显示第四图像。
实施上述方法,第一对象可以在录制过程中,持续显示在第一窗口中。
结合第一方面提供的方法,在一些实施例中,确定第三图像包括第一对象,具体包括:利用人体检测算法识别第三图像中包括的一个或多个人物,一个人物所在的图像区域为一个人体图像区域;当第三图像中的人体图像区域不重叠时,计算第三图像中的各个人体图像区域与第一图像中第一图像区域的交并比IoU距离;确定IoU距离最小且满足IoU距离阈值的第一人体图像区域对应的人物为第一对象;当第三图像中的人体图像区域重叠时,计算第三图像中的各个人体图像区域与第一图像中第一图像区域的IoU距离和重定位ReID距离;确定IoU距离与ReID距离的和最小且满足IoU+ReID距离阈值的第一人体图像区域对应的人物为第一对象。
实施上述方法,该过程即为说明书中涉及的交并比,其可以用于准确的对原始图像中的第一对象进行追踪。
结合第一方面提供的方法,在一些实施例中,确定第三图像中第一对象所在的第四图像,具体包括:基于第一人体图像区域确定包括第一人体图像区域的第四图像;第四图像的宽高比与第一窗口的宽高比相同。
实施上述方法,其可以使得显示的第一窗口尺寸更加合理。
结合第一方面提供的方法,在一些实施例中,基于第一人体图像区域确定包括第一人体图像区域的第四图像,具体包括:基于第三图像中的最大的人体图像区域的尺寸、第三图像中第一人体图像区域的尺寸,确定缩放比ZoomRatio,基于ZoomRatio、第一窗口的宽和第一窗口的高确定第四图像的宽、高;基于第四图像的宽、高确定包括第一人体图像区域的第四图像。
实施上述方法,基于人体图像区域的尺寸、缩放比ZoomRatio第一窗口的宽和第一窗口的高确定出第一人体图像区域的第四图像,可以使得计算结果更加准确。
结合第一方面提供的方法,在一些实施例中,该方法还包括:当确定第三图像中不包括第一对象时,暂停录制第一窗口中的图像。
实施上述方法,可以使得在主角(第一对象)丢失时,不再录制特写视频,增强用户体验感。
结合第一方面提供的方法,在一些实施例中,该方法还包括:当确定第四图像中包括第一对象时,确定第四图像中第一对象所在的第五图像,在第一窗口中显示第五图像,同时从第五图像开始继续录制第一窗口中的特写图像,第四图像是第三图像之后的图像。
实施上述方法,第一对象可以在录制过程中,持续显示在第一窗口中,用户可以在第一窗口中查看该第一对象。
结合第一方面提供的方法,在一些实施例中,该方法还包括:当确定第三图像中不包括第一对象时,丢失帧计数增加1;判断当前丢失帧数是否小于丢失帧阈值Y,当前丢失帧数大于Y时,停止录制第一窗口中的图像。
结合第一方面提供的方法,在一些实施例中,在第一图像上显示一个或多个标记,具体包括:对摄像头采集的第一图像进行对象识别,确定第一图像中包括的一个或多个对象;生成与一个或多个对象分别对应的一个或多个标记;在预览窗中显示第一图像,同时在第一图像中的一个或多个对象上显示一个或多个标记。
实施上述方法,该标记可以用于表示该第一图像为特写图像,与原始图像进行区分。
结合第一方面提供的方法,在一些实施例中,对摄像头采集的第一图像进行对象识别,确定第一图像中包括的一个或多个对象,具体包括:利用预置的人脸检测算法确定第一图像中包括的人脸图像;利用预置的人体检测算法确定第一图像中包括的人体图像;计算各个人脸图像与人体图像的IoU;确认满足IoU阈值的一组人脸图像与人体图像为一个对象。
结合第一方面提供的方法,在一些实施例中,人脸图像的中点P1与人体图像的中点P2的中点P3,为标记的中点。
结合第一方面提供的方法,在一些实施例中,第一窗口以画中画的形式显示在第一界面的预览窗中。
实施上述方法,可以使得用户在一个用户界面中即可同时查看原始图像以及特写图像。
结合第一方面提供的方法,在一些实施例中,第一窗口与预览窗中的第一对象不重叠。
实施上述方法,可以使得第一窗口和预览窗中的第一对象都可以被用户看到,不会出现第一对象被遮挡影响用户预览第一对象的情况。
第二方面,本申请提供了一种电子设备,该电子设备包括一个或多个处理器和一个或多个存储器;其中,一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得电子设备执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
第三方面,本申请提供一种计算机可读存储介质,包括指令,当上述指令在电子设备上运行时,使得上述电子设备执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
可以理解地,上述第二方面提供的电子设备、第三方面提供的计算机存储介质均用于执行本申请所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
图1A-图1O是本申请实施例提供一组用户界面示意图;
图2A-图2G是本申请实施例提供一组用户界面示意图;
图3A-图3C是本申请实施例提供一组用户界面示意图;
图3D是本申请实施例提供保存特写视频的示意图;
图4是本申请实施例提供的终端100在主角模式下进行拍摄的流程图;
图5A是本申请实施例提供的终端100显示摄像头采集的图像的示意图;
图5B是本申请实施例提供的终端100执行对象识别与标记的流程图;
图5C是本申请实施例提供的终端100确定图像中的人脸图像和人体图像的示意图;
图5D是本申请实施例提供的终端100确定选择框的显示位置的示意图;
图6A是本申请实施例提供的终端100在小窗中显示以主角为中心的特写图像的流程图;
图6B是本申请实施例提供的终端100确定特写图像的尺寸的流程图;
图6C-图6D是本申请实施例提供的终端100对特写图像进行自适应调整以适应窗口展示的示意图;
图7A是本申请实施例提供的多对象场景下对象不重叠的一帧图像;
图7B是本申请实施例提供的多对象场景下对象重叠的一帧图像;
图7C-图7D是本申请实施例提供的终端100利用IoU位置定位主角的示意图;
图8是本申请实施例提供的终端100确定图像中主角的ReID距离示意图;
图9A是本申请实施例提供的另一种终端100在主角模式下进行拍摄的流程图;
图9B是本申请实施例提供的另一种终端100在主角模式下进行拍摄的流程图;
图10是本申请实施例提供的终端100的系统结构示意图;
图11是本申请实施例提供的终端100的硬件结构示意图。
具体实施方式
本申请以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。
在现有的自动追踪拍摄模式下,在选定拍摄主角之后,终端设备最后拍摄并保存的视频为被选中主角的特写视频。特写视频中主角附近的图像内容大多数情况下是不完整的。这样,最终得到的视频忽略了拍摄过程中除主角之外的其他内容。用户无法通过难以从上述视频中获取拍摄时主角所处的环境(主角周围对象的状态和动作等)。
因此,本申请实施例提供了一种拍摄方法。该方法可应用于手机、平板电脑等终端设备上。后续统一使用终端100指代上述终端设备。
不限于手机、平板电脑,终端100还可以是桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmentedreality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificialintelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备,本申请实施例对该终端的具体类型不作特殊限制。
实施本申请实施例提供的拍摄方法,终端100在确定拍摄主角之后,可同时生成两个视频,记为原始视频和特写视频。主角是指录制视频过程中的追焦对象。在一些示例中,主角是用户选定的。可选的,主角还可以终端100自动识别出来的,例如,终端100可将当前对焦点对应的对象设定为主角,或者,终端100可将当前取景范围内的图像占比最大的对象设定为主角,或者,终端100还可将语义分析图像内容确定的对象设定为主角。
其中,启用摄像头后,摄像头采集的图像可称为RAW图;终端100基于RAW图可以分流得到用于预览窗显示的图像流;图像流中的图像帧可称为原始图像;原始视频是录制原始图像生成的视频。上述预览窗包括预览过程中显示原始图像的窗口,和录制过程中显示原始图像的窗口。特写图像是定位上述RAW图像和/或原始图像中的主角后,裁剪得到的包括主角的图像;特写视频是录制特写图像生成的视频。
在录制视频的过程中,终端100可同时显示上述原始视频和特写视频,以供用户预览。
这样,在选定主角之后,用户既可以拍得追焦主角的特写视频,又可以同时得到基于预览窗显示的原始图像录制得到的原始视频。
特别的,实施本申请实施例提供的拍摄方法,终端100可以通过计算在后图像帧中各个对象与在前图像帧中的主角的相似距离,确定在后图像帧中的主角,从而实现多对象场景中的主角追踪。其中,在后图像帧中的一个对象与在前图像帧中的主角的相似距离越小,则表示上述对象与上述主角越相似。与在前图像帧中主角的相似距离最小的且满足最小相似距离阈值的对象,即在后图像帧中的主角。相似距离是基于相似度和/或图像交并比IoU得到的,反映图像内容相似性的指标。在本申请实施例中,相似距离包括IoU距离、ReID距离,或者IoU距离与ReID距离的和。
下面具体介绍终端100实施本申请实施例提供的拍摄方法的用户示意图。
首先,图1A示例性示出了终端100启用摄像头执行拍摄动作的用户界面11。
如图1A所示,用户界面11可包括菜单栏111、拍摄控件112、预览窗113、回看控件114、转换控件115。
菜单栏111中可显示有多个拍摄模式选项,例如夜景、录像、拍照、人像等拍摄模式。夜景模式可用于光线较暗的场景下拍摄照片,例如夜晚拍摄照片。录像模式可用于录制视频。拍照模式可用于日光场景下拍摄照片。人像模式可用于拍摄人物特写照片。
在本申请实施例中,菜单栏111还包括主角模式。主角模式对应本申请实施例提供的拍摄方法:在拍摄视频的过程中,确定并自动追踪视频中的主角,保存原始视频和以主角为拍摄中心的主角特写视频。
本申请的主角模式可以应用于预览场景、录制过程、直播场景和视频通话等场景。其中预览场景是指用户打开相机应用,开启录制模式,但没有点击快门键开始录制的场景;录制过程是指,用户打开相机应用,开启录制模式,点击快门键开始录制到结束录制之间的过程;预览框在预览场景和录制过程中界面都会显示,如图1D中的预览窗113。
可选的,预览场景下开启主角模式,界面可以显示如图1D所示的预览窗113和小窗141;录制过程中开启主角模式,界面也可以显示如图1D所示的录制过程中的预览窗113和小窗141。可选的,在直播场景下,当主播开启主角模式,主播界面可以显示如图1D所示的预览窗113和小窗141,而观众侧可以显示预览窗113中的内容,也可以显示小窗141的内容,还可以同时显示预览窗113和小窗141中的内容,可以由主播来设置确定和更改,也可以由观众来设置确定和更改,还可以默认设置无法更改。可选的,视频通话场景类似于直播场景,例如人物A和人物B在进行视频通话,人物A开启主角模式,人物A的界面除包括如图1D所示的预览窗113外,还包括显示人物B的小窗和小窗141,上述三者可以进行切换显示;而人物B的界面除了显示人物A的小窗外,还可以包括显示人物A的预览窗113的内容和显示人物A的小窗141的内容,或者上述三者中的两者,窗口也可以进行切换显示。
可以理解的本申请以预览场景或者录制过程为例进行说明,后续所限定的实施例的方法也可以应用于直播场景和视频通话等场景,本申请不进行限定。
拍摄控件112可用于接收用户的拍摄操作。在拍照场景下(包括拍照模式、人像模式、夜景模式),上述拍摄操作即作用于拍摄控件112的控制拍照的操作。在录制视频的场景下(录像模式),上述拍摄操作包括作用于拍摄控件112的开始录制的操作和结束录制的操作。
预览窗113可用于实时地显示摄像头采集的图像帧序列。预览窗113中显示图像可称为原始图像。在本申请实施例中,在点击拍摄控件112开始录制视频后,用于显示图像的窗口也称为预览窗。
回看控件114可用于查看前一次拍摄的照片或视频。一般的,回看控件114可显示前一次拍摄的照片的缩略图或前一次拍摄的视频的首帧图像的缩略图。
转换控件115可用于切换正在使用的取景摄像头。若当前正在使用的采集图像的摄像头为前置摄像头,当检测到作用于转换控件115的用户操作后,响应于上述操作,终端设备100可启用后置摄像头采集图像。反之,若当前正在使用的采集图像的摄像头为后置摄像头,当检测到作用于转换控件115的用户操作后,响应于上述操作,终端设备100可启用前置摄像头采集图像。
用户界面11还可包括设置栏116。设置栏116中可显示有多个拍摄参数设置控件(拍摄控件)。一个拍摄控件用于设置摄像头的一类参数,从而改变摄像头采集到的图像。例如,设置栏116可显示有光圈1161、闪光灯1162、滤镜1164等拍摄控件。光圈1161可用于调整摄像头光圈大小,从而改变摄像头采集到的图像的画面亮度;闪光灯1162可用于开启或关闭闪光灯,从而改变摄像头采集到的图像的画面亮度;滤镜1164可用于选择滤镜风格,进而调整图像色彩。设置栏116还可包括设置控件1165。设置控件1165可用于提供更多的用于调整摄像头拍摄参数或图像优化参数的控件,例如白平衡控件、ISO控件、美颜控件、美体控件等等,从而为用户提供更丰富的拍摄服务。
默认的,在启用摄像头拍摄时,终端100可首先选择拍照模式,参考用户界面11。在此过程中,终端100可检测到作用于菜单栏111选择主角模式的用户操作,例如点击主角拍摄模式选项的操作,又或者滑动菜单栏111选择主角拍摄模式选项的操作等。响应于上述操作,终端100可确定开启主角模式进行拍摄。
图1B示例性示出了终端100在主角模式下进行拍摄的用户界面12。
在选择主角模式之后,终端100可对摄像头采集的图像进行图像内容识别(对象识别),识别该图像中包括的对象。上述对象包括但不限于人、动物、植物。本申请实施例后续主要以人为例进行说明。在终端100在预览窗113中显示摄像头采集的图像的同时,终端100还可在识别到的各个对象上显示选择框。
参考用户界面12,某一时刻摄像头采集的图像中包括人物1、人物2、人物3。终端100在接收到摄像头采集并生成的上述图像之后,在显示上述图像之前,可利用预设的对象识别算法识别图像中包括的对象。这里,对象识别算法可以为人脸识别算法、人体识别算法。这时,终端100可识别到上述图像中包括人物1、人物2、人物3这3个对象。
一方面,终端100可在预览窗113中显示上述包括人物1、人物2、人物3的图像。同时,终端100还可在上述各个对象上显示选择框,例如对应人物1的选择框121、对应人物2的选择框122、对应人物3的选择框123。这时,用户可以通过上述选择框确认视频主角。
同时,用户界面12还可显示提示语125,例如“请点击主角人物,开启自动追焦录像”。提示语125提示用于确定视频主角。根据提示语125的提示,用户可点击上述选择框中的任意一个。用户点击操作作用于的选择框对应的对象即用户确定的视频主角。
在一些示例中,不限于上述用户界面12中介绍的人物1、2、3,终端100还支持识别动物、植物类型的对象。相应的,上述对象识别算法还包括针对一种或多种动物的识别算法,以及针对一种或多种植物的识别算法,本申请实施例对此不作限制。
用户界面12(主角模式拍摄界面)还可包括焦距控件126、美颜控件127。焦距控件126可用于设置摄像头的焦距,以调整摄像头的取景范围。摄像头的取景范围变化时,预览窗中显示的图像会相应地变化。美颜控件127可用于调整图像中的人物的人脸图像。当检测作用于美颜控件127的用户操作之后,终端100可对图像中的人物进行美颜处理,并在预览窗中显示美颜处理后的图像。用户界面12还可显示有其他拍摄控件,这里不再一一例举。
在显示图1B所示的用户界面12时,终端100可检测到作用于任一选择框的用户操作。响应于上述操作,终端100可确定上述选择框对应的对象为主角。例如,参考图1C所示的用户界面13,终端100可检测到作用于选择框123的用户操作。响应于上述操作,终端100可确定选择框123对应的人物3为拍摄主角。
随后,终端100可在预览窗113中以画中画的形式显示一个小窗,并在该小窗中显示人物3的特写图像。上述特写图像是指在原始图像(预览窗中显示的图像)的基础上,定位原始图像中的主角,然后裁剪得到的。在另一些示例中,上述特写图像还可以是在RAW图的基础上,定位RAW图像中的主角,然后裁剪得到的。
图1D示例性示出了终端100显示小窗并在小窗中显示人物3的特写图像的用户界面14。
如图1D所示,用户界面14的预览窗113中可包括小窗141。此时,小窗141中可显示人物3的特写图像。随着预览窗113中显示的图像的变化,小窗141中显示的图像也会相应的变化。并且,小窗141中显示的始终为以人物3为中心的图像。这样,小窗141中显示的图像所构成的视频即人物3的特写视频。
可选的,小窗141中显示的特写图像与预览窗113中显示的原始图像还可来自不同的摄像头。例如,小窗141中显示的特写图像可以来自于长焦摄像头采集的图像,预览窗113中显示的原始图像可以来自于广角摄像头采集的图像。普通摄像头和广角摄像头可以同时采集图像。长焦摄像头和广角摄像头采集的图像可以通过时间戳进行对应。这时,小窗141中显示的特写图像是在普通摄像头采集的图像上裁剪得到的,而上述普通摄像头采集的图像对应同一时刻预览窗113中显示的广角摄像头采集的图像。这样,用户可以在预览窗113浏览更大范围的景观,同时,在小窗141中显示细节更多的主角图像。上述的广角和长焦仅是举例,小窗141中的显示图像还可以来自于广角摄像头、超广角摄像头、黑白摄像头、多光谱摄像头等任意摄像头。同样的预览窗113中显示的图像也可以自于超广角摄像头、长焦摄像头、黑白摄像头、多光谱摄像头等任意摄像头。
在确定人物3为拍摄主角之后,人物3对应的选择框123可变成图1D中选中框142所示的样子。用户可通过选中框142确定已选中的拍摄主角。不限于用户界面14中所示的选中框142,终端100还可显示其他样式的图标,以表示人物3被选中为主角,以示区分,例如图1C中框123变色成红色或者蓝色等。
在确定主角之后,终端100可检测到开始拍摄的用户操作。在开始拍摄之后,终端100还可检测到结束拍摄的用户操作。响应于上述开始拍摄和结束拍摄的操作,终端100可将上述操作期间摄像头采集的图像帧序列保存为视频。
参考图1E所示的用户界面15,终端100可检测到作用于拍摄控件112的用户操作。上述作用于拍摄控件112的用户操作可称为开始拍摄的用户操作。响应于上述开始拍摄的用户操作,终端100可将摄像头采集的图像帧序列写入到特定的存储空间中。
一方面,终端100可将摄像头采集的原始图像(预览窗113中显示的未经裁剪的图像)写入到特定的存储空间中,从而生成原始视频;另一方面,终端100还可将以主角为中心的特写图像(小窗141中显示的图像)写入到特定的存储空间中,从而生成特写视频。
参考图1F所示的用户界面16,在检测到作用于拍摄控件112的用户操作之后,终端100可将拍摄控件112变更为用户界面16中拍摄控件161。拍摄控件161可用于指示当前正处于录制过程中。
在开始拍摄之后的某一时刻,终端100可检测到作用于拍摄控件161的用户操作,参考图1G所示的用户界面17。上述作用于拍摄控件161的用户操作可称为结束拍摄的用户操作。响应于结束拍摄的用户操作,终端100可将原始图像帧序列保存为一个视频,即原始视频,原始视频可以保存到存储器或者其他存储空间,原始图像帧序也可独立于原始视频保存于上述存储器或其他存储空间。同时,终端100还可将特写图像帧序列保存为一个视频,即特写视频,特写视频可以保存到存储器或者其他存储空间,特写视频帧也可独立于特写视频保存于上述存储器或其他存储空间。
在检测到结束拍摄的用户操作之后,终端100可显示图1H所示的用户界面18。
如用户界面18所示,终端100可在回看控件114中显示表征上述原始视频和特写视频的标识。一般的,上述标识可以为上述原始视频的第一帧图像的缩略图、最后一帧图像的缩略图或封面,或者上述特写视频的第一帧视频的缩略图、最后一帧图像的缩略图或封面。
同时,在检测到结束拍摄的用户操作之后,终端100可将拍摄控件161变更为拍摄控件112,已指示用户已结束视频录制。
在显示用户界面18的过程中,终端100可检测到作用于回看控件114的用户操作。响应于上述操作,终端100可显示最近拍摄的视频。这时,最近拍摄的视频为前述示出的在主角模式下拍摄的视频。
图1I示例性示出了终端100显示最近拍摄的视频的用户界面19。
用户界面19可包括窗口191。窗口191可用于播放最近拍摄的视频。可选的,终端100可首先在窗口191中播放前述主角模式下拍摄的原始视频。在上述浏览原始视频的过程中,终端100可检测到左滑操作。响应于上述左滑操作,终端100可显示图1J所示的用户界面20。此时,如用户界面20所示,终端100可在窗口191中播放主角模式下拍摄的特写视频。
其中,在窗口191中播放原始视频的过程中,终端100可显示提示语192。提示语192例如“左滑浏览主角特写视频”。通过上述提示语,用户可执行左滑操作,从而获取特写视频。
在一些实施例中,终端100也可通过图1K-图1L所示的方法,开启主角模式。如图1K所示,用于开启主角模式的控件也可设置在录像模式的界面中,例如控件1166。在录像模式下,终端100可检测到作用于控件1166的用户操作。响应于上述操作,终端100可开启主角模式,参考图1L。
在一些实施例中,终端100也可以在开启主角时,根据用户操作确定小窗的显示位置。参考图1K所示的用户界面,在检测到点击控件1166的用户操作之后,终端100可显示图1M所示的用户界面。此时,预览窗113中可显示控件101。控件101可指示一种小窗的显示布局(小窗显示在左下方、或右下方、右上方、左上方等)。可选的,上述一种布局可以是用户上一次使用主角模式的布局,还可以是默认的布局。用户可以直接使用上述布局开启主角模式的拍摄。可选的,用户还可以切换布局。例如,参考图1N所示的用户界面,终端100可检测到点击控件101的用户操作,响应于上述操作,终端100可显示图1O所示的用户界面。此时,预览窗113中还可显示控件102。控件102指示与控件101不同一种小窗的显示布局。这样,用户可以通过控件102切换小窗布局。
通过主角模式所示的拍摄方法,用户可以选定一个拍摄主角。在录制视频的过程中,终端100可以自动追踪图像中的主角运动轨迹。在录制过程中,终端100可同时显示上述原始视频和特写视频。在保存视频时,终端100可保存两个视频:原始视频和特写视频。
这样,用户可以在一次录制过程中得到两个视频。其中,原始视频可以保留录制过程中摄像头采集到的全部图像内容。特写视频可以集中地展示用户选定的主角的视频内容。
在一些实施例中,终端100也可先检测到作用于拍摄控件112的开始拍摄的用户操作,开始录制视频。在录制视频的过程中,终端100可实时地检测图像包含的对象,并显示与各个对象对应的选择框。在检测到用户点击某一选择框的用户操作之后,终端100可确定该选择框对应的对象为主角,并显示展示有主角特写图像的小窗,同时,终端100还可录制小窗中的特写图像。
在上述方法中,特写视频的视频长度一定小于原始视频。
不限于相机应用的录像场景,上述拍摄方法还可以应用于视频通话、直播等场景。例如,在视频通话时,用户也以选择主角,然后,终端100可生成两条图像流,并将上述两条图像流发送给对方联系人。在直播场景中,用户也可以选定主角,特别的,上述主角可以是物品。这样,观看直播的用户可以看到包括主播的原始图像,也可同时浏览到主播选定的主角(物品)的特写图像。
在执行图1A-图1H所示的拍摄操作之后,终端100可保存根据上述拍摄操作得到的视频(原始视频和特写视频)。终端100可提供浏览已拍摄视频的功能。用户可通过终端100提供的浏功能,浏览上述摄的视频。
图2A示例性示出了终端100展示本地保存的视频和/或图片的用户界面21。
如图2A所示,用户界面21可显示多个缩略图图标。一个缩略图图标对应一次拍摄操作得到的视频或图片。图标213可对应前述图1A-图1H所示的拍摄操作生成的视频。
终端100可检测到作用于图标213的用户操作。响应于上述操作,终端100可展示已拍摄的原始视频和特写视频,参考图2B。
图2B所示的用户界面22可包括窗口221。窗口221可用于展示已拍摄的视频或图片。这里,窗口221展示的图1A-图1H所示的拍摄操作得到的视频。在本申请实施例中,通过主角模式拍摄得到的视频包括原始视频和特写视频。因此,窗口221可展示有视频222和视频223。其中视频222为主角模式拍摄得到的原始视频。视频223为主角模式拍摄得到的特写视频。
在一些示例中,终端100在显示用户界面22时,可同时播放视频222和视频223(可选的,可以以图示2B上下分别播放,也可以以录制的时候的画中画的形式进行播放)。这样,用户可以同时浏览原始视频和特写视频。在一些示例中,终端100也可先后播放视频222和视频223(可选的,先播放视频222再播放视频223),以便用户阅览。
可选的,在用户界面22的基础上,终端100可检测到作用于视频222或视频223的用户操作,例如点击操作。以视频222为例,在检测到作用于视频222的点击操作之后,终端100可显示图1I所示的用户界面19,进一步展示原始视频。对应的,在检测到作用于视频223的点击操作之后,终端100可显示图1J所示的用户界面20,进一步展示特写视频。
可选的,在图2A所示的用户界面21的基础上,在检测到作用于图标213的用户操作之后,终端100也可直接显示图1I所示的用户界面19,展示原始视频。然后,在检测到左滑操作之后,终端100可显示图1J所示的用户界面20,展示特写视频。
图2C示例性示出了另一种终端100展示本地保存的视频和/或图片的用户界面23。
在用户界面23中,终端100可以显示两个缩略图图标,例如图标231,图标232。这两个缩略图图标分别对应主角模式下拍摄得到的原始视频和特写视频。例如,图标231可对应上述原始视频,图标232可对应上述特写视频。
在检测到作用于图标231的用户操作之后,终端100可显示图1I所示的用户界面19,展示原始视频。在检测到作用于图标232的用户操作之后,终端100可显示图1J所示的用户界面20,展示特写视频。
同样的,在显示图1I所示的用户界面19(原始视频)之后,用户可通过左滑或右滑操作浏览特写视频。在显示图1J所示的用户界面20(特写视频)之后,用户可通过右滑或左滑操作浏览原始视频。
在一些实施例中,终端100还可在录制视频的过程中切换主角。参考图2D所示的用户界面24,终端100可检测到作用于选择框122的用户操作。响应于上述操作,终端100可将选择框122对应的人物2设定为主角。参考图2E所示的用户界面25,在将人物2设定为主角之后,终端100可在小窗141中显示人物2的特写图像。
其中,在切换主角的过程中,小窗141可以直接显示切换后的人物2的特写图像,呈现跳跃式的显示效果。可选的,小窗141还可通过平滑策略实现非跳跃式的主角切换显示效果。例如,在将主角切换为人物2之后,终端100可根据预览窗113中人物3到人物2的路径,确定一组平滑移动的图像帧,然后在小窗141中显示上述图像帧,以实现非跳跃式的主角切换显示。例如,终端100还可使用固定的过渡效果,连接切换前后的主角的特写图像。上述固定的过渡效果例如视频编辑中常用的叠加、旋涡、平移等等。本申请实施例对此不作限定。可选的,上述切换过程可以在预览场景中实现,也可以在录制过程中实现,还可以在直播场景中实现,也可以在视频通话过程中实现。
结合图1B中介绍的焦距控件126.在使用焦距控件126切换当前焦距(或者摄像头)时,小窗141中显示的特写图像的切换效果也可参考上述角色切换时的切换效果。例如,参考图2F-图2G所示的用户界面,在检测到将当期焦距从1倍焦距(1×)变更为2倍焦距(2×)时,可选的,终端100可直接在小窗141中显示基于2×的原始图像得到的特写图像;可选的,终端100还可基于1×和2×的原始图像确定一组具有渐变过渡效果的图像帧,从而实现小窗141中非跳跃式的焦距切换显示效果;可选的,终端100也可使用叠加、旋涡、平移等固定的过渡效果实现小窗141中非跳跃式的焦距切换显示效果,这里不再赘述。
可选的,用于展示特写图像的窗口还可包括关闭控件和转置控件。关闭控件可用于关闭上述窗口。转置控件可用于调整上述窗口的尺寸。
参考图3A所示的用户界面31,小窗141(展示特写图像的窗口)可包括关闭控件311、转置控件312。关闭控件311可用于关闭小窗141。
在一些示例中,在关闭小窗141之后,终端100可取消之前确定的主角,例如前述人物3。然后,终端100可指示用户重新在已识别到的对象中选择拍摄主角。这时,终端100可基于重新确定的主角,再次在预览窗113中显示小窗141。此时,小窗141中显示新的主角的特写图像。
特别的,在开始录制视频之后,若检测到关闭小窗141的用户操作,终端100可保存已录制的特写视频。在结束录制之前,若再次检测到用户选定主角的操作,终端100可重新生成小窗、展示主角的特写图像,并录制新的特写视频。在结束录制之后,终端100可分别保存特写视频,也可将上述多个特写视频合并成一个。
参考图3D,在T1-T2构成的录制视频的时间内,终端100可在T3时检测到关闭小窗的操作,在T4时检测到点击某一选择框选中主角的操作;在T5时检测到关闭小窗的操作,在T6时检测到点击某一选择框选中主角的操作。这时,终端100可得到特写视频A、B、C。可选的,终端100可分别保存上述3个特写视频。可选的,终端100也可将上述3个特写视频保存为一个。可选的,特写视频A、B、C也可分保存为一个视频,用户可以单独的浏览特写视频A、特写视频B或特写视频C。可选的,终端100还可根据各个特写视频的主角,将统一主角的特写视频合并保存为一个视频。例如,假设特写视频A、特写视频B的主角为人物1、特写视频C的主角为人物2,这时,终端100可以将特写视频A、特写视频B保存为一个视频,将特写视频C保存为一个视频。
在保存多个特写视频的场景下,可选的,在用户浏览上述视频时,终端100可以单独的一个一个地展示上述多个特写视频,也可以统一地展示上述多个视频。上述统一展示例如特写视频A、B、C可以按比例在同一界面同时播放,可选的,当一个界面展示多个特写视频时,终端100还可同时播放不同主角的特写,相同主角视频先后播放。例如假设特写视频A、特写视频B的主角为人物1、特写视频C的主角为人物2,这时,终端100可以先同时播放特写视频A和特写视频C,当特写视频A播放完后,终端100可以继续播放特写视频B。
可选的,原始视频也可以与多个特写视频一同展示。其中,特写视频对应在原始视频中出现的实现,先后播放。
在一些示例中,关闭控件311可用于暂停录制特写视频。此时,终端100不会取消之前确定主角。在暂停录制之后,关闭控件311可更换为开启控件。然后,终端100可继续以上述主角为中心,录制特写视频。
在另一些示例中,在关闭小窗141后,终端100仅不显示该小窗,即不显示之前确定的主角(人物3)的特写图像,但是,终端100仍然保持之前确定的主角。这时,用户通过点击选中框142的操作,取消已选中的主角人物3,从而重新在已识别到的对象中选择新的主角。这里,在取消之前选择的主角之后,终端100可关闭小窗。在确定新的主角后,终端100可重新显示小窗。
转置控件312可用于调整小窗141的尺寸。
参考图3B所示的用户界面32,终端100可检测到作用于转置控件312的用户操作。响应于上述操作,终端100可显示图3C所示的用户界面33。在用户界面33中,小窗141由原来的竖向窗口(竖窗)变更为横向窗口(横窗)。这样,用户可用过转置控件312设置特写视频的视频效果,以满足自身个性化需求。
可选的,参考图1D,在检测到确定主角的用户操作(选中人物3)之后,终端100可默认的显示小窗141。在小窗141中显示人物3的特写图像。可选的,终端100也可默认的显示图3C所示的横窗,本申请实施例对此不作限制。
在一些示例中,用于展示特写图像的小窗可固定的显示在左下方,参考图1D或图3C所示的小窗141。在一些示例中,上述小窗还可根据预览窗中的主角的位置,调整显示位置,以避免对预览窗中主角的造成遮挡。
可选的,终端100还可根据用户操作调整小窗的位置和大小。
例如,在一些示例中,终端100还可检测到作用于小窗141的长按操作和拖动操作,响应于上述操作,终端100可将小窗移动到用户拖动操作最后停下的位置。在另一些示例中,终端100还可检测到作用于小窗141的双击操作,响应于上述操作,终端100可将放大或缩小小窗141。
不限于上述介绍的长按操作、拖动操作以及双击操作,终端100还可通过手势识别和语音识别来控制调整小窗的位置和大小。例如,终端100可通过摄像头采集的图像识别到用户做出了握拳手势,响应于上述握拳手势,终端100可缩小小窗141。终端100可通过摄像头采集的图像识别到用户做出了张手手势,响应于上述张手手势,终端100可放大小窗141。
图4示例性示出了终端100在主角模式下进行拍摄的流程图。下面结合图4具体说明终端100实现主角模式的拍摄方法的处理流程。
S401:检测到作用于第一控件的用户操作,确定开启主角模式。
实施主角模式对应的拍摄方法需要实时地识别摄像头采集的图像中的对象(人物、动物、植物等)。实时地识别图像中的对象需要占用终端100的计算资源。因此,终端100可为用户提供开启或关闭主角模式的控件,记为第一控件。这样,用户可根据自身需求确定是否开启主角模式,进而避免占用终端100计算资源,降低终端100的计算效率,影响用户使用体验。
在本申请实施例中,默认的,在开启摄像头时,主角模式是关闭的。同时,终端100可显示上述第一控件。当检测到作用于上述第一控件的用户操作之后,终端100可开启主角模式,执行主角模式对应的拍摄算法,从而为用户提供主角模式对应的拍摄服务。
参考图1A所示的用户界面11,菜单栏111中的主角模式选项可称为第一控件。当检测到作用于主角模式选项的用户操作之后,终端100可为用户提供图1A-图1J所示的拍摄服务。
S402:对摄像头采集的第i帧图像进行对象检测,确定第i帧图像中的对象。
参考图1B所示的用户界面,在主角模式下,终端100首先需要根据用户的选择操作确定主角。这时,终端100需要首先识别摄像头采集到的图像中包括的对象,然后将识别到的对象标记出来。这样,用户可以在上述识别到的对象中选择任意对象作为主角。
具体的,图5A示例性示出了在开启主角模式之后终端100显示摄像头采集的图像的示意图。在图5A中,左侧的图像帧序列可表示终端100摄像头实时采集的图像帧。其中,T1可表示检测到第一控件的用户操作对应的时刻,即开启主角模式的时刻。
在现有的拍摄方法中,在获取到摄像头采集的一帧图像之后,终端100可将上述图像帧发送到显示器,从而显示上述图像帧,即图5A中的S501所示的处理过程。而在开启主角模式后,即在T1时刻之后,终端100还需要对摄像头采集的图像帧进行对象识别,确定该图像帧中包括的对象。这样,在显示该图像帧的同时,终端100可在该图像帧中显示与识别到的对象对应的标记。这一过程为即图5A中的S502所示的处理过程。
以图1B中的预览窗113中显示的图像帧为例,上述图像帧可以为开启主角模式之后的摄像头采集的第i帧图像。在获取到摄像头采集的上述图像帧之后,一方面,终端100可将上述图像帧发送的显示器。利用显示器的显示能力,终端100可以在屏幕上显示上述图像帧,从而得到图1B所示的用户界面12。另一方面,终端100可利用预设的对象识别算法,识别上述图像帧中的对象。这时,终端100可识别到上述图像帧包括人物1、人物2、人物3这3个对象。于是,终端100可指示显示器在上述识别到的对象上显示选择框(标记),例如选择框121、122、123。可以理解的,在终端100支持识别动物、植物等对象的基础下,终端100可相应地在上述动物、植物的图像上显示选择框。用户也可选择上述动物、植物作为主角。
这样,用户在预览窗113中既可以浏览到摄像头实施采集的图像,又可以同时获取到终端100识别到的对象,即支持设定的主角。于是,用户可以通过终端100显示的与各个对象对应的标记(选择框),选择任意对象作为识别主角。
上述对象识别算法是预设的。在一些示例中,对象识别算法识别的对象包括人,因此,上述对象识别算法又称人物识别算法。在一些示例中,上述对象识别算法识别的对象还包括动物、植物。对象识别算法识别可支持识别的对象取决于开发人员的预先设定。
图5B示例性示出了S502中终端100执行对象识别与标记的流程图。
S503:对摄像头采集的第i帧图像进行人脸识别和人体识别,确定第i帧中的人脸图像和人体图像。
终端100中可阈值有人脸识别算法和人体识别算法。人脸识别算法可用于识别图像中的人脸图像。人体识别算法可用于识别图像中的人体图像,包括人脸、躯体、四肢。
在获取的第i帧图像之后,终端100可分别执行人脸识别算法和人体识别算法,进而确定第i帧图像中的人脸图像和人体图像。如图5C所示的第i帧图像,通过人脸识别算法,终端100可确定该帧图像包括人脸face1、face2、face3;通过人体识别算法,终端100可确定该帧图像包括人体body1、body2、body3。
S504:对识别到的人脸图像和人体图像进行匹配,确定第i帧图像中包括的对象。
在确定第i帧中的人脸图像和人体图像之后,终端100可计算各个人脸图像和人体图像的交并比(intersection over union,最小),记为IoUface&body。在本申请实施例中,IoUface&body可用于表示一个人脸图像和一个人体图像的关联度。IoUface&body越高,则对应的人脸图像和人体图像的关联度越高,则该组人脸图像和人体图像可视为一个人物。然后,终端100可利用上述IoUface&body将识别到的人脸图像和人体图像进行匹配,确定第i帧图像中包括的对象。
根据经验可知,图像中两个不重叠人中的任意一个人的人脸与对方的人体的交集为0,而与自身的人体的交集基本上接近于自身人脸。因此,IoUface&body越小越接近0,则该IoUface&body对应的人脸和人体不匹配,即不可视为同一人的人脸和人体。
具体的,终端100中可预设有第一阈值M1。当IoUface&body≥M1时,该IoUface&body对应的人脸和人体匹配,反之,则不匹配。匹配的一组人脸图像和人体图像可确定一个对象。这样,终端100可基于已识别到的人脸图像和人体图像确定出第i帧图像中包括的M个对象。
以图5C所示的人脸face1、face2、face3和人体body1、body2、body3为例,终端100可分别计算face1、face2、face3与body1、body2、body3的IoU。以face1为例,face1与body2、body3的IoU的取值均为0,face1与body1的IoU的取值不为0且满足M1,这时,终端100可确定face1与body1可构成一个对象(即人物1)。同样的,终端100可确定face2与body2可构成一个对象(即人物2),face3与body3可构成一个对象(即人物3)。
其中,为提升计算效率,在确定一个对象之后,在后续计算各个人脸图像与人体图像的IoU时,终端100可不再计算上述已构成一个对象的人脸图像与人体图像的IoU。例如,终端100可首先计算face1与所有body(body1、body2、body3)的IoU。这时,终端100可确定与face1匹配的body1,于是,终端100可确定face1与body1构成一个对象。然后,终端100可计算face2与剩余所有body(body2、body3)的IoU。这时,终端100可不再计算face2与body1的IoU,以减少冗余计算,提升计算效率。
在一些示例中,人体检测算法输出的人体图像也可是不包括人脸在内的图像,即颈部到脚部的图像。
可选的,终端100可设置最大对象数量,即可识别到一帧图像中的包括的对象的数量。终端100输出的一帧图像中的识别到对象的数量不超过上述最大对象数量。
可选的,在S503中,终端100也可直接使用人体检测算法识别第i帧图像中的对象。这时,终端100也无需进行人脸图像和人体图像匹配。上述方法在单人场景(图像帧中只有一个人物对象)中,以及多人且人物之间不重叠的场景中,能够较好的识别第i帧图像中包括的对象。但是,当拍摄的人物较多且存在人物重叠的场景下,上述方法识别第i帧图像中包括的对象的准确率就较低,容易出现识别错位或根本识别不到重叠的人物。
因此,在多人场景中,特别是人物重叠的场景,S503-S504所示对象识别方法可以更稳定地且正确的识别到图像帧中包括的多个对象。
S505:显示与第i帧图像中包括的各个对象及其对应的标记。
在确定第i帧图像中包括M个对象之后,终端100可创建与上述M个对象分别对应的标记。在显示上述第i帧图像时,终端100可同时显示上述标记。该标记可用于提示用户终端100识别到的可确定为主角的对象。进一步的,该标记可用于用户指示终端100确定哪一对象为主角。
结合图5C所示的第i帧图像,在确定第i帧图像中包括的3个对象(人物1、人物2、人物3)之后,终端100可确定与上述3个对象对应的3个标记。参考图1B所示的用户界面12,上述标记可以为预览窗113中的选择框。终端100在显示上述第i帧图像时,终端100可显示选择框121、122、123。其中,选择框121、122、123分别用于标记图像中的人物1、人物2、人物3。图5中所示的人体算法是可以识别出包括脸部的人体框,可选的也可以采用别的识别算法,仅识别出人体的人体框(即,人体框不识别人脸部分,仅包括人体部分)。
具体的,选择框的显示位置可基于人脸图像和人体图像确定。图5D示例性示出了终端100确定选择框的显示位置的示意图。
如图5D所示,在识别到人脸图像和人体图像之后,终端100可确定人脸图像和人体图像的中点:人脸图像的中点P1,人体图像的中点P2。基于上述P1、P2,终端100可确定上述人脸图像和人体图像对应的对象(即人物3)的中点P3。选择框123的中点即上述P3。
这样,通过上述选择框,用户既可以确定终端100已识别到的对象:人物1、人物2、人物3。进一步的,用户还可以点击任一选择框(例如选择框123),确定该选择框对应的对象(人物3)为主角。在检测到用户点击任意选择框的用户操作之后,终端100可将上述被点击的选择框对应的对象设定为主角。后续,终端100可在摄像头采集的图像序列中定位上述主角,从而实现主角追踪,生成主角特写视频。
S403:判断是否检测到选择第i帧图像中第一对象的用户操作。如果是,则确定所述第一对象为主角,将第i帧图像的帧索引号FrameID设置为1;如果否,则获取第i帧图像的下一帧图像(i=i+1),重复S402。
在终端100执行完S402所示的操作之后,用户可在终端100的屏幕上看到摄像头相机的第i帧图像,以及与第i帧图像中各个对象对应标记(选择框),参考图1B所示的用户界面12。
在显示上述携带有标记的第i帧图像帧之后,终端100可检测到作用于任一标记的用户操作。例如,参考图1C所示的用户界面13,终端100可检测到作用于选择框123的用户操作。响应于上述操作,终端100可确定选择框123对应的对象为主角,即人物3为主角,并将该帧图像的帧索引号FrameID设置为1。上述人物3即第一对象,作用于选择框123的用户操作即选择第一对象的操作。FrameID可用于反映该帧图像是确定主角之后的第几帧图像。FrameID=1表示追焦主角的第一帧。在基于原始图像确定特写图像时,开始追焦主角的第一帧图像的FrameID=1,对应的,基于上述FrameID=1的原始图像得到的特写图像也可携带FrameID标签,且对应的,该特写的FrameID为FrameID=1。
如果在显示上述携带有标记的第i帧图像帧的期间内,终端100未检测到作用于任一选择框的用户操作,则终端100可执行i=i+1的操作,获取第i帧图像的下一帧图像,并重复S402。这样,终端100可以实时地识别摄像头采集到的对象,并显示与之对应的标记,以供用户在任意时刻选定一个主角,进行主角模式的拍摄动作。
S404:生成小窗。
在检测到确定第i帧图像中第一对象为主角的用户操作之后,终端100可生成一个小窗。优选的,该小窗可以以画中画的形式嵌入在预览窗中。
参考图1D所示的用户界面14,小窗141画中画的形式嵌入在预览窗113中。优选的,上述小窗可以为宽高比为9:16(竖窗)或16:9(横窗)的矩形。当然,在其他实施例中,预览窗与小窗与还可以其他方式排列,小窗还可以是呈现其他尺寸和形状,本申请实施例对此不作显示。
S405:在小窗中显示以主角为中心的特写图像。
在生成小窗之后,终端100可在上述小窗中显示以主角为中心的特写图像。上述特写图像是指在摄像头采集的原始图像(预览窗中显示的图像)的基础上,以选定的主角为中心进行裁剪,得到的图像内容为主角的图像。
以上述第i帧图像为例,在确定人物3为主角之后,终端100可以以人物3为中心对上述第i帧图像进行裁剪,得到人物3的特写图像。然后,终端100可以在生成的小窗中显示上述特写图像。
具体的,图6A示例性示出了终端100在小窗中显示以主角为中心的特写图像的流程图。
S601:确定第i帧图像中以主角为中心的特写图像。
S6011:根据第i帧图像中主角的人体图像确定缩放比ZoomRatio。
如果选定的主角在距离摄像头较远,则主角图像在整个原始图像中所占的图像面积越小。这时,以主角为中心的特写图像的尺寸越小。反之,主角图像在整个原始图像中所占的图像面积越大,则主角为中心的特写图像的尺寸越大。
参考图6B所示的第i帧图像,如果主角为人物1,则小窗中期望展示的人物1的特写图像应该为虚线框61围成的图像。这时,虚线框61的尺寸即为第i帧图像中主角的特写图像的尺寸。如果主角为人物3,则小窗中期望展示的人物3的特写图像应该为虚线框62围成的图像。这时,虚线框62的尺寸即为第i帧图像中主角的特写图像的尺寸。
缩放比ZoomRatio用于反映原始图像中的主角的大小。在确定ZoomRatio之后,终端100可确定当前帧中主角的特写图像的尺寸。
具体的,终端100确定ZoomRatio的计算过程如下:
首先,在S402所示的对象识别步骤中,终端100可利用预设的人体识别算法识别图像中的人体图像,例如body1、body2、body3等。在确定人物3为主角之后,终端100可利用人物3的人体图像(body3)的尺寸确定ZoomRatio。
其中,利用人体图像确定ZoomRatio的计算公式(Q1)如下:
其中,maxBboxSize是指识别到的最大的人体图像的尺寸;detectBboxSize是指主角的人体图像的尺寸;minZoomRatio是预设的ZoomRatio的最小值;maxZoomRatio为预设的ZoomRatio的最大值。
S6012:根据ZoomRatio确定特写图像的尺寸:CropRagionWidth、CropRagionHeight。
CropRagionWidth用于表示特写图像的宽,CropRagionHeight用于表示特写图像的高。CropRagionWidth、CropRagionHeight可基于前述介绍的ZoomRatio来确定。具体的,CropRagionWidth、CropRagionHeight的计算公式(Q2、Q3)如下:
其中,WinWidth用于表示小窗的宽;WinHeight用于表示小窗的高。基于WinWidth、WinHeight和ZoomRatio得到的CropRagionWidth、CropRagionHeight刚好可以与小窗的宽、高对应,从而避免在小窗中显示特写图像时发生图像变形的问题。
优选的,当小窗为竖窗时,WinWidth的取值可以为1080p(pixel),WinHeight的取值可以为1920p。当小窗为横窗时,WinWidth的取值可以为1920p,WinHeight的取值可以为1080p。
S6013:根据CropRagionWidth、CropRagionHeight以及对象中点对原始图像进行裁剪,确定以主角中心的特写图像。
在确定CropRagionWidth、CropRagionHeight之后,结合已知的主角的人物中点(P3),终端100可对原始图像进行裁剪得到以主角为中心的特写图像。参考图6B,以P3为中心,宽和高分别为CropRagionWidth、CropRagionHeight所构成的区域内的图像即主角(人物3)的特写图像。
S602:根据小窗的像素尺寸对特写图像进行自适应调整。
参考图6C,在一些示例中,CropRagionWidth、CropRagionHeight与WinWidth、WinHeight分别相等。例如,CropRagionWidth=1080p、CropRagionHeight=1920p,同时,WinWidth=1080p、WinHeight=1920p。这时,按1080p、1920p裁剪得到的特写图像刚好以小窗匹配,终端100可以直接将上述特写图像显示在小窗中。
参考图6D,在一些示例中,CropRagionWidth、CropRagionHeight与WinWidth、WinHeight不相等,但是等比例。例如,CropRagionWidth=540p、CropRagionHeight=960p,而WinWidth=1080p、WinHeight=1920p。这时,终端100可以将对540p、960p的特写图像进行等比例扩大,从而得到1080p、1920p的特写图像。
在确定特写图像的像素尺寸之后,终端100可执行自适应调整的步骤,判断上述像素尺寸是否与小窗的尺寸相匹配。当匹配时,终端100可以不调整(扩充或缩小),参考图6C;当不配时,终端100可以进行调整,参考图6D。本申请中自适应调整包括得到的尺寸与小窗的尺寸相匹配时不进行调整的情况。
S603:在小窗中显示自适应调整后的特写图像。
在完成自适应调整之后,特写图像的尺寸与小窗的尺寸匹配。于是,终端100可以在小窗中显示上述特写图像。
S406:获取FrameID=1之后的第j帧图像,FrameID=1+j。
参考S403中的介绍,在检测到用户确定第一对象为主角的操作之后,终端100可以将上述操作对应的第i帧图像的FrameID设置为1,以表示该帧为确定主角的第一帧图像。
在显示FrameID=1中主角的特写图像时,终端100还可同时获取FrameID=1之后的摄像头采集的图像帧,定位上述图像帧中的主角,并在小窗中显示主角的特写图像,从而实现在小窗中显示特写视频的功能。
下面以FrameID=1之后的第j帧图像帧(FrameID=1+j)为例,具体介绍终端100定位FrameID=1之后的图像帧中的主角的方法。
S407:确定第j帧图像中的对象存在重叠。
在一些示例中,在获取到第j帧图像之后,终端100可以利用人体识别算法首先识别第j帧图像中包括的对象。然后,终端100可利用相似度算法,计算上述各个对象与第j-1帧图像中主角的相似度,进而确定上述各个对象与第j-1帧图像中主角的相似距离(相似距离=1-相似度)。相似距离越小则表示该对象与主角的区别越小,即越相似。因此,第j帧图像中相似距离最小且低于相似距离阈值的对象可被确定为主角。
当然,终端100也可直接使用相似度确定第j帧图像中的主角。这时,第j帧图像中相似度最高且高于相似度阈值的对象可被确定为主角。
然而,每次都计算第j帧图像中各个对象与第j-1帧图像中主角的相似度是十分耗费计算资源的。而且,当第j帧图像中,如果两个或两个以上的对象的图像内容重叠,则上述对象与第j-1帧图像中主角的相似度会受到影响,从而影响主角识别结果的准确性。
于是,在本申请实施例中,在获取到第j帧图像且识别到第j帧图像中包括的对象之后,终端100可首先判断该图像帧中的对象是否重叠,然后根据第j帧图像中的对象是否重叠,终端100可以选用不同的计算方法确定第j帧图像中的主角。上述重叠是指终端100识别到的全部对象的人体图像是否存在重叠,包括主角与非主角的重叠,和主角和非主角和非主角地重叠。
当不重叠时,终端100可通过第j帧图像中所有对象的与第j-1中主角的交并比距离(IoU距离,记为[IoU])来确定第j帧图像的主角。反之,当重叠时,终端100可通过第j帧图像中所有对象的与第j-1中主角的IoU距离和重识别距离(ReID距离,记为[ReID])来确定第j帧图像的主角。
在S402中,终端100已通过人体检测算法识别到的多个对象的人体范围(即人体框已确定)。这时,终端100可利用上述人体框是否相交来判断第j帧图像中的对象是否存在重叠。如图7A所示,第j帧图像任意两个对象不重叠(任意两个对象的人体框不相交),例如人物3与人物4,则终端100确定第j帧图像中的对象不重叠。如图7B所示,第j帧图像中存在至少两个对象重叠,例如人物3与人物4,则第j帧图像中的对象重叠。
S408:计算第j帧图像中所有对象的与第j-1中主角的IoU距离[IoU],确定第j帧图像中的最小IoU距离[IoU]min
在不重叠的情况下,终端100可通过第j帧图像中所有对象的与第j-1中主角的IoU距离确定第j帧图像的主角。
这是因为,在录制视频的过程中,前后两帧图像的时间间隔非常短。以帧率30fps为例,前后两帧的时间间隔为1/30s。这时,在相邻两帧的时间内,一个对象在前后两帧图像中存在较大的IoU距离是比较困难的。因此,在不重叠的情况下,终端100可首先确定第j帧图像中所有对象的与第j-1中主角的IoU距离(也就是相似距离的一种),并确定第j帧图像中的最小IoU距离[IoU]min
具体的,参考图7C,其中,虚线框3”可表示第j-1帧中主角的人体框;虚线框1'可表示第j帧中人物1的人体框;虚线框2'可表示第j帧中人物2的人体框;虚线框3'可表示第j帧中人物3的人体框;虚线框4'可表示第j帧中人物4的人体框。
以虚线框3”和虚线框1'为例,利用上述两个虚线框所构成的区域,终端100可确定虚线框3”和虚线框1'的交并比,记为IoU31。于是,终端100可确定第j帧中人物1与第j-1帧中主角的IoU距离[IoU31]:
[IoU31]=1-IoU31
同样的,终端100可得到第j帧中人物2、3、4与第j-1帧中主角的IoU距离:[IoU32]、[IoU33]、[IoU34]。参考图7C,此时,终端100可确定第j帧图像中的[IoU]min为[IoU33]。IoU距离越小表示两个对象之间位置变化越小。结合相邻两帧之间时间较短,主角在前后两帧中难以产生较大的位移,因此,IoU距离越小对象越可能为主角。
参考前述介绍,在一些实施例中,人体检测算法输出的人体图像也可是不包括人脸在内的图像,即颈部到脚部的图像。这时,终端100可以使用上述不包括人脸的人体图像确定上述[IoU]。可选的,终端100可以使用上述不包括人脸的人体图像和对应的人脸图像确定上述[IoU]。
S409:确定[IoU]min<D1是否成立。
第j帧图像中与第j-1中主角的IoU距离最小的对象也不一定为主角。例如,参考图7D,第j帧图像中人物1、2、4与第j-1中主角的IoU距离均为1,第j帧图像中人物3与第j-1中主角的IoU距离为0.9。这时,人物3与主角的IoU距离是最小的。但是,实际上,人物3与主角的IoU距离是非常大的。因此,若直接将IoU距离最小的对象(人物3)确定为主角,容易发生主角误识别,进而导致针对主角的自动追踪失败,影响用户使用体验。
于是,在确定第j帧图像中的[IoU]min之后,终端100还需确定上述[IoU]min是否小于预设的IoU距离阈值(记为D1)。
如果[IoU]min<D1,则终端100可确定上述[IoU]min对应的对象为主角。示例性的,D1=0.2。结合图7C中确定的最小[IoU]距离:[IoU33]。当[IoU33]<0.2时,终端100可确定第j帧图像中的人物3与第j-1帧图像中的主角为同一对象,即确定第j帧图像的人物3为主角。
如果[IoU]min<D1不成立,则终端100可标记该帧图像中主角丢失。然后终端100可根据当前累计的主角丢失的图像帧的数量确定是否终止主角追踪,这里先不展开。
IoU距离为可选的一种判断后一帧视频中各个对象与前一帧中主角的相似程度的指标。当然,终端100可也选用其他指标。例如,终端100还可直接使用IoU确定第j帧图像的所有对象中与第j-1中主角的相似程度。这时,第j帧图像中与第j-1中主角的IoU最大且大于IoU阈值的对象可被确认为主角。可选的,终端10也可以先确定第j帧图像中各对象对应的IoU是否小于D1,确定小于D1所有对象,然后,确定在小于D1的所有对象与第j-1中主角的相似度,进而,确定小于D1的所有对象中相似度最高的对象为主角。进一步的,终端100还确定相似度时,还可设定相似度阈值,当小于D1的所有对象中任意对象的相似度均不满足相似度阈值时,终端100也可确定追焦失败(为定位到主角)。其中相似度的判断用现有技术的方法即可,在此不进行赘述。
S410:显示第j帧图像中的主角的特写图像,获取第j帧图像之后的图像帧并重复S406及其之后的步骤。
在通过S408-S409所示的方法确定第j帧图像中的主角之后,终端100可执行两方面的操作:一是,基于第j帧图像中的主角确定以该主角为中心的特写图像,然后在小窗中显示上述特写图像;二是,获取第j帧图像的下一帧图像(j=j+1),重复S406及其之后的步骤,进而确定下一帧图像中的主角,以及显示下一帧图像中的主角的特写图像。
其中,确定第j帧图像中的主角的特写图像的方法可参考S405的介绍,这里不再赘述。特别的,在一些示例中,终端100可以间隔几帧计算一次ZoomRatio,例如每4帧计算一次ZoomRatio。
这是因为,在连续的4帧的时间内,图像中的某一对象也难以发生较大的变化,这时,这4帧对应的ZoomRatio几乎是一致的。因此,在第k帧确定了一个ZoomRatio之后,第k+1帧、第k+2帧、第k+3帧可沿用上述ZoomRatio,从而节省ZoomRatio的计算频率,节省计算资源。
在一些实施例中,当两次ZoomRatio变化较大,终端100可在确定特写图像的过程中,进行平滑处理,从而避免图像跳跃。例如,在将主角切换为人物2之后,终端100可根据预览窗113中人物3到人物2的路径,确定一组平滑移动的图像帧,然后在小窗141中显示上述图像帧,以实现非跳跃式的主角切换显示。例如,终端100还可使用固定的过渡效果,连接切换前后的主角的特写图像。上述固定的过渡效果例如视频编辑中常用的叠加、旋涡、平移等等。本申请实施例对此不作限定。
S411:计算第j帧图像中所有对象的与第j-1中主角的IoU距离与ReID距离的和[IoU+ReID],确定第j帧图像中[IoU+ReID]的最小值[IoU+ReID]min
在第j帧图像中的对象存在重叠的情况下,终端100可通过第j帧图像中所有对象的与第j-1中主角的IoU距离和ReID距离确定第j帧图像的主角。
如果第j帧图像中的对象存在重叠,那么重叠的对象彼此之间的距离是较近的。这时,在相邻两帧的时间内,一个对象从前一帧中的自己所处的位置移动到另一对象所处的位置是容易实现的。因此,在重叠的场景下,非主角的对象极有可能在一下帧中移动到原来主角所处的位置。这时,仅仅通过第j帧图像中所有对象的与第j-1中主角的IoU距离,终端100不能确定第j帧图像的主角。
例如,第j-1帧图像与主角重叠的某一对象可能在第j帧图像中就出现在了第j-1帧图像中主角的位置。这时,上述某一对象与主角的IoU距离是最近的,但是,该对象却不是主角。这样容易导致误识别。
因此,在重叠的情况下,终端100除了利用前后两帧图像中各个对象的IoU距离确定主角之外,终端100还需要判断各个位置中的对象是否为用户原来确定的主角。这时,终端100还需计算第j帧图像中所有对象与第j-1图像中主角的ReID距离。
ReID距离是基于利用神经网络得到的,用于反映图像内容之间相似程度的参数。图8示例性示出了终端100确定第j帧图像中各个对象与第j-1图像中主角的ReID距离示意图。
如图8所示,利用卷积神经网络(convolutional neural network,CNN),终端100可确定第j-1帧图像中主角的特征向量F0。同样的,利用CNN,终端100可确定第j帧图像中各个对象(人物1~4)的特征向量F1~F4。然后,终端100可计算第j帧图像中各个对象的特征向量(F1~F4)与第j-1帧图像中主角的特征向量F0的内积:<F0,F1>、<F0,F2>、<F0,F3>、<F0,F4>。
以人物1为例,在确定特征向量F1与第j-1帧图像中主角的特征向量F0的内积<F0,F1>之后,终端100可确定人物1与主角的ReID距离(也就是相似距离的一种)(记为[ReID]31):
[ReID]31=1-<F0,F1>;
同样的,终端100可得到第j帧中人物2、3、4与第j-1帧中主角的ReID距离:[ReID]32、[ReID]33、[ReID]34。ReID距离越小则表示该对象与主角的相似度越高。
在确定第j帧各个对象与第j-1帧中主角的ReID距离之后,终端100可确定第j帧图像中的最小ReID距离[ReID]min。参考图8,此时,终端100可确定第j帧图像中的[ReID]min为[ReID]33
然后,终端100可确定上述各个对象与主角的IoU+ReID距离,即IoU距离与ReID距离的和(也就是相似距离的一种),记为[IoU+ReID]。[IoU+ReID]越小意味着对象与主角的IoU越小,同时ReID距离也越小。从图像上看,该对象与原主角的位置相近且图像内容相似。因此,终端100可利用[IoU+ReID]确定第j帧图像的主角。并且,[IoU+ReID]越小的对象越可能为主角。
S412:确定[IoU+ReID]min<D2是否成立。
参考S409,第j帧图像中与第j-1中主角的[IoU+ReID]最小的对象也不一定为主角。因此,在确定第j帧图像中的[IoU+ReID]min之后,终端100还需确定上述[IoU+ReID]min是否小于预设的IoU+ReID距离阈值(记为D2)。
如果[IoU+ReID]min<D2,则终端100可确定上述[IoU+ReID]min对应的对象为主角。反之,如果[IoU+ReID]min<D2不成立,则终端100可标记该帧图像中主角丢失。同样的,然后终端100可根据当前累计的主角丢失的图像帧的数量确定是否终止主角追踪,这里也先不展开。
在通过S411-S412所示的方法确定第j帧图像中的主角之后,终端100可执行S410:基于第j帧图像中的主角确定以该主角为中心的特写图像,并在小窗中显示上述特写图像;获取第j帧图像的下一帧图像,重复S406及其之后的步骤,继续追踪主角并显示主角的特写图像。
S413:确定丢失帧数<Y是否成立。
在S409中,如果第j帧图像的[IoU]min不小于D1,则终端100可确认第j帧图像中无主角。同样的,在S412中,如果第j帧图像的[IoU+ReID]min不低于D2,则终端100也会确认第j帧图像中无主角。可选的,丢失帧数时,界面中的标记可由图1D中的选中框142变化为图1C中的选择框123;也可以由原来为红色或者蓝色的选择框123变化为透明颜色或者白色的选择框123。
这时,终端100可修改丢失帧数:将丢失帧数的计数增加1。丢失帧数是指终端100连续未识别到的主角的图像帧的数量。
然后,终端100可基于丢失帧数判断是否结束主角追踪。具体的,终端100可设置有丢失帧数阈值Y。如果当前记录的丢失帧数≥Y,则终端100可确定摄像头采集的对象已经不包括用户初始选定的主角。这时,终端100可确认结束主角追踪。如果当前记录的丢失帧数<Y,则终端100可获取下一帧图像(第j+1帧图像),确定下一帧图像中是否包括主角。当后续图像帧均未能识别到初始选中的主角时,丢失帧数会持续增加,直到丢失帧数≥Y,结束主角追踪。
在追焦主角失败时,预览窗113可以继续显示原始图像。在已开始录像过程中,在预览窗113可以继续显示原始图像的同时,终端100也可以继续编码上述原始图像。
在一些实施例中,在终端100可确认结束主角追踪之后,终端100可不再指示用于选择新的主角。在另一些实施例中,在终端100可确认结束主角追踪,终端100可指示用于选择新的主角。这时,终端100可继续识别图像中的对象,并显示对应的选择框。同时,终端100可再次提示用户选择主角。然后,终端100可确定新的主角,并开启针对新的主角的自动追踪,生成并包括相应的特写视频。
S414:计算第j+1帧图像中所有对象与第j中主角的ReID距离[ReID],确定第j+1帧图像中[ReID]的最小值[ReID]min
终端100确定第j+1帧图像中所有对象与第j中主角的ReID距离的具体操作可参考S411中的介绍,这里不再赘述。这里,终端100在确定ReID距离之后,终端100可直接确定ReID距离的最小值[ReID]min,而不再确定[IoU+ReID]min
然后,终端100可确定[ReID]min<D3是否成立。D3是预设的ReID距离阈值。如果[IReID]min<D3,则终端100可确定上述[ReID]min对应的对象为主角。然后,执行S410,终端100可以显示上述主角的特写图像,并获取下一帧图像继续并显示主角的特写图像。反之,如果[ReID]min<D3不成立,则终端100可标记该帧图像中主角丢失,重复S413及其之后的操作。当当前记录的丢失帧数≥Y时,终端100可确认结束主角追踪。
在一些实施例中,为了提升计算效率,终端100还可每N帧执行一次S407及其之后的计算操作。例如,N=4。后续实施例也以N=4为例进行说明。
参考图9A(为了方便展示,图9A在图4的基础上对一些步骤进行了省略或简化),获取FrameID=1之后的第j帧图像之后,终端100可首先判断该图像帧的帧索引号FrameID是否能被4整除(对应图9A中S415)。
当FrameID%4=0成立时,即FrameID能被4整除,终端100可通过S407及其之后的计算操作确定第j帧图像中的主角。反之,当FrameID%4=0不成立时,即FrameID不能被4整除,终端100可利用核相关滤波算法(Kernel Correlation Filter,KCF)确定第j帧图像中的主角。KCF算法是现有的,这里不再赘述。
在利用KCF确定第j帧图像中的主角,则终端100也可执行S410:在小窗中显示第j帧图像中主角的特写图像,同时,获取第j帧图像的下一帧图像,继续识别后续图像帧中的主角,以及显示主角的特写图像。
结合图2D-图2E所示的用户界面,在一些实施例中,终端100支持在拍摄的过程中切换主角。这时,终端100还可应在获取第j帧图像之后,确定该帧图像是否对应有切换主角的用户操作,以更换主角,更换小窗141中显示特写图像。
参考图9B,在S406、S415所示的步骤之后,终端100可确定是否检测到切换主角的用户操作,例如图2D-图2E所示的点击与人物2对应的选择框122的用户操作。当检测到切换主角的用户操作时,终端100可确定第j帧图像中的人物2为主角.然后,终端100可将第j帧图像的FrameID重新设定为1,并获取该图像帧之后的图像帧,定位后续图像帧中的人物2,从而实现在小窗141中显示新主角人物2的特写图像。
在S416所示的步骤之后,以及在S413所示的丢失帧数小于Y的场景下,终端100也可根据检测到的切换主角的用户操作,变更主角,进而变更小窗141中显示特写图像,这里不再赘述。
图10是本申请实施例提供的终端100的系统结构示意图。
分层架构将系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将系统分为五层,从上至下分别为应用层,应用框架层、硬件抽象层、驱动层以及硬件层。
应用层可以包括一系列应用程序包。在本申请实施例中,应用程序包可以包括相机、图库等。
应用框架层为应用层的应用程序提供应用编程接口(application programminginterface,API)和编程框架。应用框架层包括一些预先定义的函数。在本申请实施例中,应用框架层可以包括相机访问接口,其中,相机访问接口可以包括相机管理以及相机设备。相机访问接口用于为相机应用提供应用编程接口和编程框架。
硬件抽象层为位于应用框架层以及驱动层之间的接口层,为操作系统提供虚拟硬件平台。本申请实施例中,硬件抽象层可以包括相机硬件抽象层以及相机算法库。
其中,相机硬件抽象层可以提供相机设备C1、相机设备C2或更多的相机设备的虚拟硬件。相机算法库可包括实现本申请实施例提供的拍摄方法的运行代码和数据。
驱动层为硬件和软件之间的层。驱动层包括各种硬件的驱动。驱动层可以包括相机设备驱动、数字信号处理器驱动以及图像处理器驱动等。
其中,相机设备驱动用于驱动摄像头的传感器采集图像以及驱动图像信号处理器对图像进行预处理。数字信号处理器驱动用于驱动数字信号处理器处理图像。图像处理器驱动用于驱动图形处理器处理图像。
下面结合上述系统结构,对本申请实施例中的拍摄方法进行具体描述:
响应于用户打开相机应用的操作,例如点击相机应用图标的操作,相机应用调用应用框架层的相机访问接口,启动相机应用,进而通过调用相机硬件抽象层中的相机设备(相机设备C1和/或其他相机设备)发送启动摄像头的指令。相机硬件抽象层将该指令发送到内核层的相机设备驱动。该相机设备驱动可以启动相应的摄像头传感器,并通过传感器采集图像光信号。相机硬件抽象层中的一个相机设备对应硬件层的一个摄像头传感器。
然后,摄像头传感器可将采集到的图像光信号传输到图像信号处理器进行预处理,得到图像电信号(原始图像),并将上述原始图像通过相机设备驱动传输至相机硬件抽象层。
相机硬件抽象层可将原始图像发送的相机算法库。相机算法库中存储有实现本申请实施例提供的拍摄方法的程序代码。基于数字信号处理器、图像处理器,相机算法库执行上述代码,可实现上述介绍的对象识别与标记、主角追踪、提取特写图像等能力。
相机算法库可将识别到摄像头采集原始图像发送到相机硬件抽象层。然后,相机硬件抽象层可以将其进行送显。同时,相机算法库还可输出识别到的图像帧中的对象中心点、以主角为中心的特写图像。这样,相机应用可以基于对象中心点在送显的原始图像上显示选择框标记,以及在小窗中显示特写图像。
图1A所示的界面可称为第一界面,图1A中模块栏中的主角模式可称为第一控件;图1B所示的界面可称为第二界面,图1B中预览窗113中显示的图像可称为第一图像,图1B中第一图像上显示的的选择框121、122、123可称为一个或多个标记,其中,在图1C中,选择框123可称为第一标记,人物3可称为第一对象;图1D所示的界面可称为第三界面,小窗141可称为第一窗口,小窗141中显示图像可称为第二图像。
在图1E中,点击拍摄控件112的操作可称为开始录制的第四操作,点击拍摄控件112的操作可称为结束录制的操作。图3A中,关闭控件311可称为第二控件,在图7C中,人体框3’对应的人体图像区域可称为第一人体图像区域。
图11是本申请实施例提供的终端100的硬件结构示意图。
终端100可以包括处理器110,外部存储器接口120,内部存储器121A,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141A,电池142A,天线01,天线02,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191A,指示器192A,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对终端100的具体限定。在本申请另一些实施例中,终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(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)接口等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端100的结构限定。在本申请另一些实施例中,终端100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。充电管理模块140为电池142A充电的同时,还可以通过电源管理模块141A为电子设备供电。电源管理模块141A用于连接电池142A,充电管理模块140与处理器110。电源管理模块141A接收电池142A和/或充电管理模块140的输入,为处理器110,内部存储器121A,显示屏194,摄像头193,和无线通信模块160等供电。
终端100的无线通信功能可以通过天线01,天线02,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线01和天线02用于发射和接收电磁波信号。
移动通信模块150可以提供应用在终端100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以由天线01接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线01转为电磁波辐射出去。
无线通信模块160可以提供应用在终端100上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160经由天线02接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线02转为电磁波辐射出去。
在一些实施例中,终端100的天线01和移动通信模块150耦合,天线02和无线通信模块160耦合,使得终端100可以通过无线通信技术与网络以及其他设备通信。
终端100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)。显示面板还可以采用有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),miniled,microled,micro-oled,量子点发光二极管(quantum dot light emitting diodes,QLED)等制造。在一些实施例中,电子设备可以包括1个或N个显示屏194,N为大于1的正整数。
在本申请实施例中,终端100显示摄像头采集的原始图像、经过主角追踪确定的主角的特写图像,以及图1A-图1J、图2A-图2C、图3A-图3C所示的用户界面的能力,依赖于上述GPU,显示屏194,以及应用处理器提供的显示功能。
终端100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,终端100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端100可以支持一种或多种视频编解码器。这样,终端100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
在本申请实施例中,终端100实施本申请实施例提供的拍摄方法,首先依赖于ISP,摄像头193采集的图像,其次还依赖于视频编解码器,GPU提供的图像计算与处理能力。其中,终端100可通过NPU提供的计算处理能力,实施人脸识别、人体识别、重识别(ReID)等神经网络算法。
内部存储器121A可以包括一个或多个随机存取存储器(random access memory,RAM)和一个或多个非易失性存储器(non-volatile memory,NVM)。
随机存取存储器可以包括静态随机存储器(static random-access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、双倍资料率同步动态随机存取存储器(doubledata rate synchronous dynamic random access memory,DDR SDRAM,例如第五代DDR SDRAM一般称为DDR5 SDRAM)等。
非易失性存储器可以包括磁盘存储器件、快闪存储器(flash memory)。快闪存储器按照运作原理划分可以包括NOR FLASH、NAND FLASH、3D NAND FLASH等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,SLC)、多阶存储单元(multi-level cell,MLC)、三阶储存单元(triple-level cell,TLC)、四阶储存单元(quad-levelcell,QLC)等,按照存储规范划分可以包括通用闪存存储(英文:universal flashstorage,UFS)、嵌入式多媒体存储卡(embedded multi media Card,eMMC)等。
随机存取存储器可以由处理器110直接进行读写,可以用于存储操作系统或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器110直接进行读写。
在本申请实施例中,实现本申请实施例所述的拍摄方法的代码可存储在非易失性存储器上。在运行相机应用时,终端100可将非易失性存储器中存储的可执行代码加载到随机存取存储器。
外部存储器接口120可以用于连接外部的非易失性存储器,实现扩展终端100的存储能力。外部的非易失性存储器通过外部存储器接口120与处理器110通信,实现数据存储功能。
终端100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。终端100可以通过扬声器170A收听音乐,或收听免提通话。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当终端100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。
在本申请实施例中,终端100在启用摄像头采集图像的过程中,可以同时启用麦克风170C采集声音信号,并将声音信号转换为电信号存储下来。这样,用户可以得到有声的视频。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。
陀螺仪传感器180B可以用于确定终端100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定终端100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测终端100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消终端100的抖动,实现防抖。
气压传感器180C用于测量气压。在一些实施例中,终端100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。磁传感器180D包括霍尔传感器。终端100可以利用磁传感器180D检测翻盖皮套的开合。加速度传感器180E可检测终端100在各个方向上(一般为三轴)加速度的大小。当终端100静止时可检测出重力的大小及方向。距离传感器180F,用于测量距离。终端100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,终端100可以利用距离传感器180F测距以实现快速对焦。接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。终端100通过发光二极管向外发射红外光。终端100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定终端100附近有物体。当检测到不充分的反射光时,终端100可以确定终端100附近没有物体。环境光传感器180L用于感知环境光亮度。终端100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。指纹传感器180H用于采集指纹。终端100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。温度传感器180J用于检测温度。在一些实施例中,终端100利用温度传感器180J检测的温度,执行温度处理策略。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于终端100的表面,与显示屏194所处的位置不同。
在本申请实施例中,终端100可利用触摸传感器180K检测用户作用于显示屏194上的点击、滑动等操作,以实现图1A-图1J、图2A-图2C、图3A-图3C所示的拍摄方法。
骨传导传感器180M可以获取振动信号。按键190包括开机键,音量键等。终端100可以接收按键输入,产生与终端100的用户设置以及功能控制有关的键信号输入。马达191A可以产生振动提示。马达191A可以用于来电振动提示,也可以用于触摸振动反馈。指示器192A可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。终端100可以支持1个或N个SIM卡接口,N为大于1的正整数。
本申请的说明书和权利要求书及附图中的术语“用户界面(user interface,UI)”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。应用程序的用户界面是通过java、可扩展标记语言(extensible markup language,XML)等特定计算机语言编写的源代码,界面源代码在终端设备上经过解析,渲染,最终呈现为用户可以识别的内容,比如图片、文字、按钮等控件。控件(control)也称为部件(widget),是用户界面的基本元素,典型的控件有工具栏(toolbar)、菜单栏(menu bar)、文本框(text box)、按钮(button)、滚动条(scrollbar)、图片和文本。界面中的控件的属性和内容是通过标签或者节点来定义的,比如XML通过<Textview>、<ImgView>、<VideoView>等节点来规定界面所包含的控件。一个节点对应界面中一个控件或属性,节点经过解析和渲染之后呈现为用户可视的内容。此外,很多应用程序,比如混合应用(hybrid application)的界面中通常还包含有网页。网页,也称为页面,可以理解为内嵌在应用程序界面中的一个特殊的控件,网页是通过特定计算机语言编写的源代码,例如超文本标记语言(hyper text markup language,GTML),层叠样式表(cascading style sheets,CSS),java脚本(JavaScript,JS)等,网页源代码可以由浏览器或与浏览器功能类似的网页显示组件加载和显示为用户可识别的内容。网页所包含的具体内容也是通过网页源代码中的标签或者节点来定义的,比如GTML通过<p>、<img>、<video>、<canvas>来定义网页的元素和属性。
用户界面常用的表现形式是图形用户界面(graphic user interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,本申请中使用的术语“和/或”是指并包含一个或多个所列出项目的任何或所有可能组合。上述实施例中所用,根据上下文,术语“当…时”可以被解释为意思是“如果…”或“在…后”或“响应于确定…”或“响应于检测到…”。类似地,根据上下文,短语“在确定…时”或“如果检测到(所陈述的条件或事件)”可以被解释为意思是“如果确定…”或“响应于确定…”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。

Claims (22)

1.一种拍摄方法,应用于具备摄像头的电子设备,其特征在于,所述方法包括:
显示第一界面,所述第一界面包括预览窗和第一控件,所述预览窗用于显示所述摄像头采集的图像;
检测到对所述第一控件的第一操作;
响应于所述第一操作,显示第二界面,所述第二界面包括所述预览窗,第一时刻所述预览窗中显示第一图像,在所述第一图像上显示一个或多个标记,所述一个或多个标记对应于所述第一图像中的一个或多个对象,所述一个或多个标记包括第一标记,所述第一标记对应所述第一图像中的第一对象;
检测到对所述第一标记的第二操作;
响应于所述第二操作,显示第三界面,所述第三界面包括所述预览窗和第一窗口,在所述第一窗口中显示以所述第一对象为主角的第二图像;
第二时刻所述预览窗中显示第三图像,所述第三图像为所述第一图像的下一帧图像,所述第三图像中包括一个或多个对象,所述一个或多个对象中的任意一个对象所在的图像区域为一个人体图像区域;
若所述第三图像中的一个或多个人体图像区域互相不重叠,则根据所述第三图像中的各个人体图像区域与所述第一图像中的第一人体图像区域的交并比IoU距离,确定所述第三图像中的所述第一人体图像区域,所述第一人体图像区域对应的对象为所述第一对象;
若所述第三图像中包含至少两个人体图像区域互相重叠,则根据所述第三图像中的各个人体图像区域与所述第一图像中的第一人体图像区域的交并比IoU距离和重定位ReID距离,确定所述第三图像中的所述第一人体图像区域;其中,针对所述第三图像中的任意一个人体图像区域,该人体图像区域与所述第一图像中的所述第一人体图像区域的重定位ReID距离越小,则该人体图像区域对应的对象与所述第一对象的相似度越高;
响应于结束录像的操作,保存原始视频和特写视频;所述原始视频是基于录制过程中所述预览窗中显示的图像得到的视频,所述特写视频是基于录制过程中所述第一窗口中显示的图像得到的视频,所述原始视频包括所述第一图像,所述特写视频包括所述第二图像。
2.根据权利要求1所述的方法,其特征在于,在所述显示第三界面之后,所述方法还包括:响应于开始录制的第四操作,基于所述预览窗显示的图像录制原始视频,并开始基于所述第一窗口显示的图像录制特写视频。
3.根据权利要求1所述的方法,其特征在于,在检测到对所述第一标记的第二操作之前,所述方法还包括:
响应于开始录制的第四操作,基于预览窗显示的图像录制原始视频;
响应于所述第二操作,基于所述第一窗口显示的图像录制特写视频,所述特写视频的时长短于所述原始视频。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述响应于结束录像的操作,保存原始视频和特写视频,具体包括:
响应于结束录制的操作,停止录制所述第一窗口中的图像,保存特写视频;
同时,响应于所述结束录制的操作,停止录制所述预览窗中的图像,保存原始视频。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述响应于结束录像的操作,保存原始视频和特写视频,具体包括:
响应于结束录制特写视频的操作,停止录制所述第一窗口中的图像,保存特写视频;
响应于结束录制的操作,停止录制所述预览窗中的图像,保存原始视频。
6.根据权利要求5所述的方法,其特征在于,所述第一窗口中包括第二控件,所述结束录制特写视频的操作,具体为:作用于所述第二控件的用户操作。
7.根据权利要求1-3中任一项所述的方法,其特征在于,所述对象的类型包括人物、动物和植物。
8.根据权利要求1-3中任一项所述的方法,其特征在于,所述在所述第一窗口中显示以第一对象为主角的第二图像,具体包括:
确定所述第一图像中所述第一对象所在的第二图像,在所述第一窗口中显示所述第二图像。
9.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:
确定所述第三图像中所述第一对象所在的第四图像,在所述第一窗口中显示所述第四图像。
10.根据权利要求9所述的方法,其特征在于,
若所述第三图像中的一个或多个人体图像区域互相不重叠,所述第三图像中,所述IoU距离最小且满足IoU距离阈值的第一人体图像区域对应的对象为所述第一对象;
若所述第三图像中包括至少两个人体图像区域互相重叠,所述第三图像中,所述IoU距离与所述ReID距离的和最小且满足IoU+ReID距离阈值的第一人体图像区域对应的对象为所述第一对象。
11.根据权利要求10所述的方法,其特征在于,所述确定所述第三图像中所述第一对象所在的第四图像,具体包括:基于所述第一人体图像区域确定包括所述第一人体图像区域的所述第四图像;所述第四图像的宽高比与所述第一窗口的宽高比相同。
12.根据权利要求11所述的方法,其特征在于,所述基于所述第一人体图像区域确定包括所述第一人体图像区域的所述第四图像,具体包括:
基于所述第三图像中的最大的人体图像区域的尺寸、所述第三图像中所述第一人体图像区域的尺寸,确定缩放比ZoomRatio,基于所述ZoomRatio、所述第一窗口的宽和所述第一窗口的高确定所述第四图像的宽、高;
基于所述第四图像的宽、高确定所述包括所述第一人体图像区域的所述第四图像。
13.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当确定第三图像中不包括所述第一对象时,暂停录制所述第一窗口中的图像。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
当确定第四图像中包括所述第一对象时,确定所述第四图像中所述第一对象所在的第五图像,在所述第一窗口中显示所述第五图像,同时从所述第五图像开始继续录制所述第一窗口中的特写图像,所述第四图像是第三图像之后的图像。
15.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当确定第三图像中不包括所述第一对象时,丢失帧计数增加1;
判断当前丢失帧数是否小于丢失帧阈值Y,当前丢失帧数大于所述Y时,
停止录制所述第一窗口中的图像。
16.根据权利要求1-3中任一项所述的方法,其特征在于,所述在所述第一图像上显示一个或多个标记,具体包括:
对摄像头采集的所述第一图像进行对象识别,确定所述第一图像中包括的所述一个或多个对象;
生成与所述一个或多个对象分别对应的所述一个或多个标记;
在预览窗中显示所述第一图像,同时在所述第一图像中的所述一个或多个对象上显示所述一个或多个标记。
17.根据权利要求16所述的方法,其特征在于,所述对摄像头采集的所述第一图像进行对象识别,确定所述第一图像中包括的一个或多个对象,具体包括:
利用预置的人脸检测算法确定所述第一图像中包括的人脸图像;
利用预置的人体检测算法确定所述第一图像中包括的人体图像;
计算各个人脸图像与人体图像的IoU;
确认满足IoU阈值的一组人脸图像与人体图像为一个对象。
18.根据权利要求17所述的方法,其特征在于,所述人脸图像的中点P1与人体图像的中点P2的中点P3,为所述标记的中点。
19.根据权利要求1-3中任一项所述的方法,其特征在于,所述第一窗口以画中画的形式显示在所述第一界面的所述预览窗中。
20.根据权利要求19所述的方法,其特征在于,所述第一窗口与所述预览窗中的所述第一对象不重叠。
21.一种电子设备,其特征在于,包括一个或多个处理器和一个或多个存储器;其中,所述一个或多个存储器与所述一个或多个处理器耦合,所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得执行如权利要求1-20任一项所述的方法。
22.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得执行如权利要求1-20任一项所述的方法。
CN202210601990.9A 2022-05-30 2022-05-30 一种拍摄方法和电子设备 Active CN116055867B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210601990.9A CN116055867B (zh) 2022-05-30 2022-05-30 一种拍摄方法和电子设备
PCT/CN2023/088018 WO2023231595A1 (zh) 2022-05-30 2023-04-13 一种拍摄方法和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210601990.9A CN116055867B (zh) 2022-05-30 2022-05-30 一种拍摄方法和电子设备

Publications (2)

Publication Number Publication Date
CN116055867A CN116055867A (zh) 2023-05-02
CN116055867B true CN116055867B (zh) 2023-11-24

Family

ID=86115149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210601990.9A Active CN116055867B (zh) 2022-05-30 2022-05-30 一种拍摄方法和电子设备

Country Status (2)

Country Link
CN (1) CN116055867B (zh)
WO (1) WO2023231595A1 (zh)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007150496A (ja) * 2005-11-25 2007-06-14 Sony Corp 撮像装置、およびデータ記録制御方法、並びにコンピュータ・プログラム
CN105407283A (zh) * 2015-11-20 2016-03-16 成都因纳伟盛科技股份有限公司 一种多目标主动识别跟踪监控方法
WO2016114885A1 (en) * 2015-01-16 2016-07-21 Qualcomm Incorporated Object detection using location data and scale space representations of image data
CN110660078A (zh) * 2019-08-20 2020-01-07 平安科技(深圳)有限公司 对象追踪方法、装置、计算机设备和存储介质
CN110688930A (zh) * 2019-09-20 2020-01-14 Oppo广东移动通信有限公司 人脸检测方法、装置、移动终端及存储介质
CN111061912A (zh) * 2018-10-16 2020-04-24 华为技术有限公司 一种处理视频文件的方法及电子设备
CN111093026A (zh) * 2019-12-30 2020-05-01 维沃移动通信(杭州)有限公司 视频处理方法、电子设备及计算机可读存储介质
CN111753611A (zh) * 2019-08-30 2020-10-09 北京市商汤科技开发有限公司 图像检测方法及装置和系统、电子设备和存储介质
CN112135046A (zh) * 2020-09-23 2020-12-25 维沃移动通信有限公司 视频拍摄方法、视频拍摄装置及电子设备
CN112954219A (zh) * 2019-03-18 2021-06-11 荣耀终端有限公司 一种多路录像方法及设备
CN113079342A (zh) * 2020-01-03 2021-07-06 深圳市春盛海科技有限公司 基于高分辨率影像装置的目标追踪方法及系统
CN113395441A (zh) * 2020-03-13 2021-09-14 华为技术有限公司 图像留色方法及设备
WO2021244104A1 (zh) * 2020-05-30 2021-12-09 华为技术有限公司 一种延时摄影的拍摄方法及设备
CN114155488A (zh) * 2021-11-30 2022-03-08 北京市商汤科技开发有限公司 获取客流数据的方法、装置、电子设备以及存储介质
KR20220032681A (ko) * 2020-09-08 2022-03-15 와이즈플랫 주식회사 노상 주차장의 주차 관리 방법

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009079809A1 (en) * 2007-12-07 2009-07-02 Multi Base Limited Video surveillance system with object tracking and retrieval
CN107967677B (zh) * 2017-12-15 2020-02-04 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质和计算机设备
TWI681343B (zh) * 2018-12-14 2020-01-01 瑞昱半導體股份有限公司 物件追蹤系統、物件追蹤方法與非暫態電腦可讀取媒體
CN110675433A (zh) * 2019-10-31 2020-01-10 北京达佳互联信息技术有限公司 视频处理方法、装置、电子设备及存储介质
CN110913132B (zh) * 2019-11-25 2021-10-26 维沃移动通信有限公司 对象跟踪方法及电子设备
CN113674313A (zh) * 2021-07-05 2021-11-19 北京旷视科技有限公司 一种行人跟踪方法、装置、存储介质和电子设备
CN114332169B (zh) * 2022-03-14 2022-05-06 南京甄视智能科技有限公司 基于行人重识别的行人跟踪方法、装置、存储介质及设备

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007150496A (ja) * 2005-11-25 2007-06-14 Sony Corp 撮像装置、およびデータ記録制御方法、並びにコンピュータ・プログラム
WO2016114885A1 (en) * 2015-01-16 2016-07-21 Qualcomm Incorporated Object detection using location data and scale space representations of image data
CN105407283A (zh) * 2015-11-20 2016-03-16 成都因纳伟盛科技股份有限公司 一种多目标主动识别跟踪监控方法
CN111061912A (zh) * 2018-10-16 2020-04-24 华为技术有限公司 一种处理视频文件的方法及电子设备
CN112954219A (zh) * 2019-03-18 2021-06-11 荣耀终端有限公司 一种多路录像方法及设备
CN110660078A (zh) * 2019-08-20 2020-01-07 平安科技(深圳)有限公司 对象追踪方法、装置、计算机设备和存储介质
CN111753611A (zh) * 2019-08-30 2020-10-09 北京市商汤科技开发有限公司 图像检测方法及装置和系统、电子设备和存储介质
CN110688930A (zh) * 2019-09-20 2020-01-14 Oppo广东移动通信有限公司 人脸检测方法、装置、移动终端及存储介质
CN111093026A (zh) * 2019-12-30 2020-05-01 维沃移动通信(杭州)有限公司 视频处理方法、电子设备及计算机可读存储介质
CN113079342A (zh) * 2020-01-03 2021-07-06 深圳市春盛海科技有限公司 基于高分辨率影像装置的目标追踪方法及系统
CN113395441A (zh) * 2020-03-13 2021-09-14 华为技术有限公司 图像留色方法及设备
WO2021244104A1 (zh) * 2020-05-30 2021-12-09 华为技术有限公司 一种延时摄影的拍摄方法及设备
KR20220032681A (ko) * 2020-09-08 2022-03-15 와이즈플랫 주식회사 노상 주차장의 주차 관리 방법
CN112135046A (zh) * 2020-09-23 2020-12-25 维沃移动通信有限公司 视频拍摄方法、视频拍摄装置及电子设备
CN114155488A (zh) * 2021-11-30 2022-03-08 北京市商汤科技开发有限公司 获取客流数据的方法、装置、电子设备以及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
动态目标跟踪与自动特写快照系统的设计及实现;盛平;倪冬玮;张净;;东南大学学报(自然科学版)(第05期);全文 *
多任务分段紧凑特征的车辆检索方法;何霞;汤一平;陈朋;王丽冉;袁公萍;;中国图象图形学报(第12期);全文 *

Also Published As

Publication number Publication date
WO2023231595A1 (zh) 2023-12-07
CN116055867A (zh) 2023-05-02
WO2023231595A9 (zh) 2024-02-01

Similar Documents

Publication Publication Date Title
CN111526314B (zh) 视频拍摄方法及电子设备
WO2021147482A1 (zh) 一种长焦拍摄的方法及电子设备
US20220417416A1 (en) Photographing method in telephoto scenario and mobile terminal
CN113747085A (zh) 拍摄视频的方法和装置
WO2024041394A1 (zh) 拍摄方法及相关装置
WO2022262475A1 (zh) 拍摄方法、图形用户界面及电子设备
CN113891009A (zh) 曝光调整方法及相关设备
WO2021185374A1 (zh) 一种拍摄图像的方法及电子设备
CN116711316A (zh) 电子装置及其操作方法
EP4325877A1 (en) Photographing method and related device
CN115442509B (zh) 拍摄方法、用户界面及电子设备
CN116055867B (zh) 一种拍摄方法和电子设备
WO2022143311A1 (zh) 一种智能取景推荐的拍照方法及装置
CN116055861B (zh) 一种视频编辑方法和电子设备
CN115802144B (zh) 视频拍摄方法及相关设备
CN115883957B (zh) 一种拍摄模式推荐方法
WO2023231696A1 (zh) 一种拍摄方法及相关设备
WO2022228010A1 (zh) 一种生成封面的方法及电子设备
US20230247293A1 (en) Multi-lens video recording method and related device
WO2023160224A9 (zh) 一种拍摄方法及相关设备
WO2023231616A1 (zh) 一种拍摄方法和电子设备
CN117119285A (zh) 一种拍摄方法
CN117221743A (zh) 一种拍摄方法和电子设备
CN117221709A (zh) 一种拍摄方法及相关电子设备
CN117459825A (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