ПРИСКОРЕННЯ ОБРОБКИ ГРАФІЧНИХ ДАНИХ ЗА ДОПОМОГОЮ ПАРАЛЕЛЬНИХ ОБЧИСЛЕНЬ В OPENMP: РОЗРОБКА ТА АНАЛІЗ ПРОДУКТИВНОСТІ ГРАФІЧНОГО РЕДАКТОРА ЗОБРАЖЕНЬ

Автор(и)

DOI:

https://doi.org/10.35546/kntu2078-4481.2024.3.26

Ключові слова:

графічний редактор, паралельні обчислення, OpenMP, Qt, обробка зображень, оптимізація продуктивності, С++.

Анотація

У сучасному світі цифрових технологій обробка графічних даних відіграє ключову роль у багатьох сферах життєдіяльності людини. Від створення візуального контенту для соціальних мереж до аналізу медичних знімків – усюди потрібні потужні інструменти для маніпуляції зображеннями. Зростаючі вимоги до якості та швидкості обробки зображень роблять актуальним пошук ефективних методів прискорення цих процесів. У цій роботі досліджується розробка та впровадження графічного редактора зображень з використанням паралельних обчислень на основі технології OpenMP для прискорення обробки даних. Ця технологія дозволяє ефективно розподіляти обчислювальні завдання між декількома ядрами процесора, що значно підвищує продуктивність системи. Розроблене програмне забезпечення пропонує набір популярних графічних ефектів, включаючи негатив, відтінки сірого, сепію, розмиття, підвищення різкості та пастеризацію. Кожен з цих ефектів реалізовано у двох режимах: послідовному та паралельному з використанням OpenMP. Це дозволяє не тільки обробляти зображення, але й порівнювати ефективність різних підходів до обчислень. Для оцінки ефективності запропонованого рішення проведено серію експериментів з обробки зображень різної розмірності. Ці експерименти включали застосування кожного ефекту до зображень різного розміру – від маленьких іконок до високоякісних фотографій. Порівняльний аналіз ефективності послідовного та паралельного методів обчислення показав значні переваги останнього. Результати дослідження демонструють суттєве прискорення обробки зображень при застосуванні технології OpenMP. Особливо помітним це прискорення стає для ресурсоємних ефектів, таких як розмиття чи підвищення різкості, та при роботі з зображеннями великої розмірності. У деяких випадках вдалося досягти багатократного збільшення швидкості обробки, що відкриває нові можливості для роботи з великими обсягами графічних даних. Дане дослідження має значну практичну цінність для розробників програмного забезпечення, що працюють над оптимізацією продуктивності графічних редакторів та інших застосунків для обробки зображень. Воно демонструє, як застосування сучасних технологій паралельних обчислень може суттєво підвищити ефективність роботи з графічними даними, відкриваючи шлях до створення більш потужних та швидких інструментів обробки зображень.

Посилання

Ladkat, A. S., Date, A. A., & Inamdar, S. S. (2016, August). Development and comparison of serial and parallel image processing algorithms. In 2016 International Conference on Inventive Computation Technologies (ICICT). Vol. 2, pp. 1-4. IEEE. DOI: 10.1109/INVENTIVE.2016.7824894.

S. W. Song (2002) Models for Parallel and Distributed Computation. Applied Optimization. Vol.67, pp. 147-178. DOI: 10.1007/978-1-4757-3609-0_6.

Baumker, A., & Dittrich, W. (1996, April). Parallel algorithms for image processing: Practical algorithms with experiments. In Proceedings of International Conference on Parallel Processing. pp. 429-433. IEEE. DOI: 10.1109/IPPS.1996.508091

Haase, R., Royer, L. A., Steinbach, P., Schmidt, D., Dibrov, A., Schmidt, U., … & Myers, E. W. (2020). CLIJ: GPUaccelerated image processing for everyone. Nature methods, 17(1), pp. 5-6. DOI: 10.1038/s41592-019-0650-1

Myers, B. A., McDaniel, R. G., & Kosbie, D. S. (1993, May). Marquise: Creating complete user interfaces by demonstration. In Proceedings of the INTERACT’93 and CHI’93 Conference on Human Factors in Computing Systems. pp. 293-300. DOI: 10.1145/169059.16922

Del Turco, R. R. (2012). After the editing is done: Designing a Graphic User Interface for digital editions. Digital Medievalist, 7. DOI: DOI:10.16995/DM.30

Blanchette, J., & Summerfield, M. (2019). C++ GUI Programming with Qt 5: Create Amazing Applications with Qt. 2nd., Publishing House of Electronics Industry. 464 p.

Stroustrup, B. (2018). A Tour of C++ (2nd Edition). Addison-Wesley. 180 p. ISBN 978-0-13-499783-4.

Gonzalez, R. C., & Woods, R. E. (2018). Digital Image Processing (4th Edition). Pearson. 1168 p. ISBN 9780133356724.

Chapman, B., Jost, G., & Van Der Pas, R. (2008). Using OpenMP: Portable Shared Memory Parallel Programming. MIT Press. 384 p. ISBN: 9780262255905

Quinn, M. J. (2004). Parallel Programming in C with MPI and OpenMP. Dubuque, Iowa : McGraw-Hill Education, New York. 529 p.

Piccolino, M. (2018). “ Qt 5 Projects: Develop cross-platform applications with modern UIs using the powerful Qt framework. Packt Publishing. 360 p. ISBN 178829551X.

##submission.downloads##

Опубліковано

2024-11-26