一种拍摄方法、第一终端及第二终端与流程

文档序号:13617637阅读:172来源:国知局
一种拍摄方法、第一终端及第二终端与流程

本发明实施例涉及通信领域,尤其涉及一种拍摄方法、第一终端及第二终端。



背景技术:

目前,在移动终端用户拍照过程中,当用户需要拍摄范围超出摄像头取景范围的物体或景物时,一般需要用户使用全景拍摄模式,也就是使用多帧图像数据拼接合成技术。还有一种方案是将拍摄范围较大的物体(例如拍黑板)分开成多次拍摄,拍摄多张图像,然后后期根据是否需要将多张图像合成一张。

现有的拍摄较大范围物体或景物的方法存在不足之处。对于第一种方案,当拍摄全景图像时需要不停的移动来拍摄,移动过快或者移动过程中有抖动都会影响所拍全景图像的质量,对拍摄的技巧有一定要求。另外,当人流较多时,例如在景区拍风景,其他人可能会会给移动路线造成影响。对于第二种方案,需要分开成多次拍摄,每次拍摄也需要变换角度或者位置,拍摄后生成多张图像,这样不仅拍摄次数较多,而且查看时需要查看多张图像。

因此,在先技术存在需要用户频繁移动来拍摄或者需要多次拍摄的问题。



技术实现要素:

本发明实施例提供一种拍摄方法,以解决在先技术存在需要用户频繁移动来拍摄或者需要多次拍摄的问题。

为了解决上述技术问题,本发明是这样实现的:一种拍摄方法,应用于第一终端,包括:

分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据;

根据所述第一预览图像数据和所述第二预览图像数据,调整所述第一终端的摄像头的拍摄参数;

将所述第一预览图像数据和所述第二预览图像数据进行实时图像拼接,生成第三预览图像数据;

显示所述第一预览图像数据和所述第三预览图像数据;

若接收到拍照指令,则分别获取所述第一终端的摄像头采集的第一拍摄图像数据和至少一个第二终端发送的第二拍摄图像数据;

将所述第一拍摄图像数据和所述第二拍摄图像数据进行图像拼接,生成目标图像。

本发明实施例还提供了一种拍摄方法,应用于第二终端,包括:

获取第二终端的摄像头实时采集的第二预览图像数据;

将所述第二预览图像数据发送至第一终端;

获取所述第二终端的摄像头采集的第二拍摄图像数据;

将所述第二拍摄图像数据发送至所述第一终端;

其中,所述第二预览图像数据用于所述第一终端调整所述第一终端的摄像头的拍摄参数;所述第二预览图像数据还用于所述第一终端进行实时图像拼接,生成第三预览图像数据;所述第二拍摄图像数据用于所述第一终端进行图像拼接,生成目标图像。

本发明实施例另外提供了一种第一终端,包括:

第一预览图像获取模块,用于分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据;

拍摄参数调整模块,用于根据所述第一预览图像数据和所述第二预览图像数据,调整所述第一终端的摄像头的拍摄参数;

预览图像拼接模块,用于将所述第一预览图像数据和所述第二预览图像数据进行实时图像拼接,生成第三预览图像数据;

预览图像显示模块,用于显示所述第一预览图像数据和所述第三预览图像数据;

第一拍摄图像获取模块,用于若接收到拍照指令,则分别获取所述第一终端的摄像头采集的第一拍摄图像数据和至少一个第二终端发送的第二拍摄图像数据;

拍摄图像拼接模块,用于将所述第一拍摄图像数据和所述第二拍摄图像数据进行图像拼接,生成目标图像。

本发明实施例另外提供了一种第二终端,包括:

第二预览图像获取模块,用于获取第二终端的摄像头实时采集的第二预览图像数据;

预览图像发送模块,用于将所述第二预览图像数据发送至第一终端;

第二拍摄图像获取模块,用于获取所述第二终端的摄像头采集的第二拍摄图像数据;

拍摄图像发送模块,用于将所述第二拍摄图像数据发送至所述第一终端;

其中,所述第二预览图像数据用于所述第一终端调整所述第一终端的摄像头的拍摄参数;所述第二预览图像数据还用于所述第一终端进行实时图像拼接,生成第三预览图像数据;所述第二拍摄图像数据用于所述第一终端进行图像拼接,生成目标图像。

此外,本发明实施例提供了一种第一终端,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述权利要求中任一项所述的拍摄方法的步骤。

本发明实施例还提供了一种第一计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上述权利要求中任一项所述的拍摄方法的步骤。

本发明实施例还提供了一种第二终端,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述权利要求中任一项所述的拍摄方法的步骤。

本发明实施例还提供了一种第二计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上述权利要求中任一项所述的拍摄方法的步骤。

在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

附图说明

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

图1是本发明实施例的一种应用于第一终端的拍照方法的步骤的流程图;

图2是本发明实施例的一种取景范围的示意图;

图3是本发明实施例的一种应用于第一终端的拍照方法的步骤的流程图;

图4是本发明实施例的一种取景范围的示意图;

图5是本发明实施例的一种显示第一预览图像数据和第三预览图像数据的示意图之一;

图6是本发明实施例的一种显示第一预览图像数据和第三预览图像数据的示意图之二;

图7是本发明实施例的一种显示第一预览图像数据和第三预览图像数据的示意图之三;

图8是本发明实施例的一种显示第一预览图像数据和第三预览图像数据的示意图之四;

图9是本发明实施例的一种显示第一预览图像数据和第三预览图像数据的示意图之五;

图10是本发明实施例的一种显示第一预览图像数据和第三预览图像数据的示意图之六;

图11是本发明实施例的一种应用于第二终端的拍照方法的步骤的流程图;

图12是本发明实施例的一种第一终端的结构框图之一;

图13是本发明实施例的一种第一终端的结构框图之二;

图14是本发明实施例的一种第一终端的结构框图之三;

图15是本发明实施例的一种第二终端的结构框图;

图16是本发明实施例的一种第一终端的结构示意图;

图17是本发明实施例的一种第二终端的结构示意图。

具体实施方式

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

参照图1所示,本发明实施例提供了一种拍摄方法,应用于第一终端,具体可以包括步骤101-106:

步骤101:分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据。

本发明实施例可以应用于拍摄大范围的对象或者拍摄范围大于单个终端的摄像头取景范围的对象,采用多人协同拍摄的技术方案。

上述第一终端和上述第二终端相对于拍摄对象的取景范围不同。示例性地,参照图2所示的教学用的黑板,可以将整个黑板从左到右划分为区域一、重叠区域与区域二,共三个部分;分别由第一终端对黑板的区域一加重叠区域的范围取景,第二终端对黑板的重叠区域加区域二的范围取景。因为上述第一终端的取景范围和上述第二终端的取景范围包括重叠区域,因此便于根据上述各自重叠区域的像素特征信息的相似性,将上述第一终端获取的图像数据和上述第二终端获取的图像数据进行合成。

在本发明实施例中,上述第一终端或上述第二终端可以包括手机、平板电脑、可穿戴设备等,本发明实施例对此不作限制。

在上述分别获取上述第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据的步骤101之前,还包括:

建立上述第一终端和至少一个上述第二终端之间的通信连接。

上述至少一个第二终端和上述第一终端可以建立通信连接:例如通过上述各个终端中任意一个终端作为蓝牙主机,其它终端作为蓝牙从机,因此可以以上述第一终端作为蓝牙主机,上述第二终端作为蓝牙从机;例如上述第一终端可以通过互联网协议和上述至少一个第二终端建立通信连接。

因为多人协同拍摄需要相互配合,因此各个参与协同拍摄的终端,即上述第一终端和上述第二终端可以首先采集上述拍摄对象的不同取景范围的预览图像数据,而非拍摄图像数据;可以根据上述预览图像数据调整第一终端的拍摄参数;还可以将上述各个预览图像数据拼接合成,根据合成后的全景预览图像数据,即第三预览图像数据,作出拍摄决策。由此可以提前根据预览图像数据判断分析可能的全景图像数据,即目标图像;因为上述预览图像数据相对于拍摄图像数据而言,数据量较小,因此可以降低上述各个终端的数据传输压力和处理压力。

步骤102:根据上述第一预览图像数据和上述第二预览图像数据,调整上述第一终端的摄像头的拍摄参数。

上述拍摄参数可以包括以下内容中的至少一种:焦距、曝光度。当然,本发明实施例并不限于上述拍摄参数。

上述曝光度具体可以体现为曝光时间(即快门速度)、iso(感光度)和光圈系数等。

在本发明实施例的一种实施方式中,判断上述第一预览图像数据和上述第二预览图像数据是否存在重叠区域;若上述第一预览图像数据和上述至少一个第二预览图像数据不存在重叠区域,则在预设角度范围内调整上述第一终端的摄像头的拍摄角度。上述调整第一终端的摄像头的拍摄角度指的是调整上述第一终端的摄像头相对与上述拍摄对象的拍摄角度,例如拍摄角度向右移动、拍摄角度向左移动、拍摄角度向上移动、拍摄角度向下移动等。

可以理解的是,针对具有固定装置和拍摄角度调整装置的第一终端而言,本发明实施例可以由上述第一终端通过指令控制上述拍摄角度调整装置调整拍摄角度;可是对于其他第一终端而言,可以通过提示调整上述摄像头的拍摄角度,提示用户调整。

上述各个终端在获取上述各个预览图像数据时,可以同时获取对应的拍摄时的拍摄参数。上述第二终端可以在采集上述第二预览图像数据的同时,获取对应的拍摄参数;并在发送上述第二预览图像数据至上述第一终端的同时,发送上述第二预览图像数据对应的拍摄参数至第一终端。当然,上述第一终端也可以在采集上述第一预览图像数据的同时,获得上述第一预览图像数据对应的拍摄参数。

在本发明实施例的一种实施方式中,根据上述第一预览图像数据和上述第二预览图像数据,调整上述第一终端的摄像头的拍摄参数的步骤102可以包括:获取与上述第二预览图像数据同时发送的拍摄参数;根据上述拍摄参数,调整上述第一终端的摄像头的拍摄参数。

例如,上述第一预览图像数据对应的拍摄参数中的曝光时间为1/125秒,而上述第二预览图像数据对应的拍摄参数中的曝光时间为1/60秒,为了避免上述第一终端获取的拍摄图像数据因为欠曝导致图像数据偏暗,以致获取的拍摄对象的拍摄图像数据中存在偏暗图像数据和正常图像数据之间的拼接瑕疵,因此可以提高上述第一终端的摄像头的曝光度,例如将上述第一终端的曝光时间调整为1/60秒,当然也可以调整上述摄像头的光圈系数、iso等。

在本发明实施例的一种实施方式中,根据步骤101中实时获取的上述第一预览图像数据和上述第二预览图像数据,实时调整上述第一终端的摄像头的拍摄参数。可以理解的是,在上述步骤102中实时调整上述第一终端的摄像头的拍摄参数之后,还可以再次执行上述步骤101中实时获取各个终端的预览图像数据的步骤。

步骤103:将上述第一预览图像数据和上述第二预览图像数据进行实时图像拼接,生成第三预览图像数据。

在本发明实施例中,可以利用各个预览图象数据的重叠区域中对应像素的相似性,通过采用较成熟的拼接算法进行拼接,尽量使得到的第三预览图象数据无缝平滑。

一般地,首先可以对待拼接的图像数据进行预处理,可以包括上述提到的降噪、颜色校正、颜色增强等处理;还可以包括图像数据投影处理,将待拼接的图像数据分别投影到一个标准的坐标系下,使满足视觉一致性,例如柱面投影、立方体投影等。然后可以对待拼接的图像数据进行配准,寻找匹配的特征点,例如基于空间域像素灰度值的方法,基于图像数据特征的配准算法等。最后可以根据上述匹配的特征点或平移矢量等对待拼接的图像数据进行坐标变换,并拼接;还可以对拼接界面进行模糊化处理等。

其中,基于空间域像素灰度值的方法是从待拼接图像数据的灰度值出发,对待拼接图像数据中一块区域与参考图像数据中的相同尺寸的区域使用最小二乘法或者其它数学方法计算其灰度值的差异,对此差异比较判断待拼接图像数据重叠区域的相似程度,由此得到待拼接图像数据重叠区域的范围和位置,从而实现图像数据拼接。当以两块区域像素点灰度值的差别作为判别标准时,最简单的一种方法是直接把各点灰度的差值累计起来。这种办法效果不是很好,常常由于亮度、对比度的变化及其它原因导致拼接失败。另一种方法是计算两块区域的对应像素点灰度值的相关系数,相关系数越大,则两块图像数据的匹配程度越高。该方法的拼接效果要好一些,成功率有所提高。

目前主流的配准算法sift(scale-invariantfeaturetransform,尺度不变特征变换)具有尺度不变性,即对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声等也保持一定程度的稳定性;首先构建尺度空间,通过高斯微分函数来识别具有尺度不变性的特征点;然后过滤特征点并精准定位各个特征点;为各特征点分配方向值,生成特征点的特征向量,利用特征点的特征向量的欧氏距离作为待拼接的两个图像数据中特征点的相似性的判定度量;取待拼接图像数据1中的某个特征点,并找出其与待拼接图像数据2中欧式距离最近的前两个特征点,在这两个特征点中,如果最近的欧式距离除以次近的欧式距离小于某个比例阈值,则接受这一对匹配的特征点。

在本发明实施例的一种实施方式中,根据上述步骤101中实时获取第一预览图像数据和第二预览图像数据,进行实时图像拼接,生成第三预览图像数据。

步骤104:显示上述第一预览图像数据和上述第三预览图像数据。

在本发明实施例中,将上述第一预览图像数据和上述第三预览图像数据对应显示,例如同时显示在上述第一终端的屏幕上。

因此用户可以参照上述第三预览图像数据确认最终获得的目标图像的拍摄效果,可以选择拍照或者不拍照。因此本发明实施例可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

在本发明实施例的一种实施方式中,在上述步骤104之后,当检测到预设调参指令时,根据上述预设调参指令调整上述第一终端的摄像头的拍摄参数。

例如,若上述预设调参指令为预设提高光圈参数的指令,则根据上述预设调参指令提高上述第一终端的摄像头的光圈参数。若上述预设调参指令为预设减小焦距的指令,则根据上述预设调参指令减小上述第一终端的摄像头的焦距。上述预设调参指令并不仅限于上述示例性地描述。

在本发明实施例中,显示上述第一预览图像数据和上述第三预览图像数据,便于用户将上述第一预览图像数据和上述第三预览图像数据进行比较,根据比较结果调整上述第一终端的摄像头的拍摄参数,使后续拍摄得到的拍摄图像数据达到无缝拼接的效果,这样得到拼接效果好的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题。

步骤105:若接收到拍照指令,则分别获取上述第一终端的摄像头采集的第一拍摄图像数据和至少一个第二终端发送的第二拍摄图像数据。

上述接收到拍照指令可以是接收到用户触摸拍摄功能键的操作指令,则上述第一终端可以进行拍摄,获取第一拍摄图像数据;同时向上述至少一个第二终端发送拍照使能指令,以使上述第二终端在接收到上述拍照使能指令后触发快门事件,获取第二拍摄图像数据。

上述接收到拍照指令也可以是接收到上述至少一个第二终端中任一终端向上述第一终端和上述至少一个第二终端发送的拍照指令,则上述第一终端可以接收上述拍照指令并进行拍摄,获取第一拍摄图像数据。同样地,上述至少一个第二终端可以接收上述拍照指令并进行拍摄,获取第二拍摄图像数据。

可选地,上述分别获取上述第一终端的摄像头采集的第一拍摄图像数据和至少一个第二终端发送的第二拍摄图像数据的步骤,可以包括:向上述第一终端和上述至少一个第二终端分别发送拍摄图像数据获取请求;获取上述第一终端的摄像头基于所述拍摄图像数据获取请求所采集的第一拍摄图像数据;获取至少一个第二终端基于上述拍摄图像数据获取请求所发送的第二拍摄图像数据。

在本发明实施例中,上述各个终端通过协同拍摄,即各个终端接收到拍摄图像数据获取请求后,获取拍摄图像数据;因此可以保证上述各个终端获取的第一拍摄图像数据和第二拍摄图像数据是同时获取的,可以避免因为拍摄对象、光照、风向等因为时间不同而变化,导致各个拍摄图像数据之间的对应特征点较少,难以拼接;因此本发明实施例能够获得拼接效果更好,更协调一致的目标图像。

步骤106:将上述第一拍摄图像数据和上述第二拍摄图像数据进行图像拼接,生成目标图像。

在本发明实施例中,将上述第一拍摄图像数据和上述第二拍摄图像数据进行图像拼接,生成目标图像。具体的拼接方法可以参照上述步骤103的描述。

可选地,上述方法还包括:

将上述目标图像分别发送至上述至少一个第二终端。

在本发明实施例中,上述第一终端可以将上述目标图像分别发送给上述至少一个第二终端进行分享;因此在本发明实施例中,可以仅由上述第一终端进行步骤105,进行计算资源的合理配置。相比于各个终端分别在本地进行图像拼接,本发明实施例对图像拼接所需的计算资源要求较低,可以仅需要对一个终端配备相应计算资源即可,降低了其它终端的图像处理压力。

可以理解的是,上述第一终端也可以执行上述第二终端执行的各个步骤,同样地,上述第二终端也可以执行上述第一终端执行的各个步骤。当然,本发明实施例可以是两个第一终端之间进行上述数据传输,也可以是第一终端和第二终端之间进行上述数据传输。具体的技术方案可以参照上面的描述,在这里不再赘述。

在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

参照图3所示,本发明实施例提供了一种拍摄方法,具体可以包括步骤301-307:

步骤301:分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据。

当然在上述步骤301之前,上述方法还包括:建立上述第一终端和至少一个上述第二终端之间的通信连接。

可选地,在上述步骤301之前,上述方法还包括:控制第一终端的摄像头实时采集第一预览图像数据;将采集的至少一帧第一预览图像数据存储至预设的第一缓冲队列中;接收至少一个第二终端发送的至少一帧第二预览图像数据;将上述至少一帧第二预览图像数据存储至预设的第二缓冲队列中。

上述第一终端和上述第二终端相对于上述拍摄对象的取景范围不同,上述第一终端可以实时采集拍摄对象的第一预览图像数据;上述至少一个第二终端可以将实时采集的第二预览图像数据通过网络或者蓝牙等通信方式实时发送给上述第一终端。

目前较为成熟的图像数据拼接合成算法一般是将具有重叠区域的图像数据进行无缝拼接从而得到较高分辨率或宽视角的图像数据。故为了方便算法合成,相邻两个取景范围在中间区域可有小部分重叠。在拍摄前,可利用以下方式划分各个终端的取景范围:假设参与协同拍摄的终端(即第一终端和至少一个第二终端)的数目为n个,可先从左到右将拍摄对象的取景范围分为n个区域,且每两个区域之间留一个重叠区域,区域大小不做硬性限制。

例如图4所示的山峰和流水形式的拍摄对象,将其分为n个区域加上n-1个重叠区域。每个终端对此拍摄对象的取景范围对应拍摄对象的一个区域加上与此区域相邻的重叠区域。例如其中一个终端可以对应第一取景范围,即区域一加重叠区域一;另一终端可以对应第二取景范围,例如区域二加重叠区域一与重叠区域二,以此类推,最后一个终端的取景区域是重叠区域n-1加上区域n。上述第一终端的取景范围可以是上述区域一加重叠区域一,也可以是上述区域二加重叠区域一与重叠区域二,也可以是其它,本发明实施例对此不作限制。

示例性地,上述第一预览图像数据或上述第二预览图像数据可以是图像数据传感器的原始图像数据经过isp((imagesignalprocessing,图像数据信号处理)多道工序处理,包括去坏点、伽马校正、颜色校正、颜色增强、去噪等等算法处理,得到的yuv格式(一种通过一个亮度信号和两个色度信号表示的颜色编码格式)的图像数据。yuv格式的图像数据相比其它格式的图像数据,例如rgb(红绿蓝格式)格式的图像数据,数据量更小,便于传输。

此步骤时,上述第一终端可在本地维护n个缓存上述各个终端采集的预览图像数据的预设的缓冲队列:第一缓冲队列可以缓存第一终端的摄像头采集的至少一帧第一预览图像数据,第二缓冲队列可以缓存至少一个第二终端发送的至少一帧第二预览图像数据。需要说明的是,上述第二缓冲对列为至少一个缓冲对列,缓冲对列数目与第二终端的数目对应。当然,本发明实施例并不限于上述实施例的描述。

为了便于后续拼接同步,第二终端在采集一帧第二预览图像数据时,可同时采集对应的时间戳;并同上述一帧的第二预览图像数据一起发送给第一终端,可以由第一终端一起缓存在上述第二缓冲对列中。同样地,第一终端在采集一帧第一预览图像数据时,可同时采集对应的时间戳;并同上述一帧的第一预览图像数据一起缓存在上述第一缓冲对列中。

进一步地,上述第一预览图像数据包括上述第一预览图像数据的时间戳;上述第二预览图像数据包括上述第二预览图像数据的时间戳;

上述分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据的步骤301,可以包括:

从上述第一缓冲队列中,选取时间戳与当前时刻的时间间隔最小的第一预览图像数据;

从上述第二缓冲队列中,选取时间戳与当前时刻的时间间隔最小的第二预览图像数据,或者选取时间戳与上述第一预览图像的时间戳的时间间隔最小的第二预览图像数据。

在本发明实施例中,因为在用户确定第三预览图像数据之后,到获取目标图像之前的这段时间之内,可能光照条件、风向等发生变化,或者终端的摄像头进行了细微的偏移,导致第三预览图像数据和目标图像之间不同步;因此获取时间戳最接近当前时刻的第一预览图像数据,相比于获取其它第一预览图像数据,可以提高第三预览图像数据和目标图像之间的同步性,所见即所得。

步骤302:从上述第二预览图像数据中,确定上述第一预览图像数据的至少一个相邻预览图像数据。

在本发明实施例中,从上述第二预览图像数据中,确定上述第一预览图像数据的至少一个相邻预览图像数据。

可选地,上述步骤302可以包括:

从上述第二预览图像数据中,确定与上述第一预览图像数据存在重叠区域的至少一个相邻预览图像数据。

通过图像数据分析方法或者上述基于区域相关的拼接算法,确定两个预览图像数据是否存在重叠区域,并可以确定重叠区域的范围;还可以基于图像数据拼接方法中的匹配的特征点识别的方法,确定具有匹配特征点的两个预览图像数据存在重叠区域;本发明实施例对此不作限制。若上述第二预览图像数据中任一预览图像数据与上述第一预览图像数据存在重叠区域,则该预览图像数据为上述第一预览图像数据一个相邻预览图像数据。

通过图像数据分析方法,确定两个预览图像数据是否存在重叠区域,可以通过如写的方式:将两个预览图像数据都理解为多边形,则其重叠区域的计算,相当于求多边形的交集;通过多边形求交,获取重叠区域的点集,然后利用单应矩阵还原在原始图像数据的点集信息,从而标识出上述两个预览图像数据的重叠区域。可以理解的是,若两个预览图像数据对应的多边形没有交集,则两个预览图像数据不存在重叠区域;若两个预览图像数据对应的多边形存在交集,则两个预览图像数据存在重叠区域。

可选地,上述第一预览图像数据包括第一终端的终端编号;上述第二预览图像数据包括上述第二终端的终端编号;上述从上述第二预览图像数据中,确定上述第一预览图像数据的至少一个相邻预览图像数据的步骤302可以包括:确定上述第一终端的终端编号的至少一个相邻终端编号;将与上述相邻终端编号对应的第二预览图像数据确定为上述第一预览图像数据的相邻预览图像数据;检测上述相邻预览图像数据和上述第一预览图像数据是否存在重叠区域;若检测到上述相邻预览图像数据和上述第一预览图像数据存在重叠区域,则执行上述根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数的步骤303。

上述各个终端的终端编号的相邻关系可以对应上述各个终端的取景范围的相邻关系,可以通过用户在拍摄前根据上述相邻关系,设定各个终端的终端编号。例如参照图4所示,若某一终端的取景范围为区域二加重叠区域一与重叠区域二,则预设该终端的终端编号为2;若某一终端的取景范围为区域一加重叠区域一,则预设该终端的终端编号为1;若某一终端的取景范围为区域三加重叠区域二与重叠区域三,则预设该终端的终端编号为3。当第一终端的终端编号为2时,终端编号为3的终端采集的预览图像数据和终端编号为1的终端采集的预览图像数据都是上述第一预览图像数据的相邻预览图像数据。

进一步地,上述方法还包括:

若检测到上述相邻预览图像数据和上述第一预览图像数据不存在重叠区域,则根据上述相邻终端编号对应的方向,提示调整上述摄像头的拍照角度。

在本发明实施例中,若检测到上述相邻终端编号的相邻预览图像数据和上述第一预览图像数据不存在重叠区域,则相邻预览图像数据和上述第一预览图像数据难以拼接,即使进行拼接,拼接界面也会非常凸显,呈现不连续的严重瑕疵。因此根据上述相邻终端编号对应的方向,显示提示信息,上述提示信息用于提示用户调整上述摄像头的拍摄角度。例如,上述第一终端为终端编号2,若相邻终端编号3的相邻预览图像数据和上述第一预览图像数据不存在重叠区域,则提示调整上述摄像头的拍摄角度向与上述相邻终端编号3对应的方向移动,示例性地,即向右移动。上述相邻终端编号对应的方向可以预先设置。

若相邻终端编号3的相邻预览图像数据和上述第一预览图像数据不存在重叠区域,且相邻终端编号2的相邻预览图像数据和上述第一预览图像数据不存在重叠区域则提示调整上述摄像头的拍摄角度向与上述相邻终端编号2和3对应的方向移动,即提示需要扩大取景范围,向左向右都要扩大,可以提示将终端的摄像头向远离上述拍摄对象的方向移动,或者增加焦距等方式。

本发明实施例可以使得上述相邻预览图像数据和上述第一预览图像数据存在重叠区域,避免无法拼接或者拼接界面出现不连续的严重瑕疵的问题。

在确定与上述第一预览图像数据存在重叠区域的至少一个相邻预览图像数据之后,则可以对上述相邻预览图像数据的重叠区域和上述第一预览图像数据的重叠区域进行图像数据特征比较,根据比较结果调整上述第一终端的摄像头的拍摄参数,提高调整拍摄参数的有效性,提高目标图像的拼接效果。

步骤303:根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数。

在本发明实施例中,可以通过上述图像数据向分析方法标识出上述相邻预览图像数据和上述第一预览图像数据的重叠区域;还可以通过图像数据拼接算法寻找到上述两个预览图像数据的匹配的特征点,以多组匹配的特征点作为上述两个预览图像数据的重叠区域。

可选地,上述拍摄参数包括曝光度;上述根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数的步骤303,可以包括:获取上述第一预览图像数据中上述重叠区域的第一灰度值和上述相邻预览图像数据中上述重叠区域的第二灰度值;若上述第一灰度值和上述第二灰度值的差值大于第一预设灰度值,则降低上述第一终端的摄像头的曝光度;若上述第一灰度值和上述第二灰度值的差值小于第二预设灰度值,则提高上述第一终端的摄像头的曝光度。

上述第一灰度值或上述第二灰度值可以是对应的预览图像数据中的上述重叠区域的最大灰度值、最小灰度值、平均灰度值等。上述预设灰度值可以是一个确定值,也可以是一个相对上述第一灰度值或第二灰度值的比例值,也可以是其他形式。

若上述第一灰度值和上述第二灰度值的差值大于第一预设灰度值,则上述第一预览图像数据中的上述重叠区域相对上述相邻预览图像数据中的上述重叠区域偏亮,则可以推断出上述第一预览图像数据相对上述相邻预览图像数据整体偏亮,则需要降低上述第一终端的摄像头的曝光度。

若上述第一灰度值和上述第二灰度值的差值小于第二预设灰度值,则上述第一预览图像数据中的上述重叠区域相对上述相邻预览图像数据中的上述重叠区域偏暗,则可以推断出上述第一预览图像数据相对上述相邻预览图像数据整体偏暗,则需要提高上述第一终端的摄像头的曝光度。

因此,本发明实施例可以使得上述第一预览图像数据和上述相邻预览图像数据的亮度接近,也就是说上述第一预览图像数据与第三预览图像数据在亮度上更融洽,则后续的目标图像则不容易出现亮度不一致导致的拼接问题,提高了目标图像的拼接效果。

可选地,上述拍摄参数包括焦距;上述根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数的步骤303,可以包括:获取上述第一预览图像数据中上述重叠区域的第一特征长度和上述相邻预览图像数据中上述重叠区域的第二特征长度;若上述第一特征长度和上述第二特征长度的差值大于第一预设长度值,则减小上述第一终端的摄像头的焦距;若上述第一特征长度和上述第二特征长度的差值小于第二预设长度值,则增加上述第一终端的摄像头的焦距。

上述第一特征长度或第二特征长度可以是对应预览图像数据的重叠区域的特征长度。例如上述第一特征长度为上述第一预览图像数据的重叠区域的等面积圆的直径,则上述第二特征长度为上述第二预览图像数据的重叠区域的等面积圆的直径;例如上述第一特征长度为上述第一预览图像数据的重叠区域的两个特征点的欧拉距离;则上述第二特征长度为上述第二预览图像数据的重叠区域中,与上述两个特征点分别匹配的两个特征点的欧拉距离。上述预设长度值可以是一个确定值,也可以是一个相对上述第一特征长度值或第二特征长度的比例值,也可以是其他形式。

若上述第一特征长度和上述第二特征长度的差值大于第一预设长度值,则上述第一预览图像数据中的上述重叠区域相对上述相邻预览图像数据中的上述重叠区域尺度偏大,则可以推断出上述第一预览图像数据相对上述相邻预览图像数据整体尺度偏大,则需要减小上述第一终端的摄像头的焦距。

若上述第一特征长度和上述第二特征长度的差值小于第二预设长度值,则上述第一预览图像数据中的上述重叠区域相对上述相邻预览图像数据中的上述重叠区域尺度偏小,则可以推断出上述第一预览图像数据相对上述相邻预览图像数据整体尺度偏小,则需要增加上述第一终端的摄像头的焦距。

因此,本发明实施例可以使得上述第一预览图像数据和上述相邻预览图像数据的尺度接近,也就是说上述第一预览图像数据与第三预览图像数据在尺度上更融洽,则后续的目标图像则不容易出现尺度不一致导致的拼接问题,提高了目标图像的拼接效果。

步骤304:将上述第一预览图像数据和上述第二预览图像数据进行实时图像拼接,生成第三预览图像数据。

步骤305:显示上述第一预览图像数据和上述第三预览图像数据。

可选地,上述显示上述第一预览图像数据和上述第三预览图像数据的步骤包括:将移动终端的拍摄预览界面划分为第一显示区域和第二显示区域;在上述第一显示区域中显示上述第一预览图像数据;在上述第二显示区域中显示上述第三预览图像数据。

对于上述图2的一个第一终端和一个第二终端的应用场景而言,参照图5所示,示出了一种第一终端的拍摄预览界面。在第二显示区域,即拍摄预览界面上半部分显示第三预览图像数据,包括区域一、重叠区域和区域二;在第一显示区域,即拍摄预览界面下半部分显示第一预览图像数据,包括区域一和重叠区域。参照图6所示,示出了另一种第一终端的拍摄预览界面。在第二显示区域,即拍摄预览界面上半部分显示第三预览图像数据,包括区域一、重叠区域和区域二;在第一显示区域,即拍摄预览界面下半部分显示第一预览图像数据,包括重叠区域和区域二。

对于上述图4的第一终端和多个第二终端的应用场景而言,参照上述图7所示,示出了一种第一终端的拍摄预览界面。在第二显示区域,即拍摄预览界面上半部分显示第三预览图像数据,包括区域一、重叠区域一、区域二……重叠区域n-1、区域n;在第一显示区域,即拍摄预览界面下半部分显示第一预览图像数据,包括区域一和重叠区域一。

可选地,上述显示上述第一预览图像数据和上述第三预览图像数据的步骤包括:在移动终端的拍摄预览界面全屏显示上述第一预览图像数据;在上述拍摄预览界面的预设的第三显示区域中显示上述第三预览图像数据;其中,上述第三显示区域的面积小于上述拍摄预览界面的面积。

对于上述图2的一个第一终端和一个第二终端的应用场景而言,参照图8所示,示出了一种第一终端的拍摄预览界面。在拍摄预览界面全屏显示第一预览图像数据,包括区域一和重叠区域;在第三显示区域,即拍摄预览界面的预设中间区域显示第三预览图像数据,包括区域一、重叠区域和区域二。参照图9所示,示出了另一种第一终端的拍摄预览界面。在拍摄预览界面全屏显示第一预览图像数据,包括重叠区域和区域二;在第三显示区域,即拍摄预览界面的预设中间区域显示第三预览图像数据,包括区域一、重叠区域和区域二。

对于上述图4的第一终端和多个第二终端的应用场景而言,参照上述图10所示,示出了一种第一终端的拍摄预览界面。在拍摄预览界面全屏显示第一预览图像数据,包括区域一和重叠区域一;在第三显示区域,即拍摄预览界面的预设中间区域显示第三预览图像数据,包括区域一、重叠区域一、区域二……重叠区域n-1、区域n。

当然,上述第一终端并不限于上述示例的取景范围。

上述示例性地显示方法可以实时显示预览图像数据的拼接效果(即第三预览数据)和第一预览图像数据,便于用户通过对比图像,主动调整第一终端的摄像头的拍摄参数;当然,用户还可以确认上述第一预览图像数据是不是自己需要的拍摄效果,由此作出拍照决策,获得符合用户需求的目标图像。

步骤306:若接收到拍照指令,则分别获取上述第一终端的摄像头采集的第一拍摄图像数据和至少一个第二终端发送的第二拍摄图像数据。

步骤307:将上述第一拍摄图像数据和上述第二拍摄图像数据进行图像拼接,生成目标图像。

可选地,上述第一拍摄图像数据包括上述第一终端的终端编号;上述第二拍摄图像数据包括上述第二终端的终端编号;则上述将上述第一拍摄图像数据和上述第二拍摄图像数据进行图像拼接,生成目标图像的步骤307,可以包括:确定上述第一终端的终端编号的至少一个相邻终端编号;确定与上述相邻终端编号对应的第二拍摄图像数据为上述第一拍摄图像数据的第一相邻拍摄图像数据;将上述第一拍摄图像数据和上述第一相邻拍摄图像数据拼接,如此依次进行拼接,获取全景拍摄图像数据,即目标图像。

明显地,在将上述第一拍摄图像数据和上述第一相邻拍摄图像数据拼接为第一全景拍摄图像数据之后,确定上述相邻拍摄图像数据除上述第一拍摄图像数据以外的第二相邻拍摄图像数据,并将上述相邻拍摄图像数据和上述第一全景拍摄图像数据进行拼接;如此依次拼接,获得最终的全景拍摄图像数据,即目标图像。

因为上述第一终端需要通过确定待拼接的两个拍摄图像数据存在重叠区域才能进行拼接,而确定待拼接的拍摄图像数据不存在重叠区域后则不进行拼接,因此本发明实施例通过终端编号确定可以进行拼接的两个拍摄图像数据,避免了因为需要确定待拼接的两个拍摄图像数据是否存在重叠区域,导致计算负担过大的问题,提高了计算资源的利用率。

可以理解的是,上述第一终端也可以执行上述第二终端执行的各个步骤,同样地,上述第二终端也可以执行上述第一终端执行的各个步骤。当然,本发明实施例可以是两个第一终端之间进行上述数据传输,也可以是第一终端和第二终端之间进行上述数据传输。具体的技术方案可以参照上面的描述,在这里不再赘述。

在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题;还一方面,上述第一终端可以通过比较上述第一预览图像数据和对应的相邻预览图像数据的重叠区域,智能化地调整拍摄参数,使得调整拍摄参数更有效、更准确,同时还提高了用户体验。

参照图11所示,本发明实施例提供了一种拍摄方法,应用于第二终端,具体可以包括步骤1101-1104:

步骤1101:获取第二终端的摄像头实时采集的第二预览图像数据。

步骤1102:将上述第二预览图像数据发送至第一终端。

步骤1103:获取上述第二终端的摄像头采集的第二拍摄图像数据。

步骤1104:将上述第二拍摄图像数据发送至上述第一终端;其中,上述第二预览图像数据用于上述第一终端调整上述第一终端的摄像头的拍摄参数;上述第二预览图像数据还用于上述第一终端进行实时图像拼接,生成第三预览图像数据;上述第二拍摄图像数据用于上述第一终端进行图像拼接,生成目标图像。

可选地,上述获取上述第二终端的摄像头采集的第二拍摄图像数据的步骤1103,可以包括:

接收上述第一终端发送的拍摄图像数据获取请求;

基于上述拍摄图像数据获取请求,采集第二拍摄图像数据。

可选地,上述获取第二终端的摄像头实时采集的第二预览图像数据的步骤1101之后,还可以包括:

获取上述第二预览图像数据的拍摄参数;

上述将上述第二预览图像数据发送至第一终端的步骤,包括:

将上述第二预览图像数据和上述第二预览图像数据的拍摄参数同时发送至上述第一终端。

可选地,上述第二终端还可以包括:

接收上述第一终端发送的目标图像。

参照上述实施例中关于第二终端的描述,为避免重复,这里不再赘述。

在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

参照图12所示,本发明实施例提供了一种第一终端1200,具体可以包括:

第一预览图像获取模块1201,用于分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据;

拍摄参数调整模块1202,用于根据上述第一预览图像数据和上述第二预览图像数据,调整上述第一终端的摄像头的拍摄参数;

预览图像拼接模块1203,用于将上述第一预览图像数据和上述第二预览图像数据进行实时图像拼接,生成第三预览图像数据;

预览图像显示模块1204,用于显示上述第一预览图像数据和上述第三预览图像数据;

第一拍摄图像获取模块1205,用于若接收到拍照指令,则分别获取上述第一终端的摄像头采集的第一拍摄图像数据和至少一个第二终端发送的第二拍摄图像数据;

拍摄图像拼接模块1206,用于将上述第一拍摄图像数据和上述第二拍摄图像数据进行图像拼接,生成目标图像。

参照图13所示,在上述图12的基础上,可选地,上述拍摄参数调整模块1202可以包括:

相邻预览图像确定单元12021,用于从上述第二预览图像数据中,确定上述第一预览图像数据的至少一个相邻预览图像数据;

第一拍摄参数调整单元12022,用于根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数。

进一步地,上述拍摄参数包括曝光度;上述第一拍摄参数调整单元12022可以包括:

灰度值获取子单元,用于获取上述第一预览图像数据中上述重叠区域的第一灰度值和上述相邻预览图像数据中上述重叠区域的第二灰度值;

曝光度降低子单元,用于若上述第一灰度值和上述第二灰度值的差值大于第一预设灰度值,则降低上述第一终端的摄像头的曝光度;

曝光度提高子单元,用于若上述第一灰度值和上述第二灰度值的差值小于第二预设灰度值,则提高上述第一终端的摄像头的曝光度。

进一步地,上述拍摄参数包括焦距;上述第一拍摄参数调整单元12022可以包括:

特征长度获取子单元,用于获取上述第一预览图像数据中上述重叠区域的第一特征长度和上述相邻预览图像数据中上述重叠区域的第二特征长度;

焦距减小子单元,用于若上述第一特征长度和上述第二特征长度的差值大于第一预设长度值,则减小上述第一终端的摄像头的焦距;

焦距增加子单元,用于若上述第一特征长度和上述第二特征长度的差值小于第二预设长度值,则增加上述第一终端的摄像头的焦距。

进一步地,上述相邻预览图像确定单元12021可以包括:

第一相邻预览图像确定子单元,用于从上述第二预览图像数据中,确定与上述第一预览图像数据存在重叠区域的至少一个相邻预览图像数据。

进一步地,上述第一预览图像数据包括第一终端的终端编号;上述第二预览图像数据包括上述第二终端的终端编号;上述相邻预览图像确定单元12021可以包括:

相邻终端编号确定子单元,用于确定上述第一终端的终端编号的至少一个相邻终端编号;

第二相邻预览图像确定子单元,用于将与上述相邻终端编号对应的第二预览图像数据确定为上述第一预览图像数据的相邻预览图像数据;

重叠区域检测子单元,用于检测上述相邻预览图像数据和上述第一预览图像数据是否存在重叠区域;

重叠区域确定子单元,用于若检测到上述相邻预览图像数据和上述第一预览图像数据存在重叠区域,则执行上述根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数的步骤。

更进一步地,上述第一终端1200还可以包括:

拍摄角度提示调整模块,用于若检测到上述相邻预览图像数据和上述第一预览图像数据不存在重叠区域,则根据上述相邻终端编号对应的方向,显示提示信息;上述提示信息用于提示用户调整上述摄像头的拍摄角度。

参照图14所示,在上述图12的基础上,可选地,上述拍摄参数调整模块可以1202可以包括:

拍摄参数获取单元12023,用于获取与上述第二预览图像数据同时发送的拍摄参数;

第二拍摄参数调整单元12024,用于根据上述拍摄参数,调整上述第一终端的摄像头的拍摄参数。

可选地,上述第一拍摄图像获取模块1205可以包括:

获取请求发送单元,用于向上述第一终端和上述至少一个第二终端分别发送拍摄图像数据获取请求;

第一拍摄图像获取单元,用于获取上述第一终端的摄像头基于所述拍摄图像数据获取请求所采集的第一拍摄图像数据;

第二拍摄图像获取单元,用于获取至少一个第二终端基于上述拍摄图像数据获取请求所发送的第二拍摄图像数据。

可选地,上述第一终端1200还可以包括:

预览图像采集模块,用于控制第一终端的摄像头实时采集第一预览图像数据;

第一缓冲模块,用于将采集的至少一帧第一预览图像数据存储至预设的第一缓冲队列中;

预览图像接收模块,用于接收至少一个第二终端发送的至少一帧第二预览图像数据;

第二缓冲模块,用于将上述至少一帧第二预览图像数据存储至预设的第二缓冲队列中。

进一步地,上述第一预览图像数据包括上述第一预览图像数据的时间戳;上述第二预览图像数据包括上述第二预览图像数据的时间戳;上述第一预览图像获取模块1201可以包括:

第一选取单元,用于从上述第一缓冲队列中,选取时间戳与当前时刻的时间间隔最小的第一预览图像数据;

第二选取单元,用于从上述第二缓冲队列中,选取时间戳与当前时刻的时间间隔最小的第二预览图像数据,或者选取时间戳与上述第一预览图像的时间戳的时间间隔最小的第二预览图像数据。

可选地,上述预览图像显示模块1204可以包括:

预览界面划分单元,用于将移动终端的拍摄预览界面划分为第一显示区域和第二显示区域;

第一显示单元,用于在上述第一显示区域中显示上述第一预览图像数据;

第二显示单元,用于在上述第二显示区域中显示上述第三预览图像数据。

可选地,上述预览图像显示模块1204可以包括:

第三显示单元,用于在移动终端的拍摄预览界面全屏显示上述第一预览图像数据;

第四显示单元,用于在上述拍摄预览界面的预设的第三显示区域中显示上述第三预览图像数据;其中,上述第三显示区域的面积小于上述拍摄预览界面的面积。

可选地,上述第一终端1200还可以包括:

目标图像发送模块,用于将上述目标图像分别发送至上述至少一个第二终端。

上述第一终端能够实现图1至图10的实施例中第一终端实现的各个过程,为避免重复,这里不再赘述。

在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

本发明实施例还提供一种第一终端,包括处理器,存储器,存储在上述存储器上并可在上述处理器上运行的计算机程序,上述计算机程序被上述处理器执行时实现上述拍摄方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供一种第一计算机可读存储介质,第一计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现上述拍摄方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,上述的计算机可读存储介质,如只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

参照图15所示,本发明实施例提供了一种第二终端1500,具体可以包括:

第二预览图像获取模块1501,用于获取第二终端的摄像头实时采集的第二预览图像数据;

预览图像发送模块1502,用于将上述第二预览图像数据发送至第一终端;

第二拍摄图像获取模块1503,用于获取上述第二终端的摄像头采集的第二拍摄图像数据;

拍摄图像发送模块1504,用于将上述第二拍摄图像数据发送至上述第一终端;

其中,上述第二预览图像数据用于上述第一终端调整上述第一终端的摄像头的拍摄参数;上述第二预览图像数据还用于上述第一终端进行实时图像拼接,生成第三预览图像数据;上述第二拍摄图像数据用于上述第一终端进行图像拼接,生成目标图像。

可选地,上述第二拍摄图像获取模块1503可以包括:

获取请求接收模块,用于接收上述第一终端发送的拍摄图像数据获取请求;

第三拍摄图像获取单元,用于基于上述拍摄图像数据获取请求,采集第二拍摄图像数据。

可选地,上述第二终端1500还可以包括:

拍摄参数获取模块,用于获取上述第二预览图像数据的拍摄参数;

上述预览图像发送模块1502可以包括:

预览图像发送单元,用于将上述第二预览图像数据和上述第二预览图像数据的拍摄参数同时发送至上述第一终端。

可选地,上述第二终端1500还可以包括:

目标图像接收模块,用于接收上述第一终端发送的目标图像。

上述第二终端能够实现图11的实施例中第二终端实现的各个过程,为避免重复,这里不再赘述。

在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

本发明实施例还提供一种第二终端,包括处理器,存储器,存储在上述存储器上并可在上述处理器上运行的计算机程序,上述计算机程序被上述处理器执行时实现上述拍摄方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供一种第二计算机可读存储介质,计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现上述拍摄方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,上述的计算机可读存储介质,如只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

图16是本发明另一个实施例的第一终端的框图。图16所示的第一终端1600包括:至少一个处理器1601、存储器1602、至少一个网络接口1604、摄像头1605和其他用户接口1603。第一终端1600中的各个组件通过总线系统1605耦合在一起。可理解,总线系统1605用于实现这些组件之间的连接通信。总线系统1605除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图16中将各种总线都标为总线系统1605。

其中,用户接口1603可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。

可以理解,本发明实施例中的存储器1602可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。本发明实施例描述的系统和方法的存储器1602旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器1602存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统16021和应用程序16022。

其中,操作系统16021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序16022,包含各种应用程序,例如媒体播放器(mediaplayer)、浏览器(browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序16022中。

在本发明实施例中,第一终端1600还包括:存储在存储器上1602并可在处理器1601上运行的计算机程序,处理器1601用于:分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据;根据上述第一预览图像数据和上述第二预览图像数据,调整上述第一终端的摄像头的拍摄参数;将上述第一预览图像数据和上述第二预览图像数据进行实时图像拼接,生成第三预览图像数据;显示上述第一预览图像数据和上述第三预览图像数据;若接收到拍照指令,则分别获取上述第一终端的摄像头采集的第一拍摄图像数据和至少一个第二终端发送的第二拍摄图像数据;将上述第一拍摄图像数据和上述第二拍摄图像数据进行图像拼接,生成目标图像。

上述本发明实施例揭示的方法可以应用于处理器1601中,或者由处理器1601实现。处理器1601可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1601中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1601可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的计算机可读存储介质中。该计算机可读存储介质位于存储器1602,处理器1601读取存储器1602中的信息,结合其硬件完成上述方法的步骤。具体地,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器1601执行时实现如上述拍照方法实施例的各步骤。

可以理解的是,本发明实施例描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(applicationspecificintegratedcircuits,asic)、数字信号处理器(digitalsignalprocessing,dsp)、数字信号处理设备(dspdevice,dspd)、可编程逻辑设备(programmablelogicdevice,pld)、现场可编程门阵列(field-programmablegatearray,fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本申请上述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本发明实施例上述功能的模块(例如过程、函数等)来实现本发明实施例上述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

可选地,处理器1601还用于:从上述第二预览图像数据中,确定上述第一预览图像数据的至少一个相邻预览图像数据;根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数。

进一步地,上述拍摄参数包括曝光度;处理器1601还用于:获取上述第一预览图像数据中上述重叠区域的第一灰度值和上述相邻预览图像数据中上述重叠区域的第二灰度值;若上述第一灰度值和上述第二灰度值的差值大于第一预设灰度值,则降低上述第一终端的摄像头的曝光度;若上述第一灰度值和上述第二灰度值的差值小于第二预设灰度值,则提高上述第一终端的摄像头的曝光度。

进一步地,上述拍摄参数包括焦距;处理器1601还用于:获取上述第一预览图像数据中上述重叠区域的第一特征长度和上述相邻预览图像数据中上述重叠区域的第二特征长度;若上述第一特征长度和上述第二特征长度的差值大于第一预设长度值,则减小上述第一终端的摄像头的焦距;若上述第一特征长度和上述第二特征长度的差值小于第二预设长度值,则增加上述第一终端的摄像头的焦距。

进一步地,处理器1601还用于:从上述第二预览图像数据中,确定与上述第一预览图像数据存在重叠区域的至少一个相邻预览图像数据。

进一步地,上述第一预览图像数据包括第一终端的终端编号;上述第二预览图像数据包括上述第二终端的终端编号;处理器1601还用于:确定上述第一终端的终端编号的至少一个相邻终端编号;将与上述相邻终端编号对应的第二预览图像数据确定为上述第一预览图像数据的相邻预览图像数据;检测上述相邻预览图像数据和上述第一预览图像数据是否存在重叠区域;若检测到上述相邻预览图像数据和上述第一预览图像数据存在重叠区域,则执行上述根据上述相邻预览图像数据和上述第一预览图像数据的重叠区域,调整上述第一终端的摄像头的拍摄参数的步骤。

更进一步地,处理器1601还用于:若检测到上述相邻预览图像数据和上述第一预览图像数据不存在重叠区域,则根据上述相邻终端编号对应的方向,显示提示信息;上述提示信息用于提示用户调整上述摄像头的拍摄角度。

可选地,处理器1601还用于:获取与上述第二预览图像数据同时发送的拍摄参数;根据上述拍摄参数,调整上述第一终端的摄像头的拍摄参数。

可选地,处理器1601还用于:向上述第一终端和上述至少一个第二终端分别发送拍摄图像数据获取请求;获取上述第一终端的摄像头基于所述拍摄图像数据获取请求所采集的第一拍摄图像数据;获取至少一个第二终端基于上述拍摄图像数据获取请求所发送的第二拍摄图像数据。

可选地,处理器1601还用于:控制第一终端的摄像头实时采集第一预览图像数据;将采集的至少一帧第一预览图像数据存储至预设的第一缓冲队列中;接收至少一个第二终端发送的至少一帧第二预览图像数据;将上述至少一帧第二预览图像数据存储至预设的第二缓冲队列中。

更进一步地,上述第一预览图像数据包括上述第一预览图像数据的时间戳;上述第二预览图像数据包括上述第二预览图像数据的时间戳;处理器1601还用于:上述分别获取第一终端的摄像头实时采集的第一预览图像数据和至少一个第二终端发送的第二预览图像数据的步骤,包括:从上述第一缓冲队列中,选取时间戳与当前时刻的时间间隔最小的第一预览图像数据;从上述第二缓冲队列中,选取时间戳与当前时刻的时间间隔最小的第二预览图像数据,或者选取时间戳与上述第一预览图像的时间戳的时间间隔最小的第二预览图像数据。

可选地,处理器1601还用于:将移动终端的拍摄预览界面划分为第一显示区域和第二显示区域;在上述第一显示区域中显示上述第一预览图像数据;在上述第二显示区域中显示上述第三预览图像数据。

可选地,处理器1601还用于:在移动终端的拍摄预览界面全屏显示上述第一预览图像数据;在上述拍摄预览界面的预设的第三显示区域中显示上述第三预览图像数据;其中,上述第三显示区域的面积小于上述拍摄预览界面的面积。

可选地,处理器1601还用于:将上述目标图像分别发送至上述至少一个第二终端。

第一终端1600能够实现前述实施例中第一终端实现的各个过程,为避免重复,这里不再赘述。

在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

图17是本发明另一个实施例的第二终端的结构示意图。具体地,图17中的第二终端1700可以为手机、平板电脑、个人数字助理(personaldigitalassistant,pda)、或车载电脑等。

图17中的第二终端1700包括射频(radiofrequency,rf)电路1710、存储器1720、输入单元1730、显示单元1740、处理器1760、音频电路1770、wifi(wirelessfidelity)模块1780、电源1790和摄像头1750。

其中,输入单元1730可用于接收用户输入的数字或字符信息,以及产生与第二终端1700的用户设置以及功能控制有关的信号输入。具体地,本发明实施例中,该输入单元1730可以包括触控面板1731。触控面板1731,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1731上的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1731可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给该处理器1760,并能接收处理器1760发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1731。除了触控面板1731,输入单元1730还可以包括其他输入设备1732,其他输入设备1732可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

其中,显示单元1740可用于显示由用户输入的信息或提供给用户的信息以及第二终端1700的各种菜单界面。显示单元1740可包括显示面板1741,可选的,可以采用lcd或有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1741。

应注意,触控面板1731可以覆盖显示面板1741,形成触摸显示屏,当该触摸显示屏检测到在其上或附近的触摸操作后,传送给处理器1760以确定触摸事件的类型,随后处理器1760根据触摸事件的类型在触摸显示屏上提供相应的视觉输出。

触摸显示屏包括应用程序界面显示区及常用控件显示区。该应用程序界面显示区及该常用控件显示区的排列方式并不限定,可以为上下排列、左右排列等可以区分两个显示区的排列方式。该应用程序界面显示区可以用于显示应用程序的界面。每一个界面可以包含至少一个应用程序的图标和/或widget桌面控件等界面元素。该应用程序界面显示区也可以为不包含任何内容的空界面。该常用控件显示区用于显示使用率较高的控件,例如,设置按钮、界面编号、滚动条、电话本图标等应用程序图标等。

其中处理器1760是第二终端1700的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在第一存储器1721内的软件程序和/或模块,以及调用存储在第二存储器1722内的数据,执行第二终端1700的各种功能和处理数据,从而对第二终端1700进行整体监控。可选的,处理器1760可包括一个或多个处理单元。

在本发明实施例中,第一终端1700还包括:存储在存储器上1720并可在处理器1760上运行的计算机程序,处理器1760用于:获取第二终端的摄像头实时采集的第二预览图像数据;将上述第二预览图像数据发送至第一终端;获取上述第二终端的摄像头采集的第二拍摄图像数据;将上述第二拍摄图像数据发送至上述第一终端;其中,上述第二预览图像数据用于上述第一终端调整上述第一终端的摄像头的拍摄参数;上述第二预览图像数据还用于上述第一终端进行实时图像拼接,生成第三预览图像数据;上述第二拍摄图像数据用于上述第一终端进行图像拼接,生成目标图像。

可选地,处理器1760还用于:接收上述第一终端发送的拍摄图像数据获取请求;基于上述拍摄图像数据获取请求,采集第二拍摄图像数据。

可选地,处理器1760还用于:获取上述第二预览图像数据的拍摄参数;上述将上述第二预览图像数据发送至第一终端的步骤,包括:将上述第二预览图像数据和上述第二预览图像数据的拍摄参数同时发送至上述第一终端。

可选地,处理器1760还用于:接收上述第一终端发送的目标图像。

可见,在本发明实施例中,通过获取第一终端的摄像头实时采集的第一预览图像数据,以及至少一个第二终端采集的第二预览图像数据;根据上述各个预览图像数据,可以自动调整上述第一终端的摄像头的拍摄参数,以使协同拍照的各个终端获取的拍摄图像数据之间融洽,使得拼接界面更加柔和;因此本发明实施例一方面能够获得拼接效果好的全景的目标图像,避免了因为拼接效果不好,需要用户多次拍摄的问题;另一方面,相比于一个终端进行多次移动拍摄以获取全景拍照图像,上述各个终端仅需要进行一次成功的拍摄,因此无需用户频繁移动,也无需多次拍摄;同时也避免了在移动拍摄时由于抖动造成的目标图像拼接效果不好的问题;再一方面,本发明实施例还可以实时显示预览图像数据的拼接效果和第一预览图像数据,便于用户主动调整第一终端的摄像头的拍摄参数;当预览效果达到用户预期时再拍照,获得用户满意的目标图像,避免了因为用户不满意需要多次拍摄的问题。

本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

上述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上上述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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