【技术实现步骤摘要】
一种用于图像数据的数据处理装置和方法
[0001]本申请涉及数据处理
,具体而言,涉及一种用于图像数据的数据处理装置和方法。
技术介绍
[0002]随着消费电子、汽车电子、工业控制等越来越多的应用引入人工智能,人工智能面临着前所未有的快速发展,深度学习、神经网络等技术迎来了发展高潮。与此同时,为了满足人们对神经网络算力需求的不断提升,研究机构与公司开始不断研发神经网络加速器,用于安防,自动驾驶等领域,神经网络加速器主要负责进行卷积运算,但是在进行卷积运算之前,需要对数据的格式进行统一的处理。
[0003]然而,神经网络加速器的运算灵活性较差,由于数据存储的形式是多种多样的,神经网络加速器还无法对多种数据形式的数据进行处理。
技术实现思路
[0004]本申请实施例的目的在于提供一种用于图像数据的数据处理装置和方法,用以在进行神经网络处理之前,增加一级数据前处理装置,以使数据输入到卷积运算单元前的数据形式是合规的。
[0005]本申请实施例提供的一种用于图像数据的数据处理装置,包括:
[0006]解码模块,用于获取内存中关于待输入图像的第一数据,根据加速器硬件所需的数据形式,将第一数据转换为第二数据;
[0007]通道填充模块,用于当第二数据为A1个通道的第一格式的图像数据时,对第二数据填充为A2个通道的第二格式的第三数据;其中,A1和A2均为大于0的正整数,并且A1<A2;
[0008]抽取模块,用于抽取第三数据的A2个通道中目标通道的数据,并
【技术保护点】
【技术特征摘要】
1.一种用于图像数据的数据处理装置,其特征在于,包括:解码模块,用于获取内存中关于待输入图像的第一数据,根据加速器硬件所需的数据形式,将所述第一数据转换为第二数据;通道填充模块,用于当所述第二数据为A1个通道的第一格式的图像数据时,对所述第二数据填充为A2个通道的第二格式的第三数据;其中,A1和A2均为大于0的正整数,并且A1<A2;以及抽取模块,用于抽取所述第三数据的A2个通道中目标通道的数据,并形成第四数据。2.如权利要求1所述的装置,其特征在于,在所述第一数据转换为第二数据的过程中,所述解码模块具体用于:将所接收的B1 bit第一数据转换为到B2 bit的第二数据,其中B1和B2均为大于0的正整数,并且B1<B2;以及对所述B2 bit的第二数据中的空白位利用空值进行填充。3.如权利要求2所述的装置,其特征在于,所述解码模块包括解码缓存模块、空值补充模块和解码存储器;在进行B1 bit到B2 bit的数据转换时,所述解码缓存模块配置为缓存输入的C个像素点的数据,并且在每个时钟单位,输出D/B2个像素点的数据至空值补充模块;其中,C、D和D/B2均为大于0的正整数,D为数据总线的总位宽,并且其满足B1
×
C<D<B1
×
(C+1)的关系;所述空值补充模块配置为对所述B2 bit的第二数据中的空白位利用空值进行填充;以及所述解码存储器配置为对所述B2 bit的数据进行缓存后输出第二数据。4.如权利要求3所述的装置,其特征在于,所述解码缓存模块包括:14bit缓存模块、12bit缓存模块、10bit缓存模块和8bit缓存模块,所述空值补充模块包括:14bit空值补充模块、12bit空值补充模块、10bit空值补充模块和8bit空值补充模块;在进行14bit到16bit的数据转换时,14bit缓存模块配置为缓存输入的9个像素点的数据,并且,在每个时钟单位,输出8个像素点的数据至14bit空值补充模块;14bit空值补充模块配置为对每个像素点的数据进行高位或者低位数据填充空值,变成16bit的数据;在进行12bit到16bit的数据转换时,12bit缓存模块配置为缓存输入的9个像素点的数据,并且,在每个时钟单位,输出8个像素点的数据至12bit空值补充模块;12bit空值补充模块配置为对每个像素点的数据进行高位或者低位数据填充空值,变成16bit的数据;在进行10bit到16bit的数据转换时,10bit缓存模块配置为缓存输入的9个像素点的数据,并且,在每个时钟单位,输出8个像素点的数据至10bit空值补充模块;10bit空值补充模块配置为对每个像素点的数据进行高位或者低位数据填充空值,变成16bit的数据;在进行8bit到16bit的数据转换时,8bit...
【专利技术属性】
技术研发人员:王务仑,
申请(专利权)人:北京爱芯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。