首页> 中国专利> 一种基于JPEG2000的图像采集传输系统

一种基于JPEG2000的图像采集传输系统

摘要

本发明公开了一种基于JPEG2000的图像编码SOPC系统,包括图像采集、基于JPEG2000标准的图像编码和码流传输三个部分,可获得极高的图像编码效率。本发明基于Xilinx Zynq SOPC平台,其实现步骤为:1、根据JPEG2000算法设计图像编码模块,再将此模块封装成兼容AXI协议的通用IP核;2、使用Vivado构建硬件系统环境;3、在Zynq平台上移植Linux;4、基于Linux系统设计符合UVC标准的USB摄像头驱动程序;5、设计JPEG2000处理核的Linux系统驱动;6、设计JPEG2000编码核的控制程序;7、基于Linux系统设计网络传输程序;8、整合各个子系统,实现图像采集、图像编码及码流传输。

著录项

  • 公开/公告号CN104954795A

    专利类型发明专利

  • 公开/公告日2015-09-30

    原文格式PDF

  • 申请/专利权人 东南大学;

    申请/专利号CN201510383022.5

  • 申请日2015-07-02

  • 分类号H04N19/42(20140101);H04N7/18(20060101);

  • 代理机构32249 南京瑞弘专利商标事务所(普通合伙);

  • 代理人严巧巧

  • 地址 211189 江苏省南京市江宁区东南大学路2号

  • 入库时间 2023-12-18 11:14:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-12-19

    授权

    授权

  • 2015-11-04

    实质审查的生效 IPC(主分类):H04N19/42 申请日:20150702

    实质审查的生效

  • 2015-09-30

    公开

    公开

说明书

技术领域

本发明涉及一种图片处理领域,特别是基于SOPC设计方法的图片采集和传输。

背景技术

随着多媒体技术的不断运用,图像编码要求更高的性能和新的特征。为了满足图像 在特殊领域编码的需求,JPEG2000作为新一代标准不断得到发展。它不仅提供优于现 行标准的失真率和其他图像压缩性能,而且还可以提供一些现行标准不能有效实现的功 能和特性。JPEG2000标准更加注重图像的可伸缩表述,所以就可以在任意给定的分辨 率级别上来提供一个低质量的图像恢复,或者在要求的分辨率和信噪比的情况下提取图 像的部分区域。

Zynq是Xilinx推出的高性能的可编程片上系统(System on Programmable Chip,简 称SOPC),由两部分组成:处理器系统(Processing System,简称PS)和可编程逻辑 (Programmable Logic,简称PL)。PS部分以ARM Cortex-A9双核处理器为核心,配有 NEON协处理器、片上存储器、AXI互联矩阵、中断控制器、以太网、USB等通用外设 控制器等,提供了全面的操作系统支持。PL部分基于Xilinx 7系列FPGA架构,采用 28nm技术,提供了通用硬件可编程资源,包括CLB(Configurable Logic Blocks,可配 置逻辑块)、IOB(Input/Output Blocks,输入输出块)、时钟资源、高性能ADC、DSP48E、 Block RAM等。

发明内容

发明目的:为了克服现有技术中存在的不足,本发明提供一种基于JPEG2000的图 片采集传输系统,用于解决现有的图像采集传输系统性能不佳的技术问题。

技术方案:为实现上述目的,本发明采用的技术方案为:

一种基于JPEG2000的图像采集传输系统,系统基于Zynq平台,包括图像采集、 基于JPEG2000标准算法的图像编码和码流传输三个部分;上述系统按照如下步骤进行 设计:

步骤1、根据JPEG2000标准算法设计图像编码模块,再根据高级可扩展接口 (Advanced eXtensible Interface,简称AXI)总线协议,将设计好的图像编码模块封装 成兼容AXI总线协议的通用IP核并作为处理器系统的定制外设接入ARM核中,记为 JPEG2000核;

步骤2、使用Vivado软件构建系统的硬件系统,硬件系统包括如下IP核:Zynq7 处理系统、AXI数据传输核、AXI互联核、JPEG2000核、块随机存储器(Block Random  Access Memory,简称BRAM)和BRAM控制器即块随机存储器控制器;

步骤3、移植Linux系统至Zynq平台;配置Linux内核,使其包含USB视频类(USB  Video Clas,简称UVC类)设备驱动、网络通信驱动等内容,编译内核;编译生成u-boot 启动文件;构建需要的文件系统;

步骤4、基于Linux内核提供的Linux系统视频设备接口(Video 4Linux 2,简称V4L2) 类驱动程序,开发USB摄像头动态采集图像的驱动程序;

步骤5、基于杂项设备(Miscellaneous,简称Misc)类,开发JPEG2000核的Linux 系统驱动程序,进而设计JPEG2000核的Linux系统控制程序;

步骤6、使用Zynq开发板的千兆以太网并基于Linux系统实现网络通信编程,实现 数据的传输工作。

步骤7、将USB摄像头动态采集图像的驱动程序、JPEG2000核的Linux系统控制 程序和网络数据传输程序整合验证,完成图像的动态采集、编码处理及码流传输;

所述Zynq7处理系统中包括图像信号接收接口、图像信号输出接口和内部数据传输 接口,摄像头与图像信号接收接口连接接收摄像头采集到的图像信号,为了保证图像质 量,可以通过UVC标准的高清USB摄像头实现图像采集,相应的图像信号接收接口为 USB控制器。Zynq7处理系统通过内部数据传输接口种的高速接口HP0接口连接AXI 互联核将图像信号传递至AXI数据传输核,AXI数据传输核与JPEG2000核进行交互处 理将图像信号通过JPEG2000核传递至BRAM存储器中,BRAM存储器受BRAM控制 器控制再将通过AXI互联核连接Zynq7处理系统中的内部数据传输接口中的一般接口 GP0接口将图像信号传输至Zynq7处理系统中,并最后通过图像信号输出接口将图像信 号输出。

进一步的,在本发明中,步骤1中,JPEG2000核运行在Zynq平台的可编程逻辑部 分,包括存储器映射到数据流命令模块(缩写为MM2S STS)、存储器映射到数据流状 态模块(缩写为MM2S STS)、JPEG2000模块和寄存器读写控制模块,以及用于通信 的M00_AXIS_CMD、S00_AXIS_STS、S01_AXIS_DATA、BRAM_PORT0、S00_AXI_Lite 共5条总线;这里的AXIS是AXI Stream的缩写,表示AXI流接口;

所述存储器映射到数据流命令模块用于产生AXI数据传输核传输需要的命令,其生 成的命令字通过M00_AXIS_CMD总线传输到AXI数据传输核。

所述存储器映射到数据流状态模通过S00_AXIS_STS总线接受AXI数据传输核传输 数据状态字,通过判断数据状态字,给出当前的传输状态;

所述JPEG2000模块通过S01_AXIS_DATA总线接收AXI数据传输核传输的数据, 同时对数据进行处理,然后将处理后的数据通过BRAM_PORT0传输到BRAM存储器 中,供后续处理;

所述寄存器读写控制模块中设有寄存器,用于存储JPEG2000模块需要的参数以及 AXI数据传输核传输数据中需要的参数和传输状态;所述寄存器读写控制模块通过 S00_AXI_Lite总线接到Zynq7处理系统的AXI_GP0接口,供处理器系统中的ARM核 读取或写入寄存器的值。

有益效果:

本发明提供的使用Zynq平台实现基于JPEG2000的图像编码系统,可充分发挥 JPEG2000核的高速处理能力,加速了系统的集成,简化了设计方法,降低了设计成本、 系统功耗,使得设计更加灵活。具体包括如下几个方面:

1、使用Xilinx的Zynq作为SOPC平台构建系统,加速了系统的集成,简化了设 计方法,降低了设计成本、系统功耗,使得设计更加灵活。

2、使用Zynq平台的PL部分开发可定制外设,将复杂的算法使用FPGA实现,提 高了系统是运行速度,以及流畅度。

3、相比其他图像编码算法,JPEG2000算法可在更低码率下获得同样甚至更优的重 建图像质量,在提升整个编码系统性能及减少码流传输等方面意义重大。

4、基于Zynq开发板的千兆以太网接口,使用Linux系统提供的网络通信功能传输 码流,保证数据的实时传输。

附图说明

图1为编码系统框图;

图2为封装后JPEG2000核的内部框图;

图3为软件分层框图;

图4为系统运行流程图。

具体实施方式

下面结合附图对本发明作更进一步的说明。

实施例:

本实施例使用ZC702评估板作为实施平台,其载有Xilinx Zynq 7020,并包含多个 USB和千兆网络接口。

将USB摄像头接入ZC702评估板,连接上位机与评估板的网络连接线,实现图片 数据的动态采集、编码和码流传输。设置USB摄像头采集速度为每秒钟30帧,图片大 小为640*480,PL部分的工作时钟设为100Mhz。实现流程如下:

1、使用Verilog硬件描述语言(Verilog Hardware Description Language,简称Verilog  HDL)根据JPEG2000标准算法设计图像编码模块,进行功能时序验证,确保图像编码 模块正常工作;

2、对设计好的图像编码模块封装成兼容AXI总线协议的通用IP核;

3、使用Vivado软件构建系统的硬件系统,硬件系统包括:Zynq7处理系统、AXI 数据传输核、AXI互联核、JPEG2000核、BRAM控制器和BRAM存储器;

4、对第3步构建的硬件系统验证综合实现,导出软件系统需要的*.bit等文件;

5、使用第4步中产生的*.bit等文件制作Zynq平台Linux启动文件;

6、对Zynq平台移植Linux系统,包括:编译u-boot、Linux内核,包含对千兆以 太网、UVC类USB摄像头驱动支持,然后制作文件系统;

7、基于Linux内核提供的Video 4 Linux 2类驱动程序开发USB摄像头动态采集图片 的驱动程序;

8、基于Linux系统提供的网络功能,开发网络数据传输程序;

9、基于Miscellaneous设备类型,开发JPEG2000核的Linux系统驱动程序;

10、在JPEG2000核驱动程序测试通过后,设计JPEG2000系统的Linux系统控制 程序;

11、将USB摄像头驱动程序,JPEG2000核控制程序和网络数据传输程序整合验证, 完成图片的动态采集、编码和码流传输。

以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员 来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也 应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号