Abstract
This article presents a single-loop approach to a 2-D discrete wavelet transform that allows processing infinitely high-image strip-maps. The paper gradually compares several computational strategies to finally show how to deal with a multi-scale wavelet transform of infinite image streams. Besides, the transform is followed by a bit-plane encoder which also processes data in a single loop. The whole machinery is part of a CCSDS 122.0 image codec which manages to process a single pixel in about 33 ns on a contemporary desktop computer, without the contribution of any parallel computing or SIMD vectorization.
Similar content being viewed by others
References
CCSDS 1220-B-2: Image data compression. Recommended standard, Consultative Committee for Space Data Systems (2007)
Cohen, A., Daubechies, I., Feauveau, J.C.: Biorthogonal bases of compactly supported wavelets. Commun. Pure Appl. Math. 45(5), 485–560 (1992). https://doi.org/10.1002/cpa.3160450502
Daubechies, I., Sweldens, W.: Factoring wavelet transforms into lifting steps. J. Fourier Anal. Appl. 4(3), 247–269 (1998). https://doi.org/10.1007/BF02476026
Drepper, U.: What every programmer should know about memory. Technical report, Red Hat (2007)
Chrysafis, C., Ortega, A.: Minimum memory implementations of the lifting scheme. In: Proceedings of SPIE, Wavelet Applications in Signal and Image Processing VIII, SPIE, vol. 4119, pp. 313–324 (2000). https://doi.org/10.1117/12.408615
Barina, D., Zemcik, P., Kula, M.: Simple signal extension method for discrete wavelet transform. In: 2016 IEEE International Conference on Signal and Image Processing (ICSIP), pp. 534–538 (2016). https://doi.org/10.1109/SIPROCESS.2016.7888319
Mallat, S.: A theory for multiresolution signal decomposition: the wavelet representation. IEEE Trans. Pattern Anal. Mach. Intell. 11(7), 674–693 (1989). https://doi.org/10.1109/34.192463
Shahbahrami, A., Juurlink, B., Vassiliadis, S.: Improving the memory behavior of vertical filtering in the discrete wavelet transform. In: Proceedings of the 3rd Conference on Computing Frontiers (CF), ACM, pp 253–260 (2006). https://doi.org/10.1145/1128022.1128056
Tao, J., Shahbahrami, A.: Data locality optimization based on comprehensive knowledge of the cache miss reason: A case study with DWT. In: High Performance Computing and Communications (HPCC), IEEE, pp. 304–311 (2008). https://doi.org/10.1109/HPCC.2008.7
Meerwald, P., Norcen, R., Uhl, A.: Cache issues with JPEG2000 wavelet lifting. In: Proceedings of 2002 Visual Communications and Image Processing (VCIP), SPIE, vol. 4671, pp. 626–634 (2002)
Chaver, D., Tenllado, C., Pinuel, L., Prieto, M., Tirado, F.: Vectorization of the 2D wavelet lifting transform using SIMD extensions. In: Proceedings, International Parallel and Distributed Processing Symposium (IPDPS) (2003). https://doi.org/10.1109/IPDPS.2003.1213416
Chatterjee, S., Jain, V.V., Lebeck, A.R., Mundhra, S., Thottethodi, M.: Nonlinear array layouts for hierarchical memory systems. In: Proceedings of the 13th International Conference on Supercomputing (ICS), ACM, pp 444–453 (1999). https://doi.org/10.1145/305138.305231
Chatterjee, S., Brooks, C.D.: Cache-efficient wavelet lifting in JPEG 2000. In: Proceedings of the IEEE International Conference on Multimedia and Expo (ICME), IEEE, vol. 1, pp. 797–800 (2002). https://doi.org/10.1109/ICME.2002.1035902
Chaver, D., Tenllado, C., Pinuel, L., Prieto, M., Tirado, F.: Wavelet transform for large scale image processing on modern microprocessors. In: Palma, J.M.L.M., Sousa, A.A., Dongarra, J., Hernandez, V. (eds.) High Performance Computing for Computational Science (VECPAR), Lecture Notes in Computer Science (LNCS), vol. 2565, pp. 549–562. Springer, New York (2003). https://doi.org/10.1007/3-540-36569-9_37
Chaver, D., Tenllado, C., Pinuel, L., Prieto, M., Tirado, F.: 2-D wavelet transform enhancement on general-purpose microprocessors: memory hierarchy and SIMD parallelism exploitation. In: Sahni, S., Prasanna, V.K., Shukla, U. (eds.) High Performance Computing (HiPC), Lecture Notes in Computer Science, vol. 2552, pp. 9–21. Springer, New York (2002). https://doi.org/10.1007/3-540-36265-7_2
Shahbahrami, A., Juurlink, B.: A comparison of two SIMD implementations of the 2D discrete wavelet transform. In: Annual Workshop on Circuits, Systems and Signal Processing, pp. 169–177 (2007)
Chrysafis, C., Ortega, A.: Line-based, reduced memory, wavelet image compression. Trans. Image Process. 9(3), 378–389 (2000). https://doi.org/10.1109/83.826776
Oliver, J., Oliver, E., Malumbres, M.P.: On the efficient memory usage in the lifting scheme for the two-dimensional wavelet transform computation. In: International Conference on Image Processing (ICIP), IEEE, vol. 1, pp I–485–8 (2005). https://doi.org/10.1109/ICIP.2005.1529793
Kutil, R.: A single-loop approach to SIMD parallelization of 2-D wavelet lifting. In: Proceedings of the 14th Euromicro International Conference on Parallel, Distributed, and Network-Based Processing (PDP), pp. 413–420 (2006). https://doi.org/10.1109/PDP.2006.14
Barina, D., Zemcik, P.: Vectorization and parallelization of 2-D wavelet lifting. J. Real-Time Image Process. 15(2), 349–361 (2015). https://doi.org/10.1007/s11554-015-0486-6
Acknowledgements
This work has been supported by the Ministry of Education, Youth and Sports of the Czech Republic from the National Programme of Sustainability (NPU II) project IT4Innovations excellence in science (LQ1602) and the Electronic Component Systems for European Leadership Joint Undertaking under grant agreement No 737475.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Barina, D. Real-time wavelet transform for infinite image strips. J Real-Time Image Proc 18, 585–591 (2021). https://doi.org/10.1007/s11554-020-00995-8
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11554-020-00995-8