CN109472777B - 一种基于fpga异构计算的桥梁检测方法 - Google Patents
一种基于fpga异构计算的桥梁检测方法 Download PDFInfo
- Publication number
- CN109472777B CN109472777B CN201811223077.XA CN201811223077A CN109472777B CN 109472777 B CN109472777 B CN 109472777B CN 201811223077 A CN201811223077 A CN 201811223077A CN 109472777 B CN109472777 B CN 109472777B
- Authority
- CN
- China
- Prior art keywords
- bridge
- image
- corrosion
- fpga
- expansion
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/84—Systems specially adapted for particular applications
- G01N21/88—Investigating the presence of flaws or contamination
- G01N21/8851—Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
-
- 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
-
- 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/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/84—Systems specially adapted for particular applications
- G01N21/88—Investigating the presence of flaws or contamination
- G01N21/8851—Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
- G01N2021/8887—Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges based on image processing techniques
- G01N2021/8893—Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges based on image processing techniques providing a video image and a processed signal for helping visual decision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10032—Satellite or aerial image; Remote sensing
- G06T2207/10044—Radar image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30132—Masonry; Concrete
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30181—Earth observation
- G06T2207/30184—Infrastructure
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Biochemistry (AREA)
- General Health & Medical Sciences (AREA)
- Immunology (AREA)
- Pathology (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于FPGA异构计算的桥梁检测方法,将基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法编译为AOCX可执行文件;然后将待处理的高分辨SAR图像发送到FPGA板卡,并将编译的AOCX可执行文件在FPGA板卡上进行运行;得到高分辨SAR图像的处理结果。本发明通过在FPGA端并行运算,与现有基于腐蚀和膨胀的SAR图像桥梁目标检测算法在CPU上执行相比,明显减少了运算时间,实现大尺寸SAR图像桥梁目标检测以及实时处理。
Description
技术领域
本发明属于图像处理技术领域,具体涉及一种基于FPGA异构计算的桥梁检测方法。
背景技术
在高分辨SAR图像中,目标的细节特征更加丰富,使得影藏在低分辨SAR图像的一些信息清晰的展现出来。高分辨SAR图像的这一优势使得对目标进行更加精细的检测与识别成为可能。对于高分辨率SAR图像来说,传统的目标检测算法已经不能满足实时性和准确性的要求.
近年来提出了许多桥梁检测的方法,概括来说可以分为两类:a.采用针对SAR图像乘性噪声的边缘检测算子检测出桥梁和河流的边界,再通过桥梁的几何特点全局搜索定位到最终的桥梁位置;b.首先整体分割出河流,再通过搜索单个连通的河流轮廓检测桥梁。在这两种方法中,都使用了一次甚至多次针对河流边界线或连通河流区域的全局搜索,因此难以胜任整景SAR图像中的桥梁目标检测,对长宽高达数万数万像素的大场景SAR图像进行全局搜索边界线或连通河流区域不仅困难,而且容易产生虚警和漏检。因此本文提出了一种简单的桥梁检测算法,相比于前述方法,该方法不是通过全局搜索再剔除虚警的路线来检测桥梁目标,而是使用图像形态学处理中常用的腐蚀和膨胀等逻辑运算来定位桥梁位置。
基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法在CPU上执行虽然有较好的检测效果,但SAR图像数据量大、处理算法结构复杂,导致图像不能实时处理,进而使得桥梁的检测算法运行速度慢。
发明内容
本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种基于FPGA异构计算的桥梁检测方法,解决了现有的桥梁检测算法中在处理SAR图像时,由于SAR图像数据量大、处理算法结构复杂,导致图像不能实时处理,进而使得桥梁的检测算法运行速度慢的缺陷。
本发明采用以下技术方案:
一种基于FPGA异构计算的桥梁检测方法,将基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法编译为AOCX可执行文件;然后将待处理的高分辨SAR图像发送到FPGA板卡,并将编译的AOCX可执行文件在FPGA板卡上进行运行;得到高分辨SAR图像的处理结果。
更进一步的,本发明的特点还在于:基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法在FPGA板卡上的运行过程包括以下步骤:
S201、SAR图像预处理,包括图像增强和选择Lee滤波对SAR图像进行滤波处理;
S202、河流区域分割,使用单阈值法分割河流区域;
S203、进行桥梁检测获得表征桥梁位置的二值图像;
S204、根据步骤S203确定的二值图像,设置矩形窗口对桥梁进行分割;
S205、在二值图像上,将像素点值为255的像素点所组成的区域作为检测到的桥梁目标。
其中,步骤S203的桥梁检测具体包括以下步骤:
S2031、通过腐蚀和膨胀运算定位出桥梁和河流边界线的位置;
S2032、在获得的桥梁和边界线的二值图像中,去除干扰桥梁检测的边界线。
其中,步骤S2031具体为:
A1、首先对二值图像进行腐蚀运算如下:
ID=IΘBD
其中,I是河流区域分割后的原始二值图像,BD是腐蚀运算的结构元素,ID是腐蚀运算结果;
A2、对腐蚀过的图像进行膨胀运算如下:
其中,BE是膨胀运算的结构元素,IDE是膨胀运算结果;
A3、将腐蚀和膨胀运算后的结果与原始二值图像进行异或运算如下:
IM=xor(I,IDE)
其中,IM为异或运算结果,获得以桥梁为主要区域,含有河流边界线的二值图像。
其中,步骤A1中,将二值图像腐蚀编写为一个kernel函数的具体方法如下:
A11、设置图像腐蚀kernel函数的工作组大小,将待处理的目标数据划分为若干个工作组;
A12、对于SAR图像,在横向分配width个工作项,纵向分配height个工作项,各工作项并行运算处理整张图像的每个像素点,将腐蚀点的像素点值置为0;
A13、在内核执行时,各工作项检查全局ID,并访问相应的像素点,各工作项并行运行,相互之间没有for语句延迟。
其中,步骤A2中,将二维图像膨胀编写为一个kernel函数的具体方法如下:
A21、设置图像腐蚀kernel函数的工作组大小,将待处理的目标数据划分为若干个工作组;
A22、对于SAR图像,在横向分配width个工作项,纵向分配height个工作项,各工作项并行运算处理整张图像的每个像素点,将膨胀点的像素点值置为255;
A23、内核执行时,各工作项检查全局ID,并访问相应的像素点,各工作项并行运行,相互之间没有for语句延迟。
其中,在求像素点极大值时,将求极大值运算编写为一个kernel函数的具体步骤如下:
C1、设置求极大值运算kernel函数的工作项大小,使得在横向和纵向上像素点数量能够被工作项大小整除;
C2、设置不超过10个工作项,再比较各工作项求得的极大值,正确求得所需极大值并满足并行运算的效果。
其中,步骤S2032中,边界线去除方法的具体步骤如下:
B1、将原始二值图像使用窗口尺寸为7的结构元素腐蚀如下:
I'D=IΘB'D
其中,B'D和I'D分别是该次腐蚀的结构元素和结果;
B2、将结果与原始二值图像进行异或运算如下:
IN=xor(I′D,I)
其中,IN是异或运算的结果,获得宽度约为3的边界线;
B3、将边界线图像与桥梁边界线图像异或如下:
IR=xor(IM,IN)
其中,IR是最终的逻辑运算结果,能够将边界线去除。
其中,腐蚀完成2次,窗口大小分别为17和15,膨胀完成3次,窗口大小为是9,窗口中所有的元素为1,腐蚀窗口尺寸之和M=32,膨胀窗口尺寸之和N=27,使M>N,边界线的宽度约等于腐蚀和膨胀的窗口尺寸之差K的一半,边界线的宽度约为3。
其中,主机端将原始的高分辨SAR桥梁图像数据转化为一维数组数据,通过调用OpenCL提供的clEnqueueWriteBuffer函数,将数据发送到FPGA板卡的DDR内存中;然后将FPGA的处理结果从FPGA的DDR内存发送到主机端,主机端在高分辨SAR图像上确定该中心坐标所对应的中心坐标,然后以高分辨SAR图像上的中心坐标为中心,用矩形框框选出检测到的桥梁目标。
与现有技术相比,本发明至少具有以下有益效果:
本发明提供的一种基于FPGA异构计算的桥梁检测方法,通过对基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法进行高级语言描述,得到Kernel程序;将所述的Kernel程序编译为Kernel可执行文件。在FPGA端运行上述生成的可执行文件,实现对基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法,得到处理结果;本申请通过在FPGA端运行生成的可执行文件,很大程度的减少了基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法运行所需时间,明显的提高了算法的运行速度。
进一步的,在对目标算法进行高级语言描述时,对FPGA板进行设置,对大多数的for语句划分工作项,实现存储访问优化,应用数据划分对程序运算速度有很大的提升。
进一步的,对于特殊的算法,盲目的分配工作项不能实现预期目标,要合理的分配工作项,并在工作项之间进行处理运算,既能达到预期目标又能实现运算加速。
进一步的,在对目标算法进行高级语言描述时,对FPGA板进行设置,如合理的使用Buffer类型,避免无谓的数据传输,在桥梁检测算法的多个kernel顺序执行的时候,让数据停留在FPGA内存中,下个Kernel执行前就不需要重新传入数据,提高FPGA的计算效率。
进一步的,经过腐蚀和膨胀运算得到的二值图像里桥梁区域和河流与陆地的边界线是同时存在的,去除边界线后的二值图像仅剩下要检测的桥梁目标;采用边界线图像与桥梁边界图像异或可以准确的消除无用的河流与陆地边界,实现桥梁目标检测。
综上所述,本发明通过在FPGA端并行运算,与现有基于腐蚀和膨胀的SAR图像桥梁目标检测算法在CPU上执行相比,明显减少了运算时间,实现大尺寸SAR图像桥梁目标检测以及实时处理。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明流程示意图;
图2为目标算法在FPGA板卡上运行流程图。
具体实施方式
本发明提供了一种基于FPGA异构计算的桥梁检测方法,将基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法编译为AOCX可执行文件;然后将待处理的高分辨SAR图像发送到FPGA板卡,并将编译的AOCX可执行文件在FPGA板卡上进行运行;最终得到目标数据的处理结果。本发明通过在FPGA端运行生成的可执行文件,很大程度的减少了基于腐蚀和膨胀运算的SAR图像桥梁检测算法运行所需时间,明显的提高了算法的运行速度。
请参阅图1,本发明一种基于FPGA异构计算的桥梁检测方法,包括以下步骤:
S1、将目标算法利用OpenCL编写为kernel程序,用Altera SDK for OpenCL将所述的kernel程序编译为AOCX可执行文件;
S2、将待处理的目标数据通过PCIe接口发送到FPGA板卡上,并通过CPU执行主机端程序控制步骤S1生成的AOCX可执行文件在FPGA板卡上进行运行,最终得到目标数据的处理结果。
其中,所述目标算法为基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法;所述待处理的目标数据为高分辨SAR图像,FPGA板卡型号为de5net_a7;
请参阅图2,基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法在FPGA板卡上的运行过程包括以下步骤:
S201、SAR图像预处理,包括图像增强和选择Lee滤波对SAR图像进行滤波处理;
S202、河流区域分割,使用改进的阈值分割河流区域;单阈值法分割河流区域;
S203、进行桥梁检测;
由于获得的河流区域分割图像是只含有桥梁、陆地和河流的二值图像,依据膨胀和腐蚀运算,本发明提出了一种桥梁检测算法,具体步骤如下:
S2031、通过腐蚀和膨胀运算定位出桥梁和河流边界线的位置;
A1、首先对二值图像进行腐蚀运算,即:
ID=IΘBD
其中,I是河流区域分割后的原始二值图像,BD是腐蚀运算的结构元素,ID是腐蚀运算结果;腐蚀的目的是让所有位于河流上的桥梁区域断开,但是河流的边缘也会因为腐蚀进一步向陆地延伸。
将二值图像腐蚀编写为一个kernel函数的具体方法如下:
A11、设置图像腐蚀kernel函数的工作组大小,将待处理的目标数据划分为若干个工作组;
A12、对于SAR图像,在横向分配width个工作项,纵向分配height个工作项,各工作项并行运算处理整张图像的每个像素点,将腐蚀点的像素点值置为0;
A13、在内核执行时,各工作项检查自己的全局ID,并访问相应的像素点,各工作项都是并行运行的,相互之间没有for语句延迟。
A2、对腐蚀过的图像进行膨胀运算,即:
其中,BE是膨胀运算的结构元素,IDE是膨胀运算结果。
将二维图像膨胀编写为一个kernel函数的具体方法如下:
A21、设置图像腐蚀kernel函数的工作组大小,进而将待处理的目标数据划分为若干个工作组;
A22、对于SAR图像,在横向分配width个工作项,纵向分配height个工作项,各工作项并行运算处理整张图像的每个像素点,将膨胀点的像素点值置为255;
A23、内核执行时,各工作项检查自己的全局ID,并访问相应的像素点,各工作项都是并行运行的,相互之间没有向for语句那样的延迟。
A3、膨胀的目的是让河流的边缘尽量恢复到之前的位置,但桥梁的断开处却无法因为膨胀而连通,最后将腐蚀和膨胀运算后的结果与原始二值图像进行异或运算,即:
IM=xor(I,IDE)
其中,IM为异或运算结果,能够获得以桥梁为主要区域,含有河流边界线的二值图像。
需要注意的是腐蚀和膨胀需要进行多次,本发明中腐蚀完成了2次,窗口大小分别为17和15,而膨胀完成了3次,窗口大小都是9,窗口中所有的元素都为1,腐蚀窗口尺寸之和M=32,膨胀窗口尺寸之和N=27,为了使桥梁的区域足够大,必须使M>N。
S2032、在获得的桥梁和边界线的二值图像中,去除干扰桥梁检测的边界线。
边界线的宽度约等于腐蚀和膨胀的窗口尺寸之差K的一半,因为K=M-N=5,所以边界线的宽度约为3,边界线去除方法如下:
B1、将原始二值图像使用窗口尺寸为7的结构元素腐蚀,即:
I'D=IΘB'D
其中,B'D和I'D分别是该次腐蚀的结构元素和结果;
B2、将结果与原始二值图像进行异或运算,即:
IN=xor(I′D,I)
其中,IN是异或运算的结果,获得宽度约为3的边界线;
B3、将边界线图像与桥梁边界线图像异或,即:
IR=xor(IM,IN)
其中,IR是最终的逻辑运算结果,能够将边界线去除。
在求像素点极大值时,将求极大值运算编写为一个kernel函数的具体方法:
C1、设置求极大值运算kernel函数的工作项的大小,使得在横向和纵向上像素点数量能够被工作项大小整除;
C2、若按照之前方法设置工作项数量与各方向像素点数量相同,并行运算的话求得的是每个工作项中的极大值,而非整张图片像素点的极大值;
C3、根据情况设置不超过10个工作项,再比较各工作项求得的极大值,正确求得所需极大值并满足并行运算的效果。
S204、桥梁分割,通过桥梁检测获得了表征桥梁位置的二值图像,在桥梁位置处设置合理大小的矩形窗口就可以分割出桥梁区域。
S205、在二值图像D上,由像素点值为255的像素点所组成的区域即为检测到的桥梁目标。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中的描述和所示的本发明实施例的组件可以通过各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明一种基于FPGA异构计算的桥梁检测方法,将目标数据发送到FPGA板卡的过程包括:
主机端通过OpenCL提供的写Buffer方式,将高分辨SAR图像数据发送到FPGA板卡的DDR内存中。
本实施例中,主机端将原始的高分辨SAR桥梁图像数据转化为一维数组数据,通过调用OpenCL提供的clEnqueueWriteBuffer函数,将数据发送到FPGA板卡的DDR内存中。
将FPGA的处理结果发送到主机端的过程,包括:
主机端通过OpenCL提供的读Buffer方式,将FPGA的处理结果从FPGA的DDR内存发送到主机端。
本实施例中,通过调用OpenCL提供的clEnqueueReadBuffer函数,将FPGA的处理结果从FPGA的DDR内存发送到主机端,主机端在待处理的目标图像上框选出检测到的桥梁目标,具体地:
在二值图像D上,由像素点值为255的像素点所组成的区域即为检测到的桥梁目标,确定该检测区域的中心坐标,并在待处理的目标图像确定该中心坐标所对应的中心坐标,之后以待处理的目标图像上的中心坐标为中心,用矩形框框选出检测到的桥梁目标。
本实施例中,使用的FPGA板卡型号为de5net_a7。
所述CPU端的的执行过程包括:
利用Visual studio 2015工具运行所述主机端程序;
可选的,所述Kernel可执行文件的生成过程,包括:
利用Altera SDK for OpenCL对所述的Kernel程序进行编译,以生成相应的可用FPGA执行的AOCX可执行文件。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
Claims (6)
1.一种基于FPGA异构计算的桥梁检测方法,其特征在于,将基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法编译为AOCX可执行文件;然后将待处理的高分辨SAR图像发送到FPGA板卡,并将编译的AOCX可执行文件在FPGA板卡上进行运行;得到高分辨SAR图像的处理结果,基于腐蚀和膨胀运算的SAR图像桥梁目标检测算法在FPGA板卡上的运行过程包括以下步骤:
S201、SAR图像预处理,包括图像增强和选择Lee滤波对SAR图像进行滤波处理;
S202、河流区域分割,使用单阈值法分割河流区域;
S203、进行桥梁检测获得表征桥梁位置的二值图像,桥梁检测具体包括以下步骤:
S2031、通过腐蚀和膨胀运算定位出桥梁和河流边界线的位置,具体为:
A1、首先对二值图像进行腐蚀运算如下:
ID=IΘBD
其中,I是河流区域分割后的原始二值图像,BD是腐蚀运算的结构元素,ID是腐蚀运算结果;
A2、对腐蚀过的图像进行膨胀运算如下:
其中,BE是膨胀运算的结构元素,IDE是膨胀运算结果;
A3、将腐蚀和膨胀运算后的结果与原始二值图像进行异或运算如下:
IM=xor(I,IDE)
其中,IM为异或运算结果,获得以桥梁为主要区域,含有河流边界线的二值图像;
S2032、在获得的桥梁和边界线的二值图像中,去除干扰桥梁检测的边界线,边界线去除方法的具体步骤如下:
B1、将原始二值图像使用窗口尺寸为7的结构元素腐蚀如下:
I'D=IΘB'D
其中,B'D和I'D分别是该次腐蚀的结构元素和结果;
B2、将结果与原始二值图像进行异或运算如下:
IN=xor(I′D,I)
其中,IN是异或运算的结果,获得宽度为3的边界线;
B3、将边界线图像与桥梁边界线图像异或如下:
IR=xor(IM,IN)
其中,IR是最终的逻辑运算结果,能够将边界线去除;
S204、根据步骤S203确定的二值图像,设置矩形窗口对桥梁进行分割;
S205、在二值图像上,将像素点值为255的像素点所组成的区域作为检测到的桥梁目标。
2.根据权利要求1所述的基于FPGA异构计算的桥梁检测方法,其特征在于,步骤A1中,将二值图像腐蚀编写为一个kernel函数的具体方法如下:
A11、设置图像腐蚀kernel函数的工作组大小,将待处理的目标数据划分为若干个工作组;
A12、对于SAR图像,在横向分配width个工作项,纵向分配height个工作项,各工作项并行运算处理整张图像的每个像素点,将腐蚀点的像素点值置为0;
A13、在内核执行时,各工作项检查全局ID,并访问相应的像素点,各工作项并行运行,相互之间没有for语句延迟。
3.根据权利要求1所述的基于FPGA异构计算的桥梁检测方法,其特征在于,步骤A2中,将二维图像膨胀编写为一个kernel函数的具体方法如下:
A21、设置图像腐蚀kernel函数的工作组大小,将待处理的目标数据划分为若干个工作组;
A22、对于SAR图像,在横向分配width个工作项,纵向分配height个工作项,各工作项并行运算处理整张图像的每个像素点,将膨胀点的像素点值置为255;
A23、内核执行时,各工作项检查全局ID,并访问相应的像素点,各工作项并行运行,相互之间没有for语句延迟。
4.根据权利要求2或3所述的基于FPGA异构计算的桥梁检测方法,其特征在于,在求像素点极大值时,将求极大值运算编写为一个kernel函数的具体步骤如下:
C1、设置求极大值运算kernel函数的工作项大小,使得在横向和纵向上像素点数量能够被工作项大小整除;
C2、设置不超过10个工作项,再比较各工作项求得的极大值,正确求得所需极大值并满足并行运算的效果。
5.根据权利要求1所述的基于FPGA异构计算的桥梁检测方法,其特征在于,腐蚀完成2次,窗口大小分别为17和15,膨胀完成3次,窗口大小为是9,窗口中所有的元素为1,腐蚀窗口尺寸之和M=32,膨胀窗口尺寸之和N=27,使M>N,边界线的宽度等于腐蚀和膨胀的窗口尺寸之差K的一半,边界线的宽度为3。
6.根据权利要求1所述的基于FPGA异构计算的桥梁检测方法,其特征在于,主机端将原始的高分辨SAR桥梁图像数据转化为一维数组数据,通过调用OpenCL提供的clEnqueueWriteBuffer函数,将数据发送到FPGA板卡的DDR内存中;然后将FPGA的处理结果从FPGA的DDR内存发送到主机端,主机端在高分辨SAR图像上确定中心所对应的中心坐标,然后以高分辨SAR图像上的中心坐标为中心,用矩形框框选出检测到的桥梁目标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811223077.XA CN109472777B (zh) | 2018-10-19 | 2018-10-19 | 一种基于fpga异构计算的桥梁检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811223077.XA CN109472777B (zh) | 2018-10-19 | 2018-10-19 | 一种基于fpga异构计算的桥梁检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109472777A CN109472777A (zh) | 2019-03-15 |
CN109472777B true CN109472777B (zh) | 2020-09-29 |
Family
ID=65665847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811223077.XA Active CN109472777B (zh) | 2018-10-19 | 2018-10-19 | 一种基于fpga异构计算的桥梁检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109472777B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142845A (zh) * | 2014-07-21 | 2014-11-12 | 中国人民解放军信息工程大学 | 基于OpenCL-To-FPGA的CT图像重建反投影加速方法 |
CN108596885A (zh) * | 2018-04-16 | 2018-09-28 | 西安电子科技大学 | 基于cpu+fpga的快速sar图像变化检测方法 |
-
2018
- 2018-10-19 CN CN201811223077.XA patent/CN109472777B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142845A (zh) * | 2014-07-21 | 2014-11-12 | 中国人民解放军信息工程大学 | 基于OpenCL-To-FPGA的CT图像重建反投影加速方法 |
CN108596885A (zh) * | 2018-04-16 | 2018-09-28 | 西安电子科技大学 | 基于cpu+fpga的快速sar图像变化检测方法 |
Non-Patent Citations (1)
Title |
---|
基于OpenCL的雷达成像算法FPGA设计研究;魏子棱;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20180215(第2期);摘要和第36页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109472777A (zh) | 2019-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110738207B (zh) | 一种融合文字图像中文字区域边缘信息的文字检测方法 | |
CN110008809B (zh) | 表格数据的获取方法、装置和服务器 | |
CN110032998B (zh) | 自然场景图片的文字检测方法、系统、装置和存储介质 | |
US20150093028A1 (en) | Performing a histogram using an array of addressable registers | |
CN108716916B (zh) | 一种基于超级块的分布式并行星点质心提取方法及fpga实现装置 | |
CN110502977B (zh) | 一种建筑物变化分类检测方法、系统、装置及存储介质 | |
CN102156870A (zh) | 一种图像局部旋转不变特征的提取装置及其提取方法 | |
CN113468905B (zh) | 图形码识别方法、装置、计算机设备和存储介质 | |
US20100021058A1 (en) | Method and Apparatus for Image Processing | |
US7587088B2 (en) | Method and apparatus for image processing | |
CN113393430B (zh) | 用于风机叶片缺陷检测的热成像图像增强训练方法和装置 | |
CN108876701B (zh) | 一种基于游程的单次扫描连通域标记方法及其硬件结构 | |
CN110930423B (zh) | 一种物体边缘特征识别提取方法 | |
CN109472777B (zh) | 一种基于fpga异构计算的桥梁检测方法 | |
CN109558817B (zh) | 一种基于fpga加速的机场跑道检测方法 | |
CN116091297A (zh) | 一种图像连通域标记硬件实现算法 | |
CN112991397B (zh) | 交通牌跟踪方法、装置、设备和存储介质 | |
CN110264488B (zh) | 一种二值图像边缘提取装置 | |
Klilou et al. | Real-time parallel implementation of road traffic radar video processing algorithms on a parallel architecture based on DSP and ARM processors | |
CN111489386B (zh) | 点云特征点提取方法、装置、存储介质、设备及系统 | |
CN110569684A (zh) | 一种小容量缓存的图像二值化方法 | |
Rakesh et al. | Skeletonization algorithm for numeral patterns | |
CN112652004B (zh) | 一种图像处理方法、装置、设备及介质 | |
Goyal et al. | A parallel thinning algorithm for numeral pattern images in BMP format | |
CN117173185B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |