一种图像拍摄方法、装置及计算机可读存储介质与流程

文档序号:16775776发布日期:2019-02-01 18:43阅读:135来源:国知局
一种图像拍摄方法、装置及计算机可读存储介质与流程

本申请涉及拍照技术领域,尤其涉及一种图像拍摄方法、装置及计算机可读存储介质。



背景技术:

随着互联网的发展,以及移动终端(例如手机、平板电脑等)智能化程度越来越高,移动终端具有越来越多的功能,尤其是在移动终端中,各种应用越来越多,其中,摄影类应用受到用户很多的喜爱。其中,全景拍照由于不需要用户具备专业的高端图像录入装置和专业摄影技术,便可以方便获取全景图片,以及移动终端的便携性及方便的网络分享功能,极大地提高了用户的使用体验。

现有技术中,全景拍摄的实现方式:把图像录入设备(例如相机、具有摄像功能的手机、平板电脑等)按照x轴或y轴方向移动或者旋转,按移动的方向由用户手动或设备自动获取一系列具有重叠部分的图像,经过图像处理把重叠部分进行拼接处理,进而获取一副全景照片,这种获得全景照片的方法广泛应用在各种手持终端的全景图像摄像应用程序中。

但是,申请人发现现有的全景拍摄时通常只有一个镜头,这就要求为了实现全景拍摄,要求图像录入设备旋转角度较大,需要时间较长,而长时间旋转过程中,受限于用户手持图像录入设备的稳定性等因素,往往得到的全景图片质量偏低。



技术实现要素:

为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种图像拍摄方法、装置及计算机可读存储介质。

有鉴于此,第一方面,本申请提供了一种图像拍摄方法,应用于具有前置摄像头和后置摄像头的移动终端,所述方法包括:当接收到全景拍摄操作时,控制所述前置摄像头和后置摄像头开启拍摄;在所述移动终端旋转拍摄时,获取所述前置摄像头拍摄得到的第一组图像,以及获取所述后置摄像头拍摄得到的第二组图像,所述第一组图像和第二组图像均分别包括多张图像;判断所述第一组图像中的图像内容是否与第二组图像中的图像内容是否有重合区域;若所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域,对所述第一组图像和第二组图像进行拼接,得到全景图像。

可选地,所述方法还包括:在控制所述前置摄像头和后置摄像头开启拍摄之前,检测所述前置摄像头和后置摄像头的拍摄分辨率;判断所述前置摄像头和后置摄像头的拍摄分辨率是否相同,若所述前置摄像头和后置摄像头的拍摄分辨率不相同,设置所述前置摄像头和/或后置摄像头的拍摄分辨率,使得设置后所述前置摄像头和后置摄像头的拍摄分辨率调整相同;利用设置好的拍摄分辨率控制所述前置摄像头和后置摄像头开启拍摄。

可选地,对所述第一组图像和第二组图像进行拼接之前,所述方法还包括:检测所述第一组图像和第二组图像的分辨率是否相同;若分辨率不同,调整所述第一组图像和/或第二组图像的分辨率,使得调整后所述第一组图像和第二组图像的分辨率相同;对分辨率调整为相同的第一组图像和第二组图像进行拼接。

可选地,判断所述第一组图像中的图像内容是否与第二组图像中的图像内容是否有重合区域,包括:分别选取第一组图像和第二组图像中的第一张图像和最后一张图像;检测第一组图像中第一张图像与第二组图像中最后一张图像是否有重合区域,以及检测第一组图像中最后一张图像与第二组图像中第一张图像是否有重合区域;当第一组图像中第一张图像与第二组图像中最后一张图像有重合区域,且第一组图像中最后一张图像与第二组图像中第一张图像有重合区域时,确定所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域。

可选地,所述对所述第一组图像和第二组图像进行拼接,得到全景图像,包括:将第一组图像中第一张图像与第二组图像中最后一张图像的重合区域去除,且将第一组图像中最后一张图像与第二组图像中第一张图像的重合区域去除;在重合区域去除后,对所述第一组图像和第二组图像中的所有图像按照预设全景拼接方式进行拼接,得到全景图像。

可选地,所述对所述第一组图像和第二组图像进行拼接,得到全景图像,包括:对所述第一组图像中多张图像进行拼接,得到第一参考图像;对所述第二组图像中多张图像进行拼接,得到第二参考图像;检测所述第一参考图像和第二参考图像中的重合区域;将重合区域去除后,对所述第一参考图像和第二参考图像按照预设全景拼接方式进行拼接,得到全景图像。

可选地,所述方法还包括:若所述第一组图像中的图像内容与第二组图像中的图像内容有重合,控制所述前置摄像头和后置摄像头结束拍摄;在所述前置摄像头和后置摄像头结束拍摄后,提示结束拍摄。

第二方面,本申请提供了一种图像拍摄装置,应用于具有前置摄像头和后置摄像头的移动终端,所述装置包括:拍摄控制模块,用于当接收到全景拍摄操作时,控制所述前置摄像头和后置摄像头开启拍摄;图像获取模块,用于在所述移动终端旋转拍摄时,获取所述前置摄像头拍摄得到的第一组图像,以及获取所述后置摄像头拍摄得到的第二组图像,所述第一组图像和第二组图像均分别包括多张图像;重合判断模块,用于判断所述第一组图像中的图像内容是否与第二组图像中的图像内容是否有重合区域;图像拼接模块,用于在所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域时,对所述第一组图像和第二组图像进行拼接,得到全景图像。

可选地,所述装置还包括:分辨率检测子模块,用于在控制所述前置摄像头和后置摄像头开启拍摄之前,检测所述前置摄像头和后置摄像头的拍摄分辨率;分辨率判断子模块,用于判断所述前置摄像头和后置摄像头的拍摄分辨率是否相同;分辨率设置子模块,用于若所述前置摄像头和后置摄像头的拍摄分辨率不相同,设置所述前置摄像头和/或后置摄像头的拍摄分辨率,使得设置后所述前置摄像头和后置摄像头的拍摄分辨率调整相同;所述拍摄控制模块利用设置好的拍摄分辨率控制所述前置摄像头和后置摄像头开启拍摄。

可选地,所述装置还包括:分辨率检测子模块,用于检测所述第一组图像和第二组图像的分辨率是否相同;分辨率调整子模块,用于若分辨率不同,调整所述第一组图像和/或第二组图像的分辨率,使得调整后所述第一组图像和第二组图像的分辨率相同;所述图像拼接模块对分辨率调整为相同的第一组图像和第二组图像进行拼接。

可选地,所述重合判断模块包括:图像选择子模块,用于分别选取第一组图像和第二组图像中的第一张图像和最后一张图像;重合检测子模块,用于检测第一组图像中第一张图像与第二组图像中最后一张图像是否有重合区域,以及检测第一组图像中最后一张图像与第二组图像中第一张图像是否有重合区域;重合确定子模块,用于当第一组图像中第一张图像与第二组图像中最后一张图像有重合区域,且第一组图像中最后一张图像与第二组图像中第一张图像有重合区域时,确定所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域。

第三方面,本申请提供了一种移动终端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面任一项所述的图像拍摄方法的步骤。

第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有资源分配程序,所述资源分配程序被处理器执行时实现如第一方面任一项所述的图像拍摄方法的步骤。

本申请实施例提供的上述技术方案与现有技术相比具有如下优点:

本申请实施例提供的该方法,在进行全景拍摄时,由于前置摄像头和后置摄像头同时工作,进而只需移动终端转动较小角度,后续通过图像拼接的方式就可以完成全景拍摄。相比单摄像头进行全景拍摄,移动终端的转动角度较小,并且转动时的时长较短,一方面操作便利性大大提高,另一方面还可以避免长时间、大角度转动移动终端过程中的不稳定,而导致图像质量差的问题。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种图像拍摄的场景;

图2为本申请实施例提供的另一种图像拍摄的场景;

图3为实现本发明各个实施例的移动终端的硬件结构示意图;

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

图5为本申请实施例提供的一种图像拍摄装置的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为本申请实施例提供的一种图像拍摄的场景。如图1所示,图中,移动终端1包括前置摄像头3和后置摄像头(图中未示出,图中箭头示出了后置摄像头的拍摄区域),另外,在移动终端1上设置有显示屏2,在移动终端进行拍摄图片或视频时,可以通过显示屏2及时观看拍照效果。

在本申请实施例中,移动终端包括但不局限于:手机、平板电脑、笔记本电脑和掌上pda。另外,移动终端可以为具有拍摄功能的电子设备,例如相机等。在移动终端中前置摄像头和后置摄像头均可有移动终端中的处理器来进行控制,包括但不局限于:开启、拍摄、关闭等操作。

用户在图1所示场景中,利用移动终端1进行全景拍摄时,可以参照图2所示的方式进行移动。在图2中,移动终端可以以某一条直线为轴进行转动,该直线包括但不局限于:屏幕中心线和机体的一个中轴线。在一些实施例中,还可以以用户为轴线,用户手持移动终端转动。

在进行全景拍摄时,用户手持移动终端沿着设定好的轴线进行转动,转动的角度可以根据移动终端上前置摄像头和后置摄像头的视场角来确定。

图3为实现本发明各个实施例的移动终端的硬件结构示意图。

移动终端100可以包括无线通信单元110、a/v(音频/视频)输入单元120、用户输入单元130、感测单元140、输出单元150、存储器160、接口单元170、控制器180和电源单元190等等。图3示出了具有各种组件的移动终端,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述移动终端的元件。

无线通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信系统或网络之间的无线电通信。例如,无线通信单元可以包括广播接收模块111、移动通信模块112、无线互联网模块113、短程通信模块114和位置信息模块115中的至少一个。

广播接收模块111经由广播信道从外部广播管理服务器接收广播信号和/或广播相关信息。广播信道可以包括卫星信道和/或地面信道。广播管理服务器可以是生成并发送广播信号和/或广播相关信息的服务器或者接收之前生成的广播信号和/或广播相关信息并且将其发送给终端的服务器。广播信号可以包括tv广播信号、无线电广播信号、数据广播信号等等。而且,广播信号可以进一步包括与tv或无线电广播信号组合的广播信号。广播相关信息也可以经由移动通信网络提供,并且在该情况下,广播相关信息可以由移动通信模块112来接收。广播信号可以以各种形式存在,例如,其可以以数字多媒体广播(dmb)的电子节目指南(epg)、数字视频广播手持(dvb-h)的电子服务指南(esg)等等的形式而存在。广播接收模块111可以通过使用各种类型的广播系统接收信号广播。特别地,广播接收模块111可以通过使用诸如多媒体广播-地面(dmb-t)、数字多媒体广播-卫星(dmb-s)、数字视频广播-手持(dvb-h),前向链路媒体(mediaflo)的数据广播系统、地面数字广播综合服务(isdb-t)等等的数字广播系统接收数字广播。广播接收模块111可以被构造为适合提供广播信号的各种广播系统以及上述数字广播系统。经由广播接收模块111接收的广播信号和/或广播相关信息可以存储在存储器160(或者其它类型的存储介质)中。

移动通信模块112将无线电信号发送到基站(例如,接入点、节点b等等)、外部终端以及服务器中的至少一个和/或从其接收无线电信号。这样的无线电信号可以包括语音通话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。

无线互联网模块113支持移动终端的无线互联网接入。该模块可以内部或外部地耦接到终端。该模块所涉及的无线互联网接入技术可以包括wlan(无线lan)(wi-fi)、wibro(无线宽带)、wimax(全球微波互联接入)、hsdpa(高速下行链路分组接入)等等。

短程通信模块114是用于支持短程通信的模块。短程通信技术的一些示例包括蓝牙tm、射频识别(rfid)、红外数据协会(irda)、超宽带(uwb)、紫蜂tm等等。

位置信息模块115是用于检查或获取移动终端的位置信息的模块。位置信息模块的典型示例是gps(全球定位系统)。根据当前的技术,位置信息模块115计算来自三个或更多卫星的距离信息和准确的时间信息并且对于计算的信息应用三角测量法,从而根据经度、纬度和高度准确地计算三维当前位置信息。当前,用于计算位置和时间信息的方法使用三颗卫星并且通过使用另外的一颗卫星校正计算出的位置和时间信息的误差。此外,位置信息模块115能够通过实时地连续计算当前位置信息来计算速度信息。

a/v输入单元120用于接收音频或视频信号。a/v输入单元120可以包括相机121和麦克风122,相机121对在视频捕获模式或图像捕获模式中由图像捕获装置获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元151上。经相机121处理后的图像帧可以存储在存储器160(或其它存储介质)中或者经由无线通信单元110进行发送,可以根据移动终端的构造提供两个或更多个相机121。麦克风122可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦克风122接收声音(音频数据),并且能够将这样的声音处理为音频数据。处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由移动通信模块112发送到移动通信基站的格式输出。麦克风122可以实施各种类型的噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的噪声或者干扰。

用户输入单元130可以根据用户输入的命令生成键输入数据以控制移动终端的各种操作。用户输入单元130允许用户输入各种类型的信息,并且可以包括键盘、锅仔片、触摸板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等等。特别地,当触摸板以层的形式叠加在显示单元151上时,可以形成触摸屏。

感测单元140检测移动终端100的当前状态,(例如,移动终端100的打开或关闭状态)、移动终端100的位置、用户对于移动终端100的接触(即,触摸输入)的有无、移动终端100的取向、移动终端100的加速或减速移动和方向等等,并且生成用于控制移动终端100的操作的命令或信号。例如,当移动终端100实施为滑动型移动电话时,感测单元140可以感测该滑动型电话是打开还是关闭。另外,感测单元140能够检测电源单元190是否提供电力或者接口单元170是否与外部装置耦接。感测单元140可以包括接近传感器141。

接口单元170用作移动终端100与至少一个外部装置连接。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。识别模块可以是存储用于验证用户使用移动终端100的各种信息并且可以包括用户识别模块(uim)、客户识别模块(sim)、通用客户识别模块(usim)等等。另外,具有识别模块的装置(下面称为“识别装置”)可以采取智能卡的形式,因此,识别装置可以经由端口或其它连接装置与移动终端100连接。接口单元170可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端和外部装置之间传输数据。另外,当移动终端100与外部底座连接时,接口单元170可以用作允许通过其将电力从底座提供到移动终端100的路径或者可以用作允许从底座输入的各种命令信号通过其传输到移动终端的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端是否准确地安装在底座上的信号。

输出单元150被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、警报信号、振动信号等等)。输出单元150可以包括显示单元151、音频输出模块152、警报单元153等等。

显示单元151可以显示在移动终端100中处理的信息。例如,当移动终端100处于电话通话模式时,显示单元151可以显示与通话或其它通信(例如,文本消息收发、多媒体文件下载等等)相关的用户界面(ui)或图形用户界面(gui)。当移动终端100处于视频通话模式或者图像捕获模式时,显示单元151可以显示捕获的图像和/或接收的图像、示出视频或图像以及相关功能的ui或gui等等。

同时,当显示单元151和触摸板以层的形式彼此叠加以形成触摸屏时,显示单元151可以用作输入装置和输出装置。显示单元151可以包括液晶显示器(lcd)、薄膜晶体管lcd(tft-lcd)、有机发光二极管(oled)显示器、柔性显示器、三维(3d)显示器等等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,典型的透明显示器可以例如为toled(透明有机发光二极管)显示器等等。根据特定想要的实施方式,移动终端100可以包括两个或更多显示单元(或其它显示装置),例如,移动终端可以包括外部显示单元(未示出)和内部显示单元(未示出)。触摸屏可用于检测触摸输入压力以及触摸输入位置和触摸输入面积。

音频输出模块152可以在移动终端处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将无线通信单元110接收的或者在存储器160中存储的音频数据转换音频信号并且输出为声音。而且,音频输出模块152可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出模块152可以包括扬声器、蜂鸣器等等。

警报单元153可以提供输出,以将事件的发生通知给移动终端100。典型的事件可以包括呼叫接收、消息接收、键信号输入、触摸输入等等。除了音频或视频输出之外,警报单元153可以以不同的方式提供输出以通知事件的发生。例如,警报单元153可以以振动的形式提供输出,当接收到呼叫、消息或一些其它进入通信(incomingcommunication)时,警报单元153可以提供触觉输出(即,振动)以将其通知给用户。通过提供这样的触觉输出,即使在用户的移动电话处于用户的口袋中时,用户也能够识别出各种事件的发生。警报单元153也可以经由显示单元151或音频输出模块152提供通知事件的发生的输出。

存储器160可以存储由控制器180执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而且,存储器160可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的数据。

存储器160可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等等。而且,移动终端100可以与通过网络连接执行存储器160的存储功能的网络存储装置协作。

控制器180通常控制移动终端的总体操作。例如,控制器180执行与语音通话、数据通信、视频通话等等相关的控制和处理。另外,控制器180可以包括用于再现(或回放)多媒体数据的多媒体模块181,多媒体模块181可以构造在控制器180内,或者可以构造为与控制器180分离。控制器180可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。

电源单元190在控制器180的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。

这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(asic)、数字信号处理器(dsp)、数字信号处理装置(dspd)、可编程逻辑装置(pld)、现场可编程门阵列(fpga)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器180中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器160中并且由控制器180执行。

至此,己经按照其功能描述了移动终端。下面,为了简要起见,将描述诸如折叠型、直板型、摆动型、滑动型移动终端等等的各种类型的移动终端中的滑动型移动终端作为示例。因此,本发明能够应用于任何类型的移动终端,并且不限于滑动型移动终端。

基于上述移动终端的结构示意图,提出本发明基于移动终端的各个方法实施例。

图4为本申请实施例提供的一种图像拍摄方法的流程示意图。如图4所示,该方法可以包括以下步骤。

s101,当接收到全景拍摄操作时,控制所述前置摄像头和后置摄像头开启拍摄。

在本申请一些实施例中,全景拍摄操作包括但不局限于:对触摸屏的点击操作、按压操作、滑动操作等,以及,对物理按键的单击操作、双击操作、长按操作等。

通常情况下,前置摄像头和后置摄像头在不同场景中,只有一个开启工作,例如:拍摄移动终端背面的景色时,开启后置摄像头;而在拍摄移动终端前面的景色时,开启前置摄像头。本申请实施例中,“前”方向是以移动终端朝向用户的方向。

在本申请实施例中,一旦检测到全景拍摄操作,直接将前置摄像头和后置摄像头全部开启,同时进行拍摄。

s102,在所述移动终端旋转拍摄时,获取所述前置摄像头拍摄得到的第一组图像,以及获取所述后置摄像头拍摄得到的第二组图像。

在本申请实施例中,在进行全景拍摄时,要求移动终端以某一条直线为轴进行转动,该直线包括但不局限于:屏幕中心线和机体的一个中轴线。在一些实施例中,还可以以用户为轴线,用户手持移动终端转动。

在进行全景拍摄时,用户手持移动终端沿着设定好的轴线进行转动,转动的角度可以根据移动终端上前置摄像头和后置摄像头的视场角来确定。

由于前置摄像头和后置摄像头分别为单独的元器件,所以在工作时,前置摄像头和后置摄像头会分别拍摄得到不同的图像。

在本申请实施例中,在前置摄像头和后置摄像头进行拍摄时,可以在移动终端的屏幕上可以设置两个显示区域,在两个显示区域中分别显示前置摄像头拍摄到的第一组图像,以及,后置摄像头的拍摄到的第二组图像。

另外,第一组图像和第二组图像均分别包括多张图像。在进行全景拍摄时,实质上是获取多张连续的拍照得到的图像,然后对多张图像进行拼接。所以为了实现全景效果,第一组图像和第二组图像均分别包括多张图像。

在本申请实施例中,前置摄像头拍摄得到的第一组图像用front来表示,后置摄像头拍摄得到的第二组图像用back来表示。在t0时刻,前置摄像头拍摄到的图像为front_0,后置摄像头拍摄得到的图像为back_0,并且front_0和back_0为前后位置相对的两幅图像。在下一时刻t1,依次类推分别得到front_1和back_1。

为了便于用户在拍摄时,可以及时掌握前后摄像头已拍摄的场景,进而可以及时对拍摄进行调整。可选地,在一种场景中,在展示第一组图像时可以展示第一组图像中最后拍摄的一张图像,在另一种场景中,还可以将第一组图像进行全景合成得到第一合成图像,同理,对第二组图像进行全景合成得到第二合成图像,在展示时可以在两个显示区域中分别显示第一合成图像和第二合成图像。

s103,判断所述第一组图像中的图像内容是否与第二组图像中的图像内容是否有重合区域。

由于全景拍摄,需要对终端周围360的场景进行拍摄,目前现有的方式,主要是利用人眼来判断,准确性较低。另外,虽然可以利用以移动终端转动角度等方式来判断,但由于用户在操作移动终端转动时,准确性较差,所以,在本申请实施例中,直接判断前置摄像头和后置摄像头所拍摄的图像是否重合,进而来判断是否满足全景拍摄要求。

当有重合时,表示此时移动终端已经对周围360的场景进行了拍摄,可以进行步骤s104,否则,返回s102继续拍摄。

s104,对所述第一组图像和第二组图像进行拼接,得到全景图像。

由于移动终端在拍摄时,是进行转动拍摄,所以第一组图像和第二组图像中会有部分边缘重合,并且第一组图像和第二组图像可以将移动终端周围360的景象全部拍摄到。因此,在该步骤中,只需将第一组图像和第二组图像进行拼接,就可以得到全景图像。

在本申请实施例中,利用多张图像拼接形成全景图像的方法属于本领域普通技术人员的公知技术,在此不再赘述。

在进行全景拼接时,可以直接利用第一组图像中的多张图像和第二组图像中的多张图像进行拼接。另外,当前述步骤s102中,在两个显示区域中分别显示第一合成图像和第二合成图像,在该步骤中,还可以直接利用第一合成图像和第二合成图像进行拼接,这种方式下,由于第一组图像和第二组图像已经预先进行了合成,所以在拼接时,拼接的处理速度会更快,用户等待的时间会更短。

本申请实施例提供的该方法,在进行全景拍摄时,由于前置摄像头和后置摄像头同时工作,进而只需移动终端转动较小角度,后续通过图像拼接的方式就可以完成全景拍摄。相比单摄像头进行全景拍摄,移动终端的转动角度较小,并且转动时的时长较短,一方面操作便利性大大提高,另一方面还可以避免长时间、大角度转动移动终端过程中的不稳定,而导致图像质量差的问题。

在本申请实施例中,图4所示的步骤s101之前,该方法还可以包括以下步骤。

s11,检测所述前置摄像头和后置摄像头的拍摄分辨率。

在本申请实施例中,由于前置摄像头和后置摄像头是两个独立的器件,不同的器件在工作时,工作参数是不同的,但用于进行全景合同的图片要求图片参数一致,否则无法进行全景图像合成。

这是因为摄像头自身的像素是固定的,但用户可以在终端内设置摄像头拍摄得到图片的像素,本申请实施例中,拍摄分辨率表述的就是拍摄后图片的像素。

在本申请实施例中,前置摄像头和后置摄像头的参数可以一致,但用户在使用时,仍然会对前置摄像头和后置摄像头分别进行设置,为此,在前置摄像头和后置摄像头参数一致的情况下,也需要对拍摄分辨率进行检测。

s12,判断所述前置摄像头和后置摄像头的拍摄分辨率是否相同。

例如:前置摄像头为800万像素,后置摄像头为1500万像素,并且前置摄像头的拍摄分辨率设置为800万,后置摄像头的拍摄分辨率设置为1000万像素,那么两者拍摄后得到的图像的分辨率是不同的。

这种情况下,就需要将前置摄像头和后置摄像头两者统一,便于后续数据处理。

为此,当所述前置摄像头和后置摄像头的拍摄分辨率不相同时,执行s13,否则,结束流程。

s13,设置所述前置摄像头和/或后置摄像头的拍摄分辨率,使得设置后所述前置摄像头和后置摄像头的拍摄分辨率调整相同。

具体的设置过程可以在移动终端内部实现,在本申请实施例中,不再具体赘述。

在本申请实施例中,该方法还可以包括以下步骤。

s21,检测所述第一组图像和第二组图像的分辨率是否相同。

在前一实施例中,在拍摄前就对前置摄像头和后置摄像头的拍摄分辨率进行了统一。在本申请实施例中,还可以在进行全景合成的时候通过对图像处理的方式,实现进行全景合成的图像的分辨率相同。

具体为,在进行拼接之前,该方法还可以分别获取第一组图像和第二组图像的分辨率,然后判断两个分辨率是否相同。

当分辨率相同,直接跳转到s104,否则,跳转到s22。

s22,调整所述第一组图像和/或第二组图像的分辨率,使得调整后所述第一组图像和第二组图像的分辨率相同。

在本申请实施例中,对分辨率调整,可以利用图像处理软件或技术来实现,当第一组图像和第二组图像的分辨率相同后,在后续拼接时,可以直接使用,跳转到步骤s104。

在本申请一个实施例中,前述实施例中的步骤s103可以包括以下步骤。

s1031,分别选取第一组图像和第二组图像中的第一张图像和最后一张图像;

s1032,检测第一组图像中第一张图像与第二组图像中最后一张图像是否有重合区域,以及检测第一组图像中最后一张图像与第二组图像中第一张图像是否有重合区域;

参见前述实施例中的描述,在本申请实施例中,对于前置摄像头,第一张图像为front_0,最后一张图像为front_n(n为前置摄像头拍摄的张数对应的值),相应地,后置摄像头拍摄得到的第一张图像为back_0,最后一张图像为back_m(m为后置摄像头拍摄的张数对应的值)。

在本申请实施例中,可以直接判断front_0与back_m之间是否有重合区域,以及,判断front_n与back_0之间是否有重合区域。

当第一组图像中第一张图像与第二组图像中最后一张图像有重合区域,且第一组图像中最后一张图像与第二组图像中第一张图像有重合区域时,执行s1033,否则,返回步骤s1032。

s1033,确定所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域。

在本申请实施例中,考虑到在两个摄像头在进行全景拍摄时的相对位置,所以直接利用不同摄像头首尾两张图像进行重合区域判断,可以快速确定图像是否重合,而无需对其它图像进行分析,提高了重合区域的确定效率。

在本申请实施例中,该方法还可以包括以下步骤。

s31,若所述第一组图像中的图像内容与第二组图像中的图像内容有重合,控制所述前置摄像头和后置摄像头结束拍摄;

s32,在所述前置摄像头和后置摄像头结束拍摄后,提示结束拍摄。

由于本申请中,在进行全景拍摄时,需要用户持续转动移动终端才可以完成拍摄,

在本申请一些实施例中,提示包括但不局限于:显示界面中的提示语、显示画面中的提示视频、扬声器播放语音、振动传感器振动和闪光灯的灯光变化。

其中,提示语可以移动终端系统语言对应的预设提示语,例如“拍摄完成!”。提示视频可以为移动终端预先录制的视频,例如:“沙漏动画”等。播放语音可以为简单的“滴”的声音,也可以为“全景拍摄已完成”的语音。灯光变化可以为闪光灯开启,也可以为闪光灯按照设定的频率闪烁等。

在本申请实施例中,该方法中的步骤s104可以包括以下步骤。

s41,对所述第一组图像中多张图像进行拼接,得到第一参考图像。

第一参考图像是按照全景拼接方式拼接得到,即第一参考图像是由第一组图像组成的局部全景图像。

s42,对所述第二组图像中多张图像进行拼接,得到第二参考图像;

s43,检测所述第一参考图像和第二参考图像中的重合区域;

s44,将重合区域去除后,对所述第一参考图像和第二参考图像按照预设全景拼接方式进行拼接,得到全景图像。

在本申请实施例中,该方法中的步骤s104可以包括以下步骤。

s51,将第一组图像中第一张图像与第二组图像中最后一张图像的重合区域去除,且将第一组图像中最后一张图像与第二组图像中第一张图像的重合区域去除。

s52,在重合区域去除后,对所述第一组图像和第二组图像中的所有图像按照预设全景拼接方式进行拼接,得到全景图像。

重合区域的确定方式,参见前述实施例的描述,在此不再赘述。

图5为本申请实施例提供的一种图像拍摄装置的结构示意图。如图5所示,该装置可以包括:

拍摄控制模块11,用于在接收到全景拍摄操作时,控制所述前置摄像头和后置摄像头开启拍摄。图像获取模块12,用于在所述移动终端旋转拍摄时,获取所述前置摄像头拍摄得到的第一组图像,以及获取所述后置摄像头拍摄得到的第二组图像,所述第一组图像和第二组图像均分别包括多张图像。重合判断模块13,用于判断所述第一组图像中的图像内容是否与第二组图像中的图像内容是否有重合区域;图像拼接模块14,用于在所述第一组图像中的图像内容是否与第二组图像中的图像内容有重合区域时,对所述第一组图像和第二组图像进行拼接,得到全景图像。

在本申请一个实施例中,所述装置还包括:

分辨率检测子模块,用于在控制所述前置摄像头和后置摄像头开启拍摄之前,检测所述前置摄像头和后置摄像头的拍摄分辨率;

分辨率判断子模块,用于判断所述前置摄像头和后置摄像头的拍摄分辨率是否相同;

分辨率设置子模块,用于若所述前置摄像头和后置摄像头的拍摄分辨率不相同,设置所述前置摄像头和/或后置摄像头的拍摄分辨率,使得设置后所述前置摄像头和后置摄像头的拍摄分辨率调整相同;

所述拍摄控制模块利用设置好的拍摄分辨率控制所述前置摄像头和后置摄像头开启拍摄。

在本申请一个实施例中,所述装置还包括:

分辨率检测子模块,用于检测所述第一组图像和第二组图像的分辨率是否相同;

分辨率调整子模块,用于若分辨率不同,调整所述第一组图像和/或第二组图像的分辨率,使得调整后所述第一组图像和第二组图像的分辨率相同;

所述图像拼接模块对分辨率调整为相同的第一组图像和第二组图像进行拼接。

在本申请一个实施例中,所述重合判断模块包括:

图像选择子模块,用于分别选取第一组图像和第二组图像中的第一张图像和最后一张图像;

重合检测子模块,用于检测第一组图像中第一张图像与第二组图像中最后一张图像是否有重合区域,以及检测第一组图像中最后一张图像与第二组图像中第一张图像是否有重合区域;

重合确定子模块,用于当第一组图像中第一张图像与第二组图像中最后一张图像有重合区域,且第一组图像中最后一张图像与第二组图像中第一张图像有重合区域时,确定所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

可以理解的是,本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本发明实施例还提供一种移动终端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如各方法实施例提供的的图像拍摄方法的步骤。

本发明实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行各方法实施例所提供的方法,例如包括:

一种图像拍摄方法,应用于具有前置摄像头和后置摄像头的移动终端,所述方法包括:当接收到全景拍摄操作时,控制所述前置摄像头和后置摄像头开启拍摄;在所述移动终端旋转拍摄时,获取所述前置摄像头拍摄得到的第一组图像,以及获取所述后置摄像头拍摄得到的第二组图像,所述第一组图像和第二组图像均分别包括多张图像;判断所述第一组图像中的图像内容是否与第二组图像中的图像内容是否有重合区域;若所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域,对所述第一组图像和第二组图像进行拼接,得到全景图像。

所述方法还包括:在控制所述前置摄像头和后置摄像头开启拍摄之前,检测所述前置摄像头和后置摄像头的拍摄分辨率;判断所述前置摄像头和后置摄像头的拍摄分辨率是否相同,若所述前置摄像头和后置摄像头的拍摄分辨率不相同,设置所述前置摄像头和/或后置摄像头的拍摄分辨率,使得设置后所述前置摄像头和后置摄像头的拍摄分辨率调整相同;利用设置好的拍摄分辨率控制所述前置摄像头和后置摄像头开启拍摄。

对所述第一组图像和第二组图像进行拼接之前,所述方法还包括:检测所述第一组图像和第二组图像的分辨率是否相同;若分辨率不同,调整所述第一组图像和/或第二组图像的分辨率,使得调整后所述第一组图像和第二组图像的分辨率相同;对分辨率调整为相同的第一组图像和第二组图像进行拼接。

判断所述第一组图像中的图像内容是否与第二组图像中的图像内容是否有重合区域,包括:分别选取第一组图像和第二组图像中的第一张图像和最后一张图像;检测第一组图像中第一张图像与第二组图像中最后一张图像是否有重合区域,以及检测第一组图像中最后一张图像与第二组图像中第一张图像是否有重合区域;当第一组图像中第一张图像与第二组图像中最后一张图像有重合区域,且第一组图像中最后一张图像与第二组图像中第一张图像有重合区域时,确定所述第一组图像中的图像内容与第二组图像中的图像内容有重合区域。

所述对所述第一组图像和第二组图像进行拼接,得到全景图像,包括:将第一组图像中第一张图像与第二组图像中最后一张图像的重合区域去除,且将第一组图像中最后一张图像与第二组图像中第一张图像的重合区域去除;在重合区域去除后,对所述第一组图像和第二组图像中的所有图像按照预设全景拼接方式进行拼接,得到全景图像。

所述对所述第一组图像和第二组图像进行拼接,得到全景图像,包括:对所述第一组图像中多张图像进行拼接,得到第一参考图像;对所述第二组图像中多张图像进行拼接,得到第二参考图像;检测所述第一参考图像和第二参考图像中的重合区域;将重合区域去除后,对所述第一参考图像和第二参考图像按照预设全景拼接方式进行拼接,得到全景图像。

所述方法还包括:若所述第一组图像中的图像内容与第二组图像中的图像内容有重合,控制所述前置摄像头和后置摄像头结束拍摄;在所述前置摄像头和后置摄像头结束拍摄后,提示结束拍摄。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1