拍照的方法、装置及移动终端
技术领域
本发明属于移动终端技术领域,尤其涉及一种拍照的方法、装置及移动终端。
背景技术
随着移动移动终端的飞速发展,以前需要在PC机、笔记本电脑、照相机上完成的工作,也可以在移动终端上轻松实现。
然而,在实现本发明过程中,发明人发现现有技术提供的移动终端至少存在如下问题:
在使用移动终端进行拍照的过程中,很多用户都是端正移动终端的角度,将移动终端竖直拿好,希望拍出水平的照片。但是由于感觉的缘故,拍出来很多照片还是会出现稍微的倾斜(当然了,刻意倾斜拍摄这种情况不包括在内)。
发明内容
有鉴于此,本发明实施例提供一种拍照的方法、装置及移动终端,以解决现有技术提供的移动终端,用户端正移动终端的角度,将移动终端竖直拿好后,拍出来的很多照片还是会出现稍微的倾斜的问题。
第一方面,提供一种拍照的方法,包括:
确定移动终端的当前倾斜角度;
根据所述当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域;
将所述第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片。
结合第一方面,在第一方面的第一种可能的实现方式中,根据加速度传感器在x、y、z三个空间轴上的分量值的大小确定所述移动终端的当前倾斜角度。
结合第一方面或者结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域,包括:
根据公式1、2、3和4,得到w1满足:
根据公式1、2、3和4,得到w2满足:
根据公式1、2、3和4,得到h1满足:
根据公式1、2、3和4,得到h2满足:
其中,公式1、2、3和4分别如下所示:
tanα=h1/w2 公式1
tanα=w1/h2 公式2
h1+h2=h,其中h表示所述第一照片的总长度 公式3
w1+w2=w,其中w表示所述第一照片的总宽度 公式4。
结合第一方面或者结合第一方面的第一种可能的实现方式或者结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,在所述根据所述当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域之前,还包括:
判断所述当前倾斜角度是否大于等于设定的第二角度阈值小于等于设定的第一角度阈值。
第二方面,提供一种拍照的装置,包括:
倾斜角度确定单元,用于确定移动终端的当前倾斜角度;
裁剪区域确定单元,用于根据所述倾斜角度确定单元确定的当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域;
显示单元,用于将所述第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片。
结合第二方面,在第二方面的第一种可能的实现方式中,倾斜角度确定单元根据加速度传感器在x、y、z三个空间轴上的分量值的大小确定所述移动终端的当前倾斜角度。
结合第二方面或者结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述裁剪区域确定单元,包括:
w1确定模块,用于根据公式1、2、3和4,得到w1满足:
w2确定模块,用于根据公式1、2、3和4,得到w2满足:
h1确定模块,用于根据公式1、2、3和4,得到h1满足:
h2确定模块,用于根据公式1、2、3和4,得到h2满足:
其中,公式1、2、3和4分别如下所示:
tanα=h1/w2 公式1
tanα=w1/h2 公式2
h1+h2=h,其中h表示第一照片的总长度 公式3
w1+w2=w,其中w表示第一照片的总宽度 公式4。
结合第二方面或者结合第二方面的第一种可能的实现方式或者结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述装置,还包括:
角度判断单元,用于判断所述倾斜角度确定单元确定的当前倾斜角度是否大于等于设定的第二角度阈值小于等于设定的第一角度阈值。
第三方面,提供一种移动终端,所述移动终端包括如第二方面所述的拍照的装置。
结合第三方面,在第三方面的第一种可能的实现方式中,所述移动终端为智能手机或平板电脑。
在本发明实施例,确定移动终端的当前倾斜角度后,根据所述当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域;将所述第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片,第二照片是很端正的照片,从而使得用户看到的不再是倾斜的照片而是端端正正的照片,克服了现有技术提供的移动终端,用户端正移动终端的角度,将移动终端竖直拿好后,拍出来的很多照片还是会出现稍微的倾斜的问题。
附图说明
图1是本发明拍照的方法实施例的实现流程图;
图2是本发明拍照的方法实施例中,确定的第一照片中的待裁剪区域的示意图;
图3是本发明拍照的装置实施例的结构框图;
图4是本发明移动终端实施例的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,确定移动终端的当前倾斜角度后,根据所述当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域;将所述第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片,第二照片是很端正的照片,从而使得用户看到的不再是倾斜的照片而是端端正正的照片。
以下结合具体实施例对本发明的实现进行详细描述:
实施例一
图1示出了本发明实施例一提供的拍照的方法的实现流程,详述如下:
在步骤S101中,获取移动终端的当前倾斜角度。
在本发明实施例中,用户打开移动终端的摄像头进行拍照时,移动终端可以获取自身的当前倾斜角度。
移动终端上安装有加速度传感器,根据加速度传感器在x、y、z三个空间轴上的分量值的大小确定移动终端的当前倾斜角度。
具体的,加速度传感器是三轴传感器(x、y、z三轴),用于测量移动终端的当前加速度。当移动终端处于水平静止状态的时候,移动终端只是受到重力加速度的影响,且方向是垂直向下,此时z轴上的分量值是9.8,x轴上的分量值是0,y轴上的分量值也是0。当移动终端处于倾斜状态的时候,垂直向下的重力加速度会在x、y、z三个空间轴上都存在分量值,移动终端的倾斜角度不一样,在x、y、z三个空间轴上的分量值也不一样,所以依据x、y、z三个空间轴上的分量值的大小可以确定移动终端的倾斜角度。
在步骤S102中,根据所述当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域。
在本发明实施例中,如图2所示,外边框表示在移动终端有所倾斜的时候,拍摄得到的第一照片,假设倾斜角度为α,内边框表示移动终端识别到倾斜角度α之后,进行图像裁剪处理后得到的照片区域,当然了内边框与外边框之间的三角形区域都要被裁剪掉了,但是如果倾斜角度α不大,裁剪掉的图像内容就会很少,同时还可以为用户提供端正的第二照片。如图2所示,在倾斜角度α、第一照片的总长度和第二照片的总宽度已知的情况下,确定h1、h2、w1和w2后,即可确定待裁剪区域。
根据公式1、2、3和4即可确定h1、h2、w1和w2。
其中:公式1为:tanα=h1/w2;
公式2为:tanα=w1/h2;
公式3为:h1+h2=h,其中h表示第一照片的总长度;
公式4为:w1+w2=w,其中w表示第一照片的总宽度。
根据公式1、2、3和4,即可得到
其中,第一照片是未经处理的原始照片,该原始照片是有所倾斜的照片;第二照片是对第一照片进行处理过的照片,该照片是没有倾斜角度、很端正的照片。
优选地,当倾斜角度α大于设定的第一角度阈值的时候,说明用户此时是故意以如此大角度的倾斜角度进行拍照的,那么不对拍摄得到的照片进行处理;当倾斜角度α小于设定的第二角度阈值的时候,那么对拍摄得到的照片进行处理的必要性也不大。
因此,在执行步骤S102之前,可以先判断当前倾斜角度α是否大于等于设定的第二角度阈值小于等于设定的第一角度阈值,如果是,才对拍摄得到的照片进行步骤S102以及步骤S103的处理。
其中,第一角度阈值可以设定为20度,第二角度阈值可以设定为2度,具体不做限定。
在步骤S103中,将第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片。
在本发明实施例中,裁减掉第一照片的待裁剪区域后,其它剩下的区域为非裁剪区域,将非裁剪区域的数据复制至第二照片中,并显示所述第二照片在移动终端的显示屏上,第二照片是很端正的照片,因此用户看到的是端正的照片。
本实施例,确定移动终端的当前倾斜角度后,根据所述当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域;将所述第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片,第二照片是很端正的照片,从而使得用户看到的不再是倾斜的照片而是端端正正的照片,克服了现有技术提供的移动终端,用户端正移动终端的角度,将移动终端竖直拿好后,拍出来的很多照片还是会出现稍微的倾斜的问题。
应理解,在本发明实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘或光盘等。
实施例二
图3示出了本发明实施例二提供的拍照的装置的具体结构框图,为了便于说明,仅示出了与本发明实施例相关的部分。该拍照的装置3可以是内置于移动终端中的软件单元、硬件单元或者软硬件结合的单元,该拍照的装置3包括:倾斜角度确定单元31、裁剪区域确定单元32和显示单元33。
其中,倾斜角度确定单元31,用于确定移动终端的当前倾斜角度;
裁剪区域确定单元32,用于根据所述倾斜角度确定单元确定的当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域;
显示单元33,用于将所述第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片。
进一步地,倾斜角度确定单元31根据加速度传感器在x、y、z三个空间轴上的分量值的大小确定所述移动终端的当前倾斜角度。
进一步地,所述裁剪区域确定单元32,包括:
w1确定模块,用于根据公式1、2、3和4,得到w1满足:
w2确定模块,用于根据公式1、2、3和4,得到w2满足:
h1确定模块,用于根据公式1、2、3和4,得到h1满足:
h2确定模块,用于根据公式1、2、3和4,得到h2满足:
其中,公式1、2、3和4分别如下所示:
tanα=h1/w2 公式1
tanα=w1/h2 公式2
h1+h2=h,其中h表示第一照片的总长度公式3
w1+w2=w,其中w表示第一照片的总宽度公式4。
进一步地,所述装置3,还包括:
角度判断单元,用于判断所述倾斜角度确定单元确定的当前倾斜角度是否大于等于设定的第二角度阈值小于等于设定的第一角度阈值。
本发明实施例提供的拍照的装置可以应用在前述对应的方法实施例一中,详情参见上述实施例一的描述,在此不再赘述。
实施例三
图4示出了本发明实施例三提供的移动终端的具体结构框图,为了便于说明,仅示出了与本发明实施例相关的部分。该移动终端4可以为智能手机或平板电脑,包括实施例二中所述的拍照的装置3,该拍照的装置3包括:倾斜角度确定单元31、裁剪区域确定单元32和显示单元33。
其中,倾斜角度确定单元31,用于确定移动终端的当前倾斜角度;
裁剪区域确定单元32,用于根据所述倾斜角度确定单元确定的当前倾斜角度、拍摄得到的第一照片的总长度以及所述第一照片的总宽度确定所述第一照片的待裁剪区域并裁剪掉所述待裁剪区域;
显示单元33,用于将所述第一照片中的非裁剪区域的数据复制至第二照片中,显示所述第二照片。
进一步地,倾斜角度确定单元31根据加速度传感器在x、y、z三个空间轴上的分量值的大小确定所述移动终端的当前倾斜角度。
进一步地,所述裁剪区域确定单元32,包括:
w1确定模块,用于根据公式1、2、3和4,得到w1满足:
w2确定模块,用于根据公式1、2、3和4,得到w2满足:
h1确定模块,用于根据公式1、2、3和4,得到h1满足:
h2确定模块,用于根据公式1、2、3和4,得到h2满足:
其中,公式1、2、3和4分别如下所示:
tanα=h1/w2 公式1
tanα=w1/h2 公式2
h1+h2=h,其中h表示第一照片的总长度 公式3
w1+w2=w,其中w表示第一照片的总宽度 公式4。
进一步地,所述装置3,还包括:
角度判断单元,用于判断所述倾斜角度确定单元确定的当前倾斜角度是否大于等于设定的第二角度阈值小于等于设定的第一角度阈值。
本发明实施例提供的移动终端可以应用在前述对应的方法实施例一中,详情参见上述实施例一的描述,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。