Сист. сжатия изобр. на основе анализа энропийности
Добрый день всем.
Нужна помощь в написании программы для диплома - ибо горит, а у меня что-то не очень получается. Кратко суть программы - имеем чёрно-белую картинку 256 бит глубина цвета. Необходимо эту картинку сжать - а именно, преобразовать в матричный вид (я так понимаю, лучше всего подойдёт формат бмп для преобразования - но можно, в принципе, и любой другой) - и количество градаций необходимо уменьшить с 256 до 5 - используя при этом анализ энтропийности - т.е. не по 51 градации старой на 1 новую, а примерно 86/62/47/35/25 (более точное описание метода см. в приложенном архиве - статья на эту тему). После сжатия картинки таким образом (при этом, желательно анализировать не один отдельный пиксель - а некоторую группу, скажем, 9 штук (центр и окружающие его)) - преобразовать обратно из матричного вида в рисунок (опять-таки, наверное, подойдёт бмп).
Интерфейс программы должен включать:
-Меню
-Файл - Открыть
-Файл - Сохранить
-Выход
-Помощь
-О программе (информацию для этого поля см. в архиве)
-Руководство пользователя (который будет открывать в окне файл help.txt, находящийся в папке с программой)
Главное окно -
- 2 квадрата для изображений. При открытии файла - в 1й квадратик вывести начальный рисунок (если возможно - сделать подстройку изображения (уменьшение его до размера квадратика), если нет - тогда задать жёсткое ограничение размера загружаемого изображения).
- кнопка "Преобразовать". После нажатия на кнопку выполнить преобразование открытого рисунка, и вывести результат во 2й квадратик. Преобразованное изображение сохранить как "название начального изображения"_1.
- под квадратиками для изображений -
- Размер файла:
- Битов на пиксель:
- Справа от изображений
- Затраченное время:
-в случае, если пользователь выбирает пункт Меню "Файл - Сохранить", после сохранения изображение хх_1 необходимо удалить.
+ приветствуются идеи изменения интерфейса в лучшую сторону.
К тексту программе нужны комментарии, а также алгоритм программы.
Полученное изображения должно быть меньше по размеру, чем начальное.