DOI QR코드

DOI QR Code

ASTC Block-Size Determination Method based on PSNR Values

PSNR 값 기반의 자동화된 ASTC 블록 크기 결정 방법

  • Received : 2022.01.24
  • Accepted : 2022.05.24
  • Published : 2022.06.01

Abstract

ASTC is one of the standard texture formats supported in OpenGL ES 3.2 and Vulkan 1.0 (and later versions), and it has been increasingly used on mobile platforms (Android and iOS). ASTC's most important feature is the block size configuration, thereby providing a trade-off between compression quality and rates. With the higher number of textures, however, it is difficult to manually determine the optimal block sizes of each texture. To solve the problem, we present a new approach based on PSNR values to automatically determine the ASTC block size. A brute-force approach, which compresses a texture on all block sizes and compares the PSNR values of the compressed textures, can increase the compression time by up to 14 times. In contrast, our three-step approach minimizes the compression-time overhead. According to our experiments on a texture set including 64 various textures, our method determined the block sizes from 4×4 to 12×12 and reduced the size of compressed files by 68%.

ASTC는 OpenGL ES 3.2 및 Vulkan 1.0 이상의 버전에서 지원하는 표준 텍스쳐 포맷 중 하나로, 모바일 플랫폼(Android 및 iOS)에서 지속적으로 사용이 증가해 왔다. ASTC의 가장 큰 특징은 블록 크기 설정으로, 이를 통해 품질과 압축률 간의 트레이드 오프를 조절할 수 있다. 하지만 텍스쳐의 개수가 많을 경우 텍스쳐별 최적의 블록 크기를 일일히 수작업으로 설정하는 것은 많은 시간과 노고를 야기하게 된다. 이러한 문제점을 해결하기 위해 본 논문은 PSNR 값을 기반으로 자동으로 ASTC 블록 크기를 결정하는 새로운 방법을 제안한다. 모든 블록 크기에 대해 압축을 수행한 후 PSNR값을 비교하는 brute-force 방식은 최고 14배까지 압축 시간을 증가시킬 수 있는 반면, 본 논문의 방법은 압축 과정을 3단계로 나누어 이러한 압축 시간 증가를 최소화한다. 다양한 형태의 64개 이미지로 구성된 텍스쳐 셋을 통해 실험한 결과, 제안하는 방법은 텍스쳐별로 4×4 에서 12×12까지 다양한 블록 크기를 결정하였으며, 블록 크기를 6×6으로 일괄적으로 정한 경우에 비해 압축된 파일들의 총 크기가 68% 감소하였다.

Keywords

Acknowledgement

본 연구는 2021학년도 상명대학교 교내연구비를 지원받아 수행하였음. 실험 텍스쳐들은 Kodak, Simon Fenny, Crytek, UNC GAMMA Lab, Spiral Graphics, Vokselia Spawn, Cesium, Google, Sketchfab의 fhernand가 공개한 이미지를 포함함.

References

  1. T. Paltashev and I. Perminov, "Texture compression techniques," Scientific Visualization, vol. 6, no. 1, pp. 106-146, 2014.
  2. Microsoft. (2018) Texture block compression in Direct3D 11. [Online]. Available: https://docs.microsoft.com/en-us/windows/win32/direct3d11/texture-block-compression-in-direct3d-11
  3. J. Strom and T. Akenine-Moller, "iPACKMAN: High-quality, low-complexity texture compression for mobile phones," in Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics Hardware, 2005, pp. 63-70.
  4. J. Strom and M. Pettersson, "ETC 2: texture compression using invalid combinations," in Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics Hardware, 2007, pp. 49-54.
  5. S. Fenney, "Texture compression using low-frequency signal modulation," in Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics Hardware, 2003, pp. 84-91.
  6. J. Nystad, A. Lassen, A. Pomianowski, S. Ellis, and T. Olson, "Adaptive scalable texture compression," in Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on High-Performance Graphics (HPG), 2012, pp. 105-114.
  7. D. Chait. (2015) Using ASTC texture compression for game assets. [Online]. Available: https://developer.nvidia.com/astc-texture-compression-for-game-assets
  8. Arm Limited. (2020) Adaptive scalable texture compression-son user guide issue 02 - using ASTC for game assets. [Online]. Available: https://developer.arm.com/documentation/102162/0002/Using-ASTC-for-game-assets
  9. Unity Technologies. (2022) Unity user manual (2022.1) - recommended, default, and supported texture compression formats, by platform. [Online]. Available: https://docs.unity3d.com/2022.1/Documentation/Manual/class-TextureImporterOverride.html
  10. J.-H. Nah, "QuickETC2: How to finish ETC2 compression within 1 ms," in ACM SIGGRAPH 2020 Talks, 2020.
  11. J.-H. Nah, "QuickETC2: Fast ETC2 texture compression using luma differences," ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH Asia 2020), vol. 39, no. 6, 2020.
  12. Google Developers. (2021) About android app bundles. [Online]. Available: https://developer.android.com/guide/app-bundle
  13. Arm Limited. (2022) astc-encoder. [Online]. Available: https://github.com/ARM-software/astc-encoder/
  14. Intel Corp., "Fast ISPC texture compressor," 2021. [Online]. Available: https://github.com/GameTechDev/ISPCTextureCompressor
  15. NVIDIA. (2021) NVIDIA texture tools 3. [Online]. Available: https://developer.nvidia.com/gpu-accelerated-texture-compression
  16. D. Oom, "Real-time adaptive scalable texture compression for the web," Master's thesis, Chalmers University of Technology., 2016.
  17. S. Pratapa, T. Olson, A. Chalfin, and D. Manocha, "TexNN: Fast texture encoding using neural networks," Computer Graphics Forum, vol. 38, no. 1, pp. 328-339, 2019. https://doi.org/10.1111/cgf.13534
  18. W. Griffin and M. Olano, "Evaluating texture compression masking effects using objective image quality assessment metrics," IEEE Transactions on Visualization and Computer Graphics, vol. 21, no. 8, pp. 970-979, 2015. https://doi.org/10.1109/TVCG.2015.2429576
  19. G. Lavoue, M. Langer, A. Peytavie, and P. Poulin, "A psychophysical evaluation of texture compression masking effects," IEEE Transactions on Visualization and Computer Graphics, vol. 25, no. 2, pp. 1336-1346, 2019. https://doi.org/10.1109/TVCG.2018.2805355
  20. Binomial LLC. (2022) Basis Universal Supercompressed GPU Texture Codec. [Online]. Available: https://github.com/BinomialLLC/basis universal
  21. M. Callow. (2021) KTX file format specification - version 2.0. [Online]. Available: https://www.khronos.org/registry/KTX/specs/2.0/ktxspec v2.html
  22. D. Bull and F. Zhang, Intelligent image and video compression: communicating pictures, 2nd ed. Elsevier, 2021.
  23. Z. Wang, A. C. Bovik, H. R. Sheikh, and E. P. Simoncelli, "Image quality assessment: from error visibility to structural similarity," IEEE Transactions on Image Processing, vol. 13, no. 4, pp. 600-612, 2004. https://doi.org/10.1109/TIP.2003.819861
  24. P. Krajcevski and D. Manocha, "Fast PVRTC texture compression using intensity dilation," Journal of Computer Graphics Techniques, vol. 3, no. 4, pp. 132-145, 2014.
  25. P. Andersson, J. Nilsson, T. Akenine-Moller, M. Oskarsson, and K. Astromand Mark D. Fairchild, " FLIP: A difference evaluator for alternating images," Proceedings of the ACM on Computer Graphics and Interactive Techniques (HPG 2020), vol. 3, no. 2, 2020.