реклама на сайте
подробности

 
 
> Реализация сжатия изображения на AVR, Возможно ли это?
DmitriyX
сообщение Mar 1 2005, 07:12
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 21-12-04
Пользователь №: 1 581



Вопрос такой:
Нужно хоть как-нибудь сжать черно-белое изображение, которое поступает на микроконтроллер побайтно. Размер изображения 400 х 300 х 8бит (черно-белое).
Потянет ли AVR-микроконтроллер хоть какой-нибудь алгоритм сжатия такого изображения? На какую ориентировочную компрессию можно расчитывать?
И самый главный вопрос: не мог ли бы кто-нибудь поделиться таким алгоритмом или рассказать, где можно найти такой алгоритм за бесплатно? Какие входные данные у этого алгоритма: правильно ли я понимаю, что в микроконтроллере достаточно будет читать изображение побайтно, обходясь ОЗУ в 100-200 байт?

Благодарю за любую информацию
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Rok
сообщение Mar 1 2005, 08:10
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 62
Регистрация: 11-01-05
Из: Беларусь, Минск
Пользователь №: 1 894



1-й вопрос - какая тактовая частота входного сигнала?
AVR не знаю потянет или нет. Мы это делаем на FPGA. Но задачка посложней вашей. Схема примерно следующая:
2D-DCT(8x8)->RLE->Huffman. Коэффициент сжатия получается примерно 10 (но на разных изображениях разный коэффициент).
По-поводу памяти: нужен блок памяти на 64 точки (после первого ДКТ). А остальная память это смотря какой алгоритм будет реализован.
Потом Хаффман - это тоже задачка интересная, счас я над ней голову ломаю smile3046.gif .
А вообще можно поискать на www.koders.com, а почитать на www.compression.ru.
Go to the top of the page
 
+Quote Post
DmitriyX
сообщение Mar 1 2005, 12:52
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 21-12-04
Пользователь №: 1 581



Это диплом, совмещенный с реальной разработкой.

По поводу совета взять промышленный кодер: я не смог найти черно-белых промышленных кодеров. А цветные, которые умеют делать JPEG2000 стоят от 30-40$. Дороговато получается.

Размер картинки 300х400х8 бит. Ее контроллер читает в параллельном коде из ПЛИСа. Сколько ориентировочно потребуется времени для сжатия такой картинки на AVR 8МГц?


Цитата(Rok @ Mar 1 2005, 12:10)
1-й вопрос - какая тактовая частота входного сигнала?
AVR не знаю потянет или нет. Мы это делаем на FPGA. Но задачка посложней вашей. Схема примерно следующая:
2D-DCT(8x8)->RLE->Huffman. Коэффициент сжатия получается примерно 10 (но на разных изображениях разный коэффициент).
По-поводу памяти: нужен блок памяти на 64 точки (после первого ДКТ). А остальная память это смотря какой алгоритм будет реализован.
Потом Хаффман - это тоже задачка интересная, счас я над ней голову ломаю  smile3046.gif .
А вообще можно поискать на www.koders.com, а почитать на www.compression.ru.
*


Вы спрашиваете частоту входного сигнала? а правильно я понимаю, что он должен быть в цифровом виде? А в параллельном коде каждый 8-битный пиксель подойдет? Контроллер сам читает картинку из памяти в параллельном коде поэтому жестких требований по скорости обработки нет. Но при этом все-таки, очень бы хотелось, чтобы он успевал сжимать такие кадры с частотой хотя бы 10-15 кадров в секунду.

Цитата
2D-DCT(8x8)->RLE->Huffman

Не могли бы Вы объяснить вкратце каждый из приведеных выше терминов?

А на каком FPGA Вы это делаете? и какая тактовая частота подается на FPGA? Сколько примерно требуется логических ячеек для реализации такого алгоритма?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 05:03
Рейтинг@Mail.ru


Страница сгенерированна за 0.01373 секунд с 7
ELECTRONIX ©2004-2016