2024 Volume 28 Issue 5 Pages 233-247
We developed Porous code, an inconspicuous two-dimensional code with ultra-small holes by reducing the machining area, which can be semi-permanently embedded even into non-paper media. We clarified that the code can be read by using conventional 2D code readers when the machining area given by P/d is less than or equal to 1.3, where P and d denote the pitch and the diameter of the holes, respectively. However, Porous code cannot be read with conventional readers when P/d is greater than or equal to 1.4. Thus, we have also developed a smartphone reader for Porous code. In the reader algorithm, we demonstrated Porous code can be read by reconstructing all hole shapes from circles to squares using morphological erosion. To derive the relation between machining area and the number of erosion iterations, we embedded Porous codes with P/d of 1.5, 3.0, and 5.0 into a plastic plate. We found that decoding a Porous code whose P/d is less than or equal to 2.0 requires two times of erosion, while decoding a Porous code whose P/d is greater than 2.0 requires needs three times. We verified that Porous codes are generally applicable to 2D codes as the reading accuracy is sufficient for both QR-based and Data matrix-based codes. We also successfully demonstrated practicality through reading experiments on a Porous code with d of 100 µm and P of 180µm, which is embedded into the inner side of a leather coin purse and can be read stably at a high speed.