一种获取校正参数的方法和装置
技术领域
本文涉及但不限于光学技术和终端技术,尤指一种获取校正参数的方法和装置。
背景技术
采用双目相机能够获得深度信息,但是由于双目相机中的两个摄像头之间存在一定的距离,导致两个摄像头之间的视场不能完全重合,使得采用两个摄像头同时拍摄一个点时,该点在两个摄像头拍摄得到的图像上的位置不相同,给后期双目相机的应用带来困难,因此,需要对双目相机中的两个摄像头拍摄得到的图像进行校正,而相关技术中并未给出有效的校正方法。
发明内容
为了解决上述问题,本发明实施例提出了一种获取校正参数的方法,能够校正双目相机中两个摄像头拍摄得到的图像,以减小同一个点在两个摄像头拍摄得到的图像上的位置差异。
为了达到上述目的,本发明实施例提出了一种获取校正参数的装置,包括:
建立模块,用于建立坐标系:建立预设对象所在的第一物理坐标系、第一摄像头所在的第二物理坐标系和对应的第一像素坐标系、第二摄像头所在的第三物理坐标系和对应的第二像素坐标系、设置在第二物理坐标系和第三物理坐标系之间的第四物理坐标系和对应的第三像素坐标系;
获取模块,用于采用第一摄像头获取预设对象的第一图像,同时采用第二摄像头获取预设对象的第二图像;
处理模块,用于从第一图像中获取与第二图像重叠的第三图像,从第二图像中获取与第一图像重叠的第四图像;
计算模块,用于根据所建立的坐标系、第三图像和第四图像计算第一摄像头的用于校正图像的第一参数和第二摄像头的用于校正图像的第二参数。
可选的,所述获取模块还用于:
采用所述第一摄像头获取第五图像,同时采用所述第二摄像头获取第六图像;
所述装置还包括:
校正模块,用于根据所述第一参数对第五图像进行校正;根据所述第二参数对第六图像进行校正。
可选的,所述第一参数包括:所述第四物理坐标系到所述第二物理坐标系的第一旋转矩阵和第一摄像头参数;所述第二参数包括:所述第四物理坐标系到所述第三物理坐标系的第二旋转矩阵和第二摄像头参数;
所述计算模块具体用于:
初始化第一权值系数矩阵和第二权值系数矩阵;
根据第二权值系数矩阵计算所述第一旋转矩阵和所述第二旋转矩阵;
根据第一权值系数矩阵和第一旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第一权值系数矩阵和第二旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标;其中,i为大于或等于1的整数;
根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标,根据所述第二摄像头参数将所述第i预设点在第三物理坐标系的坐标转换成所述第i预设点在第二像素坐标系下的第二像素坐标;
根据所有预设点在所述第三图像中的坐标、第一像素坐标、所有预设点在所述第四图像中的坐标、所有预设点的第一物理坐标和第二物理坐标计算增量矩阵;
根据增量矩阵对第一权值系数矩阵、第二权值系数矩阵、第一参数和第二参数进行更新;
根据更新后的第一权值系数矩阵、第二权值系数矩阵、第一参数和第二参数继续执行所述根据第二权值系数矩阵计算所述第一旋转矩阵或所述第二旋转矩阵的步骤,直到迭代次数大于或等于预设次数,输出第一参数和第二参数。
可选的,所述计算模块具体用于采用以下方式实现根据第一权值系数矩阵和第一旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第一权值系数矩阵和第二旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标:
根据第一权值系数矩阵计算第一物理坐标系投影到第四物理坐标系的第一变换矩阵;
根据第一变换矩阵和第一旋转矩阵计算第一物理坐标系投影到第二物理坐标系的第二变换矩阵,根据第一变换矩阵和第二旋转矩阵计算第一物理坐标系投影到第三物理坐标系的第三变换矩阵;
根据第二变换矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第三变换矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标。
可选的,所述计算模块具体用于采用以下方式实现根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标,根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标:
将第i预设点在第二物理坐标系的坐标投影到第一像素坐标系得到第i预设点在第一像素坐标系下的第一物理坐标,将第i预设点在第三物理坐标系的坐标投影到第二像素坐标系得到第i预设点在第二像素坐标系下的第二物理坐标;
根据第一物理坐标和所述第一摄像头参数计算第i预设点在第一像素坐标系下的第一像素坐标,根据第二物理坐标和所述第二摄像头参数计算第i预设点在第二像素坐标系下的第二像素坐标。
可选的,所述计算模块具体用于采用以下方式实现根据所有预设点在所述第三图像中的坐标、第一像素坐标、所有预设点在所述第四图像中的坐标、所有预设点的第一物理坐标和第二物理坐标计算增量矩阵:
根据第i预设点在所述第三图像中的坐标和第一像素坐标计算第i预设点的第一差值,根据第i预设点在所述第四图像中的坐标和第一像素坐标计算第i预设点的第二差值,所有预设点的第一差值和第二差值组成差值矩阵;
计算所有预设点的第一物理坐标和第二物理坐标关于所述第一权值系数矩阵、所述第二权值系数矩阵、所述第一摄像头参数和所述第二摄像头参数的雅可比矩阵;
根据雅可比矩阵和差值矩阵计算增量矩阵。
可选的,所述计算模块具体用于采用以下方式实现所述根据雅可比矩阵和差值矩阵计算增量矩阵包括:
按照公式plus=(Jac'Jac)\(Jac'residusl)计算所述增量矩阵;
其中,plus为所述增量矩阵,Jac为所述雅可比矩阵,residusl为所述差值矩阵。
本发明实施例还提出了一种获取校正参数的方法,包括:
建立坐标系:建立预设对象所在的第一物理坐标系、第一摄像头所在的第二物理坐标系和对应的第一像素坐标系、第二摄像头所在的第三物理坐标系和对应的第二像素坐标系、设置在第二物理坐标系和第三物理坐标系之间的第四物理坐标系和对应的第三像素坐标系;
采用第一摄像头获取预设对象的第一图像,同时采用第二摄像头获取预设对象的第二图像;
从第一图像中获取与第二图像重叠的第三图像,从第二图像中获取与第一图像重叠的第四图像;
根据所建立的坐标系、第三图像和第四图像计算第一摄像头的用于校正图像的第一参数和第二摄像头的用于校正图像的第二参数。
可选的,该方法还包括:
采用所述第一摄像头获取第五图像,同时采用所述第二摄像头获取第六图像;
根据所述第一参数对第五图像进行校正;
根据所述第二参数对第六图像进行校正。
可选的,所述第一参数包括:所述第四物理坐标系到所述第二物理坐标系的第一旋转矩阵和第一摄像头参数;所述第二参数包括:所述第四物理坐标系到所述第三物理坐标系的第二旋转矩阵和第二摄像头参数;
所述根据所建立的坐标系、第三图像和第四图像计算第一摄像头的用于校正图像的第一参数和第二摄像头的用于校正图像的第二参数包括:
初始化第一权值系数矩阵和第二权值系数矩阵;
根据第二权值系数矩阵计算所述第一旋转矩阵和所述第二旋转矩阵;
根据第一权值系数矩阵和第一旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第一权值系数矩阵和第二旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标;其中,i为大于或等于1的整数;
根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标,根据所述第二摄像头参数将所述第i预设点在第三物理坐标系的坐标转换成所述第i预设点在第二像素坐标系下的第二像素坐标;
根据所有预设点在所述第三图像中的坐标、第一像素坐标、所有预设点在所述第四图像中的坐标、所有预设点的第一物理坐标和第二物理坐标计算增量矩阵;
根据增量矩阵对第一权值系数矩阵、第二权值系数矩阵、第一参数和第二参数进行更新;
根据更新后的第一权值系数矩阵、第二权值系数矩阵、第一参数和第二参数继续执行所述根据第二权值系数矩阵计算所述第一旋转矩阵或所述第二旋转矩阵的步骤,直到迭代次数大于或等于预设次数,输出第一参数和第二参数。
可选的,所述根据第一权值系数矩阵和第一旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第一权值系数矩阵和第二旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标包括:
根据第一权值系数矩阵计算第一物理坐标系投影到第四物理坐标系的第一变换矩阵;
根据第一变换矩阵和第一旋转矩阵计算第一物理坐标系投影到第二物理坐标系的第二变换矩阵,根据第一变换矩阵和第二旋转矩阵计算第一物理坐标系投影到第三物理坐标系的第三变换矩阵;
根据第二变换矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第三变换矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标。
可选的,所述根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标,根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标:
将第i预设点在第二物理坐标系的坐标投影到第一像素坐标系得到第i预设点在第一像素坐标系下的第一物理坐标,将第i预设点在第三物理坐标系的坐标投影到第二像素坐标系得到第i预设点在第二像素坐标系下的第二物理坐标;
根据第一物理坐标和所述第一摄像头参数计算第i预设点在第一像素坐标系下的第一像素坐标,根据第二物理坐标和所述第二摄像头参数计算第i预设点在第二像素坐标系下的第二像素坐标。
可选的,所述根据所有预设点在所述第三图像中的坐标、第一像素坐标、所有预设点在所述第四图像中的坐标、所有预设点的第一物理坐标和第二物理坐标计算增量矩阵包括:
根据第i预设点在所述第三图像中的坐标和第一像素坐标计算第i预设点的第一差值,根据第i预设点在所述第四图像中的坐标和第一像素坐标计算第i预设点的第二差值,所有预设点的第一差值和第二差值组成差值矩阵;
计算所有预设点的第一物理坐标和第二物理坐标关于所述第一权值系数矩阵、所述第二权值系数矩阵、所述第一摄像头参数和所述第二摄像头参数的雅可比矩阵;
根据雅可比矩阵和差值矩阵计算增量矩阵。
可选的,所述根据雅可比矩阵和差值矩阵计算增量矩阵包括:
按照公式plus=(Jac'Jac)\(Jac'residusl)计算所述增量矩阵;
其中,plus为所述增量矩阵,Jac为所述雅可比矩阵,residusl为所述差值矩阵。
与相关技术相比,本发明实施例包括:建立坐标系:建立预设对象所在的第一物理坐标系、第一摄像头所在的第二物理坐标系和对应的第一像素坐标系、第二摄像头所在的第三物理坐标系和对应的第二像素坐标系、设置在第二物理坐标系和第三物理坐标系之间的第四物理坐标系和对应的第三像素坐标系;同时采用第一摄像头获取预设对象的第一图像和采用第二摄像头获取预设对象的第二图像;从第一图像中获取与第二图像重叠的第三图像,从第二图像中获取与第一图像重叠的第四图像;根据所建立的坐标系、第三图像和第四图像计算第一摄像头的用于校正图像的第一参数和第二摄像头的用于校正图像的第二参数。通过本发明实施例的方案,通过建立的坐标系和预设对象的第三图像和第四图像来获取两个摄像头用于校正图像的参数,以便后续跟进用于校正图像的参数对两个摄像头获得的图像进行校正,为后续进行图像的校正奠定了基础,从而实现了校正双目相机中两个摄像头拍摄得到的图像,以减小同一个点在两个摄像头拍摄得到的图像上的位置差异。
附图说明
下面对本发明实施例中的附图进行说明,实施例中的附图是用于对本发明的进一步理解,与说明书一起用于解释本发明,并不构成对本发明保护范围的限制。
图1为实现本发明各个实施例的移动终端的可选硬件结构示意图;
图2为如图1所示的移动终端的无线通信系统示意图;
图3为本发明第一实施例获取校正参数的方法的流程图;
图4为本发明第一实施例建立的坐标系的示意图;
图5为本发明第一实施例计算第一参数和第二参数的方法的流程图;
图6(a)为本发明第一实施例第五图像和第六图像的示意图;
图6(b)为本发明第一实施例第五图像和第六图像的容差示意图;
图7(a)为本发明第一实施例校正后的第五图像和第六图像的示意图;
图7(b)为本发明第一实施例校正后的第五图像和校正后的第六图像的容差示意图;
图8为本发明第二实施例获取校正参数的装置的结构组成示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了便于本领域技术人员的理解,下面结合附图对本发明作进一步的描述,并不能用来限制本发明的保护范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的各种方式可以相互组合。
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
图1为实现本发明各个实施例的移动终端的可选硬件结构示意。
移动终端100可以包括无线通信单元110、A/V(音频/视频)输入单元120、输出单元150、存储器160、接口单元170、控制器180和电源单元190等等。图1示出了具有各种组件的移动终端,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述移动终端的元件。
无线通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信系统或网络之间的无线电通信。例如,无线通信单元可以包括移动通信模块112。
移动通信模块112将无线电信号发送到基站(例如,接入点、节点B等等)、外部终端以及服务器中的至少一个和/或从其接收无线电信号。这样的无线电信号可以包括语音通话信号、视频通话信号、或者根据文本和/或多媒体消息发送和/或接收的各种类型的数据。
A/V输入单元120用于接收音频或视频信号。A/V输入单元120可以包括相机121,相机121对在视频捕获模式或图像捕获模式中由图像捕获装置获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元151上。经相机121处理后的图像帧可以存储在存储器160(或其它存储介质)中或者经由无线通信单元110进行发送,可以根据移动终端的构造提供两个或更多相机121。
接口单元170用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。识别模块可以是存储用于验证用户使用移动终端100的各种信息并且可以包括用户识别模块(UIM)、客户识别模块(SIM)、通用客户识别模块(USIM)等等。另外,具有识别模块的装置(下面称为"识别装置")可以采取智能卡的形式,因此,识别装置可以经由端口或其它连接装置与移动终端100连接。接口单元170可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端和外部装置之间传输数据。
另外,当移动终端100与外部底座连接时,接口单元170可以用作允许通过其将电力从底座提供到移动终端100的路径或者可以用作允许从底座输入的各种命令信号通过其传输到移动终端的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端是否准确地安装在底座上的信号。输出单元150被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、警报信号、振动信号等等)。输出单元150可以包括显示单元151等等。
显示单元151可以显示在移动终端100中处理的信息。例如,当移动终端100处于电话通话模式时,显示单元151可以显示与通话或其它通信(例如,文本消息收发、多媒体文件下载等等)相关的用户界面(UI)或图形用户界面(GUI)。当移动终端100处于视频通话模式或者图像捕获模式时,显示单元151可以显示捕获的图像和/或接收的图像、示出视频或图像以及相关功能的UI或GUI等等。
同时,当显示单元151和触摸板以层的形式彼此叠加以形成触摸屏时,显示单元151可以用作输入装置和输出装置。显示单元151可以包括液晶显示器(LCD)、薄膜晶体管LCD(TFT-LCD)、有机发光二极管(OLED)显示器、柔性显示器、三维(3D)显示器等等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,典型的透明显示器可以例如为TOLED(透明有机发光二极管)显示器等等。根据特定想要的实施方式,移动终端100可以包括两个或更多显示单元(或其它显示装置),例如,移动终端可以包括外部显示单元(未示出)和内部显示单元(未示出)。触摸屏可用于检测触摸输入压力以及触摸输入位置和触摸输入面积。
存储器160可以存储由控制器180执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而且,存储器160可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的数据。
存储器160可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等等。而且,移动终端100可以与通过网络连接执行存储器160的存储功能的网络存储装置协作。
控制器180通常控制移动终端的总体操作。例如,控制器180执行与语音通话、数据通信、视频通话等等相关的控制和处理。另外,控制器180可以包括用于再现(或回放)多媒体数据的多媒体模块1810,多媒体模块1810可以构造在控制器180内,或者可以构造为与控制器180分离。控制器180可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。
电源单元190在控制器180的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器180中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器160中并且由控制器180执行。
至此,己经按照其功能描述了移动终端。下面,为了简要起见,将描述诸如折叠型、直板型、摆动型、滑动型移动终端等等的各种类型的移动终端中的滑动型移动终端作为示例。因此,本发明能够应用于任何类型的移动终端,并且不限于滑动型移动终端。
如图1中所示的移动终端100可以被构造为利用经由帧或分组发送数据的诸如有线和无线通信系统以及基于卫星的通信系统来操作。
现在将参考图2描述其中根据本发明的移动终端能够操作的通信系统。
这样的通信系统可以使用不同的空中接口和/或物理层。例如,由通信系统使用的空中接口包括例如频分多址(FDMA)、时分多址(TDMA)、码分多址(CDMA)和通用移动通信系统(UMTS)(特别地,长期演进(LTE))、全球移动通信系统(GSM)等等。作为非限制性示例,下面的描述涉及CDMA通信系统,但是这样的教导同样适用于其它类型的系统。
参考图2,CDMA无线通信系统可以包括多个移动终端100、多个基站(BS)270、基站控制器(BSC)275和移动交换中心(MSC)280。MSC280被构造为与公共电话交换网络(PSTN)290形成接口。MSC280还被构造为与可以经由回程线路耦接到基站270的BSC275形成接口。回程线路可以根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM,IP、PPP、帧中继、HDSL、ADSL或xDSL。将理解的是,如图2中所示的系统可以包括多个BSC2750。
每个BS270可以服务一个或多个分区(或区域),由多向天线或指向特定方向的天线覆盖的每个分区放射状地远离BS270。或者,每个分区可以由用于分集接收的两个或更多天线覆盖。每个BS270可以被构造为支持多个频率分配,并且每个频率分配具有特定频谱(例如,1.25MHz,5MHz等等)。
分区与频率分配的交叉可以被称为CDMA信道。BS270也可以被称为基站收发器子系统(BTS)或者其它等效术语。在这样的情况下,术语"基站"可以用于笼统地表示单个BSC275和至少一个BS270。基站也可以被称为"蜂窝站"。或者,特定BS270的各分区可以被称为多个蜂窝站。
如图2中所示,广播发射器(BT)295将广播信号发送给在系统内操作的移动终端100。如图1中所示的广播接收模块111被设置在移动终端100处以接收由BT295发送的广播信号。在图2中,示出了几个全球定位系统(GPS)卫星300。卫星300帮助定位多个移动终端100中的至少一个。
在图2中,描绘了多个卫星300,但是理解的是,可以利用任何数目的卫星获得有用的定位信息。如图1中所示的GPS模块115通常被构造为与卫星300配合以获得想要的定位信息。替代GPS跟踪技术或者在GPS跟踪技术之外,可以使用可以跟踪移动终端的位置的其它技术。另外,至少一个GPS卫星300可以选择性地或者额外地处理卫星DMB传输。
作为无线通信系统的一个典型操作,BS270接收来自各种移动终端100的反向链路信号。移动终端100通常参与通话、消息收发和其它类型的通信。特定基站270接收的每个反向链路信号被在特定BS270内进行处理。获得的数据被转发给相关的BSC275。BSC提供通话资源分配和包括BS270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS270以将正向链路信号发送到移动终端100。
基于上述移动终端硬件结构以及通信系统,提出本发明方法各个实施例。
如图3所示,本发明第一实施例提出一种获取校正参数的方法,包括:
步骤300、建立坐标系:建立预设对象所在的第一物理坐标系、第一摄像头所在的第二物理坐标系和对应的第一像素坐标系、第二摄像头所在的第三物理坐标系和对应的第二像素坐标系、设置在第二物理坐标系和第三物理坐标系之间的第四物理坐标系和对应的第三像素坐标系。
本步骤中,如图4所示,第一物理坐标系P、第二物理坐标系OL、第三物理坐标系OR、第四物理坐标系O为三维坐标系,第一像素坐标系Pl、第二像素坐标系Pr和第三像素坐标系P0为二维坐标系。
其中,第一物理坐标系可以根据实际需要随意设置,可以设置第二物理坐标系的z轴与第一摄像头的光轴平行,第三物理坐标系的z轴与第二摄像头的光轴平行,第四物理坐标系是一个虚拟的物理坐标系,可以设置第四物理坐标系的原点到第二物理坐标系的原点的距离和到第三物理坐标系的原点的距离相等。
第一像素坐标系是与第一摄像头的探测器相对应的坐标系,第二像素坐标系是与第二摄像头的探测器相对应的坐标系,第三像素坐标系是与第四物理坐标系所在的虚拟摄像头的探测器相对应的坐标系,这三个像素坐标系均可以根据实际需求进行设定。
本步骤中,第一摄像头和第二摄像头组成双目摄像头,具有共同的视场,其可以是位于同一水平面的左摄像头和右摄像头,也可以是位于同一垂直面的上摄像头和下摄像头,也可以是其他的情况,本发明实施例对此不作限定。
步骤301、采用第一摄像头获取预设对象的第一图像,同时采用第二摄像头获取预设对象的第二图像。
步骤302、从第一图像中获取与第二图像重叠的第三图像,从第二图像中获取与第一图像重叠的第四图像。
步骤303、根据所建立的坐标系、第三图像和第四图像计算第一摄像头的用于校正图像的第一参数和第二摄像头的用于校正图像的第二参数。
本步骤中,第一参数包括:第四物理坐标系到第二物理坐标系的第一旋转矩阵R0和第一摄像头参数。
第二参数包括:第四物理坐标系到第三物理坐标系的第二旋转矩阵R1和第二摄像头参数。
其中,第一摄像头参数包括:第一摄像头在第二物理坐标系的x轴方向的焦距fx0、第一摄像头在第二物理坐标系的y轴方向的焦距fy0,第一摄像头的光心(即第二物理坐标系的原点)投影到第一像素坐标系下的像素坐标的x轴坐标cx0、第一摄像头的光心投影到第一像素坐标系下的像素坐标的y轴坐标cy0。
第二摄像头参数包括:第二摄像头在第三物理坐标系的x轴方向的焦距fx1、第二摄像头在第三物理坐标系的y轴方向的焦距fy1,第二摄像头的光心(即第三物理坐标系的原点)投影到第二像素坐标系下的像素坐标的x轴坐标cx1、第二摄像头的光心投影到第二像素坐标系下的像素坐标的y轴坐标cy1。
本步骤中,参见图5,根据所建立的坐标系、第三图像和第四图像计算第一摄像头的用于校正图像的第一参数和第二摄像头的用于校正图像的第二参数包括:
步骤500、初始化第一权值系数矩阵a和第二权值系数矩阵b;
本步骤中,第一权值系数矩阵a为6行1列的矩阵,第二权值系数矩阵b为3行1列的矩阵,即a=[a1;a2;a3;a4;a5;a6],b=[b1;b2;b3]。
初始化时,可以将第一权值系数矩阵a和第二权值系数矩阵b初始化为零矩阵,即a=[0;0;0;0;0;0],b=[0;0;0],当然,也可以将第一权值系数矩阵a和第二权值系数矩阵初始化为其他值,本发明实施例对此不作限定。
步骤501、根据第二权值系数矩阵b计算所述第一旋转矩阵R0和所述第二旋转矩阵R1;
本步骤中,按照公式
计算第一旋转矩阵R0,按照公式
计算第二旋转矩阵R1。
步骤502、根据第一权值系数矩阵和第一旋转矩阵将第i预设点在第一物理坐标系中的坐标pw投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标Pc0_i,根据第一权值系数矩阵和第二旋转矩阵将第i预设点在第一物理坐标系中的坐标pw投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标Pc1_i;其中,i为大于或等于1的整数;包括:
根据第一权值系数矩阵a计算第一物理坐标系投影到第四物理坐标系的第一变换矩阵M;根据第一变换矩阵M和第一旋转矩阵R0计算第一物理坐标系投影到第二物理坐标系的第二变换矩阵M0,根据第一变换矩阵M和第二旋转矩阵R1计算第一物理坐标系投影到第三物理坐标系的第三变换矩阵M1。
其中,按照公式
其中,
为第一物理坐标系P投影到第四物理坐标系O在x轴上的偏移,
为第一物理坐标系P投影到第四物理坐标系O在y轴上的偏移,
为第一物理坐标系P投影到第四物理坐标系O在z轴上的偏移,
为第一物理坐标系P的x轴绕第四物理坐标系O的x轴旋转的旋转矩阵,
为第一物理坐标系P的y轴绕第四物理坐标系O的y轴旋转的旋转矩阵,
为第一物理坐标系P的z轴绕第四物理坐标系O的z轴旋转的旋转矩阵。
其中,按照公式M0=[R0,-R0C0;0,0,0,1]M计算第二变换矩阵M0,按照公式M0=[R1,-R1C1;0,0,0,1]M计算第三变换矩阵M1。
其中,C0为第四物理坐标系O的原点到第二物理坐标系OL的原点的距离,C1为第四物理坐标系O的原点到第三物理坐标系OR的原点的距离。
其中,按照公式
计算第i预设点在第二物理坐标系的坐标Pc0_i,按照公式
计算第i预设点在第三物理坐标系的坐标Pc1_i。
其中,Pc0_i(x)为第i预设点在第二物理坐标系的x轴坐标,Pc0_i(y)为
第i预设点在第二物理坐标系的y轴坐标,Pc0_i(z)为第i预设点在第二物理坐标系的z轴坐标,Pc1_i(x)为第i预设点在第三物理坐标系的x轴坐标,Pc1_i(y)为第i预设点在第三物理坐标系的y轴坐标,Pc1_i(z)为第i预设点在第三物理坐标系的z轴坐标,pw(x)为第i预设点在第一物理坐标系中的x轴坐标,pw(y)为第i预设点在第一物理坐标系中的y轴坐标,pw(z)为第i预设点在第一物理坐标系中的z轴坐标。
步骤503、根据第一摄像头参数将所述第i预设点在第二物理坐标系的坐标Pc0_i转换成第i预设点在第一像素坐标系下的第一像素坐标Pc0_i_pixiel,根据第二摄像头参数将第i预设点在第三物理坐标系的坐标Pc0_i_pixiel转换成第i预设点在第二像素坐标系下的第二像素坐标Pc1_i_pixiel。包括:
将第i预设点在第二物理坐标系的坐标Pc0_i投影到第一像素坐标系得到第i预设点在第一像素坐标系下的第一物理坐标c_y0_i,将第i预设点在第三物理坐标系的坐标Pc1_i投影到第二像素坐标系得到第i预设点在第二像素坐标系下的第二物理坐标c_y1_i;根据第一物理坐标c_y0_i和所述第一摄像头参数计算第i预设点在第一像素坐标系下的第一像素坐标Pc0_i_pixiel,根据第二物理坐标c_y1_i和所述第二摄像头参数计算第i预设点在第二像素坐标系下的第二像素坐标Pc1_i_pixiel;
其中,可以采用本领域技术人员的熟知技术实现将第i预设点在第二物理坐标系的坐标Pc0_i投影到第一像素坐标系得到第i预设点在第一像素坐标系下的第一物理坐标c_y0_i,将第i预设点在第三物理坐标系的坐标Pc1_i投影到第二像素坐标系得到第i预设点在第二像素坐标系下的第二物理坐标c_y1_i,并不用于限定本发明实施例的保护范围,这里不再赘述。
其中,按照公式Pc0_i_pixel(x)=c_y0_i(x)fx0+cx0和Pc0_i_pixel(y)=c_y0_i(y)fy0+cy0计算第i预设点在第一像素坐标系下的第一像素坐标Pc0_i_pixiel,按照公式Pc1_i_pixel(x)=c_y1_i(x)fx1+cx1和Pc1_i_pixel(y)=c_y1_i(y)fy1+cy1计算第i预设点在第二像素坐标系下的第二像素坐标Pc1_i_pixiel。
其中,Pc0_i_pixiel(x)为第i预设点在第一像素坐标系下的第一像素坐标的x轴坐标,Pc0_i_pixiel(y)为第i预设点在第一像素坐标系下的第一像素坐标的y轴坐标,c_y0_i(x)为第一物理坐标的x轴坐标,c_y0_i(y)为第一物理坐标的y轴坐标,Pc1_i_pixiel(x)为第i预设点在第二像素坐标系下的第二像素坐标的x轴坐标,Pc1_i_pixiel(y)为第i预设点在第二像素坐标系下的第二像素坐标的y轴坐标,c_y1_i(x)为第二物理坐标的x轴坐标,c_y1_i(y)为第二物理坐标的y轴坐标。
步骤504、根据所有预设点在所述第三图像中的坐标、第一像素坐标、所有预设点在所述第四图像中的坐标、所有预设点的第一物理坐标和第二物理坐标计算增量矩阵。包括:
根据第i预设点在所述第三图像中的坐标P0_i和第一像素坐标Pc0_i_pixiel计算第i预设点的第一差值error0_i,根据第i预设点在所述第四图像中的坐标P1_i和第一像素坐标Pc0_i_pixiel计算第i预设点的第二差值error1_i,所有预设点的第一差值error0_i和第二差值error1_i组成差值矩阵residusl;计算所有预设点的第一物理坐标c_y0_i和第二物理坐标c_y1_i关于所述第一权值系数矩阵a、所述第二权值系数矩阵b、所述第一摄像头参数和所述第二摄像头参数的雅可比矩阵Jac;根据雅可比矩阵Jac和差值矩阵residusl计算增量矩阵plus;
其中,按照公式
计算第i预设点的第一差值error0_i,按照公式
计算第i预设点的第二差值error1_i。
其中,P0_i(x)为第i预设点在所述第三图像中的x轴坐标,P0_i(y)为第i预设点在所述第三图像中的y轴坐标,error0_i(x)为第i预设点在x轴的第一差值,error0_i(y)为第i预设点在y轴的第一差值,error1_i(x)为第i预设点在x轴的第二差值,error1_i(y)为第i预设点在y轴的第二差值。
本步骤中,差值矩阵residusl为4n行1列的矩阵,其中,n为预设点的个数,即residusl=[error0_1(x);error0_1(y);error1_1(x);error1_1(y);error0_2(x);error0_2(y);error1_2(x);error1_2(y);……;error0_n(x);error0_n(y);error1_n(x);error1_n(y)]。
其中,按照公式
也就是说,雅可比矩阵为4n行17列的矩阵,雅可比矩阵的第1行为第一预设点的第一物理坐标的x轴坐标分别对第一权值系数矩阵a中的6个元素、第二权值系数矩阵b中的3个元素、第一摄像头参数和第二摄像头参数共17个参数的偏导,第2行为第一预设点的第一物理坐标的y轴坐标分别对17个参数的偏导,第3行为第一预设点的第二物理坐标的x轴坐标分别对17个参数的偏导,第4行为第一预设点的第二物理坐标的y轴坐标分别对17个参数的偏导,第5行为第二预设点的第一物理坐标的x轴坐标分别对17个参数的偏导,第6行为第二预设点的第一物理坐标的y轴坐标分别对17个参数的偏导,第7行为第二预设点的第二物理坐标的x轴坐标分别对17个参数的偏导,第8行为第二预设点的第二物理坐标的y轴坐标分别对17个参数的偏导,依次类推,第(4n-3)行为第n预设点的第一物理坐标的x轴坐标分别对17个参数的偏导,第(4n-2)行为第n预设点的第一物理坐标的y轴坐标分别对17个参数的偏导,第(4n-1)行为第n预设点的第二物理坐标的x轴坐标分别对17个参数的偏导,第4n行为第n预设点的第二物理坐标的y轴坐标分别对17个参数的偏导。
其中,按照公式plus=(Jac'Jac)\(Jac'residusl)计算增量矩阵plus。
增量矩阵plus为1行17列的矩阵,每一行对应上述17个参数中的一个的增量,即plus=[△a1,△a2,△a3,△a4,△a5,△a6,△b1,△b2,△b3,△fx0,△fy0,△cx0,△cy0,△fx1,△fy1,△cx1,△cy1]。
其中,△a1为a1的增量,△a2为a2的增量,△a3为a3的增量,△a4为a4的增量,△a5为a5的增量,△a6为a6的增量,△b1为b1的增量,△b2为b2的增量,△b3为b3的增量,△fx0为fx0的增量,△fy0为fy0的增量,△cx0为cx0的增量,△cy0为cy0的增量,△fx1为fx1的增量,△fy1为fy1的增量,△cx1为cx1的增量,△cy1为cy1的增量。
步骤505、根据增量矩阵plus对第一权值系数矩阵a、第二权值系数矩阵b、第一参数和第二参数进行更新;
本步骤中,将每一个参数的初始取值加上对应的增量即得到更新后的参数。例如,更新后的a1为0+△a1,依次类推。
步骤506、根据更新后的第一权值系数矩阵a、第二权值系数矩阵b、第一参数和第二参数继续执行步骤501~步骤505,直到迭代次数大于或等于预设次数,输出第一参数和第二参数。
本步骤中,在奇数次迭代过程中,根据更新后的第二权值系数矩阵b计算第一旋转矩阵R0,而第二旋转矩阵R1仍然采用上一次的值;在偶数次迭代过程中,根据更新后的第二权值系数矩阵b计算第二旋转矩阵R1,而第一旋转矩阵R0仍然采用上一次的值。
可选的,该方法还包括:
采用第一摄像头获取第五图像,同时采用第二摄像头获取第六图像;
根据第一参数对第五图像进行校正;
根据第二参数对第六图像进行校正。
其中,根据第一参数对第五图像进行校正包括:
预先定义大小与第五图像或第六图像相同的网格图像;
对于网格图像中的每一个第一像素点,将第一像素点在第三像素坐标系下的像素坐标转换成在第三像素坐标系下的物理坐标;将第一像素点在第三像素坐标系下的物理坐标转换成在第四物理坐标系的坐标;
将第一像素点在第四物理坐标系的坐标转换成在第二物理坐标系的坐标,将第一像素点在第二物理坐标系的坐标转换成在第一像素坐标系下的物理坐标;将第一像素点在第一像素坐标系下的物理坐标转换成在第一像素坐标系下的像素坐标;
将网格图像中在第一像素坐标系下的像素坐标小于0或者大于第五图像边框的第一像素点滤除;
对于滤除后的网格图像中的每一个第二像素点,对第二像素点在第一像素坐标系下的像素坐标进行整形化处理;
根据第五图像中像素坐标为整形化处理后的第二像素点在第一像素坐标系下的像素坐标的像素点的颜色值赋予滤除后的网格图像中的第二像素点的颜色值。
其中,当第五图像和第六图像均为灰度图像时,网格图像的灰度级可以随意设置,例如将网格图像的灰度级设置为255或0,当然也可以设置成其他的取值;当第五图像和第六图像均为彩色图像时,网格图像的R、G、B的取值可以随意设置,例如可以将网格图像的R、G、B均设置为255或0,当然也可以设置成其他的取值,本发明实施例对此不作限定。
其中,将第一像素点在第三像素坐标系下的像素坐标转换成在第三像素坐标系下的物理坐标包括:
根据第一摄像头参数或第二摄像头参数将第一像素点在第三像素坐标系下的像素坐标转换成在第三像素坐标系下的物理坐标。
其中,根据第一摄像头参数或第二摄像头参数将第一像素点在第三像素坐标系下的像素坐标转换成在第三像素坐标系下的物理坐标包括:
按照公式
和
或者,按照公式
和
计算第j个第一像素点在第三像素坐标系下的物理坐标;
其中,pud0_x_j为第j个第一像素点在第三像素坐标系下的物理坐标的x轴坐标,p0_x_j为第j个第一像素点在第三坐标系下的像素坐标的x轴坐标,pud0_y_j为第j个第一像素点在第三像素坐标系下的物理坐标的y轴坐标,p0_y_j为第j个第一像素点在第三坐标系下的像素坐标的y轴坐标。
其中,将第一像素点在第四物理坐标系的坐标转换成在第二物理坐标系的坐标包括:
按照公式
计算第j个第一像素点在第二物理坐标系的坐标;
其中,pOL_j(x)为第j个第一像素点在第二物理坐标系的x轴坐标,pOL_j(y)为第j个第一像素点在第二物理坐标系的y轴坐标,pOL_j(z)为第j个第一像素点在第二物理坐标系的z轴坐标,pO_j(x)为第j个第一像素点在第四物理坐标系的x轴坐标,pO_j(y)为第j个第一像素点在第四物理坐标系的y轴坐标,pO_j(z)为第j个第一像素点在第四物理坐标系的z轴坐标。
其中,将第一像素点在第一像素坐标系下的物理坐标转换成在第一像素坐标系下的像素坐标包括:
根据第一摄像头参数将第一像素点在第一像素坐标系下的物理坐标转换成在第一像素坐标系下的像素坐标。
其中,根据第一摄像头参数将第一像素点在第一像素坐标系下的物理坐标转换成在第一像素坐标系下的像素坐标包括:
按照公式POL_j_pixel(x)=c_OL_j(x)fx0+cx0和POL_j_pixel(y)=c_OL_j(y)fy0+cy0计算第一像素点在第一像素坐标系下的像素坐标;
其中,POL_j_pixiel(x)为第j个第一像素点在第一像素坐标系下的像素坐标的x轴坐标,POL_j_pixiel(y)为第j个第一像素点在第一像素坐标系下的像素坐标的y轴坐标,c_OL_j(x)为第j个第一像素点在第一像素坐标系下的物理坐标的x轴坐标,c_OL_j(y)为第j个第一像素点在第一像素坐标系下的物理坐标的y轴坐标。
其中,如果第一像素点在第一像素坐标系下的像素坐标的x轴坐标小于0或者大于第五图像的宽度,或者,第一像素点在第一像素坐标系下的像素坐标的y轴坐标小于0或者大于第五图像的长度,则将第一像素点滤除。
其中,对第二像素点在第一像素坐标系下的像素坐标进行整形化处理包括:
将第二像素点在第一像素坐标系下的像素坐标的x轴坐标分别向上取整和向下取整,将第二像素点在第一像素坐标系下的像素坐标的y轴坐标分别向上取整和向下取整,得到整形化处理后的第二像素点在第一像素坐标系下的像素坐标分别为
和
其中,pOL_k(x)为第k个第二像素点在第一像素坐标系下的像素坐标的x轴坐标,pOL_k(y)为第k个第二像素点在第一像素坐标系下的像素坐标的y轴坐标。
其中,根据第五图像中像素坐标为整形化处理后的第二像素点在第一像素坐标系下的像素坐标的像素点的颜色值赋予滤除后的网格图像中的第二像素点的颜色值包括:
按照公式
其中,I(k)为网格图像中的第k个第二像素点的灰度值,w1、w2、w3和w4为权值系数,
为第五图像中像素坐标为
的像素点的灰度值,
为第五图像中像素坐标为
的像素点的灰度值,
为第五图像中像素坐标为
的像素点的灰度值,
为第五图像中像素坐标为
的像素点的灰度值。
或者,按照公式
和公式
赋予滤除后的网格图像中的第二像素点的颜色值。
其中,IR(k)为网格图像中的第k个第二像素点的R值,w1、w2、w3和w4为权值系数,
为第五图像中像素坐标为
的像素点的R值,
为第五图像中像素坐标为
的像素点的R值,
为第五图像中像素坐标为
的像素点的R值,
为第五图像中像素坐标为
的像素点的R值;
IG(k)为网格图像中的第k个第二像素点的G值,
为第五图像中像素坐标为
的像素点的G值,
为第五图像中像素坐标为
的像素点的G值,
为第五图像中像素坐标为
的像素点的G值,
为第五图像中像素坐标为
的像素点的G值;
IB(k)为网格图像中的第k个第二像素点的B值,
为第五图像中像素坐标为
的像素点的B值,
为第五图像中像素坐标为
的像素点的B值,
为第五图像中像素坐标为
的像素点的B值,
为第五图像中像素坐标为
的像素点的B值。
其中,按照公式
计算w1;其中,pk(x)为第k个第二像素点在第一像素坐标系下的像素坐标的x轴坐标,pk(y)为第k个第二像素点在第一像素坐标系下的像素坐标的y轴坐标。
其中,根据第二参数对第六图像进行校正包括:
预先定义大小与第五图像或第六图像相同的网格图像;
对于网格图像中的每一个第一像素点,将第一像素点在第三像素坐标系下的像素坐标转换成在第三像素坐标系下的物理坐标;将第一像素点在第三像素坐标系下的物理坐标转换成在第四物理坐标系的坐标;
将第一像素点在第四物理坐标系的坐标转换成在第三物理坐标系的坐标,将第一像素点在第三物理坐标系的坐标转换成在第二像素坐标系下的物理坐标;将第一像素点在第二像素坐标系下的物理坐标转换成在第二像素坐标系下的像素坐标;
将网格图像中在第二像素坐标系下的像素坐标小于0或者大于网格图像边框的第一像素点滤除;
对于滤除后的网格图像中的每一个第二像素点,对第二像素点在第二像素坐标系下的像素坐标进行整形化处理;
根据第六图像中像素坐标为整形化处理后的第二像素点在第二像素坐标系下的像素坐标的像素点的颜色值赋予滤除后的网格图像中的第二像素点的颜色值。
上述实现过程与对第五图像进行校正的过程类似,这里不再赘述。
图6(a)为第五图像和第六图像的示意图。如图6(a)所示,左图为第五图像,右图为第六图像。图6(b)为第五图像和第六图像的容差示意图。如图6(b)所示,图6(b)中的黑色表示相同像素点第五图像和第六图像的灰度值之间的差值,从图6(b)中可以看出,第五图像和第六图像的灰度值之间的差值较大,因此,需要对第五图像和第六图像进行校正。
图7(a)为校正后的第五图像和第六图像的示意图。如图7(a)所示,左图为校正后的第五图像,右图为校正后的第六图像。图7(b)为校正后的第五图像和校正后的第六图像的容差示意图。如图7(b)所示,图7(b)中的黑色表示相同像素点校正后的第五图像和校正后的第六图像的灰度值之间的差值,从图7(b)中可以看出,校正后的第五图像和校正后的第六图像的灰度值之间的差值相对图6(b)来说减小了很多,因此,通过本发明实施例的方法,减小了同一个点在两个摄像头拍摄得到的图像上的位置差异。
参见图8,本发明第二实施例提出了一种获取校正参数的装置,包括:
建立模块,用于建立坐标系:建立预设对象所在的第一物理坐标系、第一摄像头所在的第二物理坐标系和对应的第一像素坐标系、第二摄像头所在的第三物理坐标系和对应的第二像素坐标系、设置在第二物理坐标系和第三物理坐标系之间的第四物理坐标系和对应的第三像素坐标系;
获取模块,用于采用第一摄像头获取预设对象的第一图像,同时采用第二摄像头获取预设对象的第二图像;
处理模块,用于从第一图像中获取与第二图像重叠的第三图像,从第二图像中获取与第一图像重叠的第四图像;
计算模块,用于根据所建立的坐标系、第三图像和第四图像计算第一摄像头的用于校正图像的第一参数和第二摄像头的用于校正图像的第二参数。
可选的,所述获取模块还用于:
采用所述第一摄像头获取第五图像,同时采用所述第二摄像头获取第六图像;
所述装置还包括:
校正模块,用于根据所述第一参数对第五图像进行校正;根据所述第二参数对第六图像进行校正。
可选的,所述第一参数包括:所述第四物理坐标系到所述第二物理坐标系的第一旋转矩阵和第一摄像头参数;所述第二参数包括:所述第四物理坐标系到所述第三物理坐标系的第二旋转矩阵和第二摄像头参数;
所述计算模块具体用于:
初始化第一权值系数矩阵和第二权值系数矩阵;
根据第二权值系数矩阵计算所述第一旋转矩阵和所述第二旋转矩阵;
根据第一权值系数矩阵和第一旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第一权值系数矩阵和第二旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标;其中,i为大于或等于1的整数;
根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标,根据所述第二摄像头参数将所述第i预设点在第三物理坐标系的坐标转换成所述第i预设点在第二像素坐标系下的第二像素坐标;
根据所有预设点在所述第三图像中的坐标、第一像素坐标、所有预设点在所述第四图像中的坐标、所有预设点的第一物理坐标和第二物理坐标计算增量矩阵;
根据增量矩阵对第一权值系数矩阵、第二权值系数矩阵、第一参数和第二参数进行更新;
根据更新后的第一权值系数矩阵、第二权值系数矩阵、第一参数和第二参数继续执行所述根据第二权值系数矩阵计算所述第一旋转矩阵或所述第二旋转矩阵的步骤,直到迭代次数大于或等于预设次数,输出第一参数和第二参数。
可选的,计算模块具体用于采用以下方式实现根据第一权值系数矩阵和第一旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第一权值系数矩阵和第二旋转矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标:
根据第一权值系数矩阵计算第一物理坐标系投影到第四物理坐标系的第一变换矩阵;
根据第一变换矩阵和第一旋转矩阵计算第一物理坐标系投影到第二物理坐标系的第二变换矩阵,根据第一变换矩阵和第二旋转矩阵计算第一物理坐标系投影到第三物理坐标系的第三变换矩阵;
根据第二变换矩阵将第i预设点在第一物理坐标系中的坐标投影到第二物理坐标系得到第i预设点在第二物理坐标系的坐标,根据第三变换矩阵将第i预设点在第一物理坐标系中的坐标投影到第三物理坐标系得到第i预设点在第三物理坐标系的坐标。
可选的,计算模块具体用于采用以下方式实现根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标,根据所述第一摄像头参数将所述第i预设点在第二物理坐标系的坐标转换成所述第i预设点在第一像素坐标系下的第一像素坐标:
将第i预设点在第二物理坐标系的坐标投影到第一像素坐标系得到第i预设点在第一像素坐标系下的第一物理坐标,将第i预设点在第三物理坐标系的坐标投影到第二像素坐标系得到第i预设点在第二像素坐标系下的第二物理坐标;
根据第一物理坐标和所述第一摄像头参数计算第i预设点在第一像素坐标系下的第一像素坐标,根据第二物理坐标和所述第二摄像头参数计算第i预设点在第二像素坐标系下的第二像素坐标。
可选的,所述第一摄像头参数包括:所述第一摄像头在所述第二物理坐标系的x轴方向的焦距fx0、所述第一摄像头在所述第二物理坐标系的y轴方向的焦距fy0、所述第一摄像头的光心投影到所述第一像素坐标系下的像素坐标的x轴坐标cx0、所述第一摄像头的光心投影到所述第一像素坐标系下的像素坐标的y轴坐标cy0;
所述第二摄像头参数包括:所述第二摄像头在所述第三物理坐标系的x轴方向的焦距fx1、所述第二摄像头在所述第三物理坐标系的y轴方向的焦距fy1、所述第二摄像头的光心投影到所述第二像素坐标系下的像素坐标的x轴坐标cx1、所述第二摄像头的光心投影到所述第二像素坐标系下的像素坐标的y轴坐标cy1;
所述计算模块具体用于采用以下方式实现所述根据第一物理坐标和第一摄像头参数计算第i预设点在第一像素坐标系下的第一像素坐标包括:
按照公式Pc0_i_pixel(x)=c_y0_i(x)fx0+cx0和Pc0_i_pixel(y)=c_y0_i(y)fy0+cy0计算所述第i预设点在第一像素坐标系下的第一像素坐标;
其中,c_y0_i(x)为所述第一物理坐标的x轴坐标,c_y0_i(y)为所述第一物理坐标的y轴坐标,Pc0_i_pixiel(x)为第i预设点在第一像素坐标系下的第一像素坐标的x轴坐标,Pc0_i_pixiel(y)为第i预设点在第一像素坐标系下的第一像素坐标的y轴坐标;
所述计算模块具体用于采用以下方式实现所述根据第二物理坐标和第二摄像头参数计算第i预设点在第二像素坐标系下的第二像素坐标:
按照公式Pc1_i_pixel(x)=c_y1_i(x)fx1+cx1和Pc1_i_pixel(y)=c_y1_i(y)fy1+cy1计算所述第i预设点在第二像素坐标系下的第二像素坐标;
其中,Pc1_i_pixiel(x)为所述第i预设点在第二像素坐标系下的第二像素坐标的x轴坐标,Pc1_i_pixiel(y)为所述第i预设点在第二像素坐标系下的第二像素坐标的y轴坐标,c_y1_i(x)为所述第二物理坐标的x轴坐标,c_y1_i(y)为所述第二物理坐标的y轴坐标。
可选的,计算模块具体用于采用以下方式实现根据所有预设点在所述第三图像中的坐标、第一像素坐标、所有预设点在所述第四图像中的坐标、所有预设点的第一物理坐标和第二物理坐标计算增量矩阵:
根据第i预设点在所述第三图像中的坐标和第一像素坐标计算第i预设点的第一差值,根据第i预设点在所述第四图像中的坐标和第一像素坐标计算第i预设点的第二差值,所有预设点的第一差值和第二差值组成差值矩阵;
计算所有预设点的第一物理坐标和第二物理坐标关于所述第一权值系数矩阵、所述第二权值系数矩阵、所述第一摄像头参数和所述第二摄像头参数的雅可比矩阵;
根据雅可比矩阵和差值矩阵计算增量矩阵。
可选的,所述计算模块具体用于采用以下方式实现所述根据雅可比矩阵和差值矩阵计算增量矩阵包括:
按照公式plus=(Jac'Jac)\(Jac'residusl)计算所述增量矩阵;
其中,plus为所述增量矩阵,Jac为所述雅可比矩阵,residusl为所述差值矩阵。
上述装置的具体实现过程可以参考第一实施例中方法的实现过程,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。