CN105025264A - 基于fpga与usb2.0的便携式计算机视频监控系统 - Google Patents
基于fpga与usb2.0的便携式计算机视频监控系统 Download PDFInfo
- Publication number
- CN105025264A CN105025264A CN201510422852.4A CN201510422852A CN105025264A CN 105025264 A CN105025264 A CN 105025264A CN 201510422852 A CN201510422852 A CN 201510422852A CN 105025264 A CN105025264 A CN 105025264A
- Authority
- CN
- China
- Prior art keywords
- fpga
- module
- portable computer
- monitoring system
- video monitoring
- 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
Landscapes
- Image Processing (AREA)
Abstract
本发明申请公开了一种基于FPGA与USB2.0的便携式计算机视频监控系统,以实现优秀的数据处理速度,并具备良好的硬件便携性,可以与便携式计算机进行连接工作。包括FPGA,FPGA分别电连接摄像头、外部存储器和显示器,FPGA内包括匹配摄像头的总线控制模块,FPGA内包括依次连接的视频捕获模块、写缓存FIFO模块、外部存储控制器、读缓冲FIFO模块、视频格式转换模块和滤波模块,视频捕获模块与摄像头联接,外部存储控制器与外部存储器联接,滤波模块分别联接FPGA内的USB控制器和VGA控制器。FPGA芯片内部对数据的并行处理,可以对大量的图像数据运算通过并行处理的方式来实现硬件加速。
Description
技术领域
本发明涉及一种便携式计算机视频监控系统。
背景技术
随着人类社会的发展进步,人们对自身生命财产的保护要求越来越高,视频监控系统作为安防领域的一种重要手段,以其操作方便、观看直接、信息真实的特点越来越受到人们的青睐。
我国公共基础设施建设力度不断加大,社会治安动态监控成为安防市场新增长点,我国安防产业进入了快速发展壮大期,年均增长速度超过了国民经济增速的 1 倍以上。随着“国家应急体系”、“平安建设”、“天网计划”、“科技强警”等重大工程项目的不断推进以及国际活动的持续拉动,监控设备的市场需求日渐增加。
视频图像采集板卡是视频监控系统中的核心部件,目前国内的视频图像采集板卡大多数采用DSP/CPU方式对视频信号进行采集处理,并通过PCI/PCI-E接口与PC机通信,将采集到的视频信号传输给上位机处理。由于DSP/CPU采用取指令的处理方式不能对数据并行处理,更不能进行硬件加速,所以处理速度相对较慢。而且传统的视频采集卡主要通过PCI/PCI-E卡槽和PC机主板相连,这类视频采集卡价格昂贵、体积庞大、安装麻烦、通用性差,由于需要专用的PCI/PCI-E卡槽,所以无法在笔记本电脑上使用,不具有良好的便携性。同时在主机箱内易受到其他器件的电磁干扰,尤其在高速、大量的传输数据时容易引起误码。
整个说明书对背景技术的任何讨论,并不代表该背景技术一定是所属领域技术人员所知晓的现有技术;整个说明书中的对现有技术的任何讨论并不代表认为该现有技术一定是广泛公知的或一定构成本领域的公知常识。
发明内容
本发明意在提供一种基于FPGA与USB2.0的便携式计算机视频监控系统,以实现优秀的数据处理速度,并具备良好的硬件便携性,可以与便携式计算机进行连接工作。
本方案中的基于FPGA与USB2.0的便携式计算机视频监控系统,包括FPGA,FPGA分别电连接摄像头、外部存储器和显示器,FPGA内包括匹配摄像头的总线控制模块,FPGA内包括依次连接的视频捕获模块、写缓存FIFO模块、外部存储控制器、读缓冲FIFO模块、视频格式转换模块和滤波模块,视频捕获模块与摄像头联接,外部存储控制器与外部存储器联接,滤波模块分别联接FPGA内的USB控制器和VGA控制器。
在FPGA内部通过总线控制器模块完成对摄像头的配置,视频捕获模块提取有效视频信号,通过写FIFO缓存模块和外部存储控制器模块将有效视频信号存储在外部存储器,以供后面模块对视频信号的处理。从外部存储器内存取出的视频数据通过视频格式转换模块完成如YCbCr到RGB格式等的变换,经中值滤波模块处理后,通过VGA控制器模块和OSD显示模块在液晶显示器上实时显示。
FPGA(Field Programmable Gate Array)是现场可编程门阵列,是在可编程阵列逻辑(PAL)、通用阵列逻辑(GAL)、复杂可编程逻辑器件(CPLD)等可编程器件的基础上进一步发展的产物。它是作为ASIC (专用集成电路)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。目前,FPGA芯片由于具有大容量、高速度、高密度、灵活性强等特点,可以完成极其复杂的时序和组合逻辑电路功能。
FPGA芯片内部对数据的并行处理,可以对大量的图像数据运算通过并行处理的方式来实现硬件加速。如在图像缩放、去隔行、滤波、编解码和颜色空间转换等图像处理算法实现时都需要做矩阵运算,而矩阵运算又可以转化为乘加运算来表示,因此可以根据FPGA的并行性对表达式的各个分项采用并行计算,以提高数据的运算速度。随着新技术、新算法、新标准的迅速发展,需要不断的对产品进行更新升级,而FPGA可以通过多次的烧录来完成系统的升级。如果采用标准单元定制的ASIC(专用集成电路)器件,稍有修改则必须重新流片,极大的增加了产品的市场风险。
而且,本系统采用了USB接口,尤其是USB2.0接口,其支持480Mbit/s的传输速度,具有控制、中断、同步、块传输四种灵活的传输方式,同时可以支持热插拔和即插即用,具有占用系统资源少,功耗低,数据传输稳定可靠的优点,可以配合普通的便携式电脑进行工作。
进一步,所述滤波模块为中值滤波模块,中值滤波模块采用3*3的滤波器窗口,在滤波处理过程中滤波器窗口不断的滑动来提取3行图像的像素值,然后将得到的9个像素值经过比较运算得到的中值输出。
中值滤波是一种非线性的图像平滑法,它将每一像素点的灰度值用该像素点相邻域窗口内的灰度中值来代替。中值滤波是基于统计排序理论的一种能有效抑制噪声的非线性信号处理技术,其基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值更接近真实值,从而消除孤立的噪声点。中值滤波算法在实现的过程中需要做较多的比较和排序运算,如果按照传统的冒泡法排序则需要很大的延时,不能满足系统实时处理的需要。因此本模块结合FPGA并行处理的优势,针对3*3的窗口来处理图像中的像素,采用了一种快速并行的中值滤波手段,提高了系统的运行速度。
进一步,在滤波模块确定9个数中的中间值的工作过程中,针对所使用的3*3的滤波器窗口,先对每一行排序,将比较后的数据按照从小到大的顺序排列,第一列的数据为最小值组,第二列的数据为中间值组,第三列为最大值组;然后最大值组的最小值、最小值组的最大值和中间值组的中间值三者进行比较得到中值。
如果按照常规的算法,对每一行的排序需要3*3次比较。第二步中对每列的比较也需要3*3次,最后比较求中间值需要3次,总共需要21次。而结合FPGA并行处理的特点,在速度要求不是很高的情况下,采用多个并行比较器只需一个周期即可完成,大大的提高了模块的处理能力。
进一步,所述摄像头为CMOS数字摄像头。CMOS在价格以及整合性方面具有一定的优势。
进一步,FPGA内还设有连接VGA控制器的OSD模块。OSD(On-screen Display)即屏幕菜单显示,通过该技术可以在原有视频画面上添加并显示各种辅助的特殊字形或图形,为使用者得到一些提示信息。OSD的核心在于图像、字符的显示以及按键的调节。
进一步,VGA控制器联接有外部液晶显示器。可以对视频图形进行实时的监控。
附图说明
图1为本发明实施例的系统框架示意图。
图2是调用FPGA内IP宏单元而得到的移位寄存器示意图。
图3是排序运算中找到9个数中的中间值的实现原理图。
具体实施方式
下面通过具体实施方式对本发明作进一步详细的说明:
实施例基本如附图1所示:包括SCCB总线控制器模块、视频捕获模块、读写FIFO模块、SDRAM控制器模块、视频格式转换模块、中值滤波模块、VGA控制器模块和OSD显示模块组成。在FPGA内部通过SCCB总线控制器模块完成对数字CMOS摄像头的配置,视频捕获模块提取有效视频信号,通过写FIFO模块和SDRAM控制器模块将有效视频信号存储在外部SDRAM,以供后面模块对视频信号的处理。从SDRAM内存取出的视频数据通过视频格式转换模块完成YCbCr到RGB格式的变换,经中值滤波模块处理后,通过VGA控制器模块和OSD显示模块在液晶显示器上实时显示。
首先是通过SCCB总线对CMOS摄像头OV9650进行配置,视频图像捕获模块完成对摄像头传来的视频有效信号的提取,并将有效信号通过写异步FIFO一行一行的写入到外部SDRAM,而读数据时,通过读异步FIFO将缓存在SDRAM 内面的数据读出来做格式的转换。为了将YCbCr格式的视频信号转换为RGB格式的视频信号,先后通过4:2:2到4:4:4模块和YCbCr到RGB模块的转换,最后通过VGA接口控制模块完成了视频信号的显示,同时还添加了OSD的显示功能。
本系统所选择的图像传感器为CMOS的数字摄像头OV9650,首先在FPGA内部有一个SCCB总线控制器模块,通过该模块完成对摄像头的初始化以及配置好摄像头的工作参数,当摄像头配置完成后就会按照事先设定的工作模式输出视频数据。FPGA内部视频捕获模块则专门用于捕获摄像头传输过来的有效视频数据。对于捕获的有效视频信号需要缓存在外部存储器SDRAM中,FPGA访问外部SDRAM是通过写缓存FIFO模块和读缓存FIFO模块来实现的。由于缓存在SDRAM内的图像数据格式是YCbCr 4:2:2,而最终显示的数据格式是RGB格式,因此需要先将YCbCr 4:2:2格式转化为YCbCr 4:4:4,接着再将YCbCr 4:4:4转化为RGB8:8:8格式的数据。
由于图像传感器的工作环境以及自身电路都会造成对图像信号的干扰,任何一帧没有经过处理过的图像都存在一定程度的噪声干扰,因此在FPGA内部采用了中值滤波模块对图像去噪。
中值滤波模块结合FPGA并行处理的优势,针对3*3的窗口,采用了一种快速并行的中值滤波手段,提高了系统的运行速度。该模块设计主要由两个部分构成:3*3窗口模板设计部分和9个数排序部分。
采集到的图像大小为640*480,即图像总共有480行,每行有640个像素。采用3*3的滤波器窗口,其中在中间的像素点记为P,其余为相邻像素点。在中值滤波处理的时候,通过这样一个3*3的窗口模板不断的滑动来提取3行图像的像素值,然后将得到的9个像素值经过比较运算得到的中值输出,其中对于图像周围的像素值不参与运算。
所述的3*3的滤波器窗口可以如下表格所示:
P-641 | P-640 | P-639 |
P-1 | P | P+1 |
P+639 | P+640 | P+641 |
图像数据在各模块之间的传输是一行一行进行的,所以并不能同时提取3行的图像数据进行处理,在此采用移位寄存器来解决这个问题。图2中的移位寄存器通过调用FPGA内IP宏单元而得到,shiftin是8位的数据输入端,taps0、taps1、taps2是三个移位寄存段,当数据从shiftin端口进来后会先经过taps0,然后是taps1,最后是taps2,通过设定taps的深度为一行数据大小,这样当第一行的数据到达taps2的时候,第二、三行的数据也分别填满了taps1和tap0,此时taps0、taps1、taps2输出的第一个数就是每一行的第一个像素了。再通过6个寄存器打两拍,每两个CLK可以输出9个像素值,这样完成了3*3的窗口模板。
上述过程中还要处理发生在图像的左边缘、右边缘、上边缘和下边缘的错误。因为在边缘处无法用3×3模板覆盖住这个图像,亦即也要覆盖图像外部一部分,这样就无法使用上面的中值滤波模块。可以把边缘像素的结果设成“0”。若是,则把”0”通过中值滤波模块, 不加处理直接赋到输出端。
排序运算是整个算法的核心,如何快速的找到9个数中的中间值是解决问题的关键。在此采用举例的方法来说明,图3是实现的原理图。在做排序运算时先对每一行排序,将比较后的数据按照从小到大的顺序排列,这样第一列的数据是每一行的最小值,称为最小值组。第二列的数据是每一行的中间值,称为中间值组。第三列则是每一行的最大值,称为最大值组。此时可以断定,对于最小值组内的三个数,除了最大值外剩余的两个数至少小于5个其他数,所以必定不是中值。而最大值组的除了最小值外剩余的两个数至少大于5个其他数,所以也不是中值。对于中间值组的最大数至少大于5个其他数,中间值组的最小值至少小于5个其他数,均不是中间值可以舍去。故中值只可能在最大值组的最小值,最小值组的最大值和中间值组的中间值这三个数之间产生,只需比较这三个数即可得到中值。
接着视频信号分两路,一路通过USB控制模块将RGB565视频信号按照一定的时序送到USB2.0接口芯片,然后上传到PC机并通过软件显示。另一路信号直接给显示控制器模块,通过模拟VGA时序标准将视频数据给VGA驱动芯片ADV7123,最后在液晶显示器上显示出来。OSD(On Screen Display)即屏幕菜单调节方式,通过OSD技术在视频画面显示叠加的辅助信号。
以上所述的仅是本发明的实施例,方案中公知的具体结构及特性等常识在此未作过多描述,所属领域普通技术人员知晓申请日或者优先权日之前发明所属技术领域所有的普通技术知识,能够获知该领域中所有的现有技术,并且具有应用该日期之前常规实验手段的能力,所属领域普通技术人员可以在本申请给出的启示下,结合自身能力完善并实施本方案,一些典型的公知结构或者公知方法不应当成为所属领域普通技术人员实施本申请的障碍。应当指出,对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些也应该视为本发明的保护范围,这些都不会影响本发明实施的效果和专利的实用性。本申请要求的保护范围应当以其权利要求的内容为准,说明书中的具体实施方式等记载可以用于解释权利要求的内容。
Claims (6)
1.基于FPGA与USB2.0的便携式计算机视频监控系统,其特征在于,包括FPGA,FPGA分别电连接摄像头、外部存储器和显示器,FPGA内包括匹配摄像头的总线控制模块,FPGA内包括依次连接的视频捕获模块、写缓存FIFO模块、外部存储控制器、读缓冲FIFO模块、视频格式转换模块和滤波模块,视频捕获模块与摄像头联接,外部存储控制器与外部存储器联接,滤波模块分别联接FPGA内的USB控制器和VGA控制器。
2.根据权利要求1所述的基于FPGA与USB2.0的便携式计算机视频监控系统,其特征在于:所述滤波模块为中值滤波模块,中值滤波模块采用3*3的滤波器窗口,在滤波处理过程中滤波器窗口不断的滑动来提取3行图像的像素值,然后将得到的9个像素值经过比较运算得到的中值输出。
3.根据权利要求1所述的基于FPGA与USB2.0的便携式计算机视频监控系统,其特征在于:在滤波模块确定9个数中的中间值的工作过程中,针对所使用的3*3的滤波器窗口,先对每一行排序,将比较后的数据按照从小到大的顺序排列,第一列的数据为最小值组,第二列的数据为中间值组,第三列为最大值组;然后最大值组的最小值、最小值组的最大值和中间值组的中间值三者进行比较得到中值。
4.根据权利要求1所述的基于FPGA与USB2.0的便携式计算机视频监控系统,其特征在于:所述摄像头为CMOS数字摄像头。
5.根据权利要求1所述的基于FPGA与USB2.0的便携式计算机视频监控系统,其特征在于:FPGA内还设有连接VGA控制器的OSD模块。
6.根据权利要求1所述的基于FPGA与USB2.0的便携式计算机视频监控系统,其特征在于:VGA控制器联接有外部液晶显示器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510422852.4A CN105025264A (zh) | 2015-07-20 | 2015-07-20 | 基于fpga与usb2.0的便携式计算机视频监控系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510422852.4A CN105025264A (zh) | 2015-07-20 | 2015-07-20 | 基于fpga与usb2.0的便携式计算机视频监控系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105025264A true CN105025264A (zh) | 2015-11-04 |
Family
ID=54414931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510422852.4A Pending CN105025264A (zh) | 2015-07-20 | 2015-07-20 | 基于fpga与usb2.0的便携式计算机视频监控系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105025264A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775573A (zh) * | 2016-11-23 | 2017-05-31 | 北京电子工程总体研究所 | 一种基于fpga的潜在目标排序方法 |
CN107993202A (zh) * | 2017-11-24 | 2018-05-04 | 中国科学院长春光学精密机械与物理研究所 | 使用fpga实现中值滤波的方法 |
CN109246331A (zh) * | 2018-09-19 | 2019-01-18 | 郑州云海信息技术有限公司 | 一种视频处理方法和系统 |
CN109963103A (zh) * | 2017-12-26 | 2019-07-02 | 北京君正集成电路股份有限公司 | 低功耗录像方法和装置 |
CN109963102A (zh) * | 2017-12-26 | 2019-07-02 | 北京君正集成电路股份有限公司 | 录像系统 |
CN112511790A (zh) * | 2019-09-16 | 2021-03-16 | 国网山东省电力公司东营市河口区供电公司 | 基于fpga的煤矿高速图像采集与降噪系统及处理方法 |
CN114327571A (zh) * | 2022-03-14 | 2022-04-12 | 合肥悦芯半导体科技有限公司 | 文件配置方法、芯片测试机及计算机可读取存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6421094B1 (en) * | 1997-12-01 | 2002-07-16 | Lg Electronics Inc. | HDTV video display processor |
CN1599417A (zh) * | 2003-09-15 | 2005-03-23 | 厦门华侨电子企业有限公司 | 一种可对多种图像信号进行变换的方法及装置 |
CN102801912A (zh) * | 2012-07-17 | 2012-11-28 | 北京伽略电子系统技术有限公司 | 一种红外图像处理芯片及处理方法 |
-
2015
- 2015-07-20 CN CN201510422852.4A patent/CN105025264A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6421094B1 (en) * | 1997-12-01 | 2002-07-16 | Lg Electronics Inc. | HDTV video display processor |
CN1599417A (zh) * | 2003-09-15 | 2005-03-23 | 厦门华侨电子企业有限公司 | 一种可对多种图像信号进行变换的方法及装置 |
CN102801912A (zh) * | 2012-07-17 | 2012-11-28 | 北京伽略电子系统技术有限公司 | 一种红外图像处理芯片及处理方法 |
Non-Patent Citations (2)
Title |
---|
陆浩: "基于FPGA的多功能图像处理系统设计", 《微电子学与计算机》 * |
陈友荣: "基于FPGA技术视频采集系统的设计与实现", 《中国有线电视》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775573A (zh) * | 2016-11-23 | 2017-05-31 | 北京电子工程总体研究所 | 一种基于fpga的潜在目标排序方法 |
CN107993202A (zh) * | 2017-11-24 | 2018-05-04 | 中国科学院长春光学精密机械与物理研究所 | 使用fpga实现中值滤波的方法 |
CN109963103A (zh) * | 2017-12-26 | 2019-07-02 | 北京君正集成电路股份有限公司 | 低功耗录像方法和装置 |
CN109963102A (zh) * | 2017-12-26 | 2019-07-02 | 北京君正集成电路股份有限公司 | 录像系统 |
CN109246331A (zh) * | 2018-09-19 | 2019-01-18 | 郑州云海信息技术有限公司 | 一种视频处理方法和系统 |
CN112511790A (zh) * | 2019-09-16 | 2021-03-16 | 国网山东省电力公司东营市河口区供电公司 | 基于fpga的煤矿高速图像采集与降噪系统及处理方法 |
CN114327571A (zh) * | 2022-03-14 | 2022-04-12 | 合肥悦芯半导体科技有限公司 | 文件配置方法、芯片测试机及计算机可读取存储介质 |
CN114327571B (zh) * | 2022-03-14 | 2022-06-14 | 合肥悦芯半导体科技有限公司 | 文件配置方法、芯片测试机及计算机可读取存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105025264A (zh) | 基于fpga与usb2.0的便携式计算机视频监控系统 | |
TWI700633B (zh) | 影像訊號處理器以及包括其之裝置 | |
CN104104888A (zh) | 一种并行多核fpga数字图像实时缩放处理方法和装置 | |
CN107766812B (zh) | 一种基于MiZ702N的实时人脸检测识别系统 | |
CN105208275B (zh) | 一种支持流数据片内实时处理的系统 | |
CN107750366A (zh) | 用于梯度直方图的硬件加速器 | |
CN106817545B (zh) | 一种快速多分辨率视频图像镜像旋转处理系统 | |
CN105611256B (zh) | 一种基于梯度的Bayer格式插值方法及基于FPGA的显示装置 | |
CN101567979A (zh) | 基于usb2.0的红外摄像机与计算机间数据采集系统 | |
CN101567078B (zh) | 一种双总线的视觉处理芯片架构 | |
CN205563550U (zh) | 一种基于Microblaze软核的PS2接口的KVM模块 | |
CN202261654U (zh) | Fpga视频图像存储与处理的装置 | |
CN109978787B (zh) | 一种基于生物视觉计算模型的图像处理方法 | |
CN106954029A (zh) | 一种全景视频拼接方法及系统 | |
Chen et al. | HISP: heterogeneous image signal processor pipeline combining traditional and deep learning algorithms implemented on FPGA | |
CN103716590A (zh) | 一种基于电子指纹捺印的高清审讯系统 | |
CN107945197A (zh) | 一种用于图像边缘提取的智能图像处理仪 | |
CN107918935A (zh) | 嵌入式系统的图像匹配切割装置及切割方法 | |
Calvo-Gallego et al. | Real-time FPGA connected component labeling system | |
CN104918004B (zh) | 基于fpga和dsp芯片的pci通信监控系统 | |
CN107623834A (zh) | 一种基于fpga的运动目标检测系统 | |
CN111200727A (zh) | 一种基于深度感知的三维图像处理系统 | |
CN205005137U (zh) | Fpga的实时图像采集和去噪处理的装置 | |
Fuentes et al. | FPGA implementation of the bilinear interpolation algorithm for image demosaicking | |
CN112801080B (zh) | 基于fpga的印刷体数字字符自动识别装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151104 |
|
RJ01 | Rejection of invention patent application after publication |