著录项信息
专利名称 | 一种高效图像采集硬件控制器 |
申请号 | CN201510645708.7 | 申请日期 | 2015-10-08 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2016-01-06 | 公开/公告号 | CN105227839A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04N5/232 | IPC分类号 | H;0;4;N;5;/;2;3;2查看分类表>
|
申请人 | 杭州晟元数据安全技术股份有限公司 | 申请人地址 | 浙江省杭州市余杭区五常街道文一西路998号9幢东楼
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 杭州晟元数据安全技术股份有限公司 | 当前权利人 | 杭州晟元数据安全技术股份有限公司 |
发明人 | 马震伟 |
代理机构 | 杭州千克知识产权代理有限公司 | 代理人 | 赵芳 |
摘要
一种高效图像采集硬件控制器,其连接在CMOS传感器与微控制单元的内核CPU之间,包括控制器模块,所述控制器模块内设置有直接存储器存储、设置控制方式和采集图像帧数的控制寄存器、配置采集方式的采集方式配置寄存器、查询图像完整性的图像完整性结果寄存器、设置直接存储器存储的图像存放首地址的传输图像存放首地址、使能中断用的中断使能寄存器。本发明解决了中断频繁的问题,解决了采集、处理效率问题,进一步提高系统效率。
1.一种高效图像采集硬件控制器,其连接在CMOS传感器与微控制单元的内核CPU之间,其特征在于:包括控制器模块,所述控制器模块内设置有直接存储器存储、设置控制方式和采集图像帧数的控制寄存器、配置采集方式的采集方式配置寄存器、查询图像完整性的图像完整性结果寄存器、设置直接存储器存储的图像存放首地址的传输图像存放首地址、使能中断用的中断使能寄存器;所述控制器模块图像采集步骤如下:
(1)通过内核CPU对控制器模块的控制寄存器、采集方式配置寄存器、传输图像存放首地址、中断使能寄存器进行相应配置;
(2)配置好后控制寄存器使能采集图像;
(3)当采集完所需的图像帧数后,将采集到的所有图像的完整性结果写入到图像完整性结果寄存器,并产生一个中断,内核CPU响应中断;
(4)查询图像完整性结果寄存器,对微控制单元内存内的有效图像做处理。
2.如权利要求1所述的一种高效图像采集硬件控制器,其特征在于:步骤(3)中的图像完整性的条件包括:
A、计算每一行采集的像素点个数,任意一行采集的像素点不能少于或者多于配置的像素点个数;
B、计算采集的行数,在一帧图像里不能多采集或者少采集配置的行数;
C、检测帧信号结束标志,当在帧信号结束标志到来的时候,此时一帧图像需要采集到所需数量的像素点个数。
3.如权利要求2所述的一种高效图像采集硬件控制器,其特征在于:步骤(3)中图像完整性的条件中有任意一个条件不满足的话,此帧图像采不完整,并立刻通知直接存储器存储停止采集此帧图像,从下一帧开始采集新的图像。
4.如权利要求1所述的一种高效图像采集硬件控制器,其特征在于:步骤(3)中的中断是否通知内核CPU由中断使能寄存器控制。
5.如权利要求1所述的一种高效图像采集硬件控制器,其特征在于:所述采集方式配置寄存器包括配置每行采集数的列配置寄存器和配置每帧的行采集数的行配置寄存器。
6.如权利要求1所述的一种高效图像采集硬件控制器,其特征在于:还包括用来读取中断状态的中断状态寄存器和中断标志寄存器。
7.如权利要求1 6之一所述的一种高效图像采集硬件控制器,其特征在于:所述控制器~
模块与微控制单元的内核CPU 是通过总桥线连接。
8.如权利要求7所述的一种高效图像采集硬件控制器,其特征在于:所述控制器模块与CMOS传感器通过外接的GPIO口连接。
一种高效图像采集硬件控制器\n技术领域\n[0001] 本发明涉及一种高效图像采集硬件控制器。\n背景技术\n[0002] 随着图像识别技术越来越广泛的应用,对图像采集、处理的综合效率的要求越来越高。很多应用场合需要一边采集图像,同时还需要对已经采集完成的图像做处理,目前MCU最通用的对图像进行采集处理的方法如下。\n[0003] 1、顺序处理:此方法就是采集完一副图像,然后再此图像进行处理,流程图如图1。\n此种方式的优势在于占用MCU资源少,只需要一副图像大小的缓冲内存,软件编程和硬件控制器设计都很简单。但是缺点在于效率低下,在处理图像的时候,无法同时采集CMOS图像,系统反应迟钝,例如以指纹识别场景为例:MCU采集CMOS一副图像一般需要花费40毫秒,图像处理需要150毫秒,而通常一个完整的指纹识别流程,至少需要3~4副图像,如果遇到指纹图像较差的情况,可能需要更多副的图像,因此往往采用此种方式,识别时间会超过1秒,给用户感觉非常不灵敏。而要提高识别速度,要么减少采集图像的副数,要么缩短图像处理时间,这两种方式都会带来识别性能的损失。最后像人脸识别、行为识别等领域完成一个流程所需要的图像副数就更多。\n[0004] 2、并行处理:随着芯片工艺越来越先进,特别是32位的MCU占据着市场绝对主流的情况下,MCU的资源也越来越丰富,特别是能外挂SDRAM或者DDR的MCU,极大的扩展了其RAM大小。因此可以一次性采集好几副图像存储到RAM内。通常并行处理采用两种方式:\n[0005] A:一次性采集所需要副数的图像存储到RAM内,然后再对所有图像顺序处理,此种方法其实和顺序处理没有什么区别,只是减少了软件配置开销,意义不大。\n[0006] B:MCU每次采集图像数据时,将CMOS数据通过内部DMA搬移到制定RAM区域,由于DMA搬移时不需要CPU干预,所以每次软件配置完DMA参数后,MCU可以同时做其余任务(例如图像处理),当一帧图像采集完成后,中断产生通知CPU,此时CPU可以从当前任务退出处理采集完成的图像,或者继续配置DMA继续采集。此方法虽然提高了整个系统的效率,但每次采集完成图像都会产生一个DMA中断来打断当前进程,例如采集6副图像就要产生6个中断,影响程序进程的连贯性。另外CMOS由于受外界干扰,有可能会产生漏采像素点的情况,漏采的情况可分为3个情况:\n[0007] a)例如一行应该采集从0~480个像素点,但由于干扰,中间第50、51漏了2个像素点,把480以后的无效像素点也采集进去,最终此行变成采集了0~49,52~482像素点,此种情况一般对画面影响不大,一般不会影响识别效果;\n[0008] b)例如一行要采集638个像素点(一般CMOS一行最大的像素点也就是640),中间漏了10个像素点,此时必然就把下行的数据采集到RAM内,而下行的数据也必然减少,所以最终采集到RAM内的图像显示出来就是歪的,这种情况图像就完全不能用,不能进行图像识别;\n[0009] c)例如要采集一副大小为640*480=307200像素点,也就是一般CMOS能输送的最大尺寸的图像,可能此副图像只采集了307100字节(某几行采集漏了几个像素)。这种情况是最糟糕的,此时除了这幅图像是无效的,通俗的讲整幅图像就歪掉了。DMA采集时间还会被延长(DMA中断的产生必须满足采集像素点个数符合配置时设定的数值条件,会采集下一帧图像的像素值来填补,相当于采集时间变成了两帧的时间),整个系统的时间变慢。\n[0010] 一旦出现上述b、c两种情况并且这幅不正确的图像存在内存里,在后续的图像处理中也当成正常的图像做预处理,浪费宝贵的系统时间。\n发明内容\n[0011] 本发明提供了一种提高系统效率、解放MCU资源、减少系统时间开销、硬件确保接收图像的完整性的高效图像采集硬件控制器。\n[0012] 本发明采用的技术方案是:\n[0013] 一种高效图像采集硬件控制器,其连接在CMOS传感器与微控制单元的内核CPU之间,其特征在于:包括控制器模块,所述控制器模块内设置有直接存储器存储、设置控制方式和采集图像帧数的控制寄存器、配置采集方式的采集方式配置寄存器、查询图像完整性的图像完整性结果寄存器、设置直接存储器存储的图像存放首地址的传输图像存放首地址、使能中断用的中断使能寄存器;所述控制器模块图像采集步骤如下:\n[0014] (1)通过内核CPU对控制器模块的控制寄存器、采集方式配置寄存器、传输图像存放首地址、中断使能寄存器进行相应配置;\n[0015] (2)配置好后控制寄存器使能采集图像;\n[0016] (3)当采集完所需的图像帧数后,将采集到的所有图像的完整性结果写入到图像完整性结果寄存器,并产生一个中断,内核CPU响应中断;\n[0017] (4)查询图像完整性结果寄存器,对微控制单元内存内的有效图像做处理。本发明通过配置采集图像幅数,只有当采集完所需要所有图像副数才会产生中断(例如需要采集6副图像,那么采集完成6副图像后才产生一次中断),解决了中断频繁的问题。而在采集过程中,不需要CPU参与,CPU完全可以边采集,边处理图像,解决了采集、处理效率问题。另外硬件能自动判断图像像素个数的完整性,然后将图像是否完整的结果写入到一个寄存器,CPU可以通过查询图像完整性结果寄存器,判断采集到的图像哪些是有效图像,哪些是无效图像,不需要通过后续软件先处理所有图像,再判断图像完整性的过程,从而进一步提高系统效率。\n[0018] 进一步,步骤(3)中的图像完整性的条件包括:\n[0019] A、计算每一行采集的像素点个数,任意一行采集的像素点不能少于或者多于配置的像素点个数;\n[0020] B、计算采集的行数,在一帧图像里不能多采集或者少采集配置的行数;\n[0021] C、检测帧信号结束标志,当在帧信号结束标志到来的时候,此时一帧图像需要采集到所需数量的像素点个数。本发明的图像必须满足上述3个条件才是完整的。\n[0022] 进一步,步骤(3)中图像完整性的条件中有任意一个条件不满足的话,此帧图像采不完整,并立刻通知直接存储器存储停止采集此帧图像,从下一帧开始采集新的图像。图像完整性结果状态控制直接存储器存储的工作状态,例如需要采集n副图像的时候,图像完整性状态通知直接存储器存储在采集图像时候,什么时候停止传输,什么时候开始采集下一帧图像,直接存储器存储将第n副图像存入到的RAM地址=首地址+n*图像大小,上述过程全部硬件自动执行,不需要软件干预,极大的提高整个系统的效率。\n[0023] 进一步,步骤(3)中的中断是否通知内核CPU由中断使能寄存器控制。\n[0024] 进一步,所述采集方式配置寄存器包括配置每行采集数的列配置寄存器和配置每帧的行采集数的行配置寄存器。\n[0025] 进一步,还包括用来读取中断状态的中断状态寄存器和中断标志寄存器。\n[0026] 进一步,所述控制器模块与微控制单元的内核CPU是通过总桥线连接。控制器模块挂接在总线桥上,从而和内核CPU进行信号传递。内核CPU通过总线桥,传递一个时钟模块给控制器模块,提供控制器模块工作的基准时钟。\n[0027] 进一步,所述控制器模块与CMOS传感器通过外接的GPIO口连接。控制器模块通过\n11根外接的GPIO口连接到CMOS的信号接口(VSYNC、HSYNC、PCLK、DATA[7:0]),并且通过这11根GPIO口接收CMOS的图像信号。\n[0028] 本发明的有益效果:通过配置采集图像幅数,只有当采集完所需要所有图像副数才会产生中断,解决了中断频繁的问题。而在采集过程中,不需要CPU参与,CPU完全可以边采集,边处理图像,解决了采集、处理效率问题。另外硬件能自动判断图像像素个数的完整性,然后将图像是否完整的结果写入到一个寄存器,CPU可以通过查询图像完整性结果寄存器,判断采集到的图像哪些是有效图像,哪些是无效图像,不需要通过后续软件先处理所有图像,再判断图像完整性的过程,从而进一步提高系统效率。\n附图说明\n[0029] 图1是现有图像顺序处理原理图。\n[0030] 图2是本发明的功能框图。\n[0031] 图3是本发明与内核CPU的连接示意图。\n[0032] 图4是本发明的图像完整性检测原理示意图。\n[0033] 图5是本发明的寄存器配置示意图。\n具体实施方式\n[0034] 下面结合具体实施例来对本发明进行进一步说明,但并不将本发明局限于这些具体实施方式。本领域技术人员应该认识到,本发明涵盖了权利要求书范围内所可能包括的所有备选方案、改进方案和等效方案。\n[0035] 参照图2-5,一种高效图像采集硬件控制器,其连接在CMOS传感器与微控制单元的内核CPU2之间,包括控制器模块1,所述控制器模块1内设置有直接存储器存储DMA、设置控制方式和采集图像帧数的控制寄存器LOCSC_CTRL、配置采集方式的采集方式配置寄存器LOCSC_GATHER、查询图像完整性的图像完整性结果寄存器LOCSC_INTEGRITY、设置直接存储器存储DMA的图像存放首地址的传输图像存放首地址LOCSC_ADDR、使能中断用的中断使能寄存器LOCSC_INT_EN;所述控制器模块1图像采集步骤如下:\n[0036] (1)通过内核CPU2对控制器模块1的控制寄存器LOCSC_CTRL、采集方式配置寄存器、传输图像存放首地址LOCSC_ADDR、中断使能寄存器LOCSC_INT_EN进行相应配置;\n[0037] (2)配置好后控制寄存器LOCSC_CTRL使能采集图像;\n[0038] (3)当采集完所需的图像帧数后,将采集到的所有图像的完整性结果写入到图像完整性结果寄存器LOCSC_INTEGRITY,并产生一个中断,内核CPU2响应中断;\n[0039] (4)查询图像完整性结果寄存器LOCSC_INTEGRITY,对微控制单元内存内的有效图像做处理。本发明通过配置采集图像幅数,只有当采集完所需要所有图像副数才会产生中断(例如需要采集6副图像,那么采集完成6副图像后才产生一次中断),解决了中断频繁的问题。而在采集过程中,不需要CPU参与,CPU完全可以边采集,边处理图像,解决了采集、处理效率问题。另外硬件能自动判断图像像素个数的完整性,然后将图像是否完整的结果写入到一个寄存器,CPU可以通过查询图像完整性结果寄存器LOCSC_INTEGRITY,判断采集到的图像哪些是有效图像,哪些是无效图像,不需要通过后续软件先处理所有图像,再判断图像完整性的过程,从而进一步提高系统效率。\n[0040] 本实施例步骤(3)中的图像完整性的条件包括:\n[0041] A、计算每一行采集的像素点个数,任意一行采集的像素点不能少于或者多于配置的像素点个数;例如需要采集一副640*480大小的图像,一行就应该采集640个像素点,在一行有效时间内,如果采集到的数据大于或者小于640,就认为此行采集失败;\n[0042] B、计算采集的行数,在一帧图像里不能多采集或者少采集配置的行数;例如需要采集一副640*480大小的图像,就应该采集一共480行,在一帧有效时间内,采集的行数大于或者小于480,就认为此帧失败;\n[0043] C、检测帧信号结束标志,当在帧信号结束标志到来的时候,此时一帧图像需要采集到所需数量的像素点个数,如果在帧信号结束标志到来的时候,此时一帧图像还没有采集到所需数量的像素点个数,说明此帧不完整。本发明的图像必须满足上述3个条件才是完整的。\n[0044] 本实施例步骤(3)中图像完整性的条件中有任意一个条件不满足的话,此帧图像采不完整,并立刻通知直接存储器存储DMA停止采集此帧图像,从下一帧开始采集新的图像。图像完整性结果状态控制直接存储器存储DMA的工作状态,例如需要采集n副图像的时候,图像完整性状态通知直接存储器存储DMA在采集图像时候,什么时候停止传输,什么时候开始采集下一帧图像,直接存储器存储DMA将第n副图像存入到的RAM地址=首地址+n*图像大小,上述过程全部硬件自动执行,不需要软件干预,极大的提高整个系统的效率。\n[0045] 本实施例步骤(3)中的中断是否通知内核CPU由中断使能寄存器LOCSC_INT_EN控制。\n[0046] 本实施例所述采集方式配置寄存器LOCSC_GATHER包括配置每行采集数的列配置寄存器LOCSC_PCOUNTER和配置每帧的行采集数的行配置寄存器LOCSC_HCOUNTER。\n[0047] 本实施例还包括用来读取中断状态的中断状态寄存器LOCSC_INT_STATUS和中断标志寄存器LOCSC_INT_FLAG。\n[0048] 本实施例所述控制器模块1与微控制单元的内核CPU2是通过总桥线连接。控制器模块1挂接在总线桥上,从而和内核CPU2进行信号传递。内核CPU2通过总线桥,传递一个时钟模块给控制器模块1,提供控制器模块1工作的基准时钟。\n[0049] 本实施例所述控制器模块1与CMOS传感器通过外接的GPIO口连接。控制器模块1通过11根外接的GPIO口连接到CMOS的信号接口(VSYNC、HSYNC、PCLK、DATA[7:0]),并且通过这\n11根GPIO口接收CMOS的图像信号。\n[0050] 本发明的各寄存器描述如表1:\n[0051] 表1控制器模块寄存器列表\n[0052]\n寄存器名 描述\nLOCSC_CTRL 控制寄存器\nLOCSC_PCOUNTER 列配置寄存器\nLOCSC_HCOUNTER 行配置寄存器\nLOCSC_INT_STATUS 中断状态寄存器\nLOCSC_INT_FLAG 中断标志寄存器\nLOCSC_INT_EN 中断使能寄存器\nLOCSC_INTEGRITY 图像完整性结果寄存器\nLOCSC_ADDR 传输图像存放首地址\n[0053] 本发明的各寄存器的功能描述如下:\n[0054] 1、控制寄存器(LOCSC_CTRL),LOCSC_CTRL用来配置控制器模块的控制信号。\n[0055] 2、列配置寄存器(LOCSC_PCOUNTER),LOCSC_PCOUNTER用来配置控制器模块的每行采集数。\n[0056] 3、行配置寄存器(LOCSC_HCOUNTER),LOCSC_HCOUNTER用来配置每帧的行采集数。\n[0057] 4、中断状态寄存器(LOCSC_INT_STATUS),LOCSC_INT_STATUS用来读取中断状态。\n[0058] 5、中断标志寄存器(LOCSC_INT_FLAG),LOCSC_INT_FLAG为中断标志寄存器,写1清零。\n[0059] 6、中断使能寄存器(LOCSC_INT_EN),LOCSC_INT_EN为中断使能寄存器。\n[0060] 7、图像完整性结果寄存器(LOCSC_INTEGRITY),LOCSC_INTEGRITY为图像完整性查询寄存器。\n[0061] 8、传输图像存放首地址(LOCSC_ADDR),LOCSC_ADDR为DMA传输图像存放首地址。
法律信息
- 2018-05-08
- 2016-02-03
实质审查的生效
IPC(主分类): H04N 5/232
专利申请号: 201510645708.7
申请日: 2015.10.08
- 2016-01-06
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2009-10-14
|
2008-04-10
| | |
2
| | 暂无 |
2013-02-06
| | |
3
| |
2015-07-29
|
2015-05-03
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |