Skip to content

Source code: C++, SFML, MATLAB. The aim of the project was to implement various quantization algorithms in C ++ and to compare them in terms of the quality of the obtained results and the time needed to perform the calculations. On the way I've created an app with very basic GUI.

Notifications You must be signed in to change notification settings

aronmandrella/quant-studio

Repository files navigation

Praca Inżynierska (2018)

Autor: Aron Mandrella

ThumbnailPNG

Opis

Projekt ten dotyczył algorytmów kwantyzacji obrazów wielobarwnych. Celem projektu była implementacja różnych algorytmów kwantyzacji w języku C++, oraz porównanie ich pod kątem jakości otrzymywanych wyników i czasu potrzebnego na wykonanie obliczeń. W ramach projektu stworzony został również program z prostym interfejsem graficznym pozwalający określić parametry wejściowe dla algorytmów.

Pełen tekst pracy inżynierskiej

Wyniki w postaci wykresów (na dysku Google)

Program do pobrania (Windows 10)

🧰 Wykorzystane technologie i narzędzia

  • C++17: Interfejs graficzny (biblioteka SFML), algorytmy kwantyzacji, zarządzanie obliczeniami w wielu wątkach (std::thread, std::mutex, std::future, std:: condition_variable)
  • Visual Studio 2017: Kompilacja C++, debugowanie kodu
  • MATLAB (zamiennik R): Generowanie wykresów, obliczenia niektórych wskaźników jakości
  • Adobe Photoshop

🎓 Zdobyta bądź poszerzona wiedza

  • Algorytmy klasteryzacji danych (np. algorytm k-średnich)
  • Algorytmy interpolacji danych (metoda najbliższego sąsiada, interpolacja dwuliniowa)
  • Analiza obrazów cyfrowych w różnych przestrzeniach barw i za pomocą różnych wskaźników jakości (RGB, sRGB, CIE XYZ, RMSE, PSNR, MAE, DE76, DSCSI, HPSI)
  • Umiejętność zrozumienia i implementacji algorytmów matematycznych
  • Akademickie metody statystycznej analizy zebranych danych (wykresy pudełkowe, aproksymowanie za pomocą wielomianów, tabele, itp.)

Interfejs graficzny

GUI-GIF

About

Source code: C++, SFML, MATLAB. The aim of the project was to implement various quantization algorithms in C ++ and to compare them in terms of the quality of the obtained results and the time needed to perform the calculations. On the way I've created an app with very basic GUI.

Topics

Resources

Stars

Watchers

Forks