Complex Morphological Filtering For Serial, Parallel, GPU, SoC, PetaLinux And FPGA Execution
Keywords:Image processing, timing evaluation, morphological filtering, FPGA, embedded linux, many-core
Image processing is a vast field of research and extremely important for a large number of applications such as security systems, geoprocessing, medical technologies, etc. There are some applications that require a higher level of processing, requiring higher computing power. As an example of this requirement in image processing, morphological filtering with filter chains involving erosion and dilation may be used. This study aims to discuss the advantages and disadvantages between running these chains in a software context, using a personal computer and in a hardware context, using the ZedBoard board running these filters in baremetal, FPGA and embedded linux modes. In addition, a discussion on the possibilities of parallel hardware processing, inspired by the multi-core environment and its power, will be discussed.
R. Gonzales and R. Woods, Digital Image Processing, 3rd ed. Pearson, 2009.
M. H. O. Rashid, M. A. Mamun, M. A. Hossain and M. P. Uddin, "Brain Tumor Detection Using Anisotropic Filtering, SVM Classifier and Morphological Operation from MR Images," 2018 International Conference on Computer, Communication, Chemical, Material and Electronic Engineering (IC4ME2), Rajshahi, 2018, pp. 1-4. doi: 10.1109/IC4ME2.2018.8465613
W. Zhang, X. Zhou and Y. Lin, "Application of Morphological Filter in Pulse Noise Removing of Vibration Signal," 2008 Congress on Image and Signal Processing, Sanya, Hainan, 2008, pp. 132-135. doi: 10.1109/CISP.2008.202
Z. Y. Xie and M. Brady, "Wavelet multiscale representation and morphological filtering for texture segmentation," IEE Colloquium on Morphological and Nonlinear Image Processing Techniques, London, UK, 1993, pp. 2/1-2/8.
K. T. Talele, S. T. Gandhe and M. M. Shah, "Fault Detection In PCB Using Homotopic Morphological Operator," 2006 Annual IEEE India Conference, New Delhi, 2006, pp. 1-5. doi: 10.1109/INDCON.2006.302795
Anjanappa C. and Sheshadri.H.S, "Development of mathematical morphology filter for medical image impulse noise removal," 2015 International Conference on Emerging Research in Electronics, Computer Science and Technology (ICERECT), Mandya, 2015, pp. 311-318. doi: 10.1109/ERECT.2015.7499033
X. Bai and F. Zhou, "New Alternating Sequential Filters and the application for impulsive noise removal," 2010 3rd International Congresson Image and Signal Processing, Yantai, 2010, pp. 1088-1091. doi: 10.1109/CISP.2010.5646889
L. Dou, D. Xu, Y. Liu and H. Chen, "Application of adaptive generalized mathematical morphology theory in de-noising of ECG signals," 2017 IEEE 9th International Conference on Communication Software and Networks (ICCSN), Guangzhou, 2017, pp. 870-874. doi: 10.1109/ICCSN.2017.8230236
I. Yoda, K. Yamamoto and H. Yamada, "Automatic acquisition of hierarchical mathematical morphology procedures by genetic algorithms", Image and Vision Computing, vol. 17, no. 10, pp. 749-760, 1999. Available:
1016/s0262-8856(98)00151-6 [Accessed 4 October 2019].
M. Quintana, R. Poli and E. Claridge, "Morphological algorithm design for binary images using genetic programming", Genetic Programming and Evolvable Machines, vol. 7, no. 1, pp. 81-102, 2006. Available: 10.1007/s10710-006-7012-3 [Accessed 4 October 2019].
B. Albertini, "A vez do FPGA", http://www.ieee.org.br, 2015. [Online]. Available:
http://www.ieee.org.br/wp-content/uploads/2014/05/Ed110_EspacoIEEE.pdf. [Accessed: 04- Oct- 2019].
Xilinx, “PetaLinux”,2019. URL: https://www.xilinx.com/products/design-tools/embedded-software/petalinux-sdk.html.
A. Mishra, M. Agarwal and K. S. Raju, "Hardware and software performance of image processing applications on reconfigurable systems," 2015 Annual IEEE India Conference (INDICON), New Delhi, 2015, pp. 1-5. doi: 10.1109/INDICON.2015.7443611
J. Mazza, D. Patru, E. Saber, G. Roylance and B. Larson, "A comparison of hardware/software techniques in the speedup of color image processing algorithms," 2014 IEEE Western New York Image and Signal Processing Workshop (WNYISPW), Rochester, NY, 2014, pp. 27-31.doi: 10.1109/WNYIPW.2014.6999480
C. Bonney, P. Campos, N. Dahir and G. Tempesti, "Fault tolerant task mapping on many-core arrays," 2016 IEEE Symposium Series on Computational Intelligence (SSCI), Athens, 2016, pp. 1-8. doi: 10.1109/SSCI.2016.7850174
M. Ruaro, L. L. Caimi, V. Fochi and F. G. Moraes, "A Framework for Heterogeneous Many-core SoCs Generation," 2019 IEEE 10th Latin American Symposium on Circuits & Systems (LASCAS), Armenia, Colombia, 2019, pp. 89-92. doi: 10.1109/LASCAS.2019.8667590
Shao Zuozhi, Zhang Yingqiang, Mu Hongtao and Cheng Rui, "The research on the CPU intelligent scheduling based on the many-core processors," 2016 7th IEEE International Conference on Software Engineering and Service Science (ICSESS), Beijing, 2016, pp. 779-782. doi: 10.1109/ICSESS.2016.7883183
V. Venkataramani, A. Pathania, M. Shafique, T. Mitra and J. Henkel, "Scalable Dynamic Task Scheduling on Adaptive Many-Core," 2018 IEEE 12th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC), Hanoi, 2018, pp. 168-175. doi: 10.1109/MCSoC2018.2018.00037
Y. Maruyama, S. Kato and T. Azumi, "Exploring Scalable Data Allocation and Parallel Computing on NoC-Based Embedded Many Cores," 2017 IEEE International Conference on Computer Design (ICCD), Boston, MA, 2017, pp. 225-228. doi: 10.1109/ICCD.2017.41
Xilinx, “Vivado SDK”, 2019. URL: https://www.xilinx.com/products/design-tools/embedded-software/sdk.html
Xilinx, “Vivado HLS”. 2019 URL: https://www.xilinx.com/products/design-tools/vivado/integration/esl-design.html
Xilinx, “ZedBoard Hardware User’s Guide”, 2014. URL: http://zedboard.org/sites/default/files/documentations/ZedBoard_HW_UG_v2_2.pdf
Kirschberger, Daniel & Flatt, Holger & Jasperneite, Juergen. (2014). An Architectural Approach for Reconfigurable Industrial I/O Devices.. 2014 International Conference on Reconfigurable Computing and FPGAs, ReConFig 2014. 10.1109/ReConFig.2014.7032500.