Font Size: a A A

Investigation Of Heterogeneous Acceleration Method For Image Dehazing Based On FPGA+CPU

Posted on:2018-04-16Degree:MasterType:Thesis
Country:ChinaCandidate:J C LiFull Text:PDF
GTID:2348330542950269Subject:Microelectronics and Solid State Electronics
Abstract/Summary:PDF Full Text Request
With the arrival of the era of big data,people need to deal with a lot of data quickly.The traditional CPU parallel computing has been unable to meet the requirements of mass data processing and heterogeneous computing has become a popular research direction.At present,the GPU+CPU heterogeneous computing has gone into the high-performance computing in various fields.It solves the problem of insufficient computing power in CPU parallel computing.However,the power consumption of GPU is too large to be applied in the low-power field.The heterogeneous computing based on FPGA+CPU makes full use of the characteristics of high parallelism and low power consumption of FPGA,which solves the problem of low processing speed and large power consumption.The FPGA+CPU heterogeneous computing using Open CL-oriented development method.Compared to the FPGA development method using hardware description language(HDL),such as Verilog,the Open CL-oriented development method has a shorter development cycle,almost the same timing constraints and performance.The heterogeneous computing based on FPGA+CPU has the characteristics of high performance and low power consumption,which makes it have a wide application prospect in the fields of high performance and low power consumption,such as automatic driving,navigation tracking and intelligent robot.In this paper,patch-based bilateral filter and guided filter are accelerated by FPGA+CPU heterogeneous computing.Firstly,the parallel execution part of the algorithm is analyzed.Then the host program is designed in C language and the kernel program is designed with Open CL.Secondly,the data allocation optimization is carried out in the patch-based bilateral filter kernel,and the kernel merging,adding down-sampling kernel and kernel vectorization optimization are carried out in the guided filter kernel.The processing speed of the 2K resolution image is 41.08 ms and 38.9ms respectively after the optimized of the patch-based bilateral filter kernel and the guided filter kernel.Finally,a comparison is carried out in CPU,GPU and FPGA to find the filtering performance and number of pixels calculated under unit power consumption between them.The experiment result show that the filtering performance in FPGA is almost the same as that in CPU and GPU.For the patch-based bilateral filter algorithm,the number of pixels calculate by FPGA in the unit power consumption is 8.98 times of that by CPU and 1.32 times of that by GPU.For the guided filter algorithm,the number of pixels calculate by FPGA in the unit power consumption is 12.24 times of that by CPU and 1.79 times of that by GPU.At the last of this paper,patch-based bilateral filter and guided filter are applied to the dark channel prior algorithm and accelerated by FPGA heterogeneous computing.The kernel of the dark channel prior algorithm based on two different filtering algorithms is optimized by using kernel merging and loop unrolling.The execution time of the optimized kernel for full HD image is 31.65 ms and 29.94 ms respectively.In the de-fog effect,the dark channel prior algorithm based on guided filter is superior to that based on patch-based bilateral filter.Finally,a comparison of the two kind of dark channel prior algorithm is carried out in CPU,GPU and FPGA to find the number of pixels calculated under unit power consumption between them.For the dark channel prior algorithm based on patch-based bilateral filter,the experiment results show that the number of pixels calculate by FPGA in the unit power consumption is 9.03 times of that by CPU and 1.30 times of that by GPU.For the dark channel prior algorithm based on guided filter,the experiment results show that the number of pixels calculate by FPGA in the unit power consumption is 12.36 times of that by CPU and 1.80 times of that by GPU.
Keywords/Search Tags:Heterogeneous computing, FPGA, OpenCL, Image processing
PDF Full Text Request
Related items