CN114845035B - 一种分布式拍摄方法,电子设备及介质 - Google Patents

一种分布式拍摄方法,电子设备及介质 Download PDF

Info

Publication number
CN114845035B
CN114845035B CN202110131870.2A CN202110131870A CN114845035B CN 114845035 B CN114845035 B CN 114845035B CN 202110131870 A CN202110131870 A CN 202110131870A CN 114845035 B CN114845035 B CN 114845035B
Authority
CN
China
Prior art keywords
shooting
camera
mobile phone
image data
image
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
CN202110131870.2A
Other languages
English (en)
Other versions
CN114845035A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210973275.8A priority Critical patent/CN115514882B/zh
Priority to CN202110131870.2A priority patent/CN114845035B/zh
Priority to PCT/CN2021/137917 priority patent/WO2022160985A1/zh
Publication of CN114845035A publication Critical patent/CN114845035A/zh
Application granted granted Critical
Publication of CN114845035B publication Critical patent/CN114845035B/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/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • H04M1/72415User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories for remote control of appliances
    • 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
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)

Abstract

一种分布式拍摄方法,电子设备及介质,可以在实现分布式拍摄过程中,减少远端设备与本端设备进行数据传输所占用的网络带宽。该方法中,第一设备可接收用户选择与第二设备进行同步拍摄的第一操作。响应于该第一操作,第一设备可开始采集第一图像数据,并且第一设备还可以指示第二设备开始采集图像数据。之后,第一设备可接收来自第二设备的第二图像数据,该第二图像数据包括第二设备的摄像头采集的原始图像。最后,第一设备可将第一图像数据对应的第一拍摄画面显示在第一窗口,将第二图像数据对应的第二拍摄画面显示在第二窗口。该第一窗口和第二窗口位于同一显示界面。

Description

一种分布式拍摄方法,电子设备及介质
技术领域
本申请实施例涉及拍照技术领域,尤其涉及一种分布式拍摄方法,电子设备及介质。
背景技术
随着互联网技术的发展,多个包括摄像头的电子设备可以组成分布式相机***。例如,该电子设备可以是手机、平板电脑、智能手表或者智能电视机等。在该分布式相机***中,一个电子设备(称为本端设备)不仅可以为用户呈现该电子设备的摄像头拍摄的画面,还可以获取并显示其他电子设备(称为远端设备)的摄像头拍摄的画面。
具体的,本端设备可以通过以下方式获取远端设备的画面:(1)本端设备向远端设备发送控制命令,指示远端设备采集图像并向本端设备返回预览结果;(2)远端设备接收到该控制命令后,采集图像并对采集的图像进行图像信号处理(image signal processing,ISP)得到预览结果;(3)远端设备向本端设备发送该预览结果。
在上述跨设备的图像数据传输过程中,远端设备向本端设备发送的是经过图像处理得到的成片(即上述预览结果),其数据量加大,需要占用较大的网络带宽,浪费了网络资源。
发明内容
本申请提供一种分布式拍摄方法,电子设备及介质,可以在实现分布式拍摄过程中,减少远端设备与本端设备进行数据传输所占用的网络带宽。
第一方面,本申请提供一种分布式拍摄方法,该方法应用于第一设备。该方法中,第一设备可以接收用户选择与第二设备进行同步拍摄的第一操作。响应于该第一操作,第一设备可以开始采集第一图像数据,并指示第二设备开始采集图像数据。之后,第一设备可以接收来自第二设备的第二图像数据,该第二图像数据包括原始图像。最后,第一设备可以将第一图像数据对应的第一拍摄画面显示在第一窗口,将第二图像数据对应的第二拍摄画面显示在第二窗口。该第一窗口和第二窗口位于同一显示界面。
应注意,上述原始图像也可以称为RAW图像。RAW可翻译为“未经加工”。也就是说,上述原始图像是未经过第二设备处理的图像。相比于经过第二设备处理的图像,原始图像的数据量较小。如此,便可以减少跨设备的分布式拍摄业务所占用的网络带宽。
在第一方面的一种可能的设计方式中,上述方法还可以包括:第一设备向第二设备发送第一图像数据,该第一图像数据包括原始图像。该原始图像(也称为RAW图像)是未经过第一设备处理的图像。
如此,不仅第一设备可以同时显示第一设备的拍摄画面和第二设备的拍摄画面,第二设备也可以同时显示第一设备的拍摄画面和第二设备的拍摄画面。
在第一方面的另一种可能的设计方式中,在第一设备接收用户选择与第二设备进行同步拍摄的第一操作之后,本申请的方法还可以包括:第一设备获取第二设备的拍摄能力参数,该拍摄能力参数用于指示第二设备支持的图像处理算法。
之后,第一设备可以根据第一设备的拍摄能力参数,对第一图像数据进行图像处理,得到第一拍摄画面;根据第二设备的拍摄能力参数,对第二图像数据进行图像处理,得到第二拍摄画面。第一设备的拍摄能力参数用于指示第一设备支持的图像处理算法。
应理解,第一设备基于第二设备的算法能力(即第二设备的拍摄能力参数所指示的第二设备支持的图像处理算法),对第二设备采集的RAW图像进行图像处理,可得到与第二设备对该RAW图像进行图像处理相同或相似的效果。如此,可以在第一设备还原第二设备的画面效果。
在第一方面的另一种可能的设计方式中,第一设备可以根据所述第一设备的拍摄能力参数,对所述第一图像数据进行图像处理,得到所述第一拍摄画面;根据所述第一设备的拍摄能力参数,对所述第二图像数据进行图像处理,得到所述第二拍摄画面。其中,所述第一设备的拍摄能力参数用于指示所述第一设备支持的图像处理算法。
应理解,第一设备基于第一设备的算法能力,对第一设备和第二设备采集的RAW图像进行图像处理,可以使第二设备的拍摄画面与第一设备的拍摄画面的图像效果一致。
并且,在该设计方式中,第一设备不需要获取并保存第二设备的拍摄能力参数。这样,可以进一步减少跨设备的分布式拍摄业务所占用的网络带宽,还可以节省第一设备的存储空间。
在第一方面的另一种可能的设计方式中,上述第一设备指示第二设备开始采集图像数据,包括:第一设备向第二设备发送拍摄指令。
其中,上述拍摄指令中包括预设标记,拍摄指令用于指示第二设备采集图像数据,预设标记用于指示第二设备向第一设备传输第二设备采集的原始图像。第二设备接收到包括上述预设标记的拍摄指令后,则不会对采集的原始图像进行处理;而是将采集的原始图像透传至第一设备。
在第一方面的另一种可能的设计方式中,在第一设备接收第一操作之前,第一设备可以接收第二操作。该第二操作是用户对用于实现分布式拍摄的功能按钮的点击操作,第一设备的相机应用的预览界面、第一设备的视频通信应用的聊天界面、第一设备的控制中心、下拉菜单或者负一屏中的至少一项包括功能按钮。响应于用于点击功能按钮的第二操作,第一设备在预览界面中显示候选设备列表。该候选设备列表中包括第二设备。其中,第一操作为用户在候选设备列表中选择第二设备的操作。
在第一方面的另一种可能的设计方式中,上述同步拍摄包括同步录像、同步拍照、同步直播或者同步视频通话中的至少一种。也即,本申请的方法可以适用于第一设备录像、拍照、直播或者与其他设备视频通话的过程中。
在第一方面的另一种可能的设计方式中,上述在第一设备接收用户选择与第二设备进行同步拍摄的第一操作之后,本申请的方法还包括:所述第一设备创建所述第一设备与所述第二设备的控制会话和数据会话。
其中,上述控制会话用于传输所述第一设备与所述第二设备之间的控制命令,所述控制命令包括用于指示所述第二设备采集图像的拍摄指令,所述数据会话用于传输所述来自所述第二设备的第二图像数据。
其中,第一设备与第二设备执行跨设备的分布式拍摄业务的过程中,可以区分控制流与数据流的传输通路。这样,可以避免控制流与数据流相互挤占带宽的问题。
第二方面,本申请提供一种电子设备,该电子设备为第一设备,该电子设备包括:一个或多个摄像头、一个或多个处理器、显示屏、存储器和通信模块。上述摄像头、显示屏、存储器、通信模块和处理器耦合。
其中,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被电子设备执行时,使得电子设备执行如第一方面及其任一种可能的设计方式所述的方法。
第三方面,本申请提供一种芯片***,该芯片***应用于包括显示屏、存储器和通信模块的电子设备;所述芯片***包括一个或多个接口电路和一个或多个处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述电子设备执行如第一方面及其任一种可能的设计方式所述的方法。该电子设备是第一设备。
第四方面,本申请提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的设计方式所述的方法。
第五方面,本申请提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面及其任一种可能的设计方式所述的方法。
第六方面,本申请提供一种分布式拍摄***,该***包括上述第二方面以及任一种可能设计方式所述的第一设备以及上述第一方面以及任一种可能设计方式涉及的第二设备。
可以理解地,上述提供的第二方面所述的电子设备,第三方面所述的芯片***,第四方面所述的计算机存储介质,第五方面所述的计算机程序产品,第六方面所述的分布式拍摄***所能达到的有益效果,可参考第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种分布式拍摄***的架构示意图;
图2A为本申请实施例提供的一种分布式拍摄方法所实现的功能示意图;
图2B为本申请实施例提供的一种手机的硬件结构示意图;
图2C为一种本端设备101或远端设备102的软件架构示意图;
图2D为一种本端设备101与远端设备102的软件架构示意图;
图2E为本申请实施例提供的一种本端设备101与远端设备102的软件架构示意图;
图2F为图2E所示的软件架构的简化图;
图3A为本申请实施例提供的一种分布式拍摄界面示意图;
图3B为本申请实施例提供的另一种分布式拍摄界面示意图;
图4为本申请实施例提供的另一种分布式拍摄界面示意图;
图5为本申请实施例提供的另一种分布式拍摄界面示意图;
图6A为本申请实施例提供的另一种分布式拍摄界面示意图;
图6B为本申请实施例提供的另一种分布式拍摄界面示意图;
图7为本申请实施例提供的另一种分布式拍摄界面示意图;
图8为本申请实施例提供的另一种分布式拍摄界面示意图;
图9为本申请实施例提供的另一种分布式拍摄界面示意图;
图10为本申请实施例提供的另一种分布式拍摄界面示意图;
图11为本申请实施例提供的另一种分布式拍摄界面示意图;
图12为本申请实施例提供的一种拍摄能力参数的数据结构示意图;
图13为本申请实施例提供的一种本端设备与远端设备的数据传输流程示意图;
图14为本申请实施例提供的一种远端设备中的数据处理及传输流程示意图;
图15为本申请实施例提供的另一种分布式拍摄界面示意图;
图16为本申请实施例提供的一种本端设备与远端设备的数据传输流程示意图;
图17为本申请实施例提供的一种芯片***的结构示意图。
具体实施方式
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请实施例提供的一种分布式拍摄方法,可应用于图1所示的分布式拍摄***100中。如图1所示,该分布式拍摄***100中可以包括本端设备101和N个远端设备102,N为大于0的整数。本端设备101与任意一个远端设备102之间可通过有线的方式通信,也可以通过无线的方式通信。其中,本端设备101是第一设备,远端设备102是第二设备。
示例性的,本端设备101与远端设备102之间可以使用通用串行总线(universalserial bus,USB)建立有线连接。又例如,本端设备101与远端设备102之间可以通过全球移动通讯***(global system for mobile communications,GSM)、通用分组无线服务(general packet radio service,GPRS)、码分多址接入(code division multipleaccess,CDMA)、宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(longterm evolution,LTE)、5G以及后续标准协议、蓝牙、无线保真(wireless fidelity,Wi-Fi)、NFC、基于互联网协议的语音通话(voice over Internet protocol,VoIP)、支持网络切片架构的通信协议建立无线连接。
在一些实施例中,本端设备101可以采用上述无线连接,直接与远端设备102通信。在另一些实施例中,本端设备101可以采用上述无线连接,通过云服务器与远端设备102通信,本申请实施例对此不作限制。
其中,本端设备101和远端设备102中均可设置一个或多个摄像头。本端设备101可使用自身的摄像头采集图像数据,远端设备102也可以使用自身的摄像头采集图像数据。在本申请实施例中,本端设备101和远端设备102可以同时使用自身的摄像头采集图像数据,并且,远端设备102可将图像数据发送给本端设备101,由本端设备101同时显示来自本端设备101和远端设备102的图像数据,从而实现跨设备的分布式拍摄功能。
如图2A所示,本端设备101可以包括预设应用(application,APP)。本端设备101可以通过该应用,实现上述跨设备的分布式拍摄功能。例如,该预设应用可以是***相机应用或第三方的相机应用。本申请实施例中,***相机应用或第三方的相机应用可以统称为相机应用。其中,***应用也可以称为嵌入式应用,嵌入式应用是作为电子设备(如本端设备101或远端设备102)实现的一部分提供的应用程序。第三方应用也可以称为可下载应用。可下载应用是一个可以提供自己的因特网协议多媒体子***(internet protocolmultimedia subsystem,IMS)连接的应用程序。该可下载应用可以是预先安装在电子设备中的应用或可以是由用户下载并安装在电子设备的应用。
具体的,如图2A所示,本端设备101可以连接远端设备102,还可以通过本端设备101与远端设备120之间的连接,控制远端设备102打开远端设备102的摄像头。如图2A所示,本端设备101上可以实现对远端设备102的图像预览,控制预览效果。如图2A所示,本端设备101可以控制远端设备102拍照,并控制远端设备102的拍照效果。如图2A所示,本端设备101可以控制远端设备102录像,并控制远端设备102的录像效果。其中,实现上上述跨设备的分布式拍摄功能,如图2A所示,本端设备101可以显示本端设备101和远端设备102的拍摄画面。如此,用户在本端设备101上不仅可以看到本端设备101的拍摄画面,还可以看到远端设备102的拍摄画面。当然,本端设备101还可以通过本端设备101与远端设备120之间的连接,控制远端设备102关闭远端设备102的摄像头。
示例性的,本端设备101(或远端设备102)具体可以为手机、平板电脑、电视(也可称为智能电视、智慧屏或大屏设备)、笔记本电脑、超级移动个人计算机(Ultra-mobilePersonal Computer,UMPC)、手持计算机、照相机(如数码照相机)、摄像机(如数码摄像机)、上网本、个人数字助理(Personal Digital Assistant,PDA)、可穿戴电子设备(例如:智能手表,智能手环,智能眼镜)、车载设备、虚拟现实设备等具有拍摄功能的电子设备,本申请实施例对此不做任何限制。
示例性的,以手机作为上述分布式拍摄***100中的本端设备101举例,图2B示出了手机的结构示意图。如图2B所示,手机可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180等。
可以理解的是,本发明实施例示意的结构并不构成对手机的具体限定。在本申请另一些实施例中,手机可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器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的等待时间,因而提高了***的效率。
手机的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。
移动通信模块150可以提供应用在手机上的包括2G/3G/4G/5G等无线通信的解决方案。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
无线通信模块160可以提供应用在手机上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(Bluetooth,BT),全球导航卫星***(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
在一些实施例中,手机的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得手机可以通过无线通信技术与网络以及其他设备通信。
手机通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。在一些实施例中,手机可以包括1个或N个显示屏194,N为大于1的正整数。
手机可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,手机可以包括1个或N个摄像头193,N为大于1的正整数。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行手机的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储手机使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
手机可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
传感器模块180中可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
当然,手机还可以包括充电管理模块、电源管理模块、电池、按键、指示器以及1个或多个SIM卡接口等,本申请实施例对此不做任何限制。
图2C是本申请实施例的手机的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android***分为五层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和***库,HAL(hardware abstractionlayer,硬件抽象层)层以及内核层。应理解:本文以Android***举例来说明,在其他操作***中(例如鸿蒙***,IOS***等),只要各个功能模块实现的功能和本申请的实施例类似也能实现本申请的方案。
应用程序层可以包括一系列应用程序包。
如图2C所示,应用程序层中可以安装通话,备忘录,浏览器,联系人,图库,日历,地图,蓝牙,音乐,视频,短信息等应用。
在本申请实施例中,应用程序层中可以安装具有拍摄功能的应用,例如,相机应用。当然,其他应用需要使用拍摄功能时,也可以调用相机应用实现拍摄功能。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
例如,应用程序框架层可以包括窗口管理器,内容提供器,视图***,资源管理器,通知管理器等,本申请实施例对此不做任何限制。
例如,上述窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。上述内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。上述视图***可用于构建应用程序的显示界面。每个显示界面可以由一个或多个控件组成。一般而言,控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、微件(Widget)等界面元素。上述资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。上述通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,振动,指示灯闪烁等。
如图2C所示,Android runtime包括核心库和虚拟机。Android runtime负责安卓***的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
***库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
其中,表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。2D图形引擎是2D绘图的绘图引擎。
内核层位于HAL之下,是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动等,本申请实施例对此不做任何限制。
在本申请实施例中,仍如图2C所示,以相机应用举例,可应用程序框架层中设置有相机服务(Camera Service)。相机应用可通过调用预设的API启动Camera Service。CameraService在运行过程中可以与HAL(hardware abstraction layer,硬件抽象层)中的CameraHAL交互。其中,Camera HAL负责与手机中实现拍摄功能的硬件设备(例如摄像头)进行交互,Camera HAL一方面隐藏了相关硬件设备的实现细节(例如具体的图像处理算法),另一方面可向Android***提供调用相关硬件设备的接口。
示例性的,相机应用运行时可将用户下发的相关控制命令(例如预览、放大、拍照或录像指令)发送至Camera Service。一方面,Camera Service可将接收到的控制命令发送至Camera HAL,使得Camera HAL可根据接收到的控制命令调用内核层中的相机驱动,由相机驱动来驱动摄像头等硬件设备响应该控制命令采集图像数据。例如,摄像头可按照一定的帧率,将采集到的每一帧图像数据通过相机驱动传递给Camera HAL。其中,控制命令在操作***内部的传递过程可参见图2C中控制流的具体传递过程。
另一方面,Camera Service接收到上述控制命令后,可根据接收到的控制命令确定此时的拍摄策略,拍摄策略中设置了需要对采集到的图像数据执行的具体图像处理任务。例如,在预览模式下,Camera Service可在拍摄策略中设置图像处理任务1用于实现人脸检测功能。又例如,如果在预览模式下用户开启了美颜功能,则Camera Service还可以在拍摄策略中设置图像处理任务2用于实现美颜功能。进而,Camera Service可将确定出的拍摄策略发送至Camera HAL。
当Camera HAL接收到摄像头采集到的每一帧图像数据后,可根据Camera Service下发的拍摄策略对上述图像数据执行相应的图像处理任务,得到图像处理后的每一帧拍摄画面。例如,Camera HAL可根据拍摄策略1对接收到的每一帧图像数据执行图像处理任务1,得到对应的每一帧拍摄画面。当拍摄策略1更新为拍摄策略2后,Camera HAL可根据拍摄策略2对接收到的每一帧图像数据执行图像处理任务2和图像处理任务3,得到对应的每一帧拍摄画面。
后续,Camera HAL可将经过图像处理后的每一帧拍摄画面通过Camera Service上报给相机应用,相机应用可将每一帧拍摄画面显示在显示界面中,或者,相机应用以照片或视频的形式将每一帧拍摄画面保存在手机内。其中,上述拍摄画面在操作***内部的传递过程可参见图2C中数据流的具体传递过程。
请参考图2D,其示出本地设备101和远端设备102的一种软件架构示意图。本申请实施例这里结合图2D所示的软件架构,说明本地设备101和远端设备102实现跨设备分布式拍摄的方案。
其中,本端设备101具备设备发现和远程注册功能。例如,本端设备101可以发现远端设备102,如图4所示的电视1、手表2和手机3。当用户选择电视1作为远端设备102与本端设备101进行跨设备分布式拍摄(如用户选择图4所示的电视1)后,本端设备101可以将该远端设备102(如电视1)注册到本端设备101上。
例如,本端设备101可以在本端设备101的硬件抽象层(hardware abstractlayer,HAL),针对远端设备102创建一个分布式移动传感开发平台(Distributed MobileSensing Development Platform,DMSDP)HAL,也可以称为虚拟相机HAL(即虚拟CameraHAL)。其中,与本端设备101中传统的Camera HAL不同的是,DMSDP HAL并不与本端设备101实际的硬件设备相对应,而是与本端设备101当前连接的远端设备102对应。图2D所示的DMSDP HAL是本端设备101按照远端设备102的拍摄能力参数创建的HAL。本端设备101可以通过DMSDP HAL与远端设备102进行数据收发,将远端设备102作为本端设备101的一个虚拟设备,与远端设备102协同完成跨设备的分布式拍摄业务。
以下介绍本端设备101与远端设备102协同完成跨设备的分布式拍摄业务的具体流程。如图2D所示,该流程可以包括步骤①-步骤⑩。
步骤①:本端设备101的应用层向服务层的相机服务下发用于控制远端设备102的摄像头的控制命令。步骤②:本端设备101的服务层向HAL的DMSDP HAL发送该控制命令。步骤③:本端设备101的DMSDP HAL向远端设备102传输控制命令。步骤④:远端设备102接收到控制命令后,向服务层传输控制命令。步骤⑤:远端设备102的服务层向HAL的Camera HAL传输控制命令。其中,远端设备102的Camera HAL与远端设备102实际的硬件设备相对应。如此,远端设备102的HAL便可以调用其底层(如内核层Kernel)根据该控制命令,执行对应的拍摄任务(如启动摄像头、切换摄像头或者调整摄像头的相关参数等)。其中,上述步骤①-步骤⑤中所传输的数据可以称为控制流。
步骤⑥:远端设备101的HAL向服务层的相机服务上传预览流。该预览流包括远端设备102底层的Camera器件采集的,并经过底层的图像信号处理器(image signalprocessor,ISP)处理过的一帧或多帧预览图像。步骤⑦:远端设备101的服务层向远端设备102的应用层传输预览流。步骤⑧:远端设备101的应用层向本端设备101的DMSDP HAL传输预览流。步骤⑨:本端设备101的DMSDP HAL向服务层的相机服务传输预览流。步骤⑩:本端设备101的服务层向应用层上报该预览流。如此,本端设备101的相机应用便可以向用户呈现来自远端设备102的预览流(如上述拍摄画面2、拍摄画面3或拍摄画面c)。当然,本端设备101的相机应用还可以向用户呈现来自本端设备101的预览流,具体流程可参考常规技术的相关介绍,这里不予赘述。其中,上述步骤⑥-步骤⑩中所传输的数据可以称为预览流或者数据流。
需要说明的是,如图2D所示,本端设备101或远端设备102的服务层可以包含于框架层,服务层可在框架层中实现。当然,本端设备101或远端设备102的服务层的服务层也可以独立于框架层,本申请实施例对此不作限制。
一方面,虽然执行上述流程可完成跨设备的分布式拍摄业务;但是,在上述跨设备的预览流传输过程中,远端设备102向本端设备101传输的预览流是经过图像处理得到的成片(即可直接显示的预览结果),其数据量加大,需要占用较大的网络带宽,浪费了网络资源。
另一方面,不同设备的进行图像处理的性能不同。例如,相比于本端设备101,远端设备102进行图层处理的性能可能较低。如此,远端设备102的出图效率则较低。实现本端设备101上同时显示来自本端设备101和远端设备102的拍摄画面,则需要较大的时延。并且,上述流程中并不区分控制流与数据流(或预览流)的传输通路,控制流与数据流可能会相互挤占带宽。
本申请实施例提供一种分布式拍摄方法,在本端设备101与远端设备102执行跨设备的分布式拍摄业务的过程中,本端设备101可以从远端设备102直接获取到该远端设备102采集的原始图像。该原始图像也可以称为RAW图像。RAW可翻译为“未经加工”。也就是说,上述远端设备102采集的原始图像是未经过远端设备102处理的图像。以下实施例中,采用RAW图像代表原始图像,介绍本申请实施例的方法。
其中,相比于经过远端设备102处理的图像,RAW图像的数据量较小。如此,便可以减少跨设备的分布式拍摄业务所占用的网络带宽。
并且,由本端设备101对来自远端设备102的RAW图像进行处理,可以避免由于两端设备性能差异较大而增大时延的问题。采用该方案,可以减少分布式拍摄业务的时延。进一步的,本端设备101与远端设备102执行跨设备的分布式拍摄业务的过程中,可以区分控制流与数据流的传输通路。这样,便可以避免控制流与数据流相互挤占带宽的问题。
请参考图2E,其示出本申请实施例提供的一种本端设备101和远端设备102的软件架构示意图。如图2E所示,本端设备101可以包括:应用层200、框架层201、服务层201a和HAL202;远端设备102可以包括:应用层210、框架层211、服务层211a和HAL 212。其中,服务层可在框架层中实现。例如,如图2E所示,服务层201a可在框架层201中实现,服务层211a可在框架层211中实现。
其中,应用层可以包括一系列应用程序包。例如,应用层200可以包括多个应用,如系相机应用和Dv应用200a。当然,其他应用需要使用拍摄功能时,也可以调用相机应用实现拍摄功能。又例如,应用层210包括用于支持远端设备102与本端设备101协同完成分布式拍摄业务的相机代理服务210a。该相机代理服务210a也可以称为相机代理应用,本申请实施例对此不作限制。
并且,本申请中,还可以在应用层200中安装用于实现分布式拍摄功能的设备虚拟化(device virtualization,Dv)应用200a。Dv应用200a可作为***应用常驻在本端设备101中运行。或者,也可将Dv应用200a实现的功能以***服务的形式常驻在本端设备101中运行。
框架层为应用层的应用程序提供API和编程框架。例如,框架层201和框架层211均可以提供Camera API 2.0。框架层201和框架层211的其他功能可以参考本申请实施例对图2C所述的应用程序框架层的详细介绍,这里不予赘述。
如图2E所示,以相机应用举例,框架层201中设置有Camera kit 201c。其中,Camera kit 201c中可以封装多种相机模式。例如,图2E所示的拍照模式、录像模式和双景模式。
如图2E所示,可在服务层201a中设置有相机服务(Camera Service)201a1。相机应用可通过调用预设的API(如Camera API 2.0)启动Camera Service 201a1。HAL 202中设置有Camera HAL 202a和DMSDP HAL 202b。Camera Service 201a1在运行过程中可以与HAL202中的Camera HAL 202a和/或DMSDP HAL 202b交互。
其中,Camera HAL 202a负责与本端设备101中实现拍摄功能的硬件设备(例如摄像头)进行交互,Camera HAL 202a一方面隐藏了相关硬件设备的实现细节(例如具体的图像处理算法),另一方面可向Android***提供调用相关硬件设备的接口。
需要说明的是,应用层200中相机应用运行时,应用层200与框架层201、服务层201a、Camera HAL 202a和DMSDP HAL 202b等的交互流程,可以参考上述实施例对图2C中对应软件模块的介绍,本申请实施例这里不予赘述。
其中,上述框架层201还可设置用于实现分布式拍摄功能的Dv套件(kit)201b。Dvkit201b可以由设置在应用层200的Dv应用200a调用,以实现发现并连接远端设备102的功能。或者,还可将Dv应用200a实现的功能以***服务的形式常驻在手机中运行。
当手机需要使用其他电子设备的摄像头实现分布式拍摄功能时,在Camera kit201c提供的相机模式(如双景模式)下,本端设备101可以通过Dv kit 201b发现并连接远端设备102。本端设备101与远端设备102建立连接后,本端设备101可以在本端设备101的HAL202,针对远端设备102创建一个DMSDP HAL 202b。即可将远端设备102注册到本端设备101。图2E所示的DMSDP HAL 202b是本端设备101按照远端设备102的拍摄能力参数创建的HAL。
其中,远端设备102也可以包括Dv应用和Dv kit。该远端设备102中Dv应用和Dvkit的功能,可以参考本申请实施例对Dv应用200a和Dv kit 201b的功能介绍,这里不予赘述。
仍如图2E所示,除了在HAL 202中为远端设备201创建对应的DMSDP HAL 202b之外,还可以将远端设备102的拍摄能力参数发送至Camera Service 201a1进行保存,也即在Camera Service 201a1中注册当前远端设备102的拍摄能力参数(包括设备能力信息和算法能力信息)。其中,设备能力信息用于指示远端设备102拍摄图像的硬件能力,算法能力信息用于指示远端设备102对拍摄的图像进行图像处理的算法能力。远端设备102的能力信息可通过DMSDP HAL 202b注册或映射到Camera Service 201a1。进一步的,DMSDP HAL 202b中还可设置“对端Meta同步映射”功能。对端Meta是指远端设备102中用于指示远端设备102的拍摄能力参数的标签。
需要说明的是,DMSDP HAL 202b也可以称为虚拟Camera HAL或者DMSDP CameraHAL。与传统的Camera HAL不同的是,DMSDP HAL 202b并不与本端设备101实际的硬件设备相对应,而是与远端设备102对应。如图2F所示,远端设备102(如电视、平板电脑、手机等包括摄像头的设备)可作为本端设备101的虚拟相机。其中,本端设备101(如图2F所示的虚拟框架)可通过DMSDP HAL 202b与远端设备102进行数据收发,将远端设备102作为本端设备101的一个虚拟相机,与远端设备102协同完成分布式拍摄场景中的各项业务。
在一些实施例中,本端设备101的Dv应用200a还可以通过Dv kit 201b获取远端设备102的音频能力参数(例如音频播放时延、音频采样率或声音通道数目等)、显示能力参数(例如屏幕分辨率、显示数据的编解码算法等)。当然,如果远端设备102还具有其他能力(例如打印能力等),则远端设备102也可将相关的能力参数发送给本端设备101的Dv应用200a。此时,DMSDP HAL 202b不仅具有远端设备102的图像处理能力,还具有远端设备102的音频、显示等能力,使得远端设备102可以作为本端设备101的虚拟设备与本端设备101协同完成分布式场景中的各项业务。
与图2D所示的方案不同的是,本端设备101与远端设备102建立连接后,可分别创建两个相机会话(Camera Session)。例如,本端设备101可以通过DMSDP HAL 202b创建用于传输控制流的控制会话(Control Session)和用于传输数据流(即预览流)的数据会话(Data Session)。
其中,除了在HAL中为远端设备102创建对应的DMSDP HAL 202b之外,还可以将远端设备102的拍摄能力参数发送至Camera Service 201a1进行保存,也即在CameraService 201a1中注册当前远端设备102的拍摄能力。
当手机运行相机应用时,Camera Service 201a1能够根据相机应用下发的控制命令(例如预览、放大、录像等指令),结合远端设备102的拍摄能力实时确定拍摄过程中的拍摄策略。例如,Camera Service可以在根据从设备的拍摄能力参数,在拍摄策略中设置手机需要执行的图像处理任务,以及远端设备102需要执行的图像处理任务。进而,CameraService可使用DMSDP HAL 202b,通过Control Session向远端设备102发送与拍摄策略对应的拍摄指令,触发远端设备102执行对应的图像处理任务。
之后,拍摄指令传输至远端设备102的Camera HAL 212a后,使得远端设备102的Camera HAL 212a可根据接收到的拍摄指令调用内核层中的相机驱动,驱动摄像头等硬件设备响应该拍摄指令采集图像数据。例如,摄像头可按照一定的帧率,将采集到的每一帧图像数据通过相机驱动传递给Camera HAL。
当远端设备102的Camera HAL 212a接收到摄像头采集到的每一帧图像数据后,向上层传输包括摄像头采集的RAW图像的数据流。其中,远端设备102的应用层210接收到包括RAW图像的数据流后,可由应用层210的相机代理服务210a(或者也可以称为相机代理应用)通过DMSDP HAL 202b向本端设备101发送包括RAW图像的数据流。例如,相机代理服务210a可以通过DMSDP HAL 202b提供的Data Session向本端设备101发送包括RAW图像的数据流。
本端设备101的DMSDP HAL 202b接收到包括RAW图像的数据流后,可按照CameraService201a1中保存的拍摄能力参数调用相关算法执行后处理(算法),对该RAW图像进行图像处理,得到对应的每一帧拍摄画面。后续,DMSDP HAL 202b可将经过图像处理后的每一帧拍摄画面通过Camera Service 201a1上报给相机应用,相机应用可将每一帧拍摄画面显示在显示界面中。
这样一来,本端设备101和远端设备102在实现分布式拍摄功能时,本端设备101可基于上述拍摄策略,按照自身的拍摄能力和远端设备102的拍摄能力对图像数据进行相应的图像处理,在分布式拍摄场景中实现较好的拍摄效果。
在一些实施例中,本端设备101也可以向远端设备102发送该本端设备101采集的RAW图像。远端设备102的Camera Service 211a1中也可以保存本端设备101的拍摄能力参数。远端设备102也可以按照本端设备101的拍摄能力参数调用相关的算法,对来自本端设备101的RAW图像进行图像处理,得到对应的每一帧拍摄画面。远端设备102可以按照远端设备102的拍摄能力参数调用相关的算法对远端设备102采集的RAW图像进行图像处理,得到对应的每一帧拍摄画面。如此,远端设备102也可以同时显示本端设备101的拍摄画面和远端设备102的拍摄画面。采用本方案,可以同时在本端设备101和远端设备102上实现上述跨设备的分布式拍摄功能。
以下举例说明本申请实施例提供的方法的应用场景。本申请实施例的方法至少可以适用于以下应用场景(1)-应用场景(2)。
应用场景(1):跨设备多景拍摄场景。
例如,该跨设备多景拍摄场景可以为跨设备双景拍摄场景。其中,跨设备双景拍摄场景可以包括跨设备双景拍照场景和跨设备双景录像场景。以下实施例中,以跨设备双景拍照场景为例,介绍该跨设备双景拍摄场景。
示例性的,上述预设应用可以是用于实现拍摄功能的相机应用。以手机0为本端设备101举例,手机0中可以安装有相机应用。手机0(即本端设备101)可以通过相机应用与远端设备102进行跨设备多景拍摄。如图3A所示,检测到用户打开相机应用后,手机0可打开自身的摄像头开始采集图像数据,并根据采集到的图像数据在预览界面301的预览框302中实时显示对应的拍摄画面。
其中,手机0在预览框302中显示的拍摄画面与手机0使用摄像头采集的图像数据可以不同。例如,手机0获取到摄像头采集的图像数据后,可以对采集到的图像数据执行防抖、对焦、柔焦、虚化、滤镜、美颜、人脸检测或AR识别等图像处理任务,得到图像处理后的拍摄画面。进而,手机0可将图像处理后的拍摄画面显示在上述预览框302中。
类似的,远端设备102也可以打开自身的摄像头开始采集图像数据,并对采集到的图像数据执行防抖、对焦、柔焦、虚化、滤镜、美颜、人脸检测或AR识别等图像处理任务,得到图像处理后的拍摄画面,本申请实施例对此不做任何限制。
在本申请实施例中,如图3A所示,手机0可以在相机应用的预览界面301中设置用于跨设备多景拍摄的功能按钮303。当用户希望在手机0上看到手机0与远端设备102拍摄的多景画面时,可点击功能按钮303开启跨设备多景拍摄功能。
或者,手机0还可以将同步拍摄功能的功能按钮304设置在手机的控制中心、下拉菜单、负一屏或其他应用(例如视频通话应用)中,本申请实施例对此不做任何限制。例如,如图3B所示,手机可响应用户打开控制中心的操作显示控制中心305,控制中心305中设置有上述功能按钮304。如果用户希望使用手机和其他电子设备一起进行同步拍摄,可点击功能按钮304。
示例性的,手机0检测到用户点击功能按钮303、功能按钮304后,如图4所示,手机0可在对话框401中显示当前手机0搜索到的可以采集图像数据一个或多个候选设备。
例如,云服务器中可以记录每个电子设备是否具有拍摄功能。那么,手机0可以在云服务器中查询与手机0登录同一账号(例如华为账号)的具有拍摄功能的电子设备。进而,手机0可将查询到的电子设备作为候选设备显示在对话框401中。
或者,手机0可以搜索与手机0位于同一Wi-Fi网络中的电子设备。进而,手机0可向同一Wi-Fi网络中的各个电子设备发送查询请求,触发接收到查询请求的电子设备可向手机0发送响应消息,响应消息中可以指示自身是否具有拍摄功能。那么,手机0可以根据接收到的响应消息确定出当前Wi-Fi网络中具有拍摄功能的电子设备。进而,手机0可将具有拍摄功能的电子设备作为候选设备显示在对话框401中。
又或者,手机0中可安装用于管理家庭内智能家居设备(例如电视、空调、音箱或冰箱等)的应用。以智能家居应用举例,用户可以在智能家居应用中添加一个或多个智能家居设备,使得用户添加的智能家居设备与手机0建立关联。例如,智能家居设备上可以设置包含设备标识等设备信息的二维码,用户使用手机0的智能家居应用扫描该二维码后,可将对应的智能家居设备添加至智能家居应用中,从而建立智能家居设备与手机0的关联关系。在本申请实施例中,当智能家居应用中添加的一个或多个智能家居设备上线时,例如,当手机0检测到已添加智能家居设备发送的Wi-Fi信号时,手机0可将该智能家居设备作为候选设备显示在对话框401中,提示用户选择使用相应的智能家居设备与手机0进行同步拍摄。
如图4所示,以手机0搜索到的候选设备包括电视1、手表2以及手机3举例,用户可以在电视1、手表2以及手机3中选择本次与手机0进行跨设备多景拍摄的一个或多个远端设备102。本申请实施例中,以跨设备双景拍摄为例。例如,如果检测到用户选择电视1,则手机0可将电视1作为远端设备102,与电视1建立网络连接。例如,手机0可通过路由器与电视1建立Wi-Fi连接,或者,手机0可直接与电视1建立Wi-Fi P2P连接,或者手机0可以直接与电视1建立蓝牙连接;或者,手机0可直接与电视1建立蓝牙连接;或者,手机0可直接与电视1建立短距离无线连接,该短距离无线连接包括但不限于近场通信(Near Field Communication,NFC)连接,红外线连接,超宽带(Ultra Wideband,UWB)连接,紫峰协议(ZigBee)连接;或者,手机0可直接与电视1建立移动网络连接,该移动网络包括但不限于支持2G,3G,4G,5G以及后续标准协议的移动网络。
在另一些实施例中,手机0检测到用户点击功能按钮303后,手机可按照上述方法搜索具有拍摄功能的一个或多个电子设备。进而,手机0可自动与搜索到的电子设备建立网路连接。此时,无需用户手动选择与手机0建立网络连接的具体设备。
又或者,在用户打开相机应用之前,手机可能已经与一个或多个具有拍摄功能的电子设备建立了网络连接。例如,用户在手机0中打开相机应用之前,已经与平板电脑建立了蓝牙连接。后续,手机0打开相机应用显示出相机应用的预览界面301后,如果检测到用户点击功能按钮303,则手机0可以不再搜索具有拍摄功能的电子设备,而是执行下述方法。
手机0与电视1建立网络连接后,一方面,如图5所示,手机0可打开自身的摄像头开始采集图像数据,并对采集到的图像数据进行图像处理,得到拍摄画面1。另一方面,如图5所示,手机0可指示电视1打开自身的摄像头开始采集图像数据,并对采集到的图像数据进行图像处理,得到拍摄画面2。后续,电视1可将拍摄画面2发送给手机0。这样,手机0可在相机应用的显示界面中同时显示来自手机0的拍摄画面1以及来自电视1的拍摄画面2。
如上述实施例所述,在应用场景(1)的第一种情况下,在上述跨设备多景拍摄场景中,可以使用多个摄像头实现对同一拍摄对象的多视角拍摄,可以提升拍摄的趣味性。
在应用场景(1)的第二种情况下,在上述跨设备多景拍摄场景中,还可以使用多个摄像头实现对多个拍摄对象的合拍(如亲子合拍或好友合拍等)。例如,假设本端设备101是图5所示的手机0,远端设备102是图6A所示的手机3。其中,手机0或手机3可以通过上述预设应用(如相机应用或者其他可用于实现照片或视频拍摄的应用),实现多个拍摄对象的合拍。
例如,以预设应用是相机应用为例。当用户希望在手机0上看到手机0与手机3的合拍画面时,可点击功能按钮303或功能按钮304开启跨设备多景合拍功能。
示例性的,手机0检测到用户点击功能按钮303或功能按钮304后,如图4所示,手机0可在对话框401中显示当前手机0搜索到的可以采集图像数据一个或多个候选设备。如图4所示,以手机0搜索到的候选设备包括电视1、手表2以及手机3举例,用户可以在电视1、手表2以及手机3中选择本次与手机0进行跨设备多景合拍的远端设备102。例如,如果检测到用户选择手机3,则手机0可将手机3作为远端设备102,与手机3建立网络连接。
手机0与手机3建立网络连接后,一方面,如图6A所示,手机0可打开自身的摄像头开始采集图像数据,并对采集到的图像数据进行图像处理,得到拍摄画面1。另一方面,如图6A所示,手机0可指示手机3打开自身的摄像头开始采集图像数据,并对采集到的图像数据进行图像处理,得到拍摄画面3。后续,手机3可将拍摄画面3发送给手机0。这样,手机0可在相机应用的显示界面中同时显示来自手机0的拍摄画面1以及来自手机3的拍摄画面3。
需要说明的是,与上述第一种情况不同的是,在进行跨设备多景合拍的过程中,手机0可将拍摄画面1发送给手机3。如图6A所示,手机3也可以同时显示来自手机0的拍摄画面1以及来自手机3的拍摄画面3。此时,手机0可同时作为本端设备和远端设备。具体的,手机0作为本端设备,手机3作为远端设备,手机0可同时显示手机0的拍摄画面1以及来自手机3的拍摄画面3。手机3作为本端设备,手机0作为远端设备,手机3可同时显示手机3的拍摄画面3以及来自手机0的拍摄画面1。
应注意,上述跨设备多景拍摄场景可以是至少两个设备进行跨设备多景拍摄的场景。示例性的,三个电子设备也可以应用本申请实施例的方法,实现跨设备多景拍摄功能。例如,图6B所示的手机0可以作为本端设备,手机3和电视1作为远端设备;手机0可以与手机3和电视1实现跨设备多景拍摄。如图6B所示,手机0可以同时显示手机0拍摄画面1、来自手机3的拍摄画面3,以及来自电视1的拍摄画面2。
应用场景(2):本端设备101调用远端设备102进行视频通话、直播、拍照或者录像的场景。其中,本端设备102可以调用远端设备102的摄像头,或者远端设备102的摄像头和显示屏,协助本端设备101行视频通话、直播、拍照或者录像。
示例性的,本申请实施例这里以本端设备101调用远端设备102进行视频通话为例,介绍该应用场景(2)。上述预设应用可以是用于实现视频通话的视频通信应用(如微信TM应用)。以手机0为本端设备101,电视1是远端设备102举例,手机0中可以安装有上述视频通信应用。
在一种实现方式中,手机0可以在与手机4进行视频通话的过程中,调用远端设备102(如电视1)摄像头和显示屏,协助手机0与手机4进行视频通话。例如,如图7所示,手机0显示视频通话界面701,该视频通话界面701中设置有用于调用其他设备协助手机0进行视频通话的功能按钮702。当用户希望手机0调用其他设备协助手机0进行视频通话时,可点击功能按钮702。
在另一种实现方式中,手机0可以在请求与手机4进行视频通话之前,调用远端设备102(如电视1)摄像头和显示屏,协助手机0与手机4进行视频通话。例如,如图8所示,响应于用户对聊天界面中“视频通话”选项801的点击操作,手机0可显示确认窗口802,该确认窗口802用于请求用户确认是否使用大屏协助手机进行语音通话。当用户希望手机0调用其他设备协助手机0进行视频通话时,可点击确认窗口802中的“是”按钮。
示例性的,手机0检测到用户点击功能按钮702或者确认窗口802中的“是”按钮后,可搜索候选设备。如可显示图4所示的对话框401。其中,手机搜索候选设备,显示对话框401的具体方法,可以参考上述实施例中的详细描述,这里不予赘述。
手机0检测到用户选择电视1,则手机0可将电视1作为远端设备102,与电视1建立网络连接。手机0与电视1建立网络连接后,一方面,如图9所示,手机0可接收来自手机4的拍摄画面b,并向电视1传输该拍摄画面b。另一方面,如图9所示,手机0可指示电视1打开自身的摄像头开始采集图像数据,并对采集到的图像数据进行图像处理,得到拍摄画面c。后续,电视1可以将拍摄画面c发送给手机0,由手机0将该拍摄画面c传输至手机4。这样,电视1可同时显示来自手机4的拍摄画面b以及来自电视1的拍摄画面c;手机4也可以同时显示来自电视1的拍摄画面c以及来自手机4的拍摄画面b。
在另一些实施例中,手机0调用电视1摄像头和显示屏,协助手机0与手机4进行视频通话的过程中,手机0也可以显示来自手机4的拍摄画面b和/或来自电视1的拍摄画面c。
或者,手机0调用电视1摄像头和显示屏,协助手机0与手机4进行视频通话的过程中,手机0可以显示预设界面。该预设界面可以是图9所示的主界面901。或者,该预设界面还可以是预先设定的图片或者预先设定的动画等。
或者,手机0调用电视1摄像头和显示屏,协助手机0与手机4进行视频通话的过程中,手机0可以黑屏。这样,可以降低手机0的功耗。
需要说明的是,由于手机0和电视1的拍摄视角不同,因此手机0的拍摄画面与电视1的拍摄画面可能不同。例如,图7所示的拍摄画面a是手机0拍摄的,图9所示的拍摄画面c是电视1拍摄的,拍摄画面a与拍摄画面c不同。
在上述任一种应用场景中,本端设备101都可以使用并控制远端设备102的摄像头,利用远端设备102的摄像头协助本端设备101完成拍摄任务、视频任务或者其他相关任务。当然,远端设备102也可以使用并控制本端设备101的摄像头,利用本端设备101的摄像头协助远端设备102完成上述任务。例如,如图6A所示,手机3也可以同时显示来自手机0的拍摄画面1以及来自手机3的拍摄画面3。
在本申请实施例中,本端设备101和远端设备102可在分布式拍摄场景下进行拍摄(如多景拍摄)。以下实施例中,以本端设备101是手机为例,详细介绍本申请实施例的方法。
例如,如上述实施例所示,本端设备101(如手机)可提供双景模式(包括双景拍照模式和双景录像模式)。如图10所示,手机可以在相机应用的预览界面中设置用于跨设备多景拍摄的功能按钮1001和功能按钮1002。具体的,该功能按钮1001用于触发手机进入多景拍照模式。该功能按钮1002用于触发手机进入多景录像模式。当用户希望在手机上看到手机与远端设备1002拍摄的多景画面时,可点击功能按钮1001或功能按钮1002开启跨设备多景拍摄功能。本申请实施例中,用户对功能按钮1001、功能按钮1002或功能按钮303等的点击操作是第二操作。
示例性的,手机检测到用户点击上述功能按钮1001后,手机的预设应用(如相机应用)可以触发手机搜索附近具有拍摄功能的一个或多个候选设备。例如,手机的预设应用可以通过Dv kit发现(即搜索)具有拍摄功能的一个或多个候选设备。
并且,如图11所示,手机可将搜索到的一个或多个候选设备显示在对话框1101中。例如,手机可在服务器中查询与手机登录同一账号且具有拍摄功能的电子设备,并将查询到的电子设备作为候选设备显示在对话框1101中。本申请实施例中,用户对对话框1101和对话框401(也称为候选设备列表)中候选设备的点击操作是第一操作。
以对话框1101中的候选设备包括电视1102、电视1103以及手表1104举例,用户可在对话框1101中选择本次与手机协同实现同步拍摄功能的远端设备。例如,如果手机检测到用户选择对话框1101中的电视1102,说明用户希望使用手机和电视1102同时进行拍摄。此时,手机的Dv kit可将电视1102作为手机的远端设备与手机建立网络连接。
手机与电视1102建立网络连接后,电视1102可注册在手机的HAL。具体的,手机可基于该网络连接,从电视1102获取电视1102的拍摄能力参数;并按照电视1102的拍摄能力参数在HAL创建对应的DMSDP HAL。
其中,电视1002的拍摄能力参数用于反映电视1102的具体拍摄能力。该拍摄能力参数可以包括设备能力信息。该设备能力信息用于指示电视1102拍摄图像的硬件能力。例如,设备能力信息可以指示电视1102中摄像头的数目、摄像头的分辨率或图像处理器的型号等参数。该设备能力信息可用于手机确定电视1102的拍摄策略。
上述电视1102的拍摄能力参数可以保存在手机的Camera Service中。示例性的,电视1102的拍摄能力参数可以以标签(Tag)的方式,保存在手机的Camera Service中。
本申请实施例这里以设备能力信息为例,介绍电视1102的拍摄能力参数在手机的Camera Service中的存储格式。例如,请参考图12,其示出本申请实施例中,手机的CameraService中保存的电视1102的设备能力信息的一种格式示意图。
手机的Camera Service中可以采用图12所示的三层数据结构,保存电视1102的设备能力信息。其中,手机可以在Camera Service中分段存储电视1102的每种设备能力信息。图12所示的Section_name为电视1102的存储地址;Tag_name为Section_name的一个地址下多个Tag名称;Tag_index为Tag名称的能力信息的索引。该索引用于指示具体能力信息的存储地址。
例如,电视1102的设备能力信息可以包括图12所示的5个Section_name:com.huawei.capture.metadata;com.huawei.device.capabilities;android.huawei.device.parameters;android.huawei.stream.info;android.huawei.stream.parameters。
以图12所示的一个Section_name(如com.huawei.device.capabilities)为例。如图12所示,电视1102的设备能力信息还可以包括:该Section_name对应的存储地址中保存的多个Tag的Tag名称,如device_sensor_position、hidden_camera_id、colerBarCheckUnsupport、amoothZoomSupport和tofType等。例如,device_sensor_position代表电视1102的摄像头的传感器。
以图12所示的一个Tag名称为例。如图12所示,电视1102的设备能力信息还可以包括:该Tag名称的能力信息的索引,如CAMERA_HUAWEI_DEVICE_CAPABILITIES_START和CAMERA_HUAWEI_DEVICE_CAPABILITIES_END。
其中,CAMERA_HUAWEI_DEVICE_CAPABILITIES_START可指示电视1102中存储一个Tag名称的能力信息的起始地址。CAMERA_HUAWEI_DEVICE_CAPABILITIES_END可指示电视1102中存储一个Tag名称的能力信息的结束地址。根据该起始地址和结束地址,手机便可以向电视1102查询电视1102的各种设备能力。
应理解,如图13所示,保存在Camera Service中的TAG(即上述拍摄能力参数),可结合手机中的后处理(算法)模块,对电视1102返回的RAW图进行处理。其中,手机根据上述TAG,结合后处理(算法)模块对电视1102返回的RAW图进行处理的具体方法,在以下实施例中详细介绍,此处不予赘述。
后续,手机在运行相机应用时,一方面可调用自身的摄像头获取每一帧拍摄画面,另一方面,手机可指示电视1102获取RAW图像,并将获取到的RAW图像通过DMSDP HAL 202b发送给手机的相机应用。其中,手机可以按照一定的帧率调用自身的摄像头获取每一帧拍摄画面,并指示电视1102按照同样的帧率获取RAW图像。
其中,手机可通过DMSDP HAL向电视1102发送拍摄指令,以指示电视1102获取RAW图像。例如,如图13所示,手机的应用层200可通过框架层201和服务层201a向HAL 202的DMSDP HAL 202b传输拍摄指令;HAL 202的DMSDP HAL 202b可执行步骤a向电视1102传输拍摄指令。电视1102接收到手机通过DMSDP HAL 202b传输的拍摄指令后,应用层210的相机代理服务210a可在该拍摄指令中增加预设标记。该预设标记用于指示直接获取底层的Camera器件采集的RAW数据,并将该RAW数据透传至应用层211的相机代理服务210a。例如,如图13所示,应用层210的相机代理服务210a可在该拍摄指令中增加预设标记,并通过框架层211、服务层211a向HAL 212中的Camera HAL 212a传输添加了预设标记的拍摄指令。HAL 212中的Camera HAL 212a接收到该拍摄指令后,可调用内核层213的Camera器件执行该拍摄指令。例如,HAL 212中的Camera HAL 212a可调用内核层213中的Camera器件采集RAW图像,并执行步骤b向将该RAW数据透传至应用层211的相机代理服务210a。然后,由应用层211的相机代理服务210a执行步骤c,向手机的DMSDP HAL 202b传输该RAW图像。
其中,内核层213的Camera器件可以包括图14所示的感光器件、数字信号处理器(DSP)和图像处理器(ISP)。该感光器件可以包括镜头和传感器(Sensor)等。该感光器件用于采集RAW图像。数字信号处理器(DSP)用于对感光器件采集的多帧RAW图像进行抽样处理;然后,向图像处理器(ISP)传输抽样后的RAW图像。一般而言,图像处理器(ISP)可以对来自DSP的RAW图像进行图像处理。但是,本申请实施例中,ISP不会对来自DSP的RAW图像进行图像处理,而是将来自DSP的RAW图像透传至HAL 212中的Camera HAL 212a。
需要说明的是,图13所述步骤b直接由内核层213指向应用层210,只是为了说明手机不会对RAW图像进行图像处理,并不表示该RAW图像不经过HAL 212中的Camera HAL212a、服务层211a和框架层211便可以直接由内核层213传输至应用层210。内核层213中的Camera器件采集RAW图像是需要通过HAL 212中的Camera HAL 212a、服务层211a和框架层211传输至应用层210的。但是,如图14所示,HAL 212中的Camera HAL 212a、服务层211a和框架层211只可以透传该RAW图像,而不会对该RAW图像进行任何处理。
在本申请实施例中,电视1102向手机传输的并不是经过处理的、可直接显示的拍摄画面,而是未经过图像处理的RAW图像。电视1102使用摄像头采集到RAW图像后,不需要对RAW图像进行图像处理,便可以直接向手机传输该RAW图像。该RAW图像是未经过电视1102处理的图像。相比于经过电视1102处理的图像,RAW图像的数据量较小。如此,便可以减少跨设备的分布式拍摄业务所占用的网络带宽。
然后,手机可对来自电视1102的RAW图像进行图像处理,得到对应的拍摄画面。这样,手机的相机应用不仅可以获取到来自手机的每一帧拍摄画面,还可以获取到电视1102的每一帧拍摄画面。进而,相机应用可将手机的拍摄画面和电视1102的拍摄画面同步显示在相机应用的显示界面中,实现跨设备的分布式拍摄功能。例如,如图15所示,手机的相机应用的预览界面中包括手机的拍摄画面1501和电视1102的拍摄画面1502。
其中,由手机对来自电视1102的RAW图像进行处理,可以避免由于两端设备性能差异较大而增大时延的问题。采用该方案,可以减少分布式拍摄业务的时延。
并且,本申请实施例中,手机与电视1102建立连接后,可基于图13所示的DMSDPHAL 202b,创建两个相机会话(Camera Session),如用于传输控制流(如上述拍摄指令)的控制会话(Control Session)和用于传输数据流(如上述RAW数据)的数据会话(DataSession)。其中,Control Session和Data Session可对应不同的传输通路(或者称为传输管道)。手机的DMSDP HAL 202b执行图13所示的步骤a,可通过上述Control Session的传输管道向电视1102的相机代理服务210a传输拍摄指令。电视1102的相机代理服务210a执行图13所示的步骤c,可通过上述Data Session的传输管道向手机的DMSDP HAL 202b传输数据流(如上述RAW数据)。
其中,手机与电视1102执行跨设备的分布式拍摄业务的过程中,可以区分控制流与数据流的传输通路。这样,可以避免控制流与数据流相互挤占带宽的问题。
在一些实施例中,上述电视1102的拍摄能力参数还可以包括算法能力信息。该算法能力信息用于指示电视1102对拍摄的图像进行图像处理的算法能力。例如,算法能力信息可以指示电视1102支持的人脸识别算法、自动对焦算法等一项或多项图像处理算法。也就是说,手机还可以将电视1002的后处理算法同步至手机中。例如,如图13所示,手机的服务层201a中保留了电视机1102的后处理算法。
在该实施例中,手机的服务层201a可基于电视1102的算法能力信息,调用保留的电视机1102的后处理算法,对来自DMSDP HAL 202b的RAW图像进行图像处理。之后,手机可基于时间戳,对手机采集的图像和来自电视1102经过后处理的图像进行同步渲染,得到并显示图15所示的手机的拍摄画面1501和电视1102的拍摄画面1502。
需要说明的是,手机基于电视1102的算法能力信息,调用保留的电视机1102的后处理算法对电视1102采集的RAW图像进行图像处理,可得到与电视1102侧对该RAW图像进行图像处理相同或相似的效果。
其中,即使电视1102采集的RAW图像是在手机侧进行图像处理的;但是,经过图像处理的图像也可以达到与电视1102侧进行图像处理的相同效果。也就是说,采用本申请实施例的方法,不仅可以减少跨设备的分布式拍摄业务所占用的网络带宽,还可以还原远端设备的图像效果。
在另一些实施例中,上述电视1102的拍摄能力参数可以不包括算法能力信息。也就是说,手机可以不用将电视1002的后处理算法同步至手机中。例如,如图16所示,手机的服务层201a中未保留电视机1102的后处理算法。
在该实施例中,手机的服务层201a可基于手机的算法能力信息,调用手机的后处理算法,对来自DMSDP HAL 202b的RAW图像进行图像处理。之后,手机可基于时间戳,对手机采集的图像和来自电视1102经过后处理的图像进行同步渲染,得到并显示图15所示的手机的拍摄画面1501和电视1102的拍摄画面1502。
需要说明的是,手机调用手机的后处理算法对电视1102采集的RAW图像进行图像处理,虽然无法还原电视1102侧进行图像处理的效果;但是,针对手机采集的图像与电视1102采集的RAW图像,均调用手机的后处理算法进行图像处理,可以使手机的拍摄画面与电视1102的拍摄画面的图像效果一致。
并且,在手机的算法处理能力优于电视1102的算法处理能力的情况下,相比于调用电视1102的后处理算法对电视1102采集的RAW图像进行图像处理,调用手机的后处理算法对该RAW图像进行图像处理,还可以提升手机显示的电视1102的拍摄画面的图像效果。
进一步的,使用手机的后处理算法对电视1102采集的RAW图像进行图像处理,手机中则不需要保留电视1102的后处理算法。这样,可以节省手机的存储空间。
另外,上述实施例中是以手机为分布式拍摄场景中的本端设备举例说明的,可以理解的是,分布式拍摄场景中的本端设备还可以是平板电脑、电视等具有上述拍摄功能的电子设备,本申请实施例对此不做任何限制。
需要说明的是,上述实施例中是以Android***为例阐述的各个功能模块之间实现分布式拍摄功能的具体方法,可以理解的是,也可以在其他操作***中设置相应的功能模块实现上述方法。只要各个设备和功能模块实现的功能和本申请的实施例类似,即属于本申请权利要求及其等同技术的范围之内。
本申请实施例中,本端设备101采集的图像数据是第一图像数据,本端设备101的拍摄画面是第一拍摄画面,该第一拍摄画面显示在第一窗口。远端设备102采集的图像数据是第二图像数据,远端设备102的拍摄画面是第二拍摄画面,该第二拍摄画面显示在第二窗口。上述第二图像数据包括RAW图像。
例如,第一拍摄画面可以是图5所示的拍摄画面1,第二拍摄画面可以是图5所示的拍摄画面2。图5所示的拍摄画面1和拍摄画面2显示在同一显示界面。
又例如,第一拍摄画面可以是图6A所示的拍摄画面1,第二拍摄画面可以是图6A所示的拍摄画面3。图6A所示的拍摄画面1和拍摄画面2,在手机0和手机1均显示在同一显示界面。
本申请另一些实施例提供了一种电子设备,该电子设备可以包括:上述触摸屏、存储器和一个或多个处理器。该触摸屏、存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,电子设备可执行上述方法实施例中手机执行的各个功能或者步骤。该电子设备的结构可以参考图2B所示的手机的结构。
本申请实施例还提供一种芯片***,如图17所示,该芯片***1700包括至少一个处理器1701和至少一个接口电路1702。处理器1701和接口电路1702可通过线路互联。例如,接口电路1702可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路1702可用于向其它装置(例如处理器1701)发送信号。示例性的,接口电路1702可读取存储器中存储的指令,并将该指令发送给处理器1701。当所述指令被处理器1701执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片***还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中手机执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中手机执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (6)

1.一种分布式拍摄方法,其特征在于,包括:
第一设备接收用户选择与第二设备进行同步拍摄的第一操作;
响应于所述第一操作,所述第一设备开始采集第一图像数据,并且,所述第一设备指示所述第二设备开始采集图像数据;
所述第一设备接收来自所述第二设备的第二图像数据,所述第二图像数据包括所述第二设备的摄像头采集的原始图像;
所述第一设备将所述第一图像数据对应的第一拍摄画面显示在第一窗口,将所述第二图像数据对应的第二拍摄画面显示在第二窗口,所述第一窗口和所述第二窗口位于同一显示界面;
在第一设备接收用户选择与第二设备进行同步拍摄的第一操作之后,所述方法还包括:
所述第一设备创建所述第一设备与所述第二设备的控制会话和数据会话;
其中,所述控制会话用于传输所述第一设备与所述第二设备之间的控制命令,所述控制命令包括用于指示所述第二设备采集图像的拍摄指令,所述数据会话用于传输所述来自所述第二设备的第二图像数据;
在第一设备接收用户选择与第二设备进行同步拍摄的第一操作之后,所述方法还包括:
所述第一设备获取所述第二设备的拍摄能力参数,所述第二设备的拍摄能力参数用于指示所述第二设备支持的图像处理算法;
其中,在所述第一设备将所述第一图像数据对应的第一拍摄画面显示在第一窗口,将所述第二图像数据对应的第二拍摄画面显示在第二窗口之前,所述方法还包括:
所述第一设备根据所述第一设备的拍摄能力参数,对所述第一图像数据进行图像处理,得到所述第一拍摄画面,所述第一设备的拍摄能力参数用于指示所述第一设备支持的图像处理算法;
所述第一设备根据所述第二设备的拍摄能力参数,对所述第二图像数据进行图像处理,得到所述第二拍摄画面;
所述方法还包括:所述第一设备向所述第二设备发送所述第一图像数据,所述第一图像数据包括所述第一设备的摄像头采集的原始图像。
2.根据权利要求1所述的方法,其特征在于,所述第一设备指示所述第二设备开始采集图像数据,包括:
所述第一设备向所述第二设备发送拍摄指令;
其中,所述拍摄指令中包括预设标记,所述拍摄指令用于指示所述第二设备采集图像数据,所述预设标记用于指示所述第二设备向所述第一设备传输所述第二设备采集的RAW图像。
3.根据权利要求1或2所述的方法,其特征在于,在第一设备接收用户选择与第二设备进行同步拍摄的第一操作之前,所述方法还包括:
所述第一设备接收第二操作,所述第二操作是用户对用于实现分布式拍摄的功能按钮的点击操作,所述第一设备的相机应用的预览界面、所述第一设备的视频通信应用的聊天界面、所述第一设备的控制中心、下拉菜单或者负一屏中的至少一项包括所述功能按钮;
响应于用于点击所述功能按钮的第二操作,所述第一设备在所述预览界面中显示候选设备列表,所述候选设备列表中包括所述第二设备;
其中,所述第一操作为用户在所述候选设备列表中选择所述第二设备的操作。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述同步拍摄包括同步录像、同步拍照、同步直播或者同步视频通话中的至少一种。
5.一种电子设备,其特征在于,所述电子设备为第一设备,所述电子设备包括:一个或多个摄像头、一个或多个处理器、显示屏、存储器和通信模块;所述摄像头、所述显示屏、所述存储器、所述通信模块和所述处理器耦合;
其中,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述电子设备执行时,使得所述电子设备执行如权利要求1-4中任一项所述的方法。
6.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1-4中任一项所述的方法。
CN202110131870.2A 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质 Active CN114845035B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210973275.8A CN115514882B (zh) 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质
CN202110131870.2A CN114845035B (zh) 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质
PCT/CN2021/137917 WO2022160985A1 (zh) 2021-01-30 2021-12-14 一种分布式拍摄方法,电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110131870.2A CN114845035B (zh) 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210973275.8A Division CN115514882B (zh) 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质

Publications (2)

Publication Number Publication Date
CN114845035A CN114845035A (zh) 2022-08-02
CN114845035B true CN114845035B (zh) 2024-04-26

Family

ID=82561398

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210973275.8A Active CN115514882B (zh) 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质
CN202110131870.2A Active CN114845035B (zh) 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202210973275.8A Active CN115514882B (zh) 2021-01-30 2021-01-30 一种分布式拍摄方法,电子设备及介质

Country Status (2)

Country Link
CN (2) CN115514882B (zh)
WO (1) WO2022160985A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116320783B (zh) * 2022-09-14 2023-11-14 荣耀终端有限公司 一种录像中抓拍图像的方法及电子设备
CN115514898A (zh) * 2022-11-17 2022-12-23 深圳开鸿数字产业发展有限公司 拍摄方法、终端设备和存储介质
CN117707242A (zh) * 2023-07-11 2024-03-15 荣耀终端有限公司 温度控制方法及相关装置

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5796964A (en) * 1996-01-16 1998-08-18 International Business Machines Method for modifying an existing computer bus to enhance system performance
CN101404726A (zh) * 2008-10-20 2009-04-08 深圳华为通信技术有限公司 一种远端摄像机的控制方法、***和装置
CN101446890A (zh) * 2007-11-29 2009-06-03 株式会社瑞萨科技 流处理装置、流处理方法和数据处理***
CN103336677A (zh) * 2013-06-25 2013-10-02 北京小米科技有限责任公司 一种向显示设备输出图像的方法、装置和***
CN104284234A (zh) * 2014-10-17 2015-01-14 惠州Tcl移动通信有限公司 多个终端间共享同步图像的方法及***
CN105493621A (zh) * 2014-08-04 2016-04-13 华为技术有限公司 终端、服务器及终端控制方法
WO2017107629A1 (zh) * 2015-12-24 2017-06-29 努比亚技术有限公司 移动终端、数据传输***及移动终端拍摄方法
CN108718383A (zh) * 2018-04-24 2018-10-30 天津字节跳动科技有限公司 协同拍摄方法、装置、存储介质及终端设备
CN109361869A (zh) * 2018-11-28 2019-02-19 维沃移动通信(杭州)有限公司 一种拍摄方法及终端
CN110224804A (zh) * 2018-03-01 2019-09-10 国民技术股份有限公司 数据传输控制方法、终端、基站及计算机存储介质
CN110602805A (zh) * 2019-09-30 2019-12-20 联想(北京)有限公司 信息处理方法、第一电子设备和计算机***
WO2020057661A1 (zh) * 2018-09-21 2020-03-26 华为技术有限公司 一种拍照方法、装置与设备
CN111083379A (zh) * 2019-12-31 2020-04-28 维沃移动通信(杭州)有限公司 拍摄方法及电子设备
WO2020159154A1 (en) * 2018-02-08 2020-08-06 Samsung Electronics Co., Ltd. Method for encoding images and corresponding terminals
CN111788603A (zh) * 2018-02-23 2020-10-16 三星电子株式会社 用于以第二图像处理方案在外部电子设备中校正以第一图像处理方案校正的图像的电子设备和方法
CN111860530A (zh) * 2020-07-31 2020-10-30 Oppo广东移动通信有限公司 电子设备、数据处理方法及相关装置
CN111988528A (zh) * 2020-08-31 2020-11-24 北京字节跳动网络技术有限公司 拍摄方法、装置、电子设备及计算机可读存储介质
CN112004076A (zh) * 2020-08-18 2020-11-27 Oppo广东移动通信有限公司 数据处理方法、控制终端、ar终端、ar***及存储介质
CN112292847A (zh) * 2018-06-25 2021-01-29 索尼公司 图像处理设备、移动设备、方法和程序

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013254432A (ja) * 2012-06-08 2013-12-19 Canon Inc 画像処理装置及び画像処理方法
CN109769087A (zh) * 2017-11-09 2019-05-17 中兴通讯股份有限公司 远程合照的拍摄方法、装置及移动终端
KR102482860B1 (ko) * 2018-01-02 2022-12-30 삼성전자 주식회사 상황 정보 기반 이미지 처리 방법 및 이를 사용하는 전자 장치

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5796964A (en) * 1996-01-16 1998-08-18 International Business Machines Method for modifying an existing computer bus to enhance system performance
CN101446890A (zh) * 2007-11-29 2009-06-03 株式会社瑞萨科技 流处理装置、流处理方法和数据处理***
CN101404726A (zh) * 2008-10-20 2009-04-08 深圳华为通信技术有限公司 一种远端摄像机的控制方法、***和装置
CN103336677A (zh) * 2013-06-25 2013-10-02 北京小米科技有限责任公司 一种向显示设备输出图像的方法、装置和***
CN105493621A (zh) * 2014-08-04 2016-04-13 华为技术有限公司 终端、服务器及终端控制方法
CN104284234A (zh) * 2014-10-17 2015-01-14 惠州Tcl移动通信有限公司 多个终端间共享同步图像的方法及***
WO2017107629A1 (zh) * 2015-12-24 2017-06-29 努比亚技术有限公司 移动终端、数据传输***及移动终端拍摄方法
WO2020159154A1 (en) * 2018-02-08 2020-08-06 Samsung Electronics Co., Ltd. Method for encoding images and corresponding terminals
CN111788603A (zh) * 2018-02-23 2020-10-16 三星电子株式会社 用于以第二图像处理方案在外部电子设备中校正以第一图像处理方案校正的图像的电子设备和方法
CN110224804A (zh) * 2018-03-01 2019-09-10 国民技术股份有限公司 数据传输控制方法、终端、基站及计算机存储介质
CN108718383A (zh) * 2018-04-24 2018-10-30 天津字节跳动科技有限公司 协同拍摄方法、装置、存储介质及终端设备
CN112292847A (zh) * 2018-06-25 2021-01-29 索尼公司 图像处理设备、移动设备、方法和程序
WO2020057661A1 (zh) * 2018-09-21 2020-03-26 华为技术有限公司 一种拍照方法、装置与设备
CN110944109A (zh) * 2018-09-21 2020-03-31 华为技术有限公司 一种拍照方法、装置与设备
CN109361869A (zh) * 2018-11-28 2019-02-19 维沃移动通信(杭州)有限公司 一种拍摄方法及终端
CN110602805A (zh) * 2019-09-30 2019-12-20 联想(北京)有限公司 信息处理方法、第一电子设备和计算机***
CN111083379A (zh) * 2019-12-31 2020-04-28 维沃移动通信(杭州)有限公司 拍摄方法及电子设备
CN111860530A (zh) * 2020-07-31 2020-10-30 Oppo广东移动通信有限公司 电子设备、数据处理方法及相关装置
CN112004076A (zh) * 2020-08-18 2020-11-27 Oppo广东移动通信有限公司 数据处理方法、控制终端、ar终端、ar***及存储介质
CN111988528A (zh) * 2020-08-31 2020-11-24 北京字节跳动网络技术有限公司 拍摄方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN115514882A (zh) 2022-12-23
CN115514882B (zh) 2024-06-14
WO2022160985A1 (zh) 2022-08-04
CN114845035A (zh) 2022-08-02

Similar Documents

Publication Publication Date Title
WO2020244495A1 (zh) 一种投屏显示方法及电子设备
WO2022257977A1 (zh) 电子设备的投屏方法和电子设备
CN114845035B (zh) 一种分布式拍摄方法,电子设备及介质
CN114697527B (zh) 一种拍摄方法、***及电子设备
WO2022143883A1 (zh) 一种拍摄方法、***及电子设备
CN112130788A (zh) 一种内容分享方法及其装置
US11895713B2 (en) Data sharing and instruction operation control method and system
CN113395364B (zh) 一种应用服务器的访问方法及终端
CN114598414B (zh) 时间片的配置方法和电子设备
CN114201130A (zh) 一种投屏的方法、装置及存储介质
WO2022156721A1 (zh) 一种拍摄方法及电子设备
CN114928898B (zh) 建立基于WiFi直接连接的会话的方法和装置
CN116723415A (zh) 缩略图生成的方法及终端设备
CN116056053A (zh) 投屏方法、电子设备、***及计算机可读存储介质
CN114466131B (zh) 一种跨设备的拍摄方法及相关设备
CN113676902B (zh) 一种提供无线上网的***、方法及电子设备
CN111131019B (zh) 一种多路http通道复用的方法及终端
CN115225753A (zh) 拍摄方法、相关装置及***
CN115145518A (zh) 一种显示方法、电子设备和***
CN114567871A (zh) 文件共享的方法、装置、电子设备以及可读存储介质
CN114007202A (zh) 一种绑定关系的建立方法以及相关设备
CN114584817B (zh) 投屏方法及***
WO2022161058A1 (zh) 一种全景图像的拍摄方法及电子设备
WO2022206769A1 (zh) 一种拼接内容的方法、电子设备和***
CN115914983A (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