多模式深度计算处理器以及3D图像设备的制作方法

文档序号:11437362阅读:226来源:国知局
多模式深度计算处理器以及3D图像设备的制造方法与工艺

本发明涉及计算机和微电子领域,具体涉及一种多模式深度计算处理器以及一种3d图像设备。



背景技术:

深度相机用来获取物体的三维深度信息,利用深度信息则可以进行三维建模、识别、人机交互等应用,进一步被用来进行3d打印、人脸识别支付、slam(simultaneouslocalizationandmapping即时定位与地图构建)、体感操控等。在已有的深度相机方案中,结构光深度相机被普通采用,该方案的原理是:通过向目标物体投射一定模式的结构光,利用专用的深度计算芯片对采集到的结构光图案进行分析得到目标物体的深度信息,此处专用的深度计算芯片被设置成完成单一的深度数据计算及处理功能,具有高集成、低功耗等特点,从而使得深度相机可以实时地获取高分辨率的目标深度图。

随着深度相机的广泛应用,深度相机从单一的独立设备逐渐向嵌入式设备转变,例如将深度相机集成到电脑、平板、手机、机器人、无人机等主体设备中使得这些主体设备具有3d视觉,极大的拓展了主体设备的功能应用。另外,深度相机的应用场景也越来越广泛,在室内应用方面比如基于深度相机的客厅娱乐以及具有3d视觉的服务机器人等,在室外应用方面有无人机、手机等。

不同的主体设备以及应用场景中,对深度相机的性能要求也不同,往往需要根据具体应用进行专门定制,深度相机中的投影仪和图像采集单元的定制一般是比较容易实现且成本较低的,而深度计算处理芯片的定制则需要消耗极大的时间及资源成本。现有技术中的深度计算处理芯片仅能适应较少的主体设备,且只能执行较少的功能,难以满足多种应用的需求。



技术实现要素:

本发明的主要目的在于提出一种可以适应多种主体设备、具有多种工作模式、可实现多种功能的多模式深度计算处理器,以解决现有的深度计算处理芯片所存在的功能单一、适用范围窄以及需要根据具体应用进行专门定制的技术问题。

本发明为解决上述技术问题所提供的技术方案如下:

一种多模式深度计算处理器,通过输入端口接收彩色图像数据,对所述彩色图像数据进行第一计算处理后得到彩色图像,并将所述彩色图像经由输出端口输出至主机设备,使得所述深度计算处理器工作于彩色图像处理模式;通过输入端口接收不可见光图像数据,对所述不可见光图像数据进行第二计算处理后得到不可见光图像,并将所述不可见光图像经由输出端口输出至主机设备,使得所述深度计算处理器工作于不可见光图像处理模式;通过输入端口接收结构光图像,对所述结构光图像进行深度计算处理后得到深度图,并将所述深度图经由输出端口输出至主机设备,使得所述深度计算处理器工作于深度处理模式。

本发明提供的上述多模式深度计算处理器,通过输入端口接收不同的图像数据类型,并配置有多种工作模式对不同类型的数据进行相应的数据处理,多种模式可以并行执行于深度计算处理器,也可单独工作于某种工作模式,从而可以实现多种功能,适配不同的主体设备。

可见,本发明的多模式深度计算处理器可适应多种主体设备,与内置多个单一功能的处理器相比,可使主体设备的整体体积以及功耗得以降低。

本发明另还提供了一种3d图像设备,包括前述的多模式深度计算处理器;投影仪,连接于所述深度计算处理器,并在所述深度计算处理器的控制下产生结构光图案以投射于目标物体;第一图像采集单元,连接于所述深度计算处理器,用于采集目标物体的结构光图像并输出至所述深度计算处理器,以通过所述深度计算处理器在所述深度处理模式下对结构光图像进行处理生成深度图。

附图说明

图1是本发明具体实施例提供的带有深度相机的移动终端应用场景示意图;

图2-1是本发明具体实施例提供的一种深度相机的结构示意图;

图2-2是本发明具体实施例提供的另一种深度相机的结构示意图;

图3是本发明具体实施例提供的多模式深度计算处理器的原理框图;

图4是本发明具体实施例提供的多模式深度计算处理器的细节架构图。

具体实施方式

下面结合附图和具体的实施方式对本发明作进一步说明。

图1是根据本发明实施例的带有深度相机的移动终端的应用场景示意图。在图1中,用户43手持手机41,并用手44在对手机41进行操控。这里的手机41也可以是其他移动终端设备,比如平板、个人电脑等,更宽泛地可以是拥有独立计算、显示等功能的计算设备。手机41前置配备有相机42,这里的相机42指可以用来获取目标深度信息的深度相机。

深度相机42通过向目标空间中投射结构光图案(结构光图案指的是经特殊编码的固定图案,一般为不可见光图案,比如红外激光图案、紫外激光图案等),随后深度相机42利用自身的图像传感器采集到被目标调制过的结构光图案后,经由内部深度计算芯片处理后得到目标的深度图像。深度图像中各个像素值代表的是目标的点相对于图像传感器的距离。进一步地,根据图像传感器的内部参数以及各个像素的深度信息,可以获取各个像素在图像传感器坐标系中的三维坐标信息,即目标的点云数据。根据点云数据可以用于进行三维重建、人体识别、骨架提取、姿势动作识别等基于3d图像的功能,比如图1中用户43利用手44与手机41进行手势隔空操控。

深度相机42除可以获取深度图像之外,在一实施例中还需要获取目标的rgb图像,以满足一些基于rgb图像的应用,比如自拍等。另外,深度相机42还被配置为提供诸如红外图像的不可见光图像,由于红外图像具有对环境光的抗干扰性,可以让主体设备具有非常稳健的基于红外图像的人脸识别功能。在一些应用中,还需要将深度图像、rgb图像、红外图像进行配准,比如利用rgbd图像可以使得三维模型具有颜色信息,比如利用ird(红外-深度)图像实现对人脸二维及三维的特征识别等。

深度相机本身属于3d图像设备,由于配置了深度相机,移动终端可以基于深度相机的输出实现例如上述提到的3d图像功能,因此总体上看,该移动终端也可视作一3d图像设备。

本发明的具体实施方式中提出了一种3d图像设备,包括多模式深度计算处理器(后述简称深度计算处理器)、投影仪以及第一图像采集单元,所述投影仪连接于所述深度计算处理器,并在所述深度计算处理器的控制下产生结构光图案以投射于目标物体;所述第一图像采集单元连接于所述深度计算处理器,用于采集目标物体的结构光图像并输出至所述深度计算处理器。如前所述,此处的3d图像设备既可以是深度相机,也可以是带有深度相机的移动终端,当该3d图像设备是移动终端时,该3d设备还包括应用处理器。

作为3d图像设备的一种具体形式的深度相机可以被用于如图1所示的移动终端41中,并且可以有两种不同的模式,如图2-1和图2-1分别示例性地绘示了两种不同模式的深度相机,但这只是示例性的,并不代表本发明的深度相机只有图中所示的两种模式。

图2-1所示的深度相机20包括深度计算处理器100、第一图像采集单元21、第二图像采集单元22、投影仪23、存储器24以及传输接口25,深度计算处理器100连接于第一图像采集单元21、第二图像采集单元22、投影仪23和存储器24。其中,投影仪23用于向目标物体投射结构光图案,其中含有光源230、透镜以及结构光图案生成器件231,其中光源230可以为面发射激光、垂直腔面激光(vcsel)阵列,图案生成器件231可以为毛玻璃、衍射光学元件(doe)或两者组合。

其中,如图3所示,深度计算处理器100包括至少两个输入端口(图中所示的输入端口1、2、3等)、输入开关器、数据处理引擎以及至少一个输出端口。其中,输入端口1、2、3等用于接收第一图像数据,具体地每个输入端口接收来自一对应的图像传感器的第一图像数据,例如输入端口1接收第一图像采集单元中的图像传感器1采集的第一图像数据,输入端口2对应地接收第二图像采集单元中的图像传感器2采集的第二图像数据(第一图像数据可以包括多种类型)。其中所述第一图像数据至少包括在结构光投影下采集的结构光图像。所述输入开关器连接于所述输入端口,用于供来自于所述输入端口的全部或部分第一图像数据通过,即该输入开关器可以允许全部输入端口的第一图像数据通过,也可以选择性地只允许其中部分输入端口的第一图像数据通过。所述数据处理引擎,连接于所述输入开关器,用于对经由所述输入开关器输出的第一图像数据进行计算处理以输出第二图像数据,其中第二图像数据至少包括深度图,所述数据处理引擎至少包括深度处理引擎,该深度处理引擎用于对输入的结构光图像进行深度计算处理,以得到所述深度图。所述深度处理引擎被配置为用于执行一计算机程序以实现对结构光图像进行深度计算处理并生成深度图的步骤,使得深度计算处理器可工作于深度处理模式。

在一种具体的实施例中,投影仪23向目标空间投射一结构光图案例如散斑颗粒图案,该散斑颗粒图案预先向距深度相机已知距离的平面上投射,被第一图像采集单元21采集后作为参考散斑图像并保存到存储器24中,这里的存储器为非易失性存储器,比如闪存。闪存可以被包含在深度计算处理器100中,也可以作为外围设备通过闪存接口与深度计算处理器连接,内部保存的参考散斑图像被读取后经由输入开关器进入到深度处理引擎或不经由输入开关器直接进入深度处理引擎。当目标空间中有人体或其他目标物体时,所投射的散斑颗粒图案被人体调制,调制后的散斑颗粒图案被第一图像采集单元21采集后得到目标物体的目标散斑图像(即第一图像数据中的结构光图像),该目标散斑图像与参考散斑图像对应的各像素之间会存在横向偏移,深度计算处理器100接收来自第一图像采集单元21的该目标散斑图像并从存储器24中提取参考散斑图像,将这两幅图像进行偏离量的计算,根据偏离量可以进一步计算出目标散斑图像中各像素对应的空间点距离深度相机的深度值zd,计算公式如下:

其中,b是第一图像采集单元21与投影仪23之间的距离,z0为参考散斑图像采集时已知平面距离深度相机的深度值,f为第一图像采集单元21中透镜的焦距。经过上述公式计算出目标散斑图像的各像素点的zd后,即可得到对应的深度图,并经过深度计算处理器的输出端口(相当于深度相机20的传输接口25)向主体设备输出。

一般而言,图像采集单元包括图像传感器、透镜等元件,图像传感器一般有cmos或ccd。例如,第一图像采集单元21包括图像传感器210及透镜等元件,图像传感器210的表面通过设置与各像素一一对应的滤光片以实现对不同波长光线的强度提取,从而使得第一图像采集单元21可以采集到不同波长的不可见光图像。其滤光片允许通过的光的波长与光源230的波长一致,比如近红外光、紫外光等。第二图像采集单元22可以采用拜尔滤光片来获取分别三个通道(r,g,b)的光强信息,采集目标物体的彩色图像。

如图2-1所示,一些实施例中,深度相机20还包括泛光照明器26例如激光二极管、led等,优选地,泛光照明器26的发光波长与光源230的波长相同。泛光照明器26连接于深度计算处理器100,其开/关、功率等可以由深度计算处理器100控制。控制泛光照明器26与图像传感器同步,可采集泛光图像。

一种具体的实施例,深度相机20中,同步打开投影仪23,通过第一图像采集单元21和第二图像采集单元22同步采集到目标物体的所述目标散斑图像和彩色图像,其中目标散斑图像经过深度计算处理器100中的深度处理引擎进行处理计算后生成深度图,再通过深度计算处理器100中的图像配准引擎将生成的深度图与彩色图像进行配准,输出配准后的混合图像至主体设备,使得深度计算处理器可同时工作于深度处理模式、彩色图像处理模式以及图像配准模式。

其中,深度处理引擎对输入的结构光图像进行深度计算处理以输出深度图的具体过程包括但不限于以下三种:①基于一幅参考图像和单路结构光图像进行深度计算处理,以获得所述深度图。②不需要参考图像,直接获取两路结构光图像进行深度计算处理,以输出所述深度图。③通过两个独立的深度处理子引擎,各自分别基于不同的参考图像,对所述结构光图像进行深度计算处理,以获得两路深度图;再通过一个深度图合成处理子引擎,对所述两路深度图进行合成处理,以生成单路深度图。

具体而言,深度计算处理一般包括匹配计算——深度计算,即先通过匹配算法计算出一幅图像中各个像素相对于另一幅图像中相应像素之间的偏离值,其次通过偏离值计算出深度信息。

另外,也可通过深度计算处理器100中的彩色图像处理引擎对第二图像采集单元采集到的彩色图像数据进行计算处理,输出彩色图像(例如rgb图像或yuv图像)。彩色图像处理引擎被配置为用于执行一计算机程序,该计算机程序用于实现对彩色图像数据处理以生成所述彩色图像的步骤,使得深度计算处理器可工作于彩色图像处理模式。此处对彩色图像数据进行计算处理的方式有多种,比如,第二图像采集单元采集到的彩色图像数据只有一路传输到彩色图像处理引擎中,彩色图像处理引擎需要将这一路数据进行处理,以形成具体格式的三路数据构成的彩色图像,例如rgb、yuv格式等。从而,如图2-1所示的深度相机20可以通过传输接口向外输出的不只有深度图,还可输出配准后的混合图像、rgb图像或yuv图像。

图2-2所示的深度相机30,与图2-1中的深度相机20相比,结构的不同之处在于还包含有第三图像采集单元33,它与第一图像采集单元21被分设于投影仪23的两侧,其他方式中也可以位于同一侧,当这两个图像采集单元具有相同的参数时,可以通过深度相机30实现主动双目视觉。举例来说,通过投影仪23向目标空间中投射散斑颗粒图案,然后通过第一图像采集单元21及第三图像采集单元33同步地采集目标物体的左右两幅目标散斑图像,通过计算两幅目标散斑图像的像素偏离值则进一步可以计算出一幅深度图,这种模式下,则不需要参考散斑图像,与图2-1所示的深度相机20可实现的单目主动视觉相比,所得到的深度图具有更好的抗环境光性能,因此深度图的精度更高。

深度相机30的另一种实施例中,第一图像采集单元21和第三图像采集单元33分别与投影仪23组成单个的结构光图像获取装置,同步地分别采集到目标物体的两幅结构光图像后,输入到深度计算处理器100,分别结合各自的参考散斑图像,可以输出对应的两幅深度图。更进一步地,深度计算处理器100还配置有能够将这两幅深度图合并成单幅深度图的合并处理子引擎,如此合并计算得到的深度图与深度相机20实现的单目主动视觉相比,合成的深度图具有更高的分辨率,同时可以避免深度图像中的阴影问题。

深度相机30的又一实施例中,第三图像采集单元33与投影仪23组成结构光图像获取装置,同时第一图像采集单元21与泛光照明器26组成泛光图像获取装置以获取例如红外泛光图像,通过深度计算处理器100的控制单元分别对该两个装置进行控制:控制第一图像采集单元21与泛光照明器26同步触发,控制第三图像采集单元33与投影仪23同步触发,从而分别采集目标物体的红外泛光图像与结构光图像。也可以通过第三图像采集单元33采集不可见光图像例如红外图像,并输入至深度计算处理器100,对红外图像进行去燥、增强等处理后输出,同时还可将该红外图像与深度处理引擎的输出(即深度图)进行配准得到混合图像。深度计算处理器对接收到的不可见光图像数据例如红外图像数据等进行处理(例如图像去燥、增强等)以输出不可见光图像的过程可由一不可见光图像处理引擎执行一计算机程序来实现,该计算机程序即是用于实现不可见光图像数据处理的步骤。从而使得深度计算处理器可工作于不可见光图像处理模式;另,还可通过图像配准引擎执行另一计算机程序实现将不可见光图像数据与深度图进行配准的步骤,从而使得深度计算处理器可同时工作于图像配准模式和深度处理模式。

除图2-1及图2-2所示的深度相机结构之外,根据不同的需要深度相机的种类可以有很多种。比如为了实现配置有深度相机的主体设备的前、后深度图像获取,深度相机需要分别在主体设备前、后各配置一个投影仪及图像采集单元用于获取结构光图像,然后再经由深度计算处理进行计算处理,从而可同步实现主体设备前置、后置的深度图获取,或前、后分别单独地获取深度图。此处深度计算处理器中用于进行深度计算处理的深度处理引擎,可以是独立的两个,分别用于进行前置、后置的深度处理,也可以共用同一个深度处理引擎。

前述以深度相机20、30等为具体实现形式的3d图像设备,在通过深度计算处理器100得到深度图像、泛光图像、配准后的混合图像以及彩色图像(例如rgb图像、yuv图像等)等多种不同类型的第二图像数据后通过传输接口25向外输出。一种实施方式中,传输接口25为串行总线usb接口,深度计算处理器100将多种第二图像数据打包压缩后以统一的格式经usb接口输出到其他主体设备,比如电脑、游戏主机等。另一种实施方式中,传输接口25为多个mipi输出接口,主体设备中的控制器可以根据当前应用需要控制深度相机中的深度计算处理器100输出对应的第二图像数据,并经mipi输出接口输出到主体设备中(例如输出到主体设备手机的应用处理器,进行进一步处理,以实现其他更进一步的功能)。

作为3d图像设备的另一种具体形式是带有前述深度相机的移动终端,例如图1中带有深度相机的手机41。此种具体形式的3d图像设备还包括应用处理器,该应用处理器一般拥有更加强大的计算能力,从深度相机42(例如图2-1中的深度相机20或图2-2中的深度相机30)接收到例如深度图、rgb图像或ir图像(红外光谱图像)后,按照一定的程序进行处理,比如利用深度图进行三维重构、人体姿势和动作识别以及物品识别中的一种或多种,从而使得手机41可以实现对用户43的人脸进行3d扫描和识别;另外,应用处理器可以接收所述深度计算处理器输出的rgb图像以及不可见光图像,用来进行生物特征识别,比如虹膜识别、人脸识别、唇语识别等。这里的3d扫描及识别等程序被预先保存在手机41内部的非易失性存储器上,比如闪存、只读存储器等等。在本例中,深度相机42与手机41之间的数据传输接口可以有多种,优选地,采用单个或多个mipi接口独立、可同步地传输深度相机输出的图像、视频信息。在该例中,深度相机42是设置于手机41上,然而,另一些情况下,深度相机也可以与主体设备分离,此时优选地,二者之间的数据传输接口可以采用usb接口,多种图像视频信息在深度相机中被整合、打包以及压缩后以多路复用格式由usb接口传输到主体设备中。

前述的实施例中所涉及的深度计算处理器,是一种多功能、可适配多种主体设备的深度计算处理器,其可以是独立的专用芯片,也可以是作为soc芯片的内部ip核,此外利用算法来实现诸如该深度计算处理器的功能的软件也在本发明的保护范围内,例如将类似的功能通过其他可编程处理器(如fpga)或者计算机软件来实现都应落入本发明的范围内。为了可以将该深度计算处理器用于前面所提到的多种深度相机中,输入端口需要被设置为多个,并同时与所述输入开关器相连,输入开关器可以根据不同的深度相机应用场景选择第一图像数据输出到数据处理引擎中进行相应的图像处理。

所述深度计算处理器100还包括连接于所述输出端口和所述数据处理引擎之间的输出开关器,用于供全部或部分第二图像数据通过至所述输出端口。需要说明,输入开关器和输出开关器要选择让哪些图像数据通过,是可以根据应用场景预先设定的,也可以由一控制单元进行控制和调整。

下面参考图3和图4来对深度计算处理器100进行详细的说明。

如图3所示,各输入端口分别对应地连接至一个外围的图像传感器,以分别从各自连接的图像传感器接收所述第一图像数据。这些图像传感器例如相当于前述深度相机中的图像采集单元内的图像传感器。各图像传感器所采集的图像类型可以有所不同,因此各输入端口的第一图像数据相应地也有不同的类型。例如,第一图像数据包括来自图像传感器1采集的结构光图像,还可包括来自图像传感器2采集的彩色图像数据、来自图像传感器3在红外泛光灯(也可以是其他不可见光的泛光灯)照明下采集的红外图像数据(相应地也可以是其他不可见光图像数据)等。需要说明的是,尽管在这里用了3个图像传感器1、2、3来分别接收结构光图像、彩色图像数据以及红外图像数据,然而利用单图像传感器在不同的时刻也可以被用来获取多种图像数据,比如当结构光图像是红外结构光图像时,若结构光投影仪投影时,图像传感器1采集的是结构光图像,若是红外泛光灯进行照明时,利用图像传感器1可以采集红外图像数据。对应于输入的多种类型的第一图像数据,数据处理引擎相应地也包括多个具有不同功能的处理引擎,例如还包括不可见光图像处理引擎、彩色图像引擎以及图像配准引擎中的一种或多种。

其中,所述不可见光图像处理引擎(图3中以具体的一种例子——红外图像处理引擎示意)用于对第一图像数据中的不可见光图像数据进行一第一计算处理以输出不可见光图像。例如,不可见光图像数据是红外图像数据,所述第一计算处理例如可以是对输入的红外图像数据进行去燥、增强等处理。所述彩色图像处理引擎用于对第一图像数据中的彩色图像数据进行一第二计算处理以输出彩色图像,例如rgb图像或yuv图像等,相应地,所述第二计算处理可以被配置为对彩色图像数据进行去燥,或者配置成对彩色图像数据经插值、拟合等方法分成三个通道,然后将这三个通道的数据转换成对应的彩色图像数据,如rgb或yuv;当然,第二计算处理也可以被配置为其它对彩色图像的处理功能,例如对输入的彩色图像进行增强等处理。所述图像配准引擎用于将所述红外图像与所述深度图进行配准,或将所述彩色图像与所述深度图进行配准。所述图像配准引擎一般并非直接与输出端口连接,而是与深度处理引擎、不可见光图像处理引擎以及彩色图像处理引擎连接,用于接收所述深度图、不可见光图像以及彩色图像,以及将输入的不可见光图像与生成的所述深度图进行配准,或将输入的所述彩色图像与生成的所述深度图进行配准。

深度计算处理器100中还包含有至少一条总线,负责各个部分之间的数据传输,以及对外围的图像传感器、投影仪、存储器等设备的开关、功率控制。更优选的方案中,如图3所示,深度计算处理器100具有两条总线:第一总线设备101和第二总线设备102;其中,所述第一总线设备101用于控制与所述深度计算处理器100连接的外围设备,并通过一桥103连接至所述第二总线设备102;所述控制单元连接至所述第二总线设备102,以对所述输入开关器、所述输出开关器以及所述外围设备的接口等进行管理。如图4所示,在优选的实施例中,第一总线设备101采用apb总线,第二总线设备102采用高性能ahb总线,两总线之间通过apb桥连接。具体地,apb总线通过i2c来控制外围设备的同步触发,或者通过脉宽调制器pwm来控制外围设备的功率,外围设备例如图像传感器、投影设备、红外泛光灯、温度控制装置tec等。控制单元负责对深度计算处理器进行全盘的管理,包括启动、参数配置,或者功率、接口等的管理。如图4所示,控制单元连接到ahb总线上,而ahb总线与apb总线之间又通过桥进行连接,由此可以实现控制单元对深度计算处理器中各个部件以及外围设备、接口的管理。在其它实施例中,也可以为其它总线形式。

在配置有总线的实施例中,控制单元通过连接到总线上实现对各个部分的控制。例如,控制单元连接到第一总线设备102,同时输入开关器和输出开关器也都连接到第二总线设备102,如此实现控制单元通过第二总线设备102对输入开关器和输出开关器的控制,例如根据实际应用需要控制输入开关器选择需要的第一图像数据输入到数据处理引擎,而输出开关器可以有选择地输入由数据处理引擎处理后输出的数据,或者有选择地将数据处理引擎传输来的数据进行有选择地输出。当然,在另外一些实施例中,输入开关器和输出开关器需要如何选择哪些数据通过,也可以不完全由控制单元控制,可以根据深度计算处理器的具体应用场景来进行预先设定。

图3所示的深度计算处理器100的一种示例性细节架构如图4所示,深度计算处理器100可在一块半导体基底上通过设置各个功能元件,并通过布线将各个功能元件之间进行连接,这种专用的集成电路具有体积小、功耗低的优点。深度计算处理器100对外通过多个引脚实现连接,引脚根据功能被设置成不同的端口种类,比如输入、输出端口,可以采用dvp、mipi、usb、dvi、hdmi、bnc、rj-45等类型的接口。其他种类接口的传输在此不做赘述。

在如图4所示的具体例子中,深度计算处理器设置有三个输入端口11、12、13,均为mipi接口,在其他实施方式中也可以包括dvp接口,可以分别与两个红外图像传感器ir1cmos、ir2cmos以及一个彩色图像传感器rgbcmos连接,每个输入端口从与之连接的图像传感器接收不同的第一图像数据;当深度计算处理器100被应用在不同的深度相机中,三个输入端口可以选择性进行连接,例如对于图2-1所示的深度相机,仅需要两个输入端口分别连接一个红外图像传感器及一个彩色图像传感器,而对于图2-2所示的深度相机,则三个输入端口均需要连接,分别连接如图4中所示的三个图像传感器ir1cmos、ir2cmos以及rgbcmos。

在图4所示的例子中,mipi接口由mipid-phy物理层接口以及二代摄像头高速串行接口csi-2两部分构成,其中在d-phy给出了数据传输在物理层上的定义,csi-2的结构一般由组/解包层、协议层以及通道管理层组成,根据数据在三个层级之间的传输路线,csi-2可以分为csi-2rx接收端以及csi-2tx发送端,在输入端口中则应为csi-2rx接收端(以接收来自图像传感器的数据),在输出端口中则应为csi-2tx发送端(以将第二图像数据发送到主体设备如手机等)。图像数据的传输路线为通道管理层——协议层——解包层,其中:

通道管理层用于将数据流按照通道输出需求进行分割和重组;

法律协议层按照一定协议规范将数据加上包头包尾;

组/解包层将采集到的像素点信息流按照一定次序重组打包或解包。

如图4所示,输入开关器连接于mipi输入接口和数据处理引擎之间,输入开关器的作用就是针对各种不同的应用情形选择性地让mipi输入接口的数据经过,此外还将通过的图像数据传输至对应的图像处理引擎(例如图4中所示的红外图像处理引擎、彩色图像处理引擎或深度处理引擎)。在一种实施例中,三个输入端口有数据输入,但当前的应用仅需要其中某二个端口的数据,则输入开关器可以有选择地将需要的二个输入端口的数据进行输出。输入开关器具体需要实现的功能可以预先设定好,比如该深度计算处理器100是放置在图2-1所示的深度相机中时,则预先设定好输入开关器仅允许需要的其中两个输入端口进行数据输入;当然,也可如前述所说的由控制单元进行控制和调整。

在图4所示的例子中,深度处理引擎用于接收红外图像传感器传输来的红外图像(此处的红外图像与一般的红外图像区分,它是指结构光比如具有固定图案的红外光照射下采集到的目标的红外图像,属于结构光图像)以及参考图像(参考图像可解释为:结构光图案投射到一个与图像传感器距离已知的平面上时,被图像传感器所采集到的结构光图像)来计算深度图,具体的计算方法可参考前述第[0025]段的内容,在此不再重复。比如对于图2-1所示的深度相机而言,深度处理引擎接收结构光投影下采集的红外图像以及参考图像来进行深度图像计算。其中参考图像可以被保存在闪存中,闪存即可以被包含在深度计算处理器100中,也可以作为外围设备通过闪存接口与深度计算处理器100连接,例如图3中所示的,作为外围设备的存储器通过存储接口与深度计算处理器100连接,例如可以连接到第二总线设备102上,当需要参考图像时,可以读取并经由输入开关器输入到深度处理引擎中,或者也无需经过输入开关器,而是通过参考图像读取器经由第二总线设备102读取,读取后直接送入深度处理引擎。

如图4所示的深度计算处理器应用于如图2-2所示的深度相机时,一种情形下,获取深度图是不需要参考图像的,深度处理引擎直接读取两幅结构光投影下采集的红外图像来计算深度图像,计算出一幅图像中各个像素相对于另一幅图像中相应像素之间的偏离值,其次通过偏离值计算出深度信息,以此来获取深度图。另一种情形下是需要读取两幅参考图像用来分别计算两幅深度图像,对于这种情形,深度处理引擎也可以被设计成两个独立的引擎单元来分别用于计算两幅深度图像,可参考前述第[0033]段的描述。

经过数据处理引擎处理后输出的第二图像数据,会从输出端口向外输出。输出端口也可被配置为多个,可以为任何能够传输视频、图像等数据的接口,比如mipi、usb、dvi、hdmi、bnc、rj45等接口,输出接口均与输出开关器连接,经过输出开关器选择后通过的第二图像数据经由多个输出端口输出,同一组第二图像数据也可以通过多个输出接口同时向不同的主体设备输出。例如,得到的深度图可以同时通过两个mipi输出接口向手机和电脑输出。在一种实施方式中,也可以将这些输出接口的一个或多个直接与数据处理引擎连接,具体的连接方式在此不做限定。

如图4所示的细节架构图,在一种优选的实施例中,数据处理引擎中的各引擎均连接至输出开关器,通过输出开关器再连接至输出端口。输出开关器与三个处理引擎连接后,可以根据当前应用选择性地从处理引擎接收第二图像数据,比如,若当前应用仅需要彩色图像,则输出开关器仅接收彩色图像处理引擎输出的数据并经由mipi输出接口向外输出。一种实施方式中,向外输出到其他的应用处理器中,如输出到手机的应用处理器中。在一种实施方式中,也可以同时输出多组第二图像数据,经由csi-2txcontroller及mipid-phy向外输出,这里的由csi-2txcontroller及mipid-phy组成的mipi输出接口可以只有一个,也可以有多个。

参考图4,数据处理引擎中的各处理引擎输出的第二图像数据可以传输到usbfifo中。如图2所示,在一些实施例中,深度计算处理器还可接收来自主体设备输入的音频数据,音频数据通过立体声麦克风并被adc转换成数字格式后经iis接收器接收,再传输到usbfifo中,usbfifo起到了数据缓冲的作用,同时将各种数据进行打包后经由ahb总线传输到usb接口并输出到主机。usb接口包括usb控制器及usbphy(物理层)接口,当usbfifo中的数据准备好后,usb控制器访问ahb总线来读取准备好的数据包。

可见,本发明提供的深度计算处理器,通过设置多个输入端口可以支持多种类型的图像数据同时输入,并通过输入开关器对输入的图像数据进行选择和组合,以供数据处理引擎进行计算处理,针对不同类型的图像数据以及不同组合的图像数据,数据处理引擎可以进行不同的计算处理,输出多种不同的图像,从而可以实现多种功能,又通过配置多种输出端口以适配不同的主体设备。可见,本发明的深度计算处理器可适应多种主体设备,与内置多个单一功能的处理器相比,可使主体设备的整体体积以及功耗得以降低。

在以上的说明中,图像数据一般是以视频流的形式输入、处理及输出的。在一种实施方式中,深度计算处理器特别是深度处理引擎在接收数据时是逐行或逐列进行接收的,同样地,也是对逐行或逐列的数据进行计算得到相应的深度信息后输出,这种处理方式将会更加高效,也不需要在深度计算处理器中设置过多的数据缓冲器。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。

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