【技术实现步骤摘要】
一种深度网络相机图像处理方法、系统及应用
本专利技术属于数字图像处理
,尤其涉及一种深度网络相机图像处理方法、系统及应用。
技术介绍
目前,在数字图像处理系统中,相机原始输入图像的质量对系统后续图像质量提升、智能分析和压缩存储等都有重要的影响。相机输出图像的质量在很大程度上决定于图像处理器(ISP,ImageSignalProcessor)的性能。传统的ISP系统结构复杂,处理流水线长,不同的ISP芯片所设计的功能模块在处理流水线上的顺序不尽相同,大部分情况下取决于工程师的设计经验。到目前为止,ISP芯片仍存在部分场景下处理效果不佳,处理流水参数无法满足所有应用场景的痛点。图像处理是计算机视觉和图形学领域的重要分支,随着计算机、通信技术、人工智能技术的高速发展,图像信号处理近年来得到了极大的重视和发展,在科学技术、医疗健康、教育培训、灾害防治、娱乐休闲等方面取得了广泛的应用。ISP(ImageSignalProcessor)作为相机系统的核心,对图像处理具有极其重要的作用。它是将摄像头采集到的原始图像数据作为处理对象,对前端图像传感器输出的信号进行线性校正、噪声去除、坏点去除、内插、白平衡、自动曝光控制、去除电流噪声、锐化、色彩空间转换、Gamma校正等处理,以达到在不同的光学环境下都能较好的还原现场细节的目的,使图像变的更加细腻,提高摄像机的成像质量。现有的ISP系统虽然具有去噪、白平衡、颜色增强等功能,但由于传感器较小、镜头相对紧凑等硬件方面的限制,导致其结构相当复杂、处理速度较慢,而且重建 ...
【技术保护点】
1.一种深度网络相机图像处理方法,其特征在于,所述深度网络相机图像处理方法包括:/n通过Sensor输出的Bayer格式RAW数据送入板卡,经过阴影矫正预处理,开始进行CNN部分的运算;其中,所述运算加速部分包括池化模块、乘加阵列、缓存累加模块和激活模块;/n运算部分由运算逻辑控制模块进行控制,片上缓存使用完毕后,由运算逻辑控制模块给访问逻辑控制模块反馈;/n片外访问逻辑控制模块通过AXI4总线与外部DDR进行通信;其中,所述逻辑控制模块还包含存储各个网络层信息、地址信息的寄存器;/nCNN运算完成后,根据图像特点送入后处理模块进行流水处理加以完善,最终输出RGB图像。/n
【技术特征摘要】
1.一种深度网络相机图像处理方法,其特征在于,所述深度网络相机图像处理方法包括:
通过Sensor输出的Bayer格式RAW数据送入板卡,经过阴影矫正预处理,开始进行CNN部分的运算;其中,所述运算加速部分包括池化模块、乘加阵列、缓存累加模块和激活模块;
运算部分由运算逻辑控制模块进行控制,片上缓存使用完毕后,由运算逻辑控制模块给访问逻辑控制模块反馈;
片外访问逻辑控制模块通过AXI4总线与外部DDR进行通信;其中,所述逻辑控制模块还包含存储各个网络层信息、地址信息的寄存器;
CNN运算完成后,根据图像特点送入后处理模块进行流水处理加以完善,最终输出RGB图像。
2.如权利要求1所述的深度网络相机图像处理方法,其特征在于,所述卷积模块的实现模式,包括:3×3的卷积的完成过程为:一个慢时钟周期,卷积窗口向前滑动一次,快的时钟周期为慢时钟周期的三倍频率,在一个慢时钟周期下可完成以下三次操作:
Result=w01×f01+w04×f04+w07×f07Result=w02×f02+w05×f05+w08×f08+Result;
Result=w03×f03+w06×f06+w09×f09+Result;
由此完成一次卷积操作,窗口向前滑动一次。
3.如权利要求1所述的深度网络相机图像处理方法,其特征在于,所述卷积模块的实现,包括:首先需要进行行缓存操作,通过级联FIFO实现;级联FIFO主要是通过串并转换的思想实现数据传输;左侧为使能信号划分,作用是根据原始使能信号生成七行数据对应的使能信号;右侧为级联FIFO,实现行缓存功能;
将初始使能信号通过计数器判断,依次向后延时1-7行缓存周期,包括原始使能信号,生成8个不同的使能信号,作用于七个级联FIFO实现读写功能,每个级联FIFO的输出均要比上一个FIFO延时一个输出周期,实现方法为:
(1)使能信号高电平到达时,控制第一个FIFO的写使能,第一个FIFO开始写入数据;
(2)使能信号1,相比于原使能信号延时一个周期控制第一个FIFO的读使能和第二个FIFO的写使能;当第一个FIFO的写使能有效时,第二个FIFO写入第一个FIFO输出的第一行数据;
(3)一共级联七个FIFO;分别由使能信号1-7控制,作用于读使能和写使能;在第一个级联FIFO输出第7行时,第五个级联FIFO恰好输出第1行数据,由此完成七行数据的缓存,进入卷积运算;选取一个小的运算单元进行说明,行缓存后通过rate_transition模块进行速率转换,行缓存得到一列数据后,与缓存的卷积核参数进行乘加运算,三个块时钟周期后,得到特征图上一个点的中间值,数据以流式传输完毕后,即可得到完整的单通道特征图。
4.如权利要求1所述的深度网络相机图像处理方法,其特征在于,所述模拟外存模块的实现,包括:
(1)数据组织方式,对于输入特征图,按照以下优先级进行数据划分:输入通道分块,输入特征图行数据,输入特征图列数据;即以分块的思想,按照行的形式对其进行一维展开进行存储;同样,对于权重数据,按照以下优先级进行存储:输出通道分块,输入通道分块,卷积核行数据,卷积核列数据;即卷积核的存储是将n个m通道输入权重块进行一维展开后,再按照行展开的形式进行;
对于M×N加速结构,在输入输出通道上采取了并行运算;第一组数据为m个01位置的数据,按行的顺序进行存储直至第一块m个通道的特征图存储完毕,然后进行第二块的数据存储,将相关的分块参数存入寄存器;
在第一个输出通道的m个01存储完毕之后,接下来存入第二个通道的m个01,直至所有输出通道的01存储完,返回第一个输出通道存储02,按照特征图存储的思想,完成所有权重数据的存储;
对于K×M×N结构,由于行缓存的存在,数据划分并不需要重新安排,借助缓存操作即可满足并行运算需求;在输入特征图和权重数据的存储上是相同的;
(2)借助DDR实现外存,模拟外存模块根据数据索引,在模型中模拟外存的作用;在后续的优化,使用AXI总线结构,连接DDR存储;特征图DDR模拟模块根据输入的索引值,输出对应的特征图数据;原始Bayer格式输入图以数据流的形式送入以模拟Sensor真实输出,以constant器件的形式将控制逻辑需要的参数存储在模型中,后续会综合成寄存器形式;通过Selector器件对constant器件内存储的数值进行选择输出;对于外部存储,对于权重数据本发明选择Look_up_table器件进行模拟,进行写入操作的用Dual_port_RAM或fifo器件进行模拟;输入为板上控制模块反馈的控制信号,使能模块内的Look_up_table等模块向板内送入数据;将不同的权重数据存入不同的look_up_table中,使用反馈的地址卷积层序号和卷积核序号换算成设定的编号,检测编号为真的查找表开始输出权重数据,所有查找表的输出通过multiportswitch进行选通,输出和当前序号符合的一路输出。
5.如权利要求1所述的深度网络相机图像处理方法,其特征在于,所述池化模块的设计,包括:
池化模块在预处理时被使用,其作用是将高分辨率的原图像降低到一个较低的尺度进行处理;
其功能主要分为两部分,左侧的使用双端口RAM实现的行缓存;池化模块实现的难点在于池化操作窗口滑动的步长为2,选取四个RAM实现列维度上的缓存控制行缓存,使用跨时钟域处理,使其输出为连续的两行一组;送入池化运算模块;
送入行缓存模块后,进行比较操作;值得注意的是,由于横向移动的步长也为2,所以,在每两个时钟周期才会输出一个值,用到的操作是使用一个模2的计数器进行计数,当有效值输出后将其送入寄存器,接下来的一个时钟周期的运算结果是无效值,取寄存器中的值作为输入;每两个时钟周期会更新一个有效值,由此完成有效数据的传输;输入为四行缓存输出,输出为最终的池化结果;这样的设计方式符合数据流的传输方式。
6.如权利要求1所述的深度网络相机图像处理方法,其特征在于,所述激活模块与正则化模块的设计,包括:
Pynet网络结构运用到两种激活函数;双曲正切tanh以及LeakyRelu;Simulink提供了满足HDL生成的tanh模块,根据LeakyRelu函数进行其运算结构设计;
使用比较器和选择器完成整体运算,大于0保留原值,小于0则取原值0.2倍数;增加神经网络各层间的非线性关系,并在顶点精度为1/216的情况下较好的完成整流运算。
7.如权利要求1所述的深度网络相机图像处理方法,其特征在于,所述累加模块,包括:
累加操作的目的是为了解决由于分块操作造成的一次卷积运算无法输出完整的特征图结果;累加模块的输入为上一级卷积的运算结果以及控制信号;控制信号中包含传入的k,m,n,con_num卷积层序号,d_num操作序号;对于两个不同的卷积结构,其对于累加运算的要求也是不同的;首先介绍对累加操作要求比较小的KMN设计模式;
KMN设计模式每次运算出的结果为n个通道上m个输入通道的卷积乘加结果;因此其需要需要进行M/m次累加操作,需要一个FIFO即可以完成累加操作,若使用KMN设计模式的卷积模块,则累加模块设计为:一...
【专利技术属性】
技术研发人员:宋锐,张宇航,水云鹏,李娇娇,郝丰达,王养利,李云松,
申请(专利权)人:西安电子科技大学,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。