本发明涉及全景影像拍摄领域,特别涉及一种全景影像的图像采集方法及系统。
背景技术:
全景影像一般包含相机视点周围水平360度、竖直180度所有景物的图像,全景影像由于其信息量大、真实而浸入式的浏览体验等特点,被广泛应用于监控、安防、虚拟现实浏览等领域。随着无人机的广泛应用,且无人机在空中获取的全景影像与地面全景影像相比,具有视角大、无遮挡、浏览效果好等特点,已得到各行业广泛的关注应用。
目前,常用的全景影像的图像采集方式为云台相机旋转方式。云台相机旋转方式是通过在相机俯仰及水平方向上旋转相机,获取一系列图像,从而拼接成全景影像。云台相机具有俯仰方向的垂直视场角及水平方向的水平视场角。人工操作云台相机旋转,进行全景影像的图像采集时需要保证单张图像之间达到一定的重叠度,才能拼接成完整、无缺漏的全景影像,一些可以自动拍摄全景影像的装置同样需要人工预设拍摄角度。
但是,现有技术中的全景影像的图像采集方式普遍存在以下几点缺陷:
1、无法保证拼接成功率。人工操作相机旋转进行全景影像的图像采集时,难以把握图像之间的重叠度,导致降低拼接成功率。例如,引证文件1(中国发明专利申请,公开号:cn104881049a,公开日:2015.09.02)中公开的云台相机虽然可以上下旋转并移动,以使得拍摄各个方向图像,但是需要人工进行操作,因此无法保证拼接成功率。同时,应用于无人机航空全景影像时,由于受到无人机航时的限制,人工操作也难以保证图像获取的速度,从而限制了无人机航空全景影像的图像采集效率,降低拼接成功率。
2、无法保证较好的图像采集效率。现有技术中通过旋转相机的全景影像的自动图像采集装置与系统虽然可以自动采集图像并拼接全景影像,但是单张图像的各个曝光角度(即相机的俯仰角及水平角)仍然需要人工凭经验确定,因此无法在保证拼接成功率的前提下达到最高的图像采集效率,且对相机的适配性弱。例如,引证文件2(中国发明专利申请,公开号:cn103034042a,公开日:2013.04.10)及引证文件3(中国发明专利申请,公开号:cn104320581a,公开日:2015.01.28)中分别公开了全景拍摄方法,均需要人工设定每个拍摄曝光点的位置(即曝光角度),因此图像采集效率低,而且无法适配多种多样的相机,引证文件4(美国发明专利申请,公开号:us2007263995a1,公开日:2007.11.15)及引证文件5(美国发明专利申请,公开号:us2012294549a1,公开日:2012.11.22)中分别公开了通过搭载运动检测传感器的全景影像拍摄方法,但是生成的全景影像分辨率固定,若旋转的轨迹不规则,会严重影响拼接影响的质量,同样无法保证较好的图像采集效率。
3、无法确定合适的重叠度阈值。现有技术中对重叠度的考虑不够完善,全景影像需将图像投影至球面后进行拼接,拍摄角度的重叠无法准确描述全景影像的重叠度,而且没有一个合适的重叠度阈值,引证文件6(文献标题:capturingandviewinggigapixelimages,作者:jkopf,muyttendaele,odeussen,mfcohen,公开年度:2007年)的实验中使用16%的重叠度阈值,引证文件7(文献标题:全景图像获取和显示技术研究[d],作者:何鼎乾,中国人民解放军信息工程大学,公开年度:2013年)中提出至少需要30%的重叠度阈值,因此现有技术中没有给出一个统一的标准,而且也未给出如何确定合适的重叠度阈值的方法。
技术实现要素:
本发明要解决的技术问题是为了克服现有技术中全景影像的拼接成功率及图像采集效率低的缺陷,提供一种全景影像的图像采集方法及系统。
本发明是通过下述技术方案来解决上述技术问题:
一种全景影像的图像采集方法,其特点在于,所述图像采集方法包括相机俯仰方向的图像采集步骤,所述相机俯仰方向的图像采集步骤包括以下步骤:
s11、以相机俯仰角为β1拍摄第一俯仰图像,以相机俯仰角为β2且与拍摄所述第一俯仰图像时相同的相机水平角拍摄第二俯仰图像;
s12、计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度;
s13、判断所述第一重叠度是否大于或等于一重叠度阈值,所述重叠度阈值用于表征图像之间实现拼接的重叠度,若是,令相机目标俯仰角
和/或,
所述图像采集方法包括相机水平方向的图像采集步骤,所述相机水平方向的图像采集步骤包括以下步骤:
s21、以相机水平角为α1拍摄第一水平图像,以相机水平角为α2且与拍摄所述第一水平图像时相同的相机俯仰角拍摄第二水平图像;
s22、计算所述第二水平图像在所述第一水平图像上的第二重叠度;
s23、判断所述第二重叠度是否大于或等于一重叠度阈值,所述重叠度阈值用于表征图像之间实现拼接的重叠度,若是,令相机目标水平角φi为α2,相机以φi采集图像,并且结束流程,若否,减小α2,并且返回步骤s21。
在本方案中,当所述图像采集方法包括相机俯仰方向的图像采集步骤时,通过依次减小β2的方式来确定出满足预设重叠度阈值的相机俯仰角,从而在拍摄全景影像时使相机在俯仰方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置俯仰方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
在本方案中,当所述图像采集方法包括相机水平方向的图像采集步骤时,通过依次减小α2的方式来确定出满足预设重叠度阈值的相机目标水平角,从而在拍摄全景影像时使相机在水平方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置水平方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
在本方案中,当所述图像采集方法包括相机水平方向的图像采集步骤及相机水平方向的图像采集步骤时,在拍摄全景影像时使相机在俯仰方向及水平方向上均可自动确定出理想的图像采集方式,从而极大地提高了拼接成功率的同时还提高了图像采集效率。
较佳地,当所述图像采集方法包括相机俯仰方向的图像采集步骤时,所述相机俯仰方向的图像采集步骤还包括步骤s14;
在步骤s13中,相机以
s14、判断
在本方案中,当
较佳地,当所述图像采集方法包括相机俯仰方向的图像采集步骤时,在步骤s11中,拍摄起始第二俯仰图像时,β2≥β1+vfov,vfov为用于拍摄所述全景影像的相机的垂直视场角;
在步骤s13中,若否,将β2-β0赋值于β2,β0为第一减小角度,并且返回步骤s11。
较佳地,在步骤s11中,拍摄起始第二俯仰图像时,β2=β1+vfov,和/或,在步骤s13中,β0为1度。
在本方案中,当起始β2=β1+vfov时,可认为是第一重叠度几乎为0的最小β2,因此设起始β2=β1+vfov,从而节省计算量。
在本方案中,理论上β0越小输出的
较佳地,当所述图像采集方法包括相机水平方向的图像采集步骤时,在步骤s23中,若是,令相机目标水平角φi为α2,相机以φi采集图像,且令相机目标水平角间隔μi=φi-α1,相机以μi采集ni张图像,ni为目标水平拍摄张数,且ni为大于水平角阈值除以μi的最小整数。
在本方案中,使相机通过固定的目标水平角间隔及目标水平拍摄张数来自动完成在水平方向上图像采集。
较佳地,当所述图像采集方法包括相机水平方向的图像采集步骤时,在步骤s21中,拍摄起始第二水平图像时,α2≥α1+hfov,hfov为用于拍摄所述全景影像的相机的水平视场角;
在步骤s13中,若否,将α2-α0赋值于α2,α0为第二减小角度,并且返回步骤s21。
较佳地,在步骤s21中,拍摄起始第二水平图像时,α2=α1+hfov,和/或,在步骤s23中,α0为1度。
在本方案中,当起始α2=α1+hfov时,可认为是第二重叠度几乎为0的最小α2,因此设起始α2=α1+hfov,从而节省计算量。
在本方案中,理论上α0越小输出的μi越精确,但如果过小则会增加计算量,对处理单元产生负担,而目前无人机的水平方向最低控制精度一般在1度,因此应用于无人机时优选为1度。
较佳地,当所述图像采集方法包括相机俯仰方向的图像采集步骤时,所述图像采集方法还包括确定重叠度阈值步骤,所述确定重叠度阈值步骤包括以下步骤:
s31、设定第一重叠度阈值p1,并且将p1预设为相机俯仰方向的图像采集步骤中的重叠度阈值;
s32、执行相机俯仰方向的图像采集步骤来采集俯仰图像,并且将俯仰图像拼接为全景影像;
s33、若拼接成功,减小p1,并且返回步骤s31,若拼接失败,将前一次拼接成功时的p1确定为相机俯仰方向的图像采集步骤中的重叠度阈值。
在本方案中,所述确定重叠度阈值步骤为查找较佳重叠度阈值的过程,因存在各类相机及各种情景,故不会存在一个绝对适用的重叠度阈值,导致降低通用性,但在本方案中,通过所述确定重叠度阈值步骤来确定出适用于当前相机及情景的较佳重叠度阈值,因此可提高通用性,同时保证了全景影像的质量,且合适的重叠度阈值越小,即可减少计算量,因此通过确定出较佳重叠度阈值来提高图像采集效率。
较佳地,当所述图像采集方法包括相机俯仰水平方向的图像采集步骤时,所述图像采集方法还包括确定重叠度阈值步骤,所述确定重叠度阈值步骤包括以下步骤:
s31、设定第一重叠度阈值p1,并且将p1预设为相机水平方向的图像采集步骤中的重叠度阈值;
s32、执行相机水平方向的图像采集步骤来采集水平图像,并且将水平图像拼接为全景影像;
s33、若拼接成功,减小p1,并且返回步骤s31,若拼接失败,将前一次拼接成功时的p1确定为相机水平方向的图像采集步骤中的重叠度阈值。
较佳地,当所述图像采集方法包括相机俯仰方向的图像采集步骤及相机水平方向的图像采集步骤时,所述图像采集方法还包括确定重叠度阈值步骤,所述确定重叠度阈值步骤包括以下步骤:
s31、设定第一重叠度阈值p1,并且将p1预设为相机俯仰方向的图像采集步骤及相机水平方向的图像采集步骤中的重叠度阈值;
s32、执行相机俯仰方向的图像采集步骤及相机水平方向的图像采集步骤来采集俯仰图像及水平图像,并且将俯仰图像及水平图像拼接为全景影像;
s33、若拼接成功,减小p1,并且返回步骤s31,若拼接失败,将前一次拼接成功时的p1确定为相机俯仰方向的图像采集步骤及相机水平方向的图像采集步骤中的重叠度阈值。
较佳地,在步骤s33中,若拼接成功,将p1-p0赋值于p1,p0为重叠度差值,并且返回步骤s31,若拼接失败,将p1+p0确定为重叠度阈值。
较佳地,当所述图像采集方法包括相机俯仰方向的图像采集步骤时,在步骤s12中,根据图像面积计算模型来计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度;
当所述图像采集方法包括相机水平方向的图像采集步骤时,在步骤s22中,根据所述图像面积计算模型来计算所述第二水平图像在所述第一水平图像上的第二重叠度;
建立所述图像面积计算模型包括以下步骤:
s41、构建像空间坐标系s-x,y,z;
s42、设拍摄图像时相机绕y轴旋转水平角α,且绕x轴旋转俯仰角β;
s43、将图像绕x轴旋转β,且将图像投影至全景投影面;
s44、将图像在全景投影面上进行α相应的平移;
s45、计算图像中的一点对应的全景投影面上的投影点坐标,并且根据投影点坐标来计算出图像在全景投影面上的相应的面积。
现有的计算方式是将图像绕x轴旋转β,再绕y轴旋转α之后投影至全景投影面,因此得到的计算公式非常复杂,在本方案中,通过仅将图像绕x轴旋转β之后投影至全景投影面的方式来简化公式,从而大大减少计算量,提高了模型的计算效率。
较佳地,在步骤s43中,将图像上的点的坐标(x,y,z)通过以下公式求出全景投影面上的投影点(x′,y′,z′):
一种全景影像的图像采集系统,其特点在于,所述图像采集系统包括俯仰方向图像采集模块,所述俯仰方向图像采集模块包括第一相机控制模块及第一处理模块;
所述第一相机控制模块用于控制相机以相机俯仰角为β1拍摄第一俯仰图像,以相机俯仰角为β2且与拍摄所述第一俯仰图像时相同的相机水平角拍摄第二俯仰图像,并且将所述第一俯仰图像及所述第二俯仰图像发送至所述第一处理模块;
所述第一处理模块用于接收所述第一俯仰图像及所述第二俯仰图像后,计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度;
所述第一处理模块还用于判断所述第一重叠度是否大于或等于一重叠度阈值,所述重叠度阈值用于表征图像之间实现拼接的重叠度,若是,令相机目标俯仰角
和/或,
所述图像采集系统包括水平方向图像采集模块,所述水平方向图像采集模块包括第二相机控制模块及第二处理模块;
所述第二相机控制模块用于控制相机以相机水平角为α1拍摄第一水平图像,以相机水平角为α2且与拍摄所述第一水平图像时相同的相机俯仰角拍摄第二水平图像,并且将所述第一水平图像及所述第二水平图像发送至所述第二处理模块;
所述第二处理模块用于接收所述第一水平图像及所述第二水平图像后,计算所述第二水平图像在所述第一水平图像上的第二重叠度;
所述第二处理模块还用于判断所述第二重叠度是否大于或等于一重叠度阈值,所述重叠度阈值用于表征图像之间实现拼接的重叠度,若是,令相机目标水平角φi为α2,调用所述第二相机控制模块控制相机以φi采集图像,若否,减小α2,并且调用所述第二相机控制模块。
在本方案中,当所述图像采集系统包括俯仰方向图像采集模块时,通过依次减小β2的方式来确定出满足预设重叠度阈值的相机俯仰角,从而在拍摄全景影像时使相机在俯仰方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置俯仰方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
在本方案中,当所述图像采集系统包括水平方向图像采集模块时,通过依次减小α2的方式来确定出满足预设重叠度阈值的相机目标水平角,从而在拍摄全景影像时使相机在水平方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置水平方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
在本方案中,当所述图像采集系统包括俯仰方向图像采集模块及水平方向图像采集模块时,在拍摄全景影像时使相机在俯仰方向及水平方向上均可自动确定出理想的图像采集方式,从而极大地提高了拼接成功率的同时还提高了图像采集效率。
较佳地,当所述图像采集系统包括俯仰方向图像采集模块时,所述第一处理模块调用所述第一相机控制模块控制相机以
在本方案中,当
较佳地,当所述图像采集系统包括俯仰方向图像采集模块时,拍摄起始第二俯仰图像时,β2≥β1+vfov,vfov为用于拍摄所述全景影像的相机的垂直视场角;
所述第一处理模块还用于若第一重叠度小于所述重叠度阈值时,将β2-β0赋值于β2,β0为第一减小角度,并且调用所述第一相机控制模块。
较佳地,拍摄起始第二俯仰图像时,β2=β1+vfov;和/或,β0为1度。
在本方案中,当起始β2=β1+vfov时,可认为是第一重叠度几乎为0的最小β2,因此设起始β2=β1+vfov,从而节省计算量。
在本方案中,理论上β0越小输出的
较佳地,当所述图像采集系统包括水平方向图像采集模块时,所述第二处理模块调用所述第二相机控制模块控制相机以φi采集图像之后,还用于令相机目标水平角间隔μi=α2-α1,调用所述第二相机控制模块控制相机以μi拍摄ni张图像,ni为目标水平拍摄张数,且ni为大于水平角阈值除以μi的最小整数。
在本方案中,使相机通过固定的目标水平角间隔及目标水平拍摄张数来自动完成在水平方向上图像采集。
较佳地,当所述图像采集系统包括水平方向图像采集模块时,拍摄起始第二水平图像时,α2≥α1+hfov,hfov为用于拍摄所述全景影像的相机的水平视场角;
所述第二处理模块还用于若第二重叠度小于所述重叠度阈值时,将α2-α0赋值于α2,α0为第二减小角度,并且调用所述第二相机控制模块。
较佳地,拍摄起始第二水平图像时,α2=α1+hfov;和/或,α0为1度。
在本方案中,当起始α2=α1+hfov时,可认为是第二重叠度几乎为0的最小α2,因此设起始α2=α1+hfov,从而节省计算量。
在本方案中,理论上α0越小输出的μi越精确,但如果过小则会增加计算量,对第二处理单元产生负担,而目前无人机的水平方向最低控制精度一般在1度,因此应用于无人机时优选为1度。
较佳地,当所述图像采集系统包括俯仰方向图像采集模块时,所述图像采集系统还包括重叠度阈值确定模块;
所述重叠度阈值确定模块用于设定第一重叠度阈值p1,并且将p1预设为调用所述俯仰方向图像采集模块时的重叠度阈值;
所述重叠度阈值确定模块还用于调用所述俯仰方向图像采集模块以采集俯仰图像,并且将俯仰图像拼接为全景影像,若拼接成功,减小p1,并且调用所述俯仰方向图像采集模块,若拼接失败,将前一次拼接成功时的p1确定为调用所述俯仰方向图像采集模块时的重叠度阈值。
在本方案中,所述重叠度阈值确定模块用于查找较佳重叠度阈值,因存在各类相机及各种情景,故不会存在一个绝对适用的重叠度阈值,导致降低通用性,但在本实施例中,通过重叠度阈值确定模块来确定出适用于当前相机及情景的较佳重叠度阈值,因此可提高通用性,同时保证了全景影像的质量,且合适的重叠度阈值越小,即可减少计算量,因此通过确定出较佳重叠度阈值来提高图像采集效率。
较佳地,当所述图像采集系统包括水平方向图像采集模块时,所述图像采集系统还包括重叠度阈值确定模块;
所述重叠度阈值确定模块用于设定第一重叠度阈值p1,并且将p1预设为调用所述水平方向图像采集模块时的重叠度阈值;
所述重叠度阈值确定模块还用于调用所述水平方向图像采集模块以采集水平图像,并且将水平图像拼接为全景影像,若拼接成功,减小p1,并且调用所述水平方向图像采集模块,若拼接失败,将前一次拼接成功时的p1确定为调用所述水平方向图像采集模块时的重叠度阈值。
较佳地,当所述图像采集系统包括俯仰方向图像采集模块及水平方向图像采集模块时,所述图像采集系统还包括重叠度阈值确定模块;
所述重叠度阈值确定模块用于设定第一重叠度阈值p1,并且将p1预设为调用所述俯仰方向图像采集模块及所述水平方向图像采集模块时的重叠度阈值;
所述重叠度阈值确定模块还用于调用所述俯仰方向图像采集模块及所述水平方向图像采集模块以采集俯仰图像及水平图像,并且将俯仰图像及水平图像拼接为全景影像,若拼接成功,减小p1,并且调用所述俯仰方向图像采集模块及所述水平方向图像采集模块,若拼接失败,将前一次拼接成功时的p1确定为调用所述俯仰方向图像采集模块及所述水平方向图像采集模块时的重叠度阈值。
较佳地,所述重叠度阈值确定模块还用于若拼接成功,将p1-p0赋值于p1,p0为重叠度差值,并且将p1重新预设为重叠度阈值,若拼接失败,将p1+p0确定为重叠度阈值。
较佳地,当所述图像采集系统包括俯仰方向图像采集模块时,所述第一处理模块用于根据图像面积计算模型来计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度;
当所述图像采集系统包括水平方向图像采集模块时,所述第二处理模块用于根据所述图像面积计算模型来计算所述第二水平图像在所述第一水平图像上的第二重叠度;
所述图像面积计算模型的建立组件包括:
第一建立组件,用于构建像空间坐标系s-x,y,z;
第二建立组件,用于设拍摄图像时相机绕y轴旋转水平角α,且绕x轴旋转俯仰角β;
第三建立组件,用于将图像绕x轴旋转β,且将图像投影至全景投影面;
第四建立组件,用于将图像在全景投影面上进行α相应的平移;
第五建立组件,用于计算图像中的一点对应的全景投影面上的投影点坐标,并且根据投影点坐标来计算出图像在全景投影面上的相应的面积。
现有的计算方式是将图像绕x轴旋转β,再绕y轴旋转α之后投影至全景投影面,因此得到的计算公式非常复杂,在本方案中,通过仅将图像绕x轴旋转β之后投影至全景投影面的方式来简化公式,从而大大减少计算量,提高了模型的计算效率。
较佳地,将图像上的点的坐标(x,y,z)通过以下公式求出全景投影面上的投影点(x′,y′,z′):
在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
本发明的积极进步效果在于:
本发明通过自动输出合适的相机俯仰角及相机水平角的方式实现了全景影像的图像采集的自动化,无需人工控制相机或凭经验来确定各个曝光角度,从而提高了拼接成功率的同时还提高了图像采集效率。
本发明还通过查找理想的重叠度阈值的方式来确定满足当前情景的重叠度阈值,可根据不同的情景及相机类型来提供较佳的方案。
本发明可适用于各种相机,通用性强,降低了对采集平台性能的限制,从而降低了用于拍摄全景影像的设备成本,使用户以较低的设备成本来获得较好素质的影像数据。
附图说明
图1为本发明实施例1的全景影像的图像采集方法中相机俯仰方向的图像采集步骤的流程图。
图2为本发明实施例2的全景影像的图像采集方法中相机水平方向的图像采集步骤的流程图。
图3为本发明实施例3的全景影像的图像采集方法中相机俯仰方向的图像采集步骤的流程图。
图4为本发明实施例3的全景影像的图像采集方法中相机水平方向的图像采集步骤的流程图。
图5为本发明实施例3的全景影像的图像采集方法中确定重叠度阈值步骤的流程图。
图6为本发明实施例3的全景影像的图像采集方法中建立图像面积计算模型步骤的流程图。
图7为本发明实施例3的像空间坐标系及图像投影的示意图。
图8为本发明的重叠度定义的示意图。
图9为本发明实施例4的全景影像的图像采集系统的结构示意图。
图10为本发明实施例5的全景影像的图像采集系统的结构示意图。
图11为本发明实施例6的全景影像的图像采集系统的结构示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
如图1所示,实施例1提供一种全景影像的图像采集方法,所述图像采集方法包括相机俯仰方向的图像采集步骤,所述相机俯仰方向的图像采集步骤包括以下步骤:
步骤101、以相机俯仰角为β1拍摄第一俯仰图像,以相机俯仰角为β2且与拍摄第一俯仰图像时相同的相机水平角拍摄第二俯仰图像。
在本步骤中,β2≥β1+vfov,vfov为用于拍摄所述全景影像的相机的垂直视场角,vfov决定于相机自身的相关参数。
步骤102、计算第二俯仰图像在第一俯仰图像上的第一重叠度。
在本步骤中,当相机俯仰角的变化值大于或等于vfov时,可认为第一俯仰图像与第二俯仰图像之间无重叠,因此起始第二俯仰图像在第一俯仰图像上的第一重叠度几乎为0。为避免计算第一重叠度时产生误差,需将拍摄第一俯仰图像与拍摄第二俯仰图像时的相机水平角调整至相同。
在本步骤中,重叠度的定义可参考图8所示,其中100、300分别为图像a、b在全景投影面的投影,200为图像b在图像a上的重叠度,其定义为式5。
式5:
其中,s(imagea)指图像a的面积,s(imagea∩imageb)指图像a与图像b的重叠部分面积。
步骤103、判断所述第一重叠度是否大于或等于一重叠度阈值,若是,执行步骤104,若否,执行步骤105。
在本步骤中,所述重叠度阈值用于表征图像之间实现拼接的重叠度。
步骤104、令相机目标俯仰角
步骤105、将β2-β0赋值于β2。执行步骤105之后,返回步骤101。
在本步骤中,β0为第一减小角度,本实施例中并不具体限定β0的数值,可根据实际情况来进行相应的调整。
在本实施例中,从起始第一重叠度几乎为0的β2开始,通过依次降低β2的方式来确定出满足预设重叠度阈值的相机俯仰角,从而在拍摄全景影像时使相机在俯仰方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置俯仰方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
实施例2
如图2所示,实施例2提供一种全景影像的图像采集方法,所述图像采集方法包括相机水平方向的图像采集步骤,所述相机水平方向的图像采集步骤包括以下步骤:
步骤201、以相机水平角为α1拍摄第一水平图像,以相机水平角为α2且与拍摄第一水平图像时相同的相机俯仰角拍摄第二水平图像。
在本步骤中,α2≥α1+hfov,hfov为用于拍摄所述全景影像的相机的水平视场角,hfov决定于相机自身的相关参数。
步骤202、计算第二水平图像在第一水平图像上的第二重叠度。
在本步骤中,当相机水平角的变化值大于或等于hfov时,可认为第一水平图像与第二水平图像之间无重叠,因此起始第二水平图像在第一水平图像上的第二重叠度几乎为0。为避免计算第二重叠度时产生误差,需将拍摄第一水平图像与拍摄第二水平图像时的相机俯仰角调整至相同。
在本步骤中,重叠度的定义可参考图8所示,其中100、300分别为图像a、b在全景投影面的投影,200为图像b在图像a上的重叠度,其定义为式5。
式5:
其中,s(imagea)指图像a的面积,s(imagea∩imageb)指图像a与图像b的重叠部分面积。
步骤203、判断所述第二重叠度是否大于或等于一重叠度阈值,若是,执行步骤204,若否,执行步骤205。
在本步骤中,所述重叠度阈值用于表征图像之间实现拼接的重叠度。
步骤204、令相机目标水平角φi为α2,相机以φi采集图像。
步骤205、将α2-α0赋值于α2。执行步骤205之后,返回步骤201。
在本步骤中,α0为第二减小角度,本实施例中并不具体限定α0的数值,可根据实际情况来进行相应的调整。
在本实施例中,从起始第二重叠度几乎为0的α2开始,通过依次降低α2的方式来确定出满足预设重叠度阈值的相机水平角,从而在拍摄全景影像时使相机在水平方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置水平方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
实施例3
实施例3提供一种全景影像的图像采集方法,所述图像采集方法包括相机俯仰方向的图像采集步骤、相机水平方向的图像采集步骤及确定重叠度阈值步骤,在本实施例中,所述图像采集方法应用于无人机的全景影像拍摄中,特别是应用于通过在同一地点旋转单台相机来拍摄全景影像的无人机中,但并不仅限于此应用场景,也可应用于移动终端或单反相机的全景影像拍摄等,均可根据用户需求来选择。
具体地,如图3所示,所述相机俯仰方向的图像采集步骤包括以下步骤:
步骤101、以相机俯仰角为β1拍摄第一俯仰图像,以相机俯仰角为β2且与拍摄第一俯仰图像时相同的相机水平角拍摄第二俯仰图像。
在本步骤中,β2=β1+vfov,vfov为用于拍摄所述全景影像的相机的垂直视场角,vfov决定于相机自身的相关参数。
步骤102、计算第二俯仰图像在第一俯仰图像上的第一重叠度。
在本步骤中,当相机俯仰角的变化值大于或等于vfov时,可认为第一俯仰图像与第二俯仰图像之间无重叠,因此起始第二俯仰图像在第一俯仰图像上的第一重叠度几乎为0。为避免计算第一重叠度时产生误差,需将拍摄第一俯仰图像与拍摄第二俯仰图像时的相机水平角调整至相同。
步骤103、判断所述第一重叠度是否大于或等于一重叠度阈值,若是,执行步骤104,若否,执行步骤105。
在本步骤中,所述重叠度阈值用于表征图像之间实现拼接的重叠度,所述重叠度阈值用户可结合实际情景及经验来预设,建议先预设为较大的数值,在本实施例中,将所述重叠度阈值预设为30%,但并不仅限于此数值。
步骤104、令相机目标俯仰角
在本步骤中,循环过程中可生成多个不同的
步骤105、将β2-β0赋值于β2。执行步骤105之后,返回步骤101。
在本步骤中,β0为第一减小角度,在本实施例中β0为1度,理论上β0越小输出的
在本实施例中,从起始第一重叠度几乎为0的β2开始,通过依次降低β2的方式来确定出满足预设重叠度阈值的相机俯仰角,当起始β2=β1+vfov时,可认为是第一重叠度几乎为0的最小β2,因此设起始β2=β1+vfov,从而节省计算量,但并不仅限于此数值,也可以设起始β2>β1+vfov,均可根据实际情况来进行选择。
步骤106、判断
在本步骤中,考虑到无人机硬件的限制,所述俯仰角阈值设为90度,但并不仅限于此数值,也可根据实际情况来进行相应的调整。
步骤107、相机停止采集。
在本步骤中,当
步骤108、将
在本步骤中,当
如图4所示,所述相机水平方向的图像采集步骤包括以下步骤:
步骤201、以相机俯仰角为
在本步骤中,α2=α1+hfov,hfov为用于拍摄所述全景影像的相机的水平视场角,hfov决定于相机自身的相关参数。通过所述相机俯仰方向的图像采集步骤确定出
步骤202、计算第二水平图像在第一水平图像上的第二重叠度。
在本步骤中,当相机水平角的变化值大于或等于hfov时,可认为第一水平图像与第二水平图像之间无重叠,因此起始第二水平图像在第一水平图像上的第二重叠度几乎为0。为避免计算第二重叠度时产生误差,需将拍摄第一水平图像与拍摄第二水平图像时的相机俯仰角调整至相同。
步骤203、判断所述第二重叠度是否大于重叠度阈值,若是,执行步骤2041,若否,执行步骤205。
在本步骤中,所述重叠度阈值采用所述相机俯仰方向的图像采集步骤中的重叠度阈值。
步骤2041、令相机目标水平角间隔μi=α2-α1,相机以μi采集ni张图像。
在本步骤中,ni为目标水平拍摄张数,且ni为大于水平角阈值除以μi的最小整数,相机通过固定的目标水平角间隔及目标水平拍摄张数来自动完成在水平方向上图像采集。在本实施例中,所述水平角阈值为360度,即在水平方向上旋转一圈,但也可根据实际情况来选择在水平方向上旋转的角度。
步骤205、将α2-α0赋值于α2。执行步骤205之后,返回步骤201。
在本步骤中,α0为第二减小角度,在本实施例中α0为1度,理论上α0越小输出的μi越精确,但如果过小则会增加计算量,对处理单元产生负担,而目前无人机的水平方向最低控制精度一般在1度,因此本实施例中优选为1度,但并不具体限定α0的数值,可根据实际情况来进行相应的调整。
在本实施例中,从起始第二重叠度几乎为0的α2开始,通过依次降低α2的方式来确定出满足预设重叠度阈值的相机水平角间隔,当起始α2=α1+hfov时,可认为是第二重叠度几乎为0的最小α2,因此设起始α2=α1+hfov,从而节省计算量,但并不仅限于此数值,也可以设起始α2>α1+hfov,均可根据实际情况来进行选择。
如图5所示,所述确定重叠度阈值步骤包括以下步骤:
步骤301、输入第一重叠度阈值p1,并且将p1预设为相机俯仰方向的图像采集步骤及相机水平方向的图像采集步骤中的重叠度阈值。
在本步骤中,第一重叠度阈值p1为用户起始预设的重叠度阈值。
步骤302、依次执行相机俯仰方向的图像采集步骤及相机水平方向的图像采集步骤来采集俯仰图像及水平图像,并且将俯仰图像及水平图像拼接为全景影像。
步骤303、判断拼接是否成功,若拼接成功,执行步骤304,若拼接失败,执行步骤305。
步骤304、将p1-p0赋值于p1。执行步骤304之后,返回步骤301。
在本步骤中,p0为重叠度差值,在本实施例中,虽然不具体限定p0的数值,但考虑到每次循环需要庞大的计算量,因此可将p0设定为5%。
在本步骤中,若拼接成功,则表示此重叠度阈值还有可减小的余地,因此再次减小重叠度阈值并进行循环。
步骤305、将p1+p0确定为相机俯仰方向的图像采集步骤及相机水平方向的图像采集步骤中的重叠度阈值。
在本步骤中,若拼接失败,则表示此重叠度阈值已达到极限,因此将前一个重叠度阈值,即p1+p0确定为较佳重叠度阈值。
在本实施例中,所述确定重叠度阈值步骤为查找较佳重叠度阈值的过程,因存在各类相机及各种情景,故不会存在一个绝对适用的重叠度阈值,导致降低通用性,但在本实施例中,通过所述确定重叠度阈值步骤来确定出适用于当前相机及情景的较佳重叠度阈值,因此可提高通用性,同时保证了全景影像的质量,且合适的重叠度阈值越小,即可减少计算量,因此通过确定出较佳重叠度阈值来提高图像采集效率。
在本实施例的步骤102中,根据图像面积计算模型来计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度。在本实施例的步骤202中,根据所述图像面积计算模型来计算所述第二水平图像在所述第一水平图像上的第二重叠度。
以下具体说明建立所述图像面积计算模型的步骤。
如图6所示,建立所述图像面积计算模型包括以下步骤:
步骤401、构建像空间坐标系s-x,y,z。
在本步骤中,建立图像面积计算模型需输入的数据为相机原始图像的像素数(w,h)、焦距f、相机水平角α及相机俯仰角β,其中α∈(-π,π],β∈[-π/2,π/2]。
根据原始图像的像素数(w,h),其中w和h分别为图像的宽度和高度(像素),构建像平面坐标系ij,再构建像空间坐标系s-x,y,z,满足式1的对应关系。
式1:
步骤402、设拍摄图像时相机绕y轴旋转水平角α,且绕x轴旋转俯仰角β。
在本步骤中,如图7所示,拍摄图像时,设相机会绕y轴及x轴分别旋转水平角α及俯仰角β。
步骤403、将图像绕x轴旋转β,且将图像投影至全景投影面。
在本步骤中,如图7所示,因为图像在全景投影面上的投影形状与水平角α无关,所以可仅将图像绕x轴旋转β,且将图像投影至全景投影面,a为投影前图像,b为投影,得到式2,其中s-x,y,z为图像的像空间坐标系坐标。
式2:
现有的计算方式是将图像绕x轴旋转β,再绕y轴旋转α之后投影至全景投影面,因此得到的计算公式非常复杂,在本实施例中,通过仅将图像绕x轴旋转β之后投影至全景投影面的方式来简化公式,从而大大减少计算量,提高了模型的计算效率。
设θ和
式3:
步骤404、将图像在全景投影面上进行α相应的平移。
在本步骤中,相机绕y轴旋转水平角α可以视为在全景投影面上沿θ方向平移,得到像片在全景投影面上的投影,则有θ=θ+α,即将θ+α赋值于θ。
步骤405、计算图像中的一点对应的全景投影面上的投影点坐标,并且根据投影点坐标来计算出图像在全景投影面上的相应的面积。
在本步骤中,经过式2、式3及步骤405的计算,可以得到视场角为fov,拍摄方向分别为α、β的相机拍摄图像在宽高分别为w和h的全景投影面上的以角度方式存储的投影b,然而实际的全景影像以像素坐标存储,所以需要将θ和
式4:
通过式4得到的(xp,yp)即为拍摄图像上的一点对应的全景投影面上的投影点坐标,这些坐标的组合构成拍摄影像在全景投影面上的投影,进而可求出投影的面积。
全景影像得以拼接的必要条件是像片之间的重叠度必须达到某一重叠度阈值,此处重叠度指两张像片在全景投影面的重叠度,如图8所示,其中100、300分别为图像a、b在全景投影面的投影,200为图像b在图像a上的重叠度,其定义为式5。
式5:
其中,s(imagea)指图像a的面积,s(imagea∩imageb)指图像a与图像b的重叠部分面积,因此可通过所述图像面积计算模型来计算出第一重叠度及第二重叠度。
本实施例提供的全景影像的图像采集方法通过自动输出合适的相机俯仰角及相机水平角的方式实现了全景影像的图像采集的自动化,无需人工控制相机或凭经验来确定各个曝光角度,从而提高了拼接成功率的同时还提高了图像采集效率。
本实施例提供的全景影像的图像采集方法还通过查找理想的重叠度阈值的方式来确定满足当前情景的重叠度阈值,可根据不同的情景及相机类型来提供较佳的方案。
本实施例提供的全景影像的图像采集方法可适用于各种相机,通用性强,降低了对采集平台性能的限制,从而降低了用于拍摄全景影像的设备成本,使用户以较低的设备成本来获得较好素质的影像数据。
实施例4
如图9所示,实施例4提供一种全景影像的图像采集系统1,全景影像的图像采集系统1包括俯仰方向图像采集模块2,俯仰方向图像采集模块2包括第一相机控制模块21及第一处理模块22。
具体地,第一相机控制模块21用于控制相机以相机俯仰角为β1拍摄第一俯仰图像,以相机俯仰角为β2且与拍摄第一俯仰图像时相同的相机水平角拍摄第二俯仰图像,β2≥β1+vfov,vfov为用于拍摄所述全景影像的相机的垂直视场角,vfov决定于相机自身的相关参数,并且将所述第一俯仰图像及所述第二俯仰图像发送至第一处理模块22。
第一处理模块22用于接收所述第一俯仰图像及所述第二俯仰图像后,计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度。
重叠度的定义可参考图8所示,其中100、300分别为图像a、b在全景投影面的投影,200为图像b在图像a上的重叠度,其定义为式5。
式5:
其中,s(imagea)指图像a的面积,s(imagea∩imageb)指图像a与图像b的重叠部分面积。
在本实施例中,当相机俯仰角的变化值大于或等于vfov时,可认为第一俯仰图像与第二俯仰图像之间无重叠,因此起始第二俯仰图像在第一俯仰图像上的第一重叠度几乎为0。为避免计算第一重叠度时产生误差,需将拍摄第一俯仰图像与拍摄第二俯仰图像时的相机水平角调整至相同。
第一处理模块22还用于判断所述第一重叠度是否大于或等于一重叠度阈值,若是,令相机目标俯仰角
在本实施例中,从起始第一重叠度几乎为0的β2开始,通过依次降低β2的方式来确定出满足预设重叠度阈值的相机俯仰角,从而在拍摄全景影像时使相机在俯仰方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置俯仰方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
实施例5
如图10所示,实施例5提供一种全景影像的图像采集系统1,全景影像的图像采集系统1包括水平方向图像采集模块3,水平方向图像采集模块3包括第二相机控制模块31及第二处理模块32。
具体地,第二相机控制模块31用于控制相机以相机水平角为α1拍摄第一水平图像,以相机水平角为α2且与拍摄第一水平图像时相同的相机俯仰角拍摄第二水平图像,α2≥α1+hfov,hfov为用于拍摄所述全景影像的相机的水平视场角,hfov决定于相机自身的相关参数,并且将所述第一水平图像及所述第二水平图像发送至第二处理模块32。
第二处理模块32用于接收所述第一水平图像及所述第二水平图像后,计算所述第二水平图像在所述第一水平图像上的第二重叠度。
重叠度的定义可参考图8所示,其中100、300分别为图像a、b在全景投影面的投影,200为图像b在图像a上的重叠度,其定义为式5。
式5:
其中,s(imagea)指图像a的面积,s(imagea∩imageb)指图像a与图像b的重叠部分面积。
在本实施例中,当相机水平角的变化值大于或等于hfov时,可认为第一水平图像与第二水平图像之间无重叠,因此起始第二水平图像在第一水平图像上的第二重叠度几乎为0。为避免计算第二重叠度时产生误差,需将拍摄第一水平图像与拍摄第二水平图像时的相机俯仰角调整至相同。
第二处理模块32还用于判断所述第二重叠度是否大于或等于一重叠度阈值,若是,令相机目标水平角φi为α2,调用第二相机控制模块31控制相机以φi采集图像,若否,将α2-α0赋值于α2,α0为第二减小角度,并且调用第二相机控制模块31,本实施例中并不具体限定α0的数值,可根据实际情况来进行相应的调整。在本实施例中,所述重叠度阈值用于表征图像之间实现拼接的重叠度。
在本实施例中,从起始第二重叠度几乎为0的α2开始,通过依次降低α2的方式来确定出满足预设重叠度阈值的相机水平角,从而在拍摄全景影像时使相机在水平方向上自动确定出理想的图像采集方式,无需人工控制相机或凭经验来设置水平方向的各个曝光角度,因此提高了拼接成功率的同时还提高了图像采集效率。
实施例6
如图11所示,实施例6提供一种全景影像的图像采集系统1,全景影像的图像采集系统1包括俯仰方向图像采集模块2、水平方向图像采集模块3及重叠度阈值确定模块4,俯仰方向图像采集模块2包括第一相机控制模块21及第一处理模块22,水平方向图像采集模块3包括第二相机控制模块31及第二处理模块32,在本实施例中,所述图像采集系统设置于无人机上,应用于无人机的全景影像拍摄中,特别是应用于通过在同一地点旋转单台相机来拍摄全景影像的无人机中,但并不仅限于此应用场景,也可应用于移动终端或单反相机的全景影像拍摄等,均可根据用户需求来选择。
第一相机控制模块用于控制相机以相机俯仰角为β1拍摄第一俯仰图像,以相机俯仰角为β2且与拍摄第一俯仰图像时相同的相机水平角拍摄第二俯仰图像,并且将所述第一俯仰图像及所述第二俯仰图像发送至所述第一处理模块,在本实施例中,β2=β1+vfov,vfov为用于拍摄所述全景影像的相机的垂直视场角,vfov决定于相机自身的相关参数。
第一处理模块用于接收所述第一俯仰图像及所述第二俯仰图像后,计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度。在本实施例中,当相机俯仰角的变化值大于或等于vfov时,可认为第一俯仰图像与第二俯仰图像之间无重叠,因此起始第二俯仰图像在第一俯仰图像上的第一重叠度几乎为0。为避免计算第一重叠度时产生误差,需将拍摄第一俯仰图像与拍摄第二俯仰图像时的相机水平角调整至相同。
第一处理模块还用于判断所述第一重叠度是否大于或等于一重叠度阈值,若是,令相机目标俯仰角
在本实施例中,所述重叠度阈值用于表征图像之间实现拼接的重叠度,所述重叠度阈值用户可结合实际情景及经验来预设,建议先预设为较大的数值,在本实施例中,将所述重叠度阈值预设为30%,但并不仅限于此数值。
在本实施例中β0为1度,理论上β0越小输出的
在本实施例中,从起始第一重叠度几乎为0的β2开始,通过依次降低β2的方式来确定出满足预设重叠度阈值的相机俯仰角,当起始β2=β1+vfov时,可认为是第一重叠度几乎为0的最小β2,因此设起始β2=β1+vfov,从而节省计算量,但并不仅限于此数值,也可以设起始β2>β1+vfov,均可根据实际情况来进行选择。
第一处理模块调用第一相机控制模块控制相机以
在本实施例中,考虑到无人机硬件的限制,所述俯仰角阈值设为90度,但并不仅限于此数值,也可根据实际情况来进行相应的调整。当
第二相机控制模块用于控制相机以相机俯仰角为
在本实施例中,α2=α1+hfov,hfov为用于拍摄所述全景影像的相机的水平视场角,hfov决定于相机自身的相关参数。通过所述俯仰方向图像采集模块确定出
第二处理模块用于接收所述第一水平图像及所述第二水平图像后,计算所述第二水平图像在所述第一水平图像上的第二重叠度。在本实施例中,当相机水平角的变化值大于或等于hfov时,可认为第一水平图像与第二水平图像之间无重叠,因此起始第二水平图像在第一水平图像上的第二重叠度几乎为0。
第二处理模块还用于判断所述第二重叠度是否大于所述重叠度阈值,若是,令相机目标水平角间隔μi=α2-α1,调用第二相机控制模块控制相机以μi采集ni张图像,ni为目标水平拍摄张数,且ni为大于水平角阈值除以μi的最小整数,若否,将α2-α0赋值于α2,α0为第二减小角度,并且调用第二相机控制模块。
相机通过固定的目标水平角间隔及目标水平拍摄张数来自动完成在水平方向上图像采集。在本实施例中,所述水平角阈值为360度,即在水平方向上旋转一圈,但也可根据实际情况来选择在水平方向上旋转的角度。
在本实施例中α0为1度,理论上α0越小输出的μi越精确,但如果过小则会增加计算量,对第二处理单元产生负担,而目前无人机的水平方向最低控制精度一般在1度,因此本实施例中优选为1度,但并不具体限定α0的数值,可根据实际情况来进行相应的调整。
在本实施例中,从起始第二重叠度几乎为0的α2开始,通过依次降低α2的方式来确定出满足预设重叠度阈值的相机水平角间隔,当起始α2=α1+hfov时,可认为是第二重叠度几乎为0的最小α2,因此设起始α2=α1+hfov,从而节省计算量,但并不仅限于此数值,也可以设起始α2>α1+hfov,均可根据实际情况来进行选择。
重叠度阈值确定模块用于接收第一重叠度阈值p1,并且将p1预设为调用俯仰方向图像采集模块及水平方向图像采集模块时的重叠度阈值,在本实施例中,第一重叠度阈值p1为用户起始预设的重叠度阈值。
重叠度阈值确定模块还用于调用俯仰方向图像采集模块及水平方向图像采集模块以采集俯仰图像及水平图像,并且将俯仰图像及水平图像拼接为全景影像,若拼接成功,将p1-p0赋值于p1,p0为重叠度差值,并且调用俯仰方向图像采集模块及水平方向图像采集模块,若拼接失败,将p1+p0确定为调用俯仰方向图像采集模块及水平方向图像采集模块时的重叠度阈值,在本实施例中,虽然不具体限定p0的数值,但考虑到每次循环需要庞大的计算量,因此可将p0设定为5%。
在本实施例中,若拼接成功,则表示此重叠度阈值还有可减小的余地,因此再次减小重叠度阈值并进行循环。若拼接失败,则表示此重叠度阈值已达到极限,因此将前一个重叠度阈值,即p1+p0确定为较佳重叠度阈值。
在本实施例中,重叠度阈值确定模块用于查找较佳重叠度阈值,因存在各类相机及各种情景,故不会存在一个绝对适用的重叠度阈值,导致降低通用性,但在本实施例中,通过重叠度阈值确定模块来确定出适用于当前相机及情景的较佳重叠度阈值,因此可提高通用性,同时保证了全景影像的质量,且合适的重叠度阈值越小,即可减少计算量,因此通过确定出较佳重叠度阈值来提高图像采集效率。
在本实施例中,第一处理模块用于根据图像面积计算模型来计算所述第二俯仰图像在所述第一俯仰图像上的第一重叠度,第二处理模块用于根据所述图像面积计算模型来计算所述第二水平图像在所述第一水平图像上的第二重叠度。
以下具体说明所述图像面积计算模型的建立组件。
所述图像面积计算模型的建立组件包括第一建立组件、第二建立组件、第三建立组件、第四建立组件及第五建立组件。
具体地,第一建立组件用于构建像空间坐标系s-x,y,z。
建立图像面积计算模型需输入的数据为相机原始图像的像素数(w,h)、焦距f、相机水平角α及相机俯仰角β,其中α∈(-π,π],β∈[-π/2,π/2]。
根据原始图像的像素数(w,h),其中w和h分别为图像的宽度和高度(像素),构建像平面坐标系ij,再构建像空间坐标系s-x,y,z,满足式1的对应关系。
式1:
第二建立组件用于设拍摄图像时相机绕y轴旋转水平角α,且绕x轴旋转俯仰角β。
如图7所示,拍摄图像时,设相机会绕y轴及x轴分别旋转水平角α及俯仰角β。
第三建立组件用于将图像绕x轴旋转β,且将图像投影至全景投影面。
如图7所示,因为图像在全景投影面上的投影形状与水平角α无关,所以可仅将图像绕x轴旋转β,且将图像投影至全景投影面,a为投影前图像,b为投影,得到式2,其中s-x,y,z为图像的像空间坐标系坐标。
式2:
现有的计算方式是将图像绕x轴旋转β,再绕y轴旋转α之后投影至全景投影面,因此得到的计算公式非常复杂,在本实施例中,通过仅将图像绕x轴旋转β之后投影至全景投影面的方式来简化公式,从而大大减少计算量,提高了模型的计算效率。
设θ和
式3:
第四建立组件用于将图像在全景投影面上进行α相应的平移。
相机绕y轴旋转水平角α可以视为在全景投影面上沿θ方向平移,得到像片在全景投影面上的投影,则有θ=θ+α,即将θ+α赋值于θ。
第五建立组件用于计算图像中的一点对应的全景投影面上的投影点坐标,并且根据投影点坐标来计算出图像在全景投影面上的相应的面积。
经过式2、式3及步骤405的计算,可以得到视场角为fov,拍摄方向分别为α、β的相机拍摄图像在宽高分别为w和h的全景投影面上的以角度方式存储的投影b,然而实际的全景影像以像素坐标存储,所以需要将θ和
式4:
通过式4得到的(xp,yp)即为拍摄图像上的一点对应的全景投影面上的投影点坐标,这些坐标的组合构成拍摄影像在全景投影面上的投影,进而可求出投影的面积。
全景影像得以拼接的必要条件是像片之间的重叠度必须达到某一重叠度阈值,此处重叠度指两张像片在全景投影面的重叠度,如图8所示,其中100、300分别为图像a、b在全景投影面的投影,200为图像b在图像a上的重叠度,其定义为式5。
式5:
其中,s(imagea)指图像a的面积,s(imagea∩imageb)指图像a与图像b的重叠部分面积,因此可通过所述图像面积计算模型来计算出第一重叠度及第二重叠度。
本实施例提供的全景影像的图像采集系统通过自动输出合适的相机俯仰角及相机水平角的方式实现了全景影像的图像采集的自动化,无需人工控制相机或凭经验来确定各个曝光角度,从而提高了拼接成功率的同时还提高了图像采集效率。
本实施例提供的全景影像的图像采集系统还通过查找理想的重叠度阈值的方式来确定满足当前情景的重叠度阈值,可根据不同的情景及相机类型来提供较佳的方案。
本实施例提供的全景影像的图像采集系统可设置于各种相机,通用性强,降低了对采集平台性能的限制,从而降低了用于拍摄全景影像的设备成本,使用户以较低的设备成本来获得较好素质的影像数据。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。