CN109919952A - 一种在fpga中将大图切割为几幅小图并同时显示的方法 - Google Patents
一种在fpga中将大图切割为几幅小图并同时显示的方法 Download PDFInfo
- Publication number
- CN109919952A CN109919952A CN201910261123.3A CN201910261123A CN109919952A CN 109919952 A CN109919952 A CN 109919952A CN 201910261123 A CN201910261123 A CN 201910261123A CN 109919952 A CN109919952 A CN 109919952A
- Authority
- CN
- China
- Prior art keywords
- image
- fpga
- big
- data
- cut
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
Abstract
本发明涉及一种一种在FPGA中将大图切割为几幅小图并同时显示的方法,其特征在于:具体包括以下步骤:(1)FPGA对DDR进行初始化;(2)将切割的小图像分组;(3)FPGA内部例化一个逻辑单元;(4)将大图的每一个像素的值写入DDR;(5)将每组数据依次读出并存入一级缓存;(6)将第一级缓存内的数据取出并计数;(7)每组内图像按在此行中占据的序号来分开并存到第二级缓存内;(8)各通道图像的显示接口取图像数据并显示。使用本发明对从外部存储器返回的数据包里数据进行计数,可以精确地得到分割后的各个小图像;并降低了FPGA对外部存储器访问的频率;还利于FPGA对于高频时钟域的时序收敛。
Description
技术领域
本发明涉及图像分割领域,具体一种在FPGA中将大图切割为几幅小图并同时显示的方法。
背景技术
在图像处理过程中,经常会遇到图像切割的问题,即将一幅较大的图像分割若干幅小图像,然后同时显示出来。现有技术已有使用FPGA将大图切割的方法,但是由于FPGA自带的存储器容量有限,往往会将图像数据存储在外挂的DDR SDRAM当中,它的读写是突发式的,每次处理一个数据包,不能精确到针对每一个字节的读取。如果这时候去同时读取切割的每一幅小图像,那么会有以下问题:
(1)每一幅小图像两两之间的界限很有可能会落在DDR的一个读时序的数据包里,因此会很大概率将不是自己图片的内容误读取进来;
(2)DDR与正常逻辑交换数据时,会使用FPGA自带的存储器作为数据缓冲,因此理论上读写通道越少越好,而如果切割成4幅时,就需要5个通道,切割成9幅则需要10个通道,这显然比较浪费资源;
(3)DDR接口的时钟一般是高频时钟,如果与它相连的逻辑量太大的话,则意味着FPGA内会有很大一块区域属于高频时钟域,这会对后续的时序收敛带来很大的挑战。
发明内容
本发明所要解决的技术问题是提供一种在FPGA中将大图切割为几幅小图并同时显示的方法。
为解决以上技术问题,本发明的技术方案为提供一种在FPGA中将大图切割为几幅小图并同时显示的方法,其创新点在于:具体包括以下步骤:
(1)FPGA对外接动态随机存储器进行初始化,并使外接动态随机存储器能正常读取数据;
(2)将需要切割的小图像分组,同一行的算一组,大图被切割为n行,即分为n组;
(3)FPGA内部例化一个可以时分复用去读写外接动态随机存储器的逻辑单元用于大图和小图的图像传输;
(4)将大图通过一个写通道将每一个像素的值按顺序写入外接动态随机存储器;
(5)第一组图像的数据从第一个读通道读出;第二组图像的数据从第二个读通道读出……第n组图像的数据从第n个读通道读出,读出后,将各自的数据存入存储每个通道的第一级缓存;
(6)将第一级缓存内的数据取出,同时对取出的数据进行计数,计数周期为大图像的一行像素点的总和,当计满一行时,将计数器清0,重新计数;
(7)针对每组图像,每一行中的组内图像按在此行中占据的序号来分开,并存到各通道图像所属的第二级缓存内;
(8)各通道图像的显示接口从对应的各通道缓存里面取图像数据并显示出来。
进一步的,所述步骤(1)中的FPGA通过控制器MIG对外接动态随机存储器进行初始化,所述外接动态随机存储器包括但不限于DDR、DDR2、DDR3和DDR4。
进一步的,所述步骤(3)中的逻辑单元为AXI CONNECT。
进一步的,所述步骤(4)中像素包括但不限于RGB、YCBCR和灰度。
进一步的,所述步骤(5)的第一级缓存和步骤(7)中第二级缓存均包括但不限于FIFO、RAM或者寄存器组合。
本发明和现有技术相比,产生的有益效果为:
(1)本发明通过对从外部存储器返回的数据包里数据进行计数,可以精确地得到分割后的各个小图像;
(2)本发明通过对小图像按行来分组,每组小图像共用一个外部存储器的读接口,降低了FPGA对外部存储器访问的频率;
(3)本发明通过分组来减少读接口的同时,也削减了FPGA用于与外部存储器的逻辑量,这有利于FPGA对于高频时钟域的时序收敛。
附图说明
为了更清晰地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的方法步骤示意图。
图2为将大图像切割成4幅小图像示意图。
图3为将大图像切割成4幅小图像步骤流程图。
具体实施方式
下面将通过具体实施方式对本发明的技术方案进行清楚、完整地描述。
本发明的一种在FPGA中将大图切割为几幅小图并同时显示的方法,具体步骤如图1所示,包括以下步骤:
(1)FPGA对外接动态随机存储器进行初始化,并使外接动态随机存储器能正常读取数据,外接动态随机存储器包括但不限于DDR、DDR2、DDR3和DDR4。
(2)将需要切割的小图像分组,同一行的算一组,大图被切割为n行,即分为n组。
(3)FPGA内部例化一个可以时分复用去读写外接动态随机存储器的逻辑单元用于大图和小图的图像传输,本发明的逻辑单元为AXI CONNECT,也可以是其他形式。
(4)将大图通过一个写通道(图中的CHANNEL 0)将每一个像素的值按顺序写入外接动态随机存储器,本发明的像素包括但不限于RGB、YCBCR和灰度。
(5)第一组图像的数据从第一个读通道(CHANNEL 1)读出;第二组图像的数据从第二个读通道(CHANNEL 2)读出……第n组图像的数据从第n个读通道读出,读出后,将各自的数据存入存储每个通道的第一级缓存,本发明的第一级缓存包括但不限于FIFO、RAM或者寄存器组合。
(6)将第一级缓存内的数据取出,同时对取出的数据进行计数,计数周期为大图像的一行像素点的总和,当计满一行时,将计数器清0,重新计数;
(7)针对每组图像,每一行中的组内图像按在此行中占据的序号来分开,并存到各通道图像所属的第二级缓存内,本发明的第二级缓存也是包括但不限于FIFO、RAM或者寄存器组合。
(8)各通道图像的显示接口从对应的各通道缓存里面取图像数据并显示出来。
本发明针对一种在FPGA中将大图切割为几幅小图并同时显示的方法步骤举例如图2所示将图像分割为4个小图,具体步骤如图3所示:
(1)FPGA要能对外接动态随机存储器DDR SDRAM进行初始化,并能正常读取数据,本发明主要通过图中的DDR控制器MIG去实现;
(2)FPGA内部例化一个可以时分复用去读写DDR SDRAM的逻辑单元AXI CONNECT,用于大图和小图的图像传输;
(3)将大图通过CHANNEL 0将每一个像素的值按顺序写入DDR SDRAM;
(4)图像1和2 的数据从CHANNEL1读出,起始地址为0;图像3和4 的数据从CHANNEL2读出,起始地址为图像大小的一半(具体根据图像3和4在列方向上占据的位置有关)。读出后,将各自的数据存入自己的第一级缓存FIFO;
(5)将第一级FIFO的数据取出,同时对取出的数据进行计数,计数周期为大图像的一行像素点的总和,当计满一行时,将计数器清0,重新计数;
(6)针对每组图像,按每一行中组内图像在此行占据的序号来分开,并存到各路图像所属的第二级缓存FIFO内;以图像1和图像2为例,如果两幅图像一样大,那么每行计数器的前一半像素肯定属于图像1,后一半像素属于图像2;
(7)各路图像的显示接口从自己对应的FIFO里面取图像数据并显示出来。
上面所述的实施例仅仅是本发明的优选实施方式进行描述,并非对本发明的构思和范围进行限定,在不脱离本发明设计构思的前提下,本领域中普通工程技术人员对本发明的技术方案作出的各种变型和改进均应落入本发明的保护范围,本发明的请求保护的技术内容,已经全部记载在技术要求书中。
Claims (5)
1.一种在FPGA中将大图切割为几幅小图并同时显示的方法,其特征在于:具体包括以下步骤:
(1)FPGA对外接动态随机存储器进行初始化,并使外接动态随机存储器能正常读取数据;
(2)将需要切割的小图像分组,同一行的算一组,大图被切割为n行,即分为n组;
(3)FPGA内部例化一个可以时分复用去读写外接动态随机存储器的逻辑单元用于大图和小图的图像传输;
(4)将大图通过一个写通道将每一个像素的值按顺序写入外接动态随机存储器;
(5)第一组图像的数据从第一个读通道读出;第二组图像的数据从第二个读通道读出……第n组图像的数据从第n个读通道读出,读出后,将各自的数据存入存储每个通道的第一级缓存;
(6)将第一级缓存内的数据取出,同时对取出的数据进行计数,计数周期为大图像的一行像素点的总和,当计满一行时,将计数器清0,重新计数;
(7)针对每组图像,每一行中的组内图像按在此行中占据的序号来分开,并存到各通道图像所属的第二级缓存内;
(8)各通道图像的显示接口从对应的各通道缓存里面取图像数据并显示出来。
2.根据权利要求1所述的一种在FPGA中将大图切割为几幅小图并同时显示的方法,其特征在于:所述步骤(1)中的FPGA通过控制器MIG对外接动态随机存储器进行初始化,所述外接动态随机存储器包括DDR、DDR2、DDR3和DDR4。
3.根据权利要求1所述的一种在FPGA中将大图切割为几幅小图并同时显示的方法,其特征在于:所述步骤(3)中的逻辑单元为AXI CONNECT。
4.根据权利要求1所述的一种在FPGA中将大图切割为几幅小图并同时显示的方法,其特征在于:所述步骤(4)中像素包括RGB、YCBCR和灰度。
5.根据权利要求1所述的一种在FPGA中将大图切割为几幅小图并同时显示的方法,其特征在于:所述步骤(5)的第一级缓存和步骤(7)中第二级缓存均包括FIFO、RAM或者寄存器组合。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910261123.3A CN109919952A (zh) | 2019-04-02 | 2019-04-02 | 一种在fpga中将大图切割为几幅小图并同时显示的方法 |
CN201910584956.3A CN110148143A (zh) | 2019-04-02 | 2019-07-01 | 一种基于fpga的图像分割并同步显示的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910261123.3A CN109919952A (zh) | 2019-04-02 | 2019-04-02 | 一种在fpga中将大图切割为几幅小图并同时显示的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109919952A true CN109919952A (zh) | 2019-06-21 |
Family
ID=66968335
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910261123.3A Withdrawn CN109919952A (zh) | 2019-04-02 | 2019-04-02 | 一种在fpga中将大图切割为几幅小图并同时显示的方法 |
CN201910584956.3A Pending CN110148143A (zh) | 2019-04-02 | 2019-07-01 | 一种基于fpga的图像分割并同步显示的方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910584956.3A Pending CN110148143A (zh) | 2019-04-02 | 2019-07-01 | 一种基于fpga的图像分割并同步显示的方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN109919952A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190301A (zh) * | 2021-03-30 | 2021-07-30 | 武汉高德红外股份有限公司 | 一种fpga平台的用户界面操作实现方法 |
CN115035128A (zh) * | 2022-08-10 | 2022-09-09 | 之江实验室 | 基于fpga的图像重叠滑窗分割方法及系统 |
US11972504B2 (en) | 2022-08-10 | 2024-04-30 | Zhejiang Lab | Method and system for overlapping sliding window segmentation of image based on FPGA |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111935416A (zh) * | 2020-01-14 | 2020-11-13 | 南京信息工程大学 | 一种基于fpga的缩放后图像存储方法 |
CN112689103A (zh) * | 2020-12-18 | 2021-04-20 | 西安万像电子科技有限公司 | 屏幕的显示控制系统及方法 |
CN113596486A (zh) * | 2021-07-19 | 2021-11-02 | 康佳集团股份有限公司 | 一种数据信息存储方法、读取、装置、终端及存储介质 |
CN114038404A (zh) * | 2021-11-17 | 2022-02-11 | 东莞阿尔泰显示技术有限公司 | 改良型显示模组的显示数据分配方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1188912A (zh) * | 1997-01-20 | 1998-07-29 | 株式会社东芝 | 图像存储器存取方法、图像形成、保存装置及地址生成方法及装置 |
CN1320823C (zh) * | 2002-07-19 | 2007-06-06 | 三星电子株式会社 | 图像处理装置和方法 |
CN101000755B (zh) * | 2006-12-21 | 2011-11-30 | 康佳集团股份有限公司 | 多屏显示拼接控制器 |
TWM324824U (en) * | 2007-02-06 | 2008-01-01 | Tai-Shiung Jang | FPGA (field programmable gate array, FPGA)-based even-division digital color image surveillance apparatus |
CN101692335B (zh) * | 2009-09-24 | 2011-12-21 | 广东威创视讯科技股份有限公司 | 一种实现无缝拼接大屏幕显示的图像处理方法及其装置 |
WO2010124542A1 (zh) * | 2009-04-29 | 2010-11-04 | 广东威创视讯科技股份有限公司 | 无缝拼接显示系统的图像处理方法及其装置 |
CN102376293A (zh) * | 2010-08-19 | 2012-03-14 | 上海济丽信息技术有限公司 | 一种基于fpga的图像拼接处理器及图像拼接方法 |
CN101980142B (zh) * | 2010-10-19 | 2012-06-06 | 广东威创视讯科技股份有限公司 | 一种多屏图像分割处理系统及其方法 |
CN103269416A (zh) * | 2013-05-03 | 2013-08-28 | 四川虹视显示技术有限公司 | 采用并行处理方式实现视频图像拼接显示的装置及方法 |
CN104767910A (zh) * | 2015-04-27 | 2015-07-08 | 京东方科技集团股份有限公司 | 视频图像拼接系统及方法 |
CN104902193B (zh) * | 2015-05-19 | 2018-06-22 | 上海集成电路研发中心有限公司 | 一种基于fpga对图像数据进行分割处理和显示的方法 |
CN106791488B (zh) * | 2016-12-28 | 2021-01-29 | 浙江宇视科技有限公司 | 一种同步拼接显示方法及装置 |
-
2019
- 2019-04-02 CN CN201910261123.3A patent/CN109919952A/zh not_active Withdrawn
- 2019-07-01 CN CN201910584956.3A patent/CN110148143A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190301A (zh) * | 2021-03-30 | 2021-07-30 | 武汉高德红外股份有限公司 | 一种fpga平台的用户界面操作实现方法 |
CN115035128A (zh) * | 2022-08-10 | 2022-09-09 | 之江实验室 | 基于fpga的图像重叠滑窗分割方法及系统 |
CN115035128B (zh) * | 2022-08-10 | 2022-11-08 | 之江实验室 | 基于fpga的图像重叠滑窗分割方法及系统 |
US11972504B2 (en) | 2022-08-10 | 2024-04-30 | Zhejiang Lab | Method and system for overlapping sliding window segmentation of image based on FPGA |
Also Published As
Publication number | Publication date |
---|---|
CN110148143A (zh) | 2019-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109919952A (zh) | 一种在fpga中将大图切割为几幅小图并同时显示的方法 | |
US11500586B2 (en) | Data read-write method and apparatus and circular queue | |
KR100908760B1 (ko) | 다중 내부 데이터 버스 및 메모리 뱅크 인터리빙을 갖는방법 및 메모리 장치 | |
US20080049240A1 (en) | Image data buffer apparatus and data transfer system for efficient data transfer | |
CN105245759B (zh) | 一种实现图像同步显示的方法及装置 | |
TWI332648B (en) | Image display system and control method therefor | |
WO2006063337A2 (en) | Dma latency compensation with scaling line buffer | |
CN107248136A (zh) | 一种基于fpga的图像直方图信息获取方法 | |
JP5396169B2 (ja) | データアクセス制御装置 | |
CN206272746U (zh) | 一种基于fpga的数字视频显示接口模块 | |
CN105657311A (zh) | 一种视频录制方法及装置 | |
US20060119604A1 (en) | Method and apparatus for accelerating the display of horizontal lines | |
CN105335323A (zh) | 一种数据突发的缓存装置和方法 | |
WO2003001449A3 (en) | Method and system for processing two-dimensional image data | |
CN108958700A (zh) | 一种先进先出数据缓存器及缓存数据的方法 | |
US20070162647A1 (en) | System and Method for Performing Scatter/Gather Direct Memory Access Transfers | |
CN109508782A (zh) | 基于神经网络深度学习的加速电路和方法 | |
US20020013871A1 (en) | Data processing unit | |
CN106776374A (zh) | 一种基于fpga的高效数据缓冲方法 | |
CN104461934A (zh) | 一种适合ddr存储器的时域解卷积交织装置及方法 | |
CN112541929A (zh) | 一种用于卷积神经网络的图像处理方法及系统 | |
EP2264604A1 (en) | Device for real-time streaming of two or more streams in parallel to a solid state memory device array | |
CN107040784B (zh) | 一种视频缓冲处理方法、系统和装置 | |
CN110362519A (zh) | 接口装置和接口方法 | |
CN101277378A (zh) | 图像缩放装置及其线缓冲器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190621 |
|
WW01 | Invention patent application withdrawn after publication |