一种拍照方法及移动终端
技术领域
本发明涉及通信技术领域,尤其涉及一种拍照方法及移动终端。
背景技术
拍照已经成为具有摄像功能的移动终端一个重要的基础功能。其中,拍摄全景照片,也成为拍摄风景、室内、展览等场景时的一个常用功能。但由于移动终端本身不是专业的相机设备,其使用的相机的镜头视角较小,拍摄到的画面有限。其中,通过将移动终端相机切换到全景模式,沿着一条水平线扫过一定的角度,然后通过图像处理的技术,即可生成一张全景照片,以超出相机镜头本身视角的广角度全方位展示当前场景,提高了拍照效果。采用这种方案,用户可以不使用广角镜头,就可以拍出较大视角的照片。
随着电子设备技术的发展,目前有些移动终端中可以配备2个或者2个以上的摄像头。拍摄全景图时,多个摄像头同时沿着一个方向扫过,可以生成全景图。使用这种方式,虽然减少了拍摄全景图需要扫过的角度,但是从开始拍摄到拍摄完成,多个摄像头存在重复的取景区域的问题。如图1所示,以3个摄像头为例,图中左上方三个不同填充的长方形表示三个摄像头取景区域的初始位置,假设移动终端的移动方向(即拍摄的扫描方向)为从左到右(如图中最上方箭头所示),在三个摄像头取景区域的初始位置下方,不同填充的细长条分别表示摄像头a、b、c拍摄过程中所扫描过的整个取景区域范围,可以看到,在拍摄的扫描方向上,前面的摄像头已经拍摄的画面,后面的摄像头扫过时也会再拍摄一遍,这样就生成了大量的中间图片,导致图像处理的复杂度较大,且占用大量内存,消耗系统资源。
发明内容
本发明实施例提供了一种拍照方法及移动终端,以解决现有技术中当使用移动终端的多个摄像头进行全景图像拍摄时,存在由于不同的摄像头重复拍摄同一画面,导致生成大量无用图片,占用大量内存,消耗系统资源,且使图像处理的复杂度增大的问题。
第一方面,提供了一种拍照方法,应用于具有多个摄像头的移动终端,包括:
当检测到拍照指令时,确定多个摄像头的扫描方向;
将扫描方向上的第一个摄像头设置为连续取景摄像头,将除所述连续取景摄像头之外的摄像头设置为补充取景摄像头;
控制所述连续取景摄像头连续拍摄,且在所述连续取景摄像头连续拍摄过程中,当所述补充取景摄像头中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时,控制所述补充取景摄像头停止拍摄;
将所述多个摄像头拍摄的图像进行拼接处理,生成全景图像。
第二方面,提供了一种移动终端,所述移动终端具有多个摄像头,其中,所述移动终端还包括:
确定模块,用于当检测到拍照指令时,确定多个摄像头的扫描方向;
设置模块,用于将所述确定模块所确定的扫描方向上的第一个摄像头设置为连续取景摄像头,将除所述连续取景摄像头之外的摄像头设置为补充取景摄像头;
第一控制模块,用于控制所述设置模块所设置的连续取景摄像头连续拍摄,且在所述连续取景摄像头连续拍摄过程中,当所述补充取景摄像头中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时,控制所述补充取景摄像头停止拍摄;
生成模块,用于将所述多个摄像头拍摄的图像进行拼接处理,生成全景图像。
本发明的有益效果是:
上述技术方案,为了克服使用移动终端的多个摄像头进行全景图像拍摄时,存在大量重复取景拍摄的问题,在接收到拍照指令后,根据取景扫描方向,设置多个摄像头的拍摄模式,即将扫描方向上第一个摄像头设置为连续取景摄像头,将除连续取景摄像头之外的摄像头设置为补充取景摄像头。其中,连续取景摄像头为从确定了扫描方向时开始到拍照结束时,连续拍摄图像的摄像头,补充取景摄像头为从确定了扫描方向时开始拍摄,当其中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时停止拍摄的摄像头。通过这样的方式,能够减少图像拍摄的数量,解决大量重复取景拍摄的问题,同时还能够减少所要处理的图像数据,节省系统资源,提高图像处理的速度,提升用户的使用体验。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1表示现有技术中多个摄像头取景拍摄图像的示意图;
图2表示本发明第一实施例提供的拍照方法的流程图;
图3表示本发明实施例提供的多个摄像头取景区域的示意图;
图4表示本发明实施例提供的多个摄像头取景区域的另一示意图;
图5表示本发明实施例提供的重合区域判断的示意图;
图6表示本发明实施例提供的多个摄像头取景拍摄图像的示意图;
图7表示本发明第二实施例提供的移动终端的框图;
图8表示本发明第二实施例提供的移动终端的另一框图;
图9表示本发明第三实施例提供的移动终端的框图;
图10表示本发明第四实施例提供的移动终端的框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
第一实施例
本发明实施例提供了一种拍照方法,应用于具有多个摄像头的移动终端。如图1所示,该拍照方法包括:
步骤201、当检测到拍照指令时,确定多个摄像头的扫描方向。
其中,这里所述的多个摄像头为参与本次拍摄的摄像头。本步骤中,在检测到拍照指令时,开始判断多个摄像头的扫描方向。
其中,该拍照指令包括但不限于:物理按键触发指令、触摸手势操作指令、语音触发指令、指纹触发指令以及按压触发指令中的至少一种。具体的,上述指令被触发的方式可以是一个或多个物理按键触发、按键时间间隔方式触发、触摸屏单点或多点操作触发、红外传感器触发、加速度传感器触发、陀螺仪传感器触发、温度传感器触发、指纹识别触发、声音识别触发、手势识别触发或图像识别触发等。当然,上述触发方式仅仅是举例说明,其他任意能够实现终端相机触发的方式均可以应用到本发明实施例中,在此不一一说明。步骤202、将扫描方向上的第一个摄像头设置为连续取景摄像头,将除连续取景摄像头之外的摄像头设置为补充取景摄像头。
本步骤中,将多个摄像头中首次拍摄到扫描方向上最前方取景图像的摄像头设置为连续取景摄像头。一般该连续取景摄像头为扫描方向上的第一个摄像头。由于该连续取景摄像头位于扫描方向上的最前端,因此该连续取景摄像头在沿扫描方向上始终是拍摄先于其后方(以扫描方向为参考)的摄像头拍摄的图像,因此在整个拍摄过程中,该连续取景摄像头需连续拍摄图像。
对于多个摄像头中除该连续取景摄像头之外的其他摄像头,设置为补充取景摄像头。一般补充取景摄像头位于扫描方向上连续取景摄像头的后方。所谓补充取景摄像头顾名思义,就是补充取景的摄像头,以使最后生成的全景图像更加完整。
如图3所示,以三个摄像头为例,从左到右依次为摄像头a、b、c的取景区域,若扫描方向为从左到右,则摄像头c能够首先拍摄到最右方的图像,即首次拍摄到扫描方向上最前方取景图像,因此将摄像头c设置为连续取景摄像头,将摄像头a和摄像头b设置为补充取景摄像头;若扫描方向为从右到左,则摄像头a能够首先拍摄到最左方的图像,即首次拍摄到扫描方向上最前方取景图像,因此将摄像头a设置为连续取景摄像头,将摄像头b和摄像头c设置为补充取景摄像头。
其中,多个摄像头中至少有一个摄像头为连续取景摄像头。例如,当拍摄传统上的柱形全景图,即拍摄包括前后左右的全景图时,一般是采用水平并排设置的多个摄像头进行拍摄,此时,连续取景摄像头为扫描方向上的第一个摄像头,这时连续取景摄像头的数量为一个。同样是拍摄传统上的柱形全景图,但采用的是不仅水平方向并排设置有多个摄像头,竖直方向上也并排设置有多个摄像头,此时,连续取景摄像头为扫描方向上每一行的第一个摄像头,这时连续取景摄像头的数量为多个,如图4所示,当扫描方向为从左向右时,摄像头c和摄像头f为连续取景摄像头,当扫描方向为从右向左时,摄像头a和摄像头d为连续取景摄像头。当然可以理解的是,上述示例仅是为了说明连续取景摄像头的数量为一个或多个,并非是对本发明实施例的限定。
步骤203、控制连续取景摄像头连续拍摄,且在连续取景摄像头连续拍摄过程中,当补充取景摄像头中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时,控制补充取景摄像头停止拍摄。
本步骤中,在确定了扫描方向以及设置好多个摄像头中每个摄像头的拍摄模式(即是连续取景拍摄还是补充取景拍摄)时,则控制多个摄像头进行拍摄。具体地,控制连续取景摄像头从确定了扫描方向时开始到拍照结束时,连续拍摄图像;控制补充取景摄像头从确定了扫描方向时开始拍摄,当其中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时,停止该补充取景摄像头拍摄。
步骤204、将多个摄像头拍摄的图像进行拼接处理,生成全景图像。
本步骤中,将多个摄像头拍摄的图像进行图像拼接处理,得到拍摄的全景图像。其中,这里所述的多个摄像头拍摄的图像至少包括:连续取景摄像头拍摄的图像以及补充取景摄像头拍摄的图像。
本发明实施例对拍摄全景图像的多个摄像头进行拍摄模式(即连续取景拍摄模式以及补充取景拍摄模式)的设定,每个摄像头根据设定的拍摄模式进行拍摄,由于并非所有的摄像头都要在整个拍摄过程中连续取景,因此不仅能够减少图像拍摄的数量,还能够解决大量重复取景拍摄的问题,减少所要处理的图像数据,节省系统资源,提高图像处理的速度,提升用户的使用体验。
在本发明的一个实施例中,步骤301所要确定的扫描方向可根据移动终端的移动方向进行判断。具体地,当检测到拍照指令时,检测移动终端的移动方向;根据检测到的移动方向,确定多个摄像头的扫描方向。其中,可通过设置在移动终端内的、能够检测移动终端的移动方向的传感器进行检测,如通过陀螺仪检测移动终端的转动角度,根据该转动角度,确定移动终端的移动方向等。
采用该种方式判断扫描方向时,可能会花费一些时间,如采用传感器检测移动终端的移动方向时,需要移动终端移动一段距离才能够确定移动方向,因此,为了避免延时拍摄造成的取景不全的问题,本发明实施例中,在检测到拍照指令时到确定了扫描方向前,即控制多个摄像头连续拍摄图像,以保证拍摄的图像与用户看到的取景图像一致,提升用户的使用体验。相应地,在进行图像拼接时,需要获取确定扫描方向前,多个摄像头连续拍摄的第一图像;以及确定扫描方向后,连续取景摄像头拍摄的图像和补充取景摄像头拍摄的第二图像;最后拼接处理第一图像、确定扫描方向后连续取景摄像头拍摄的图像和第二图像,生成全景图像。
在本发明的另一个实施例中,步骤301所要确定的扫描方向还可由用户预先自定义,将预设的扫描方向作为本次拍摄全景图中多个摄像头应该服从的拍摄方向。具体地,当检测到拍照指令时,获取预设的扫描方向参数;根据预设的扫描方向参数,确定多个摄像头的扫描方向。若移动终端实际的移动方向与预设的扫描方向相反,则由移动终端提醒用户对移动方向进行更正。
进一步地,步骤203中所述的补充取景摄像头包括:静态取景摄像头和/或半连续取景摄像头。
其中,根据在获取到拍照指令的一刻,多个摄像头中相邻的摄像头的取景区域是否局部重合,以及根据确定的扫描方向,将除所述连续取景摄像头之外的摄像头设置为静态取景摄像头或半连续取景摄像头。需要说明的是,所述获取到拍照指令的一刻具体是指:获取到拍照指令且移动终端处于静止状态时的一刻。
其中,静态取景摄像头为仅拍摄一帧图像的摄像头,半连续取景摄像头为连续拍摄一段时间(该段时间小于整个拍摄时间)的摄像头。
具体地,根据在获取到拍照指令的一刻,多个摄像头中相邻的摄像头的取景区域是否局部重合,以及根据确定的扫描方向,将除所述连续取景摄像头之外的摄像头设置为静态取景摄像头或半连续取景摄像头的具体实现方式为:
在获取到拍照指令的一刻时,判断多个摄像头中相邻的摄像头的取景区域是否局部重合;当相邻两个摄像头的取景区域局部重合时,将两个相邻摄像头在扫描方向上的后一摄像头设置为静态取景摄像头;当取景区域不重合时,将两个相邻摄像头在扫描方向上的后一摄像头设置为半连续取景摄像头。
其中,需要对多个摄像头中任意相邻的两个摄像头均进行判断,如图3所示,需判断相邻的摄像头a和摄像头b的取景区域是否重合以及相邻的摄像头b和摄像头c的取景区域是否重合。
其中,本发明实施例中所述的取景区域是否局部重合是指相邻两个摄像头同时采集的图像是否具有局部重合区域。具体地,可分别获取相邻两个摄像头同时采集的一帧图像,比对采集的两帧图像是否具有相同的取景区域,若有,则说明相邻两个摄像头的取景区域重合;若没有,则说明相邻两个摄像头的取景区域不重合。优选地,可比对两帧图像相邻的边缘图像是否具有相同的取景区域。以图3为例说明,判断相邻的摄像头a和摄像头b的取景区域是否重合时,在获取到摄像头a和摄像头b同时采集的一帧图像后,对比摄像头a采集的图像的右边缘图像与摄像头b采集的图像的左边缘图像是否具有相同的取景区域,如图5所示,图中黑色填充区域为对比图像区域。
其中,本发明实施例中,当相邻两个摄像头的取景区域重合时,将两个相邻摄像头在扫描方向上的后一摄像头设置为静态取景摄像头,如图3所示,假设扫描方向为从左到右,摄像头a与摄像头b的取景区域重合(图中以取景区域紧邻示意为取景区域重合,以下类同),则将摄像头a设置为静态取景摄像头;摄像头b与摄像头c的取景区域重合,则将摄像头b设置为静态取景摄像头。当扫描方向为从右到左时,设置方法相同,此处不再赘述。
其中,本发明实施例中,当相邻两个摄像头取景区域不重合时,将两个相邻摄像头在扫描方向上的后一摄像头设置为半连续取景摄像头。如图6所示,假设扫描方向为从左到右,摄像头a与摄像头b的取景区域不重合(图中以取景区域之间具有空白示意为取景区域不重合,以下类同),则将摄像头a设置为半连续取景摄像头;摄像头b与摄像头c的取景区域重合,则将摄像头b设置为静态取景摄像头。当扫描方向为从右到左时,设置方法相同,此处不再赘述。
在设置完摄像头的拍摄模式后,控制连续取景摄像头从确定了扫描方向时开始到拍照结束时,连续拍摄图像,控制静态取景摄像头在确定了扫描方向时拍摄一帧图像,控制半连续取景摄像头从确定了扫描方向时开始连续拍摄图像,当拍摄的图像与在扫描方向上相邻的前一摄像头所拍摄的第一帧图像具有重合区域时,停止拍摄图像。最后,将连续取景摄像头拍摄的图像以及静态取景摄像头拍摄的图像和/或半连续取景摄像头拍摄的图像,进行拼接处理,生成全景图像。
如图6所示,假设扫描方向为从左到右,因此摄像头c为连续取景摄像头,由于摄像头a与摄像头b的取景区域不重合,因此摄像头a为半连续取景摄像头,由于摄像头b与摄像头c的取景区域重合,因此摄像头b为静态取景摄像头。如图中不同填充的细长条所示,摄像头c从拍摄开始(即确定了扫描方向时)到拍摄结束一直连续拍摄,摄像头b仅在拍摄开始时拍摄一帧图像,摄像头a从拍摄开始连续拍摄,当拍摄的图像与在扫描方向上相邻的前一摄像头(即摄像头b)所拍摄的第一帧图像具有重合区域时,停止拍摄图像,以弥补摄像头a与摄像头b之间的取景图像。
进一步地,本发明实施例在判断扫描方向时,可能会花费一些时间,如采用传感器检测移动终端的移动方向时,需要移动终端移动一段距离才能够确定移动方向,因此,为了避免延时拍摄造成的取景不全的问题,本发明实施例中,在检测到拍照指令时到确定了扫描方向前,即控制多个摄像头连续拍摄图像,以保证拍摄的图像与用户看到的取景图像一致,提升用户的使用体验。相应地,在进行图像拼接时,需要将多个摄像头在检测到拍照指令时到确定了扫描方向前连续拍摄的图像以及连续取景摄像头拍摄的图像、静态取景摄像头拍摄的图像和/或半连续取景摄像头拍摄的图像,进行拼接处理,生成全景图像。
综上所述,本发明实施例提供的拍照方法,在接收到拍照指令后,根据取景扫描方向,设置多个摄像头的拍摄模式,每个摄像头根据自己的拍摄模式进行拍摄,由于并非所有的摄像头都要在整个拍摄过程中连续取景,因此能够减少图像拍摄的数量,解决大量重复取景拍摄的问题,同时还能够减少所要处理的图像数据,节省系统资源,提高图像处理的速度,提升用户的使用体验。
第二实施例
本发明实施例提供了一种移动终端,能实现第一实施例中所述的拍照方法的细节,并达到相同的效果。其中,该移动终端具有多个摄像头。如图7所示,该移动终端还包括:
确定模块701,用于当检测到拍照指令时,确定多个摄像头的扫描方向。
其中,这里所述的多个摄像头为参与本次拍摄的摄像头。
在检测到拍照指令时,确定模块701开始判断多个摄像头的扫描方向。该扫描方向可根据移动终端的移动方向进行判断,具体地,可根据设置在移动终端内的、能够检测移动终端的移动方向的传感器进行判断;也可预先由用户自定义扫描方向,即当检测到拍照指令时,摄像头根据预设的扫描方向进行取景拍摄。
本步骤中,该拍照指令包括但不限于:物理按键触发指令、触摸手势操作指令、语音触发指令、指纹触发指令以及按压触发指令中的至少一种。具体的,上述指令被触发的方式可以是一个或多个物理按键触发、按键时间间隔方式触发、触摸屏单点或多点操作触发、红外传感器触发、加速度传感器触发、陀螺仪传感器触发、温度传感器触发、指纹识别触发、声音识别触发、手势识别触发或图像识别触发等。
当然,上述触发方式仅仅是举例说明,其他任意能够实现终端相机触发的方式均可以应用到本发明实施例中,在此不一一说明。
设置模块702,用于将确定模块701所确定的扫描方向上的第一个摄像头设置为连续取景摄像头,将除连续取景摄像头之外的摄像头设置为补充取景摄像头。
其中,设置模块702根据确定模块701所确定的扫描方向,将多个摄像头中首次拍摄到扫描方向上最前方取景图像的摄像头设置为连续取景摄像头。一般该连续取景摄像头为扫描方向上的第一个摄像头。如图3所示,以三个摄像头为例,从左到右依次为摄像头a、b、c的取景区域,若扫描方向为从左到右,则摄像头c能够首先拍摄到最右方的图像,即首次拍摄到扫描方向上最前方取景图像,因此将摄像头c设置为连续取景摄像头;若扫描方向为从右到左,则摄像头a能够首先拍摄到最左方的图像,即首次拍摄到扫描方向上最前方取景图像,因此将摄像头a设置为连续取景摄像头。
其中,由于该连续取景摄像头位于扫描方向上的最前端,因此该连续取景摄像头在沿扫描方向上始终是拍摄先于其后方(以扫描方向为参考)的摄像头拍摄的图像,因此在整个拍摄过程中,该连续取景摄像头需连续拍摄图像。
对于多个摄像头中除该连续取景摄像头之外的其他摄像头,设置模块702会将其设置为补充取景摄像头。一般补充取景摄像头位于扫描方向上连续取景摄像头的后方。所谓补充取景摄像头顾名思义,就是补充取景的摄像头,以使最后生成的全景图像更加完整。
如图3所示,以三个摄像头为例,从左到右依次为摄像头a、b、c的取景区域,若扫描方向为从左到右,则摄像头c能够首先拍摄到最右方的图像,即首次拍摄到扫描方向上最前方取景图像,因此将摄像头c设置为连续取景摄像头,将摄像头a和摄像头b设置为补充取景摄像头;若扫描方向为从右到左,则摄像头a能够首先拍摄到最左方的图像,即首次拍摄到扫描方向上最前方取景图像,因此将摄像头a设置为连续取景摄像头,将摄像头b和摄像头c设置为补充取景摄像头。
其中,多个摄像头中至少有一个摄像头为连续取景摄像头。例如,当拍摄传统上的柱形全景图,即拍摄包括前后左右的全景图时,一般是采用水平并排设置的多个摄像头进行拍摄,此时,连续取景摄像头为扫描方向上的第一个摄像头,这时连续取景摄像头的数量为一个。同样是拍摄传统上的柱形全景图,但采用的是不仅水平方向并排设置有多个摄像头,竖直方向上也并排设置有多个摄像头,此时,连续取景摄像头为扫描方向上每一行的第一个摄像头,这时连续取景摄像头的数量为多个,如图4所示,当扫描方向为从左向右时,摄像头c和摄像头f为连续取景摄像,头当扫描方向为从右向左时,摄像头a和摄像头d为连续取景摄像头。当然可以理解的是,上述示例仅是为了说明连续取景摄像头的数量为一个或多个,并非是对本发明实施例的限定。
第一控制模块703,用于控制设置模块702所设置的连续取景摄像头连续拍摄,且在连续取景摄像头连续拍摄过程中,当补充取景摄像头中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时,控制补充取景摄像头停止拍摄。
在确定模块701确定了扫描方向以及设置模块702设置好多个摄像头中每个摄像头的拍摄模式时,则由第一控制模块703控制多个摄像头进行拍摄。
本发明实施例对拍摄全景图像的多个摄像头进行拍摄模式(即是连续取景拍摄还是补充取景拍摄)的限定,每个摄像头根据设定的拍摄模式进行拍摄,由于并非所有的摄像头都要在整个拍摄过程中连续取景,因此不仅能够减少图像拍摄的数量,还能够解决大量重复取景拍摄的问题,减少所要处理的图像数据,节省系统资源,提高图像处理的速度,提升用户的使用体验。
生成模块704,用于将多个摄像头拍摄的图像进行拼接处理,生成全景图像。
其中,生成模块704将多个摄像头拍摄的图像进行图像拼接处理,得到拍摄的全景图像。其中,这里所述的多个摄像头拍摄的图像至少包括:连续取景摄像头拍摄的图像以及补充取景摄像头拍摄的图像。
进一步地,如图8所示,确定模块701包括:
第一获取单元7011,用于当检测到拍照指令时,获取预设的扫描方向参数。
第一确定单元7012,用于根据获取单元7011所获取的预设的扫描方向参数,确定多个摄像头的扫描方向。
在本发明的一个实施例中,确定模块701所要确定的扫描方向可由用户预先自定义,将预设的扫描方向作为本次拍摄全景图中多个摄像头应该服从的拍摄方向。具体地,当检测到拍照指令时,由获取单元7011获取预设的扫描方向参数,然后由第一确定单元7012根据获取单元7011所获取的预设的扫描方向参数,确定多个摄像头的扫描方向。若移动终端实际的移动方向与预设的扫描方向相反,则由移动终端提醒用户对移动方向进行更正。
进一步地,如图8所示,确定模块包括:
检测单元7013,用于当检测到拍照指令时,检测移动终端的移动方向。
第二确定单元7014,用于根据检测单元7013所确定的移动方向,确定多个摄像头的扫描方向。
在本发明的另一个实施例中,确定模块701所要确定的扫描方向还可根据移动终端的移动方向进行判断。具体地,当检测到拍照指令时,通过检测单元7013检测移动终端的移动方向,然后由第二确定单元7014根据检测单元7013所确定的的移动方向,确定多个摄像头的扫描方向。其中,可通过设置在移动终端内的、能够检测移动终端的移动方向的传感器进行检测,如通过陀螺仪检测移动终端的转动角度,根据该转动角度,确定移动终端的移动方向等。
进一步地,如图8所示,移动终端还包括:
第二控制模块705,用于在检测到拍照指令时到确定了扫描方向前,控制多个摄像头连续拍摄图像。
本发明实施例在判断扫描方向时,可能会花费一些时间,如采用传感器检测移动终端的移动方向时,需要移动终端移动一段距离才能够确定移动方向,因此,为了避免延时拍摄造成的取景不全的问题,本发明实施例中,在检测到拍照指令时到确定了扫描方向前,即控制多个摄像头连续拍摄图像,以保证拍摄的图像与用户看到的取景图像一致,提升用户的使用体验。
相应地,如图8所示,生成模块704包括:
第二获取单元7041,用于获取确定扫描方向前,多个摄像头连续拍摄的第一图像。
第三获取单元7042,用于获取确定扫描方向后,连续取景摄像头拍摄的图像和补充取景摄像头拍摄的第二图像。
生成单元7043,用于拼接处理所述第二获取单元所获取的第一图像和所述第三获取单元所获取的确定扫描方向后连续取景摄像头拍摄的图像、第二图像,生成全景图像。
在进行图像拼接时,需要将多个摄像头在检测到拍照指令时到确定了扫描方向前连续拍摄的图像以及连续取景摄像头拍摄的图像和补充取景摄像头拍摄的图像,进行拼接处理,生成全景图像。
综上所述,本发明实施例提供的移动终端,在接收到拍照指令后,设置模块702根据确定模块701确定的取景扫描方向,设置多个摄像头的拍摄模式,然后由第一控制模块703控制每个摄像头根据自己的拍摄模式进行拍摄,最后由生成模块704将多个摄像头拍摄的图像进行拼接处理,生成全景图像。由于并非所有的摄像头都要在整个拍摄过程中连续取景,因此能够减少图像拍摄的数量,解决大量重复取景拍摄的问题,同时还能够减少所要处理的图像数据,节省系统资源,提高图像处理的速度,提升用户的使用体验。
第三实施例
图9是本发明另一个实施例的移动终端的框图。图9所示的移动终端900包括:至少一个处理器901、存储器902、至少一个网络接口904和用户接口903。移动终端900中的各个组件通过总线系统905耦合在一起。可理解,总线系统905用于实现这些组件之间的连接通信。总线系统905除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图9中将各种总线都标为总线系统905。
其中,用户接口903可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。
可以理解,本发明实施例中的存储器902可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DRRAM)。本文描述的系统和方法的存储器902旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器902存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统9021和应用程序9022。
其中,操作系统9021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序9022,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序9022中。
在本发明实施例中,通过调用存储器902存储的程序或指令,具体的,可以是应用程序9022中存储的程序或指令,处理器901用于当检测到拍照指令时,确定多个摄像头的扫描方向;将扫描方向上的第一个摄像头设置为连续取景摄像头,将除连续取景摄像头之外的摄像头设置为补充取景摄像头;控制连续取景摄像头连续拍摄,且在连续取景摄像头连续拍摄过程中,当补充取景摄像头中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时,控制补充取景摄像头停止拍摄;将多个摄像头拍摄的图像进行拼接处理,生成全景图像。
上述本发明实施例揭示的方法可以应用于处理器901中,或者由处理器901实现。处理器901可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器901中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器901可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器902,处理器901读取存储器902中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选地,处理器901还用于:当检测到拍照指令时,获取预设的扫描方向参数;根据预设的扫描方向参数,确定多个摄像头的扫描方向。
可选地,处理器901还用于:当检测到拍照指令时,检测移动终端的移动方向;根据移动方向,确定多个摄像头的扫描方向。
可选地,处理器901还用于:在检测到拍照指令时到确定了扫描方向前,控制多个摄像头连续拍摄图像。
可选地,处理器901还用于:获取确定扫描方向前,多个摄像头连续拍摄的第一图像;获取确定扫描方向后,连续取景摄像头拍摄的图像和补充取景摄像头拍摄的第二图像;拼接处理第一图像、确定扫描方向后连续取景摄像头拍摄的图像和第二图像,生成全景图像。
移动终端900能够实现前述实施例中移动终端实现的各个过程,为避免重复,这里不再赘述。
本发明实施例提供的移动终端900,本发明实施例提供的移动终端,在接收到拍照指令后,根据取景扫描方向,设置多个摄像头的拍摄模式,每个摄像头根据自己的拍摄模式进行拍摄,由于并非所有的摄像头都要在整个拍摄过程中连续取景,因此能够减少图像拍摄的数量,解决大量重复取景拍摄的问题,同时还能够减少所要处理的图像数据,节省系统资源,提高图像处理的速度,提升用户的使用体验。
第四实施例
图10是本发明另一个实施例的移动终端的结构示意图。具体地,图10中的移动终端1000可以为手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)或车载电脑等。
图10中的移动终端1000包括射频(Radio Frequency,RF)电路1001、存储器1002、输入单元1003、显示单元1004、处理器1006、音频电路1007、WiFi(Wireless Fidelity)模块1008、电源1009和拍照组件1010。
其中,输入单元1003可用于接收用户输入的数字或字符信息,以及产生与移动终端1000的用户设置以及功能控制有关的信号输入。具体地,本发明实施例中,该输入单元1003可以包括触控面板10031。触控面板10031,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板10031上的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板10031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给该处理器1006,并能接收处理器1006发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板10031。除了触控面板10031,输入单元1003还可以包括其他输入设备10032,其他输入设备10032可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
其中,显示单元1004可用于显示由用户输入的信息或提供给用户的信息以及移动终端1000的各种菜单界面。显示单元1004可包括显示面板10041,可选的,可以采用LCD或有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板10041。
应注意,触控面板10031可以覆盖显示面板10041,形成触摸显示屏,当该触摸显示屏检测到在其上或附近的触摸操作后,传送给处理器1006以确定触摸事件的类型,随后处理器1006根据触摸事件的类型在触摸显示屏上提供相应的视觉输出。
触摸显示屏包括应用程序界面显示区及常用控件显示区。该应用程序界面显示区及该常用控件显示区的排列方式并不限定,可以为上下排列、左右排列等可以区分两个显示区的排列方式。该应用程序界面显示区可以用于显示应用程序的界面。每一个界面可以包含至少一个应用程序的图标和/或widget桌面控件等界面元素。该应用程序界面显示区也可以为不包含任何内容的空界面。该常用控件显示区用于显示使用率较高的控件,例如,设置按钮、界面编号、滚动条、电话本图标等应用程序图标等。
其中,处理器1006是移动终端1000的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在第一存储器10021内的软件程序和/或模块,以及调用存储在第二存储器10022内的数据,执行移动终端1000的各种功能和处理数据,从而对移动终端1000进行整体监控。可选的,处理器1006可包括一个或多个处理单元。
在本发明实施例中,通过调用存储该第一存储器10021内的软件程序和/或模块和/或该第二存储器10022内的数据,处理器1006用于当检测到拍照指令时,确定多个摄像头的扫描方向;将扫描方向上的第一个摄像头设置为连续取景摄像头,将除连续取景摄像头之外的摄像头设置为补充取景摄像头;控制连续取景摄像头连续拍摄,且在连续取景摄像头连续拍摄过程中,当补充取景摄像头中任意一个实时获取的图像与其他摄像头获取的图像存在局部重合时,控制补充取景摄像头停止拍摄;并将多个摄像头拍摄的图像进行拼接处理,生成全景图像。
可选地,处理器1006还用于:当检测到拍照指令时,获取预设的扫描方向参数;根据预设的扫描方向参数,确定多个摄像头的扫描方向。
可选地,处理器1006还用于:当检测到拍照指令时,检测移动终端的移动方向;根据移动方向,确定多个摄像头的扫描方向。
可选地,拍照组件1010还用于:在检测到拍照指令时到确定了扫描方向前,控制多个摄像头连续拍摄图像。
可选地,拍照组件1010还用于:获取确定扫描方向前,多个摄像头连续拍摄的第一图像;获取确定扫描方向后,连续取景摄像头拍摄的图像和补充取景摄像头拍摄的第二图像;拼接处理第一图像、确定扫描方向后连续取景摄像头拍摄的图像和第二图像,生成全景图像。
可见,本发明实施例提供的移动终端1000,本发明实施例提供的移动终端,在接收到拍照指令后,根据取景扫描方向,设置多个摄像头的拍摄模式,每个摄像头根据自己的拍摄模式进行拍摄,由于并非所有的摄像头都要在整个拍摄过程中连续取景,因此能够减少图像拍摄的数量,解决大量重复取景拍摄的问题,同时还能够减少所要处理的图像数据,节省系统资源,提高图像处理的速度,提升用户的使用体验。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。