Development of a hybrid dynamic fuzzy encoder and decoder model for colour QR code - Badawi, Bakri (2022)
A Quick Response (QR) code is a popular type of two-dimensional barcode that is widely used in various applications. There are two types of QR codes, namely, the normal black and white (B/W) QR code and the colour QR code. The colour QR code is a new generation of B/W QR code which is able to encode three times the data encoded by a B/W QR code. However, research into colour QR codes is still at the initial stage. Improving a colour QR code is a challenging research area as it involves both the colour QR code encoder and decoder. The problem with a colour QR code encoder is the limited size and static colours of the QR code. Current colour QR code encoders can encode data with a maximum size of only three kilobytes and generate QR codes that are limited to eight colours only. Three data layers, comprised of the colours red, green and blue, are required to form the eight colours. As such, the encoder is prevented from encoding a dynamic number of data layers, according to the size of the colour QR code. Furthermore, the disadvantages of QR code decoders are their success rate, speed and static colours. Current colour QR code decoders have a decoding success rate of up to 45% and speed of 3 seconds only. The success rate and speed of the decoders become an issue when larger files are involved, since none of the existing decoders are able to decode large QR codes. Moreover, current colour QR code decoders are static, meaning that they can only decode eight colours and are unable to handle a dynamic number of data layers. A new colour QR code algorithm known as a Fuzzy QR code (FQR code) was proposed to solve the problems faced by current colour QR codes. The proposed algorithm consisted of two parts, an encoder and decoder. The objectives of this research are to design a fuzzy encoder algorithm to handle the size limitation and static colour problems, to design a fuzzy decoder algorithm to cater for the success rate, speed and static colour issues and to test the algorithms using two different datasets from Yang et al. (2018) and the colour QR codes generated by the proposed FQR code encoder. The FQR code encoder algorithm provided a novel enhancement to the colour QR code by adding a colour reference to its structure. The encoder algorithm was designed based on dynamic fuzzy logic and it was able to encode up to four data layers to overcome the size limitation. With the fuzzy encoder algorithm, the number of layers required to overcome the static colour limitation could be selected. The proposed fuzzy encoder algorithm used dynamic membership functions, which were built according to the size of the file. Dynamic fuzzy membership functions were proposed because they give better results than the usual fuzzy static membership functions. The output of the fuzzy encoder algorithm would be the number of data chunks. The experiment showed that the FQR code encoder was able to encode files with a capacity that was 25% larger than current colour QR codes. In addition, it was able to encode files that were smaller by 50% than current colour QR codes. The FQR code decoder used a colour reference to select the number of colours needed to overcome the dynamic colour selection limitation. The FQR code decoder was based on fuzzy logic to overcome the limitations of the decoding success rate and decoding speed. The proposed fuzzy decoder algorithm was built on a dynamic fuzzy process for the colour recovery, where the membership functions were dynamically built according to the colour reference. The dynamic fuzzy membership algorithm could be adapted to any colour compared to the static fuzzy membership functions, which worked with specific colours only. The decoder significantly enhanced the decoding success rate by 67.66%, and the decoding speed was 200% faster compared to the existing colour QR code decoders. Experiments were carried out to test the FQR encoder and decoder using two different datasets (Yang, 2018 dataset, and FQR code generated dataset). The results showed significant enhancements by the proposed colour QR code encoder and decoder, where the encoder increased the minimum size for the current QR code by 25% and decreased the minimum size by 50%. Moreover, the decoder enhanced the decoding success rate by 67.66% and the decoding speed by 200% compared to the existing decoders.