CN115883815A - 一种图像数据输出的方法、装置、下位机及存储介质 - Google Patents
一种图像数据输出的方法、装置、下位机及存储介质 Download PDFInfo
- Publication number
- CN115883815A CN115883815A CN202211335128.4A CN202211335128A CN115883815A CN 115883815 A CN115883815 A CN 115883815A CN 202211335128 A CN202211335128 A CN 202211335128A CN 115883815 A CN115883815 A CN 115883815A
- Authority
- CN
- China
- Prior art keywords
- lower computer
- map
- target
- depth map
- camera
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
本申请公开了一种图像数据输出的方法、装置、下位机及存储介质,用于使上位机得到帧同步后的深度图和彩色图,提高RGBD相机的帧同步性。本申请方法包括:下位机获取上位机当前的工作模式;若所述工作模式为双摄像头工作模式,则所述下位机控制TOF摄像头和RGB摄像头开启,并获取所述TOF摄像头输出的深度图和所述RGB摄像头输出的彩色图;所述下位机根据所述深度图的时间戳和所述彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图;所述下位机将所述目标深度图和所述目标彩色图缓存至UVC数据传输缓冲区,并将所述UVC数据传输缓冲区中的数据通过UVC协议输出至所述上位机。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种图像数据输出的方法、装置、下位机及存储介质。
背景技术
RGBD相机在采集图像的时候会形成RGBD图像,RGBD图像是由彩色(RGB)图像和深度(Depth)图像共同组成的,因此RGBD相机输出的图像中同时包含了三维信息和色彩信息,与传统的二维彩色相机或深度相机相比,RGBD图像所包含的信息更加丰富,在智能手机、智能电视、AR/VR设备、智能穿戴、机器人等领域中被广泛的应用。
现有技术中,市面上的RGBD相机大部分都是由RGB模组与深度模组分别出图,在使用时不仅需要通过上位机客户端分别指定两个模组的分辨率,并且两个设备出图的话,RGB图与深度图的帧同步实现复杂,需要在上位机进行帧同步,但在上位机进行帧同步的难点在于:1、UVC(USB Video Class,USB视频捕获设备)协议在图像传输时并不会携带时间戳信息,即无法在上位机利用时间戳来进行帧同步;2、上位机需要分别打开两个UVC相机设备,而不同设备的特性不同,上位机无法精准的控制两个UVC相机设备同时开机,也会导致帧的同步性不高。
发明内容
本申请提供了一种图像数据输出的方法、装置、下位机及存储介质,用于使上位机得到帧同步后的深度图和彩色图,提高RGBD相机的帧同步性。
本申请第一方面提供了一种图像数据输出的方法,包括:
下位机获取上位机当前的工作模式;
若所述工作模式为双摄像头工作模式,则所述下位机控制TOF摄像头和RGB摄像头开启,并获取所述TOF摄像头输出的深度图和所述RGB摄像头输出的彩色图;
所述下位机根据所述深度图的时间戳和所述彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图;
所述下位机将所述目标深度图和所述目标彩色图缓存至UVC数据传输缓冲区,并将所述UVC数据传输缓冲区中的数据通过UVC协议输出至所述上位机。
可选的,所述下位机根据所述深度图的时间戳和所述彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图,包括:
所述下位机将所述深度图和对应的时间戳存入第一缓存队列,将所述彩色图和对应的时间戳存入第二缓存队列;
所述下位机将位于所述第二缓存队列队首的彩色图确定为目标彩色图;
所述下位机根据所述目标彩色图的时间戳在所述第一缓存队列中匹配同步的目标深度图。
可选的,所述下位机根据所述目标彩色图的时间戳在所述第一缓存队列中匹配同步的目标深度图包括:
所述下位机从左到右遍历所述第一缓存队列,计算所述目标彩色图的时间戳与所述第一缓存队列中深度图的时间戳差值;
将所述时间戳差值小于预设值的深度图确定为目标深度图。
可选的,在所述下位机根据所述目标彩色图的时间戳在所述第一缓存队列中匹配同步的目标深度图之后,所述方法还包括:
所述下位机释放所述第一缓存队列中位于所述目标深度图之前的数据。
可选的,所述下位机获取所述TOF摄像头输出的深度图包括:
所述下位机获取所述TOF摄像头输出的相位图;
所述下位机将所述相位图转换为深度图和红外图。
可选的,在所述下位机根据所述深度图的第一时间戳信息和所述彩色图的第二时间戳信息进行比对,确定同步的目标深度图和目标彩色图之后,所述方法还包括:
所述下位机根据所述目标深度图确定目标红外图,所述目标红外图与所述目标深度图的时间戳相同;
所述下位机将所述目标深度图和所述目标彩色图缓存至UVC数据传输缓冲区包括:
所述下位机将所述目标深度图、所述目标红外图和所述目标彩色图缓存至UVC数据传输缓冲区。
可选的,在所述下位机获取上位机当前的工作模式之后,所述方法还包括:
所述下位机确定所述上位机当前的分辨率;
所述下位机根据所述分辨率确定所述深度图和所述彩色图的数据内容和格式。
可选的,所述深度图为YUV格式,所述彩色图为YUV格式或MJPEG格式。
可选的,在所述下位机获取上位机当前的工作模式之后,所述方法包括:
若所述工作模式为单摄像头工作模式,则所述下位机确定所述上位机当前的分辨率;
所述下位机根据所述分辨率控制TOF摄像头开启,或控制所述RGB摄像头开启;
若所述下位机控制所述TOF摄像头开启,则获取所述TOF摄像头输出的相位图,并将所述相位图输出至所述上位机;
若所述下位机控制所述RGB摄像头开启,则获取所述RGB摄像头输出的彩色图,并将所述彩色图输出至所述上位机。
可选的,所述相位图为YUV格式,所述彩色图为MJPEG格式。
本申请第二方面提供了一种下位机,包括:
获取单元,用于获取上位机当前的工作模式;
第一控制单元,用于当所述工作模式为双摄像头工作模式时,控制TOF摄像头和RGB摄像头开启,并获取所述TOF摄像头输出的深度图和所述RGB摄像头输出的彩色图;
同步单元,用于所述下位机根据所述深度图的时间戳和所述彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图;
第一输出单元,用于将所述目标深度图和所述目标彩色图缓存至UVC数据传输缓冲区,并将所述UVC数据传输缓冲区中的数据通过UVC协议输出至所述上位机。
可选的,所述同步单元包括:
存入模块,用于将所述深度图和对应的时间戳存入第一缓存队列,将所述彩色图和对应的时间戳存入第二缓存队列;
确定模块,用于将位于所述第二缓存队列队首的彩色图确定为目标彩色图;
匹配模块,用于将所述目标彩色图的时间戳在所述第一缓存队列中匹配同步的目标深度图。
可选的,所述匹配模块具体用于:
所述下位机从左到右遍历所述第一缓存队列,计算所述目标彩色图的时间戳与所述第一缓存队列中深度图的时间戳差值;
将所述时间戳差值小于预设值的深度图确定为目标深度图。
可选的,所述同步单元还包括:
释放模块,用于释放所述第一缓存队列中位于所述目标深度图之前的数据。
可选的,所述第一控制单元具体用于:
获取所述TOF摄像头输出的相位图;
将所述相位图转换为深度图和红外图。
可选的,所述同步单元还用于:
根据所述目标深度图确定目标红外图,所述目标红外图与所述目标深度图的时间戳相同;
所述第一输出单元具体用于:
将所述目标深度图、所述目标红外图和所述目标彩色图缓存至UVC数据传输缓冲区。
可选的,所述第一控制单元还用于:
确定所述上位机当前的分辨率;
根据所述分辨率确定所述深度图和所述彩色图的数据内容和格式。
可选的,所述深度图为YUV格式,所述彩色图为YUV格式或MJPEG格式。
可选的,所述下位机还包括:
第二控制单元,用于当所述工作模式为单摄像头工作模式时,确定所述上位机当前的分辨率,根据所述分辨率控制TOF摄像头开启,或控制所述RGB摄像头开启;
第二输出单元,用于当所述第二控制单元控制所述TOF摄像头开启时,获取所述TOF摄像头输出的相位图,并将所述相位图输出至所述上位机;
第三输出单元,用于当所述第二控制单元控制所述RGB摄像头开启时,获取所述RGB摄像头输出的彩色图,并将所述彩色图输出至所述上位机。
本申请第三方面提供了一种图像数据输出的装置,所述装置包括:
处理器、存储器、输入输出单元以及总线;
所述处理器与所述存储器、所述输入输出单元以及所述总线相连;
所述存储器保存有程序,所述处理器调用所述程序以执行第一方面以及第一方面中任一项可选的图像数据输出的方法。
本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上保存有程序,所述程序在计算机上执行时执行第一方面以及第一方面中任一项可选的图像数据输出的方法。
从以上技术方案可以看出,本申请具有以下优点:
将TOF摄像头和RGB摄像头接入下位机,并在使用时通过上位机指定下位机的工作模式,当该工作模式为双摄像头工作模式时,下位机控制TOF摄像头和RGB摄像头开启,分别获取TOF摄像头输出的深度图和RGB摄像头输出的彩色图,下位机再通过时间戳信息对得到的深度图和彩色图进行帧同步,将帧同步后的深度图和彩色图通过UVC协议传输至上位机,使得在不改变传输协议的前提下,上位机可以直接得到经过帧同步后的深度图和彩色图,大大节省了上位机的计算资源,并且简化了RGBD相机的帧同步过程,能够提高RGBD相机的帧同步性。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的图像数据输出的方法一个实施例流程示意图;
图2为本申请提供的图像数据输出的方法另一个实施例流程示意图;
图3为本申请提供的图像数据输出的方法另一个实施例流程示意图;
图4为本申请提供的下位机一个实施例结构示意图;
图5为本申请提供的图像数据输出的装置一个实施例结构示意图。
具体实施方式
本申请提供了一种图像数据输出的方法、装置、下位机及存储介质,用于使上位机得到帧同步后的深度图和彩色图,提高RGBD相机的帧同步性。
请参阅图1,图1为本申请提供的图像数据输出的方法的一个实施例,该方法包括:
101、下位机获取上位机当前的工作模式;
需要说明的是,本申请提供的图像数据输出的方法应用于下位机,例如网络摄像机、会议设备等带有摄像头的UVC相机设备。下位机通过UVC协议与上位机之间进行通信,UVC协议属于USB设备类规范协议,是用于USB接口的视频设备的一个统一的数据交换规范。在使用时,上位机可指定下位机的工作模式,下位机具体提供两种工作模式,分别是单摄像头工作模式和双摄像头工作模式,其中单摄像头工作模式是指下位机仅开启TOF摄像头以传输深度图至上位机,或仅开启RGB摄像头以传输彩色图至上位机;双摄像头工作模式则是同时开启TOF摄像头和RGB摄像头,并同时传输深度图和彩色图至上位机。
需要说明的是,本申请中的工作模式可直接通过分辨率来指定,即下位机可以通过上位机所指定的分辨率来确定上位机当前的工作模式。在一些具体的实施例中,以ASR7205平台(一种主控芯片)为例,在该平台上分别接入一颗1280x962的TOF摄像头和一颗1280x960的RGB摄像头。并且在该平台上开发一款以UVC协议(图像传输、相机控制、其他扩展协议等)为基础的下位机软件程序A(相当于本申请中的下位机),下位机软件程序A通过UVC协议构造出一款USB相机供主机端上位机B(相当于本申请中的上位机)使用,并且配置4种USB相机分辨率,分别为:
1、YUV1280x720;(双摄像头工作模式)
2、YUV1200x640;(双摄像头工作模式)
3、YUV1280x962;(单摄像头工作模式)
4、MJPEG1280x960;(单摄像头工作模式)
普通摄像头一般只有两种图像数据输出,分别是YUV(原始数据)和MJPEG两个格式,当设置YUV格式时,由于YUV格式的数据量较大,对于大分辨率时其输出帧率很低,但MJPEG格式经过一些量化、编码的操作,数据量小,输出的帧率较高,但图像质量相对于YUV格式较差。在实际使用时,主机端上位机B可以选择具体的分辨率,并通过uvc协议打开下位机软件程序A,下位机软件程序A则根据该分辨率确定当前的工作模式,并且根据工作模式执行后续步骤。
102、若工作模式为双摄像头工作模式,则下位机控制TOF摄像头和RGB摄像头开启,并获取TOF摄像头输出的深度图和RGB摄像头输出的彩色图;
如果上位机指定下位机的工作模式为双摄像头工作模式,则下位机控制接入的TOF摄像头和RGB摄像头开启,并且分别接收TOF摄像头输出的深度图和RGB摄像头输出的彩色图。
需要说明的是,TOF摄像头输出的深度图格式统一为YUV格式,但RGB摄像头输出的彩色图格式为YUV格式,下位机还可以对YUV格式的彩色图进行编码得到MJPEG格式的彩色图,具体可通过上位机所选择的分辨率来确定下位机最后输出的彩色图的格式。
例如,在步骤101列举的实例中,YUV1280x720和YUV1200x640对应本申请中的双摄像头工作模式,具体的,如果上位机指定1280x720的分辨率,下位机输出的数据格式和内容为640x480大小的YUV深度图和640x480大小的YUV彩色图;如果上位机指定1200x640的分辨率,下位机输出的数据格式和内容为640x480大小的YUV深度图和640x480大小的MJPEG彩色图。
103、下位机根据深度图的时间戳和彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图;
在下位机中,TOF摄像头和RGB摄像头输出的深度图和彩色图均携带有时间戳,下位机则可以利用该时间戳对深度图和彩色图进行同步,得到同步后的目标深度图和目标彩色图。
104、下位机将目标深度图和目标彩色图缓存至UVC数据传输缓冲区,并将UVC数据传输缓冲区中的数据通过UVC协议输出至上位机。
下位机将同步后的目标深度图和目标彩色图填入uvc_buffer,即本申请中的UVC数据传输缓冲区,当该uvc_buffer填充满后,下位机通过uvc协议将uvc_buffer中的数据输出给上位机,此时上位机就可以得到已经进行过帧同步的深度图和彩色图。
在本实施例中,将TOF摄像头和RGB摄像头接入下位机,并在使用时通过上位机指定下位机的工作模式,当该工作模式为双摄像头工作模式时,下位机控制TOF摄像头和RGB摄像头开启,分别获取TOF摄像头输出的深度图和RGB摄像头输出的彩色图,下位机再通过时间戳信息对得到的深度图和彩色图进行帧同步,将帧同步后的深度图和彩色图通过UVC协议传输至上位机,使得在不改变传输协议的前提下,上位机可以直接得到经过帧同步后的深度图和彩色图,大大节省了上位机的计算资源,并且简化了RGBD相机的帧同步过程,能够提高RGBD相机的帧同步性。
进一步的,通过在下位机预先配置好若干种USB相机分辨率,使得上位机可以直接选择需要的分辨率,下位机则根据该分辨率来确定TOF摄像头和RGB摄像头分别输出的数据格式和内容,由此实现灵活的搭配RGB图与深度图的分辨率和出图格式,而不需要通过上位机分别指定两个模组的分辨率,上位机只需要指定一个分辨率,由下位机来完成对TOF摄像头和RGB摄像头的控制以及深度图和彩色图的帧同步,操作流程简便,进一步简化了RGBD相机的使用以及帧同步过程。
下面对本申请提供的图像数据输出的方法中深度图和彩色图的同步方法进行详细说明,请参阅图2,图2为本申请提供的图像数据输出的方法的一个实施例,该方法包括:
201、下位机获取上位机当前的工作模式;
在本实施例中,步骤201与前述实施例步骤101类似,此处不再赘述。
202、若工作模式为双摄像头工作模式,则下位机控制TOF摄像头和RGB摄像头开启,并获取TOF摄像头输出的相位图和RGB摄像头输出的彩色图;
在本实施例中,如果上位机指定下位机的工作模式为双摄像头工作模式,则下位机控制接入的TOF摄像头和RGB摄像头开启,并且分别接收TOF摄像头输出的相位图和RGB摄像头输出的彩色图。
203、下位机将相位图转换为深度图和红外图;
下位机接收到TOF摄像头输出的相位图数据后,则将相位图数据输入至下位机中的DSP模块,即处理器中通过算法进行相位图至深度图和红外图的转化。本实施例中,TOF摄像头使用iTOF(Indirect-TOF)技术,iTOF是指通过红外光发射器发射调制后的红外光,使用调制光照射场景,并测量通过场景中的物体反射后返回光的相位延迟,得到相位延迟后再使用正交采样技术测量间接得到距离,即得到场景的深度信息。其中iTOF按照调制解调类型方式的不同还可以分为连续波(Continuous Wave,CW)调制解调方式和脉冲调制(Pulse Modulated,PM)调制解调方式,连续波调制通常将发射光波率谱调制为强度变化的方波,解调端检测经目标物体反射后的波形相位变化,这种测量方法首先将光飞行距离信息与光强变化的相位信息进行绑定,再将相位信息转换为光电探测器可检测的光强信息,间接实现了光飞行时间的测量。iTOF技术中输出的深度数据是通过解相位计算得到,因此下位机通过对TOF摄像头输出的相位图进行处理,可以将其转换为深度图和红外图。即在本实施例中,下位机不仅可以输出深度图至上位机,还可以将对应的红外图输出至上位机。
204、下位机将深度图和对应的时间戳存入第一缓存队列,将彩色图和对应的时间戳存入第二缓存队列;
为了后续进行帧同步,下位机将通过相位图转换得到的深度图和对应的时间戳信息存入下位机中的深度图缓存队列DepthQueue,即本申请中的第一缓存队列。
下位机将RGB摄像头输出的彩色图和对应的时间戳信息存入彩色图缓存队列RGBQueue,即申请中的第二缓存队列。
205、下位机将位于第二缓存队列队首的彩色图确定为目标彩色图;
下位机会实时监控RGBQueue,当RGBQueue中存在彩色图数据时,则将位于队首的RGBQueue(0)确定为目标彩色图,并读取该目标彩色图的时间戳。
206、下位机根据目标彩色图的时间戳在第一缓存队列中匹配同步的目标深度图;
下位机根据该目标彩色图的时间戳在DepthQueue中进行匹配,找到同步的目标深度图。
具体的,下位机从左到右遍历该DepthQueue,根据目标彩色图的时间戳与DepthQueue中每一项数据中的时间戳进行比对,计算目标彩色图的时间戳与DepthQueue中深度图的时间戳差值(取绝对值),找到该时间戳差值小于预设值的深度图DepthQueue(n),将其确定为目标深度图,即认为RGBQueue(0)和DepthQueue(n)为同步帧。
需要说明的是,该预设值可根据不同设备作具体设置,例如将该预设值设置为40ms,则下位机根据目标彩色图RGBQueue(0)的时间戳找到时间戳差值在40ms内的目标深度图DepthQueue(n)。
207、下位机释放第一缓存队列中位于目标深度图之前的数据;
下位机在确定了同步的目标彩色图RGBQueue(0)和目标深度图DepthQueue(n)后,则将RGBQueue(0)的数据释放,并将RGBQueue(1)中的数据移动到RGBQueue(0),但对于DepthQueue,下位机则是释放DepthQueue(0)到DepthQueue(n-1)的数据,即释放第一缓存队列中位于目标深度图之前的所有数据,再将DepthQueue(n)中的数据移动到DepthQueue(0),再进行下一次帧同步,依次循环。
需要说明的是,不将DepthQueue(n)数据释放而释放DepthQueue(0)到DepthQueue(n-1)的数据的原因是:TOF摄像头的帧率普遍低于RGB摄像头的帧率,存在两帧彩色图与同一帧深度图时间戳差值均小于预设值的情况,这样释放可以最大的保障输出的uvc_buffer帧率不受帧同步的影响。
需要说明的是,本实施例中步骤204至步骤206所描述的帧同步方法不仅适用于使用iTOF技术的场景,还适用于使用dTOF(direct-TOF)的场景,dTOF是指在TOF技术中直接对光飞行时间进行测量,使用不同的TOF技术不会对帧同步的结果造成影响。
208、下位机根据目标深度图确定目标红外图,目标红外图与目标深度图的时间戳相同;
在本实施例中,在确定了与目标彩色图同步的目标深度图之后,下位机直接根据目标深度图的时间戳确定具有相同时间戳的目标红外图。在一些具体的实施例中,在步骤204中,下位机可直接将深度图和红外图一并存入第一缓存队列DepthQueue,并一起进行同步。
209、下位机将目标深度图、目标红外图和目标彩色图缓存至UVC数据传输缓冲区,并将UVC数据传输缓冲区中的数据通过UVC协议输出至上位机。
下位机将同步后的目标深度图、目标红外图和目标彩色图填入uvc_buffer,即本申请中的UVC数据传输缓冲区,当该uvc_buffer填充满后,下位机通过uvc协议将uvc_buffer中的数据输出给上位机,此时上位机就可以得到已经进行过帧同步的深度图、红外图和彩色图。
需要说明的是,TOF摄像头输出的深度图格式统一为YUV格式,但RGB摄像头输出的彩色图格式可以为YUV格式,下位机还可以对YUV格式的彩色图进行编码得到MJPEG格式的彩色图(MJPEG编码需在同步之前进行)。具体可通过上位机所选择的分辨率来确定下位机最后输出的彩色图的格式。例如:
以上位机指定1280x720的分辨率为例:对应的uvc_buffer即为YUV1280x720,下位机将DepthQueue(n)中640x480YUV格式的目标深度图存入到uvc_buffer的第一个640x480位置,将640x480YUV格式的目标红外图存入到uvc_buffer的第二个640x480的位置,将RGBQueue(0)中640x480YUV格式的的目标彩色图存入到uvc_buffer的第三个的位置。对应上位机可得到数据格式和内容为640x480大小的YUV深度图、640x480大小的YUV红外图、640x480大小的YUV彩色图。
以上位机指定1200x640的分辨率为例:对应的uvc_buffer即为YUV1200x640,下位机将DepthQueue(n)中640x480YUV格式的目标深度图存入到uvc_buffer的第一个640x480位置,将640x480YUV格式的目标红外图存入到uvc_buffer的第二个640x480的位置,将RGBQueue(0)中640x480MJPEG格式的的目标彩色图存入到uvc_buffer的第三个的位置。对应上位机可得到数据格式和内容为640x480大小的YUV深度图、640x480大小的YUV红外图、640x480大小的MJPEG彩色图。
在本实施例中,将TOF摄像头和RGB摄像头接入下位机,并在使用时通过上位机指定下位机的工作模式,当该工作模式为双摄像头工作模式时,下位机控制TOF摄像头和RGB摄像头开启,分别获取TOF摄像头输出的深度图和RGB摄像头输出的彩色图,下位机再通过时间戳信息对得到的深度图和彩色图进行帧同步,将帧同步后的深度图和彩色图通过UVC协议传输至上位机,使得在不改变传输协议的前提下,上位机可以直接得到经过帧同步后的深度图和彩色图,大大节省了上位机的计算资源,并且简化了RGBD相机的帧同步过程,能够提高RGBD相机的帧同步性。
在本实施例中,通过在下位机预先配置好若干种USB相机分辨率,使得上位机可以直接选择需要的分辨率,下位机则根据该分辨率来确定TOF摄像头和RGB摄像头分别输出的数据格式和内容,由此实现灵活的搭配RGB图与深度图的分辨率和出图格式,而不需要通过上位机分别指定两个模组的分辨率,操作流程简便。并且在进行帧同步时,由于TOF摄像头的帧率低于RGB摄像头的帧率,因此在每一次进行帧同步后会将第一缓存队列中位于目标深度图之前的数据全部释放,再进行下一次帧同步,由此最大的保障输出的uvc_buffer帧率不受帧同步的影响。
下面对本申请提供的单摄像头工作模式进行说明,请参阅图3,图3为本申请提供的图像数据输出的方法另一个实施例,该方法包括:
301、下位机获取上位机当前的工作模式;
在本实施例中,步骤301与前述实施例步骤101类似,此处不再赘述。
302、若工作模式为单摄像头工作模式,则下位机确定上位机当前的分辨率;
在单摄像头工作模式下,下位机可以单独控制TOF摄像头开启运行,或单独控制RGB摄像头开启运行,具体开启哪颗摄像头可根据上位机所指定的分辨率进行判断。
303、下位机根据分辨率控制TOF摄像头开启,或控制RGB摄像头开启;
下位机根据上位机所指定的分辨率来开启TOF摄像头或开启RGB摄像头,例如,参考步骤101中列举的实例,该下位机上分别接入一颗1280x962的TOF摄像头和一颗1280x960的RGB摄像头,如果上位机指定分辨率为1280x962,则确定开启TOF摄像头,如果上位机指定分辨率为1280x960,则确定开启RGB摄像头。
304、若下位机控制TOF摄像头开启,则获取TOF摄像头输出的相位图,并将相位图输出至上位机;
如果上位机指定的分辨率为TOF摄像头的分辨率,则下位机会控制TOF摄像头开启,并接收TOF摄像头输出的YUV格式的相位图,然后将该相位图通过UVC协议输出给上位机,以供上位机进行二次开发,例如将该相位图发送给上位机以便上位机进行RGBD相机的标定。
需要说明的是,在另一些具体的实施例中,下位机也可以将该相位图转换为深度图和/或红外图,将该深度图和/或红外图输出至上位机,以便上位机直接使用深度图/或红外图。
例如,如果上位机指定分辨率为1280x962,则下位机开启TOF摄像头,并将1280x962大小的YUV格式相位图输出至上位机。
305、若下位机控制RGB摄像头开启,则获取RGB摄像头输出的彩色图,并将彩色图输出至上位机。
如果上位机指定的分辨率为RGB摄像头的分辨率,则下位机会控制RGB摄像头开启,并接收RGB摄像头输出的YUV格式的彩色图,然后将该YUV格式的彩色图通过VGS模块,即图像处理模块进行MJPEG编码,将编码后的MJPEG格式的彩色图通过UVC协议输出给上位机。
例如,如果上位机指定分辨率为1280x960,则下位机开启RGB摄像头,并将1280x960大小的MJPEG格式彩色图输出至上位机。
在本实施例中,下位机将根据上位机指定的工作模式(分辨率)选择单独开启TOF摄像头或RGB摄像头,以实现TOF摄像头或RGB摄像头的单独作业,满足更多的应用场景。
下面对本申请提供的下位机进行说明,请参阅图4,图4为本申请提供的下位机一个实施例,该下位机包括:
获取单元401,用于获取上位机当前的工作模式;
第一控制单元402,用于当工作模式为双摄像头工作模式时,控制TOF摄像头和RGB摄像头开启,并获取TOF摄像头输出的深度图和RGB摄像头输出的彩色图;
同步单元403,用于下位机根据深度图的时间戳和彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图;
第一输出单元404,用于将目标深度图和目标彩色图缓存至UVC数据传输缓冲区,并将UVC数据传输缓冲区中的数据通过UVC协议输出至上位机。
可选的,同步单元403包括:
存入模块4031,用于将深度图和对应的时间戳存入第一缓存队列,将彩色图和对应的时间戳存入第二缓存队列;
确定模块4032,用于将位于第二缓存队列队首的彩色图确定为目标彩色图;
匹配模块4043,用于将目标彩色图的时间戳在第一缓存队列中匹配同步的目标深度图。
可选的,匹配模块4043具体用于:
下位机从左到右遍历第一缓存队列,计算目标彩色图的时间戳与第一缓存队列中深度图的时间戳差值;
将时间戳差值小于预设值的深度图确定为目标深度图。
可选的,同步单元403还包括:
释放模块4044,用于释放第一缓存队列中位于目标深度图之前的数据。
可选的,第一控制单元402具体用于:
获取TOF摄像头输出的相位图;
将相位图转换为深度图和红外图。
可选的,同步单元403还用于:
根据目标深度图确定目标红外图,目标红外图与目标深度图的时间戳相同;
第一输出单元404具体用于:
将目标深度图、目标红外图和目标彩色图缓存至UVC数据传输缓冲区。
可选的,第一控制单元402还用于:
确定上位机当前的分辨率;
根据分辨率确定深度图和彩色图的数据内容和格式。
可选的,深度图为YUV格式,彩色图为YUV格式或MJPEG格式。
可选的,下位机还包括:
第二控制单元405,用于当工作模式为单摄像头工作模式时,确定上位机当前的分辨率,根据分辨率控制TOF摄像头开启,或控制RGB摄像头开启;
第二输出单元406,用于当第二控制单元控制TOF摄像头开启时,获取TOF摄像头输出的相位图,并将相位图输出至上位机;
第三输出单元407,用于当第二控制单元控制RGB摄像头开启时,获取RGB摄像头输出的彩色图,并将彩色图输出至上位机。
本实施例装置中,各单元及模块的功能与前述图1、2或3所示方法实施例中的步骤对应,此处不再赘述。
本申请还提供了一种图像数据输出的装置,请参阅图5,图5为本申请提供的图像数据输出的装置一个实施例,该装置包括:
处理器501、存储器502、输入输出单元503、总线504;
处理器501与存储器502、输入输出单元503以及总线504相连;
存储器502保存有程序,处理器501调用程序以执行如上任一图像数据输出的方法。
本申请还涉及一种计算机可读存储介质,计算机可读存储介质上保存有程序,其特征在于,当程序在计算机上运行时,使得计算机执行如上任一图像数据输出的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (13)
1.一种图像数据输出的方法,其特征在于,所述方法包括:
下位机获取上位机当前的工作模式;
若所述工作模式为双摄像头工作模式,则所述下位机控制TOF摄像头和RGB摄像头开启,并获取所述TOF摄像头输出的深度图和所述RGB摄像头输出的彩色图;
所述下位机根据所述深度图的时间戳和所述彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图;
所述下位机将所述目标深度图和所述目标彩色图缓存至UVC数据传输缓冲区,并将所述UVC数据传输缓冲区中的数据通过UVC协议输出至所述上位机。
2.根据权利要求1所述的方法,其特征在于,所述下位机根据所述深度图的时间戳和所述彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图,包括:
所述下位机将所述深度图和对应的时间戳存入第一缓存队列,将所述彩色图和对应的时间戳存入第二缓存队列;
所述下位机将位于所述第二缓存队列队首的彩色图确定为目标彩色图;
所述下位机根据所述目标彩色图的时间戳在所述第一缓存队列中匹配同步的目标深度图。
3.根据权利要求2所述的方法,其特征在于,所述下位机根据所述目标彩色图的时间戳在所述第一缓存队列中匹配同步的目标深度图包括:
所述下位机从左到右遍历所述第一缓存队列,计算所述目标彩色图的时间戳与所述第一缓存队列中深度图的时间戳差值;
将所述时间戳差值小于预设值的深度图确定为目标深度图。
4.根据权利要求2所述的方法,其特征在于,在所述下位机根据所述目标彩色图的时间戳在所述第一缓存队列中匹配同步的目标深度图之后,所述方法还包括:
所述下位机释放所述第一缓存队列中位于所述目标深度图之前的数据。
5.根据权利要求1所述的方法,其特征在于,所述下位机获取所述TOF摄像头输出的深度图包括:
所述下位机获取所述TOF摄像头输出的相位图;
所述下位机将所述相位图转换为深度图和红外图。
6.根据权利要求5所述的方法,其特征在于,在所述下位机根据所述深度图的第一时间戳信息和所述彩色图的第二时间戳信息进行比对,确定同步的目标深度图和目标彩色图之后,所述方法还包括:
所述下位机根据所述目标深度图确定目标红外图,所述目标红外图与所述目标深度图的时间戳相同;
所述下位机将所述目标深度图和所述目标彩色图缓存至UVC数据传输缓冲区包括:
所述下位机将所述目标深度图、所述目标红外图和所述目标彩色图缓存至UVC数据传输缓冲区。
7.根据权利要求1所述的方法,其特征在于,在所述下位机获取上位机当前的工作模式之后,所述方法还包括:
所述下位机确定所述上位机当前的分辨率;
所述下位机根据所述分辨率确定所述深度图和所述彩色图的数据内容和格式。
8.根据权利要求1所述的方法,其特征在于,所述深度图为YUV格式,所述彩色图为YUV格式或MJPEG格式。
9.根据权利要求1至8中任一项所述的方法,其特征在于,在所述下位机获取上位机当前的工作模式之后,所述方法包括:
若所述工作模式为单摄像头工作模式,则所述下位机确定所述上位机当前的分辨率;
所述下位机根据所述分辨率控制TOF摄像头开启,或控制所述RGB摄像头开启;
若所述下位机控制所述TOF摄像头开启,则获取所述TOF摄像头输出的相位图,并将所述相位图输出至所述上位机;
若所述下位机控制所述RGB摄像头开启,则获取所述RGB摄像头输出的彩色图,并将所述彩色图输出至所述上位机。
10.根据权利要求9所述的方法,其特征在于,所述相位图为YUV格式,所述彩色图为MJPEG格式。
11.一种下位机,其特征在于,所述下位机包括:
获取单元,用于获取上位机当前的工作模式;
控制单元,用于当所述工作模式为双摄像头工作模式时,控制TOF摄像头和RGB摄像头开启,并获取所述TOF摄像头输出的深度图和所述RGB摄像头输出的彩色图;
同步单元,用于所述下位机根据所述深度图的时间戳和所述彩色图的时间戳进行比对,确定同步的目标深度图和目标彩色图;
输出单元,用于将所述目标深度图和所述目标彩色图缓存至UVC数据传输缓冲区,并将所述UVC数据传输缓冲区中的数据通过UVC协议输出至所述上位机。
12.一种图像数据输出的装置,其特征在于,所述装置包括:
处理器、存储器、输入输出单元以及总线;
所述处理器与所述存储器、所述输入输出单元以及所述总线相连;
所述存储器保存有程序,所述处理器调用所述程序以执行如权利要求1至10中任一项所述方法。
13.一种计算机可读存储介质,所述计算机可读存储介质上保存有程序,所述程序在计算机上执行时执行如权利要求1至10中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211335128.4A CN115883815A (zh) | 2022-10-28 | 2022-10-28 | 一种图像数据输出的方法、装置、下位机及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211335128.4A CN115883815A (zh) | 2022-10-28 | 2022-10-28 | 一种图像数据输出的方法、装置、下位机及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115883815A true CN115883815A (zh) | 2023-03-31 |
Family
ID=85759100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211335128.4A Pending CN115883815A (zh) | 2022-10-28 | 2022-10-28 | 一种图像数据输出的方法、装置、下位机及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115883815A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108989606A (zh) * | 2018-08-22 | 2018-12-11 | Oppo广东移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
CN110312056A (zh) * | 2019-06-10 | 2019-10-08 | 青岛小鸟看看科技有限公司 | 一种同步曝光方法和图像采集设备 |
CN110460824A (zh) * | 2019-07-03 | 2019-11-15 | 青岛小鸟看看科技有限公司 | 一种图像数据的帧同步方法和相机 |
CN113052884A (zh) * | 2021-03-17 | 2021-06-29 | Oppo广东移动通信有限公司 | 信息处理方法、信息处理装置、存储介质与电子设备 |
CN113534596A (zh) * | 2021-07-13 | 2021-10-22 | 盛景智能科技(嘉兴)有限公司 | Rgbd立体相机及成像方法 |
CN114945072A (zh) * | 2022-04-20 | 2022-08-26 | 优利德科技(中国)股份有限公司 | 双摄像头帧同步处理方法、装置、用户终端及存储介质 |
-
2022
- 2022-10-28 CN CN202211335128.4A patent/CN115883815A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108989606A (zh) * | 2018-08-22 | 2018-12-11 | Oppo广东移动通信有限公司 | 图像处理方法和装置、电子设备、计算机可读存储介质 |
CN110312056A (zh) * | 2019-06-10 | 2019-10-08 | 青岛小鸟看看科技有限公司 | 一种同步曝光方法和图像采集设备 |
CN110460824A (zh) * | 2019-07-03 | 2019-11-15 | 青岛小鸟看看科技有限公司 | 一种图像数据的帧同步方法和相机 |
CN113052884A (zh) * | 2021-03-17 | 2021-06-29 | Oppo广东移动通信有限公司 | 信息处理方法、信息处理装置、存储介质与电子设备 |
CN113534596A (zh) * | 2021-07-13 | 2021-10-22 | 盛景智能科技(嘉兴)有限公司 | Rgbd立体相机及成像方法 |
CN114945072A (zh) * | 2022-04-20 | 2022-08-26 | 优利德科技(中国)股份有限公司 | 双摄像头帧同步处理方法、装置、用户终端及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6704042B2 (en) | Video processing apparatus, control method therefor, and storage medium | |
CN104270567B (zh) | 高精度同步的多路图像采集***及其时间同步方法 | |
CN110312056B (zh) | 一种同步曝光方法和图像采集设备 | |
US9060165B2 (en) | 3D video communication method, sending device and system, image reconstruction method and system | |
US10951804B2 (en) | Photographing synchronization method and apparatus | |
CN112153306B (zh) | 图像采集***、方法、装置、电子设备及可穿戴设备 | |
CN105338323A (zh) | 一种视频监控方法及装置 | |
WO2018015806A1 (en) | System and method providing object-oriented zoom in multimedia messaging | |
US20240104770A1 (en) | Three-dimensional scanning system and three-dimensional scanning method | |
US9992446B2 (en) | Image transmission system and image transmission method | |
CN114554250B (zh) | 一种无人机或无人车的视频和位置同步方法 | |
CN105959562A (zh) | 获取全景拍摄数据的方法、装置以及便携式全景拍摄设备 | |
CN115883815A (zh) | 一种图像数据输出的方法、装置、下位机及存储介质 | |
CN114845004A (zh) | 一种音视频同步实现方法及声学成像方法 | |
CN113225152B (zh) | 一种相机同步的方法、装置及计算机可读介质 | |
CN108737809B (zh) | 一种远程同步图像采集方法 | |
CN115904281A (zh) | 云桌面会议共享方法、服务器和计算机可读存储介质 | |
KR102544747B1 (ko) | 복수개의 독립된 Ethernet 인터페이스를 지원하는 카메라 | |
CN110634564A (zh) | 一种病理信息处理方法、装置、***、电子设备及存储介质 | |
WO2019144872A1 (zh) | 对视频信号进行复合以及对复合视频信号进行剥离 | |
US20240015264A1 (en) | System for broadcasting volumetric videoconferences in 3d animated virtual environment with audio information, and procedure for operating said device | |
CN109510998B (zh) | 获取未压缩的网络摄像头原始数据的方法 | |
CN114283241A (zh) | 一种结构光三维重建装置及方法 | |
CN113497883A (zh) | 一种图像处理方法及***、相机模组、图像采集*** | |
CN109151435B (zh) | 一种数据处理方法、终端、服务器及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |