Artigo Acesso aberto Revisado por pares

CPU, GPU and FPGA Implementations of MALD: Ceramic Tile Surface Defects Detection Algorithm

2014; Taylor & Francis; Volume: 55; Issue: 1 Linguagem: Inglês

10.7305/automatika.2014.01.317

ISSN

1848-3380

Autores

Tomislav Matić, Ivan Aleksi, Željko Hocenski,

Tópico(s)

Image Enhancement Techniques

Resumo

AbstractThis paper addresses adjustments, implementation and performance comparison of the Moving Average with Local Difference (MALD) method for ceramic tile surface defects detection. Ceramic tile production process is completely autonomous, except the final stage where human eye is required for defects detection. Recent computational platform development and advances in machine vision provides us with several options for MALD algorithm implementation. In order to exploit the shortest execution time for ceramic tile production process, the MALD method is implemented on three different platforms: CPU, GPU and FPGA, and it is implemented on each platform in at least two ways. Implementations are done in MATLAB's MEX/C++, C++, CUDA/C++, VHDL and Assembly programming languages. Execution times are measured and compared for different algorithms and their implementations on different computational platforms.U ovom radu razmatra se prilagodba, implementacija i usporedba performansi metode pomičnog usrednjavanja s lokalnom diferencijom (MALD) s primjenom u otkrivanju površinskih nedostataka na keramičkim pločicama. Proizvodna linija keramičkih pločica je autonomna sve do zadnje faze u kojoj je potreban ljudski vid kako bi se otkrili eventualni nedostaci na keramičkim pločicama. Nedavnim razvojem računalnih platformi i razvojem metoda računalnog vida omogućena je implementacija MALD metode na nekoliko načina. U nastojanju skraćenja vremena potrebnog za proizvodnju keramičkih pločica, MALD metoda je implementirana u trima različitim platformama: CPU (central processing unit), GPU (graphic processing unit) i FPGA (field programmable gate array), te s barem dva različita algoritma. Implementacija je izvršena sa MATLAB MEX/C++, C++, CUDA/C++, VHDL te Asembler programskim jezicima. Izmjerena vremena obrade su međusobno uspoređena za različite algoritme i njihove implementacije na različitim računalnim platformama.Key words: CUDAFPGAGPUIntegral ImageMALDCeramic TileKljučne riječi: CUDAFPGAGPUintegralna slikaMALDkeramičke pločice Additional informationNotes on contributorsTomislav MatićTomislav Matić was born in 1983 in Brčko, Bosna and Herzegovina. In 2007 he graduated from the Faculty of Electrical Engineering, University of Osijek, Croatia where he got a lab technician position. He is currently a Ph.D. student at the same Faculty, where he works as a research assistant at the Department of Computing and Sofware Engineering. Teaching activities include undergraduate and graduate courses such as Digital electronics and Reliability of Computer Systems. His research interests include image processing, GPGPU computing and parallel computing. He is the co-author of two teaching books used for Digital electronics and Computer system design courses. He is a member of the IEEE.Ivan AleksiIvan Aleksi was born in 1982. He received PhD in technical sciences from the Faculty of Electrical Engineering, University of Osijek. At the same faculty his teaching activities include undergraduate and graduate courses such as computer architecture and sonar engineering. His research interests include sonar data processing and simulation for purpose of underwater machinery reconstruction. He is particularly interested in the implementation of parallel data processing on the graphics card processors. He is a co-author of two Faculty books used for the course of Computer Architecture. He is a member of KoREMA and IEEE.Željko HocenskiŽeljko Hocenski (1952) is working as a scientist and researcher in the area of industrial electronics, computer engineering, automation and process control. He received B.Sc. (1976), M.Sc. (1984) degree in Electrical Engineering and Ph.D. degree (1996) in Computing from the Faculty of Electrical Engineering and Computing (FER Zagreb), University of Zagreb, Croatia. He was working at the Institute of Electrical Engineering of holding Končar in Zagreb (1977–1984) in the fields industrial electronics and automation, microprocessor control and industrial communications. From 1984 is at J.J. Strossmayer University of Osijek, Faculty of Electrical Engineering, position full professor (2006). He was Vice-dean (1997–2003) and Dean (2003–2005). Now is the head of the Computer Engineering Department. Teaching activities include undergraduate and graduate courses. Scientific activities are in design, diagnosis, verification and validation of embedded computer systems as well as fault-tolerant computer systems for process control and automation. His research results are published in more than 80 scientific articles and conference papers, books, course-books, 20 studies/reports and projects related to production. Prof. Hocenski has particularly excelled in the leadership of national and international research projects. Awarded as author of three technical improvements and innovations. He is a member of KoREMA (Managing Board), IEEE Computer, Signal Processing, Control, Education (also Croatian section), ACM and SICE.

Referência(s)