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

 
 
> JPEG кодек на ARM, есть ли исходники или открытые проекты
Vitaliy_ARM
сообщение May 29 2008, 13:43
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Хочу прицепить видеокамеру к LPC2468. Нашел кое что с цифровым выходом но без встроенного кодека JPEG.

Поискал исходники в интеренете, так сразу ничего не нашел. Мож кто знает где поискать?


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
6 страниц V   1 2 3 > »   
Start new topic
Ответов (1 - 79)
mai
сообщение May 30 2008, 21:28
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 27-02-05
Пользователь №: 2 915



В uc/GUI есть поддержка вывода jpeg на дисплей. Правда, сам я ее не пробовал использовать. Вот цитата из мануала
Цитата
9.2.1 Supported JPEG compression methods
This software implements JPEG baseline, extended-sequential, and progressive compression
processes. Provision is made for supporting all variants of these processes,
although some uncommon parameter settings aren’t implemented yet. For legal reasons,
code for the arithmetic-coding variants of JPEG is not distributed. It appears
that the arithmetic coding option of the JPEG spec is covered by patents owned by
IBM, AT&T, and Mitsubishi. Hence arithmetic coding cannot legally be used without
obtaining one or more licenses. For this reason, support for arithmetic coding has not
been included to the free JPEG software. (Since arithmetic coding provides only a
marginal gain over the unpatented Huffman mode, it is unlikely that very many
implementations will support it.) So far as we are aware, there are no patent restrictions
on the remaining code.
The library does cot contain provision for supporting the hierarchical or lossless processes
defined in the standard.


Сообщение отредактировал mai - May 30 2008, 21:33
Go to the top of the page
 
+Quote Post
aaarrr
сообщение May 30 2008, 21:46
Сообщение #3


Гуру
******

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



Цитата(Vitaliy_ARM @ May 29 2008, 17:43) *
Поискал исходники в интеренете, так сразу ничего не нашел. Мож кто знает где поискать?

Лежит на самом видном месте.
Go to the top of the page
 
+Quote Post
Rst7
сообщение May 31 2008, 11:00
Сообщение #4


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата


Это, конечно, первоисточник. Но уж очень сия библиотека громоздка и требует менеджера кучи для работы. Я бы рекомедовал делать так - из этой библиотеки взять быстрый целочисленный DCT, из ftp://havefun.stanford.edu/pub/jpeg/JPEGv1.2.1.tar.Z - понимание остального (тут код, конечно, менее оптимальный, но зато - понятнее), и из этого слепить свой кодер. Кроме того, обязательно читать ITU T.81 - собственно стандарт.
Очень не рекомендую гнаться за универсальностью - в результате получится нечто, напоминающее jpegsrc.v6b. Надо для начала ограничиться монохромной картинкой, использовать основной метод sequential DCT-based, не делать динамического Хаффмана, а ограничиться заранее заданными табличками(см. T.81). Потом можно добавлять цвет и прочее.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
GetSmart
сообщение May 31 2008, 11:43
Сообщение #5


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(Rst7)
Я бы рекомедовал делать так...
Поделились бы сразу своим творением. Авось кому пригодится. Мне например smile.gif


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
Rst7
сообщение May 31 2008, 13:07
Сообщение #6


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Поделились бы сразу своим творением.


На принципах GPL пойдет?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 1 2008, 15:00
Сообщение #7


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Перенес свой AVR'овский кодер на ARM. Если верить симулятору в IAR'е, то 320*240ч/б жмет примерно за 4 миллиона тактов. Причем относительное время нахождения в процедурах примерно соответствует, что на AVR, что на ARM. Правда, надо подумать, как битстрим на ARM реализовать покрасивее, все-таки, в отличии от AVR есть сдвиги на произвольное количество бит.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Sergei_Ilchenko
сообщение Jun 1 2008, 15:15
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 180
Регистрация: 17-05-05
Из: Санкт-Петербург
Пользователь №: 5 128



Можно в Google поискать...

http://www.google.ru/search?aq=f&compl...1%D0%BA&lr=

Для RST7: имя у Вас от Zilog?

http://opencores.org/projects.cgi/web/jpeg/overview

Это для железки, но есть ссылки на документы.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 1 2008, 15:28
Сообщение #9


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Ну, и кстати, к вопросу о качестве.

Вот исходное изображение:
Прикрепленный файл  input.bmp ( 76.05 килобайт ) Кол-во скачиваний: 243


Вот результат упаковки:
Прикрепленное изображение




Цитата(Sergei_Ilchenko @ Jun 1 2008, 18:15) *
Для RST7: имя у Вас от Zilog?


От i8080. Можно в гугле поискать biggrin.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 1 2008, 15:38
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(Rst7 @ Jun 1 2008, 19:00) *
...320*240 ч/б жмет примерно за 4 миллиона тактов.
Т.е. цветное 4:2:2 будет сжимать примерно за 8 MIPS'ов.
BF, все же, быстрее.. wink.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 1 2008, 15:49
Сообщение #11


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Т.е. цветное 4:2:2 будет сжимать примерно за 8 MIPS'ов.


Ну не MIPS, а MIP тогда wink.gif а то почти как "узлы в час" получается smile.gif))

И, кстати, видимо не 8, а 6. У нас данных по каждому цвету в 4 раза меньше, значит будет 4+1+1=6.

ЗЫ Тогда вообще даже MI smile.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 1 2008, 16:04
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(Rst7 @ Jun 1 2008, 19:49) *
Ну не MIPS, а MIP тогда wink.gif а то почти как "узлы в час" получается smile.gif))
Нет сил возражать.. smile.gif Вы правы, MI.

Цитата(Rst7 @ Jun 1 2008, 19:49) *
И, кстати, видимо не 8, а 6. У нас данных по каждому цвету в 4 раза меньше, значит будет 4+1+1=6.
Так я же уточнил, что цвет 4:2:2, а не 4:2:0, так что 4+2+2=8.
На BF'е, как я уже говорил, 5 MI. wink.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 2 2008, 07:03
Сообщение #13


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата(GetSmart @ May 31 2008, 14:43) *
Поделились бы сразу своим творением. Авось кому пригодится. Мне например smile.gif


Вот повставлял в исходники необходимые упоминания про GPL и выкладываю... Теперь посмотрим, какие новые поделки с камерами за бабло появятся biggrin.gif

Прикрепленный файл  JPEGcoderARM.zip ( 85.48 килобайт ) Кол-во скачиваний: 652


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Jun 2 2008, 08:30
Сообщение #14


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Ну я просил чисто посмотреть. Мне пока и применить-то некуда. Я щас сам шлифую mpg123 для АРМа. Не менее интересная тема.


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 2 2008, 08:31
Сообщение #15


Профессионал
*****

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



Классика жанра : исходники Стэнфордского университета. Хорошо комментированы и понятно написаны.
Прикрепленные файлы
Прикрепленный файл  JPEGv1.2.1.tar.gz ( 169.27 килобайт ) Кол-во скачиваний: 470
 
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 2 2008, 17:01
Сообщение #16


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Так я же уточнил, что цвет 4:2:2, а не 4:2:0, так что 4+2+2=8.На BF'е, как я уже говорил, 5 MI.


Немного поплясал с бубном, вспомнив, что среди результатов квантизации почти 75% нулей (это для всех картинок, так сама идея кодера задумана), следовательно, можно неплохо выиграть, правильно написав условия (т.е. обеспечить кратчайшее время при 0). После этого на моей тестовой картинке 3235931 такта. Больше видимо уже не удасться выжать.

Кстати, бекпорт оптимизированного кодера привел к результату 8561325 на AVR (было около 12 миллионов).

И вот еще что - отношение количества тактов на AVR к ARM можно рассматривать как ориентировочную цифру увеличения производительности чисто за счет разрядности - 2.6 раза (при одинаковых тактовых, конечно).


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 2 2008, 17:50
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(Rst7 @ Jun 2 2008, 21:01) *
После этого на моей тестовой картинке 3235931 такта. Больше видимо уже не удасться выжать.
Вот видите, можете поблагодарить меня за предоставленный стимул.. beer.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 2 2008, 17:59
Сообщение #18


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Вот видите, можете поблагодарить меня за предоставленный стимул..


Спасибо. Кстати, получается, что разрыв с BF сократили до 30%. Я считаю - есть над чем подумать... (не нам с Вами, а тем, кто сейчас чешет репу с вопросом "какую бы каменюку мне в проект заложить";) )


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 2 2008, 18:13
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(Rst7 @ Jun 2 2008, 21:59) *
Я считаю - есть над чем подумать...
Подумать всегда есть над чем, но нужно не забывать, что конвейер в BF - 10 тактов, а рабочая частота ядра - 600 МГц. wink.gif
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 3 2008, 04:10
Сообщение #20


Профессионал
*****

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



Для быстрого сжатия можно использовать:
1) алгоритм JPEG-LS, в котором нет дискретного косинусного преобразования (смотри приложение)
2) аппаратное сжатие. У Xilinx есть свободно распространяемый пример сжатия со скоростью 24 кадра в секунду.
Прикрепленные файлы
Прикрепленный файл  ljpg.zip ( 234.85 килобайт ) Кол-во скачиваний: 295
 
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 3 2008, 04:28
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(etoja @ Jun 3 2008, 08:10) *
Для быстрого сжатия можно использовать:
1) алгоритм JPEG-LS, в котором нет дискретного косинусного преобразования (смотри приложение)
2) аппаратное сжатие. У Xilinx есть свободно распространяемый пример сжатия со скоростью 24 кадра в секунду.

1) насколько мне известно, алгоритм JPEG-LS жмет в 3-4 раза, что, IMHO, недостаточно для многих приложений.
2) А что за кадры? Размер кадра? Цвет?
И сколько стоит реализация на FPGA? Есть оценки?
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 05:25
Сообщение #22


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
1) алгоритм JPEG-LS, в котором нет дискретного косинусного преобразования (смотри приложение)


Вы думаете, что DCT - это самое зло? Вы ошибаетесь. Обработка результатов DCT занимает столько же времени, что и само преобразование (хотя бы потому, что необходимо каждую гармонику (а их всего столько же, сколько пикселей) разделить на коэффициент) - причем, это с учетом всех оптимизаций (деление заменено на умножение на 1/q; если делимое меньше делителя, сразу исполняется быстрая обработка нулевого результата). А вот в LS надо над каждым пикселем поплясать немало.

Ну и часто необходим больший коэффициент сжатия.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 3 2008, 05:49
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Rst7 @ Jun 2 2008, 19:01) *
И вот еще что - отношение количества тактов на AVR к ARM можно рассматривать как ориентировочную цифру увеличения производительности чисто за счет разрядности - 2.6 раза (при одинаковых тактовых, конечно).

Очень интересное число. Для общего развития не можете назвать получившееся при этом соотношение размеров кода?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 3 2008, 06:00
Сообщение #24


Профессионал
*****

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



Если вместо DCT применить преобразование Уолша (Walsh transform), то кадровая скорость сжатия возрастёт в 4 раза. Правда это будет нестандартный JPEG.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 06:04
Сообщение #25


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Для общего развития не можете назвать получившееся при этом соотношение размеров кода?


ARM: 2 232 bytes in segment CODE
AVR: 2 026 bytes in segment CODE
AVR32: 1 910 bytes in segment CODE32

ARM в арме. Тумбу даже пробовать не буду, регистров не хватит, будет дупа по производительности.

Цитата(etoja @ Jun 3 2008, 09:00) *
Если вместо DCT применить преобразование Уолша (Walsh transform), то кадровая скорость сжатия возрастёт в 4 раза. Правда это будет нестандартный JPEG.


Вы читаете то, что я пишу? Если выбросить DCT, то времени займет только в 2 раза меньше

Конечно, если у Вас плохо дело с оптимизацией самого DCT - тогда да.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 3 2008, 06:04
Сообщение #26


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(etoja @ Jun 3 2008, 10:00) *
Если вместо DCT применить преобразование Уолша (Walsh transform), то кадровая скорость сжатия возрастёт в 4 раза. Правда это будет нестандартный JPEG.
Для BF по моим оценкам, затраты на DCT -15%, а на сжатие Huffman'ом и все остальное - 85%.
Где тут можно получить выигрыш в 4 раза? wacko.gif

Сообщение отредактировал blackfin - Jun 3 2008, 06:17
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 06:16
Сообщение #27


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
По моим оценкам, затраты на DCT -25%, а на сжатие Huffman'ом - 75%.


Это на BF. Там DCT конечно лучше должно получиться, все-таки несколько MAC за такт.

А на AVR/ARM/AVR32 соотношение 50 на 50.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 3 2008, 06:30
Сообщение #28


Профессионал
*****

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



DCT и преобразование Уолша проверены на реальном продаваемом оборудовании
http://telekadr.by.ru
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 3 2008, 06:30
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Rst7 @ Jun 3 2008, 08:04) *
ARM: 2 232 bytes in segment CODE
AVR: 2 026 bytes in segment CODE
AVR32: 1 910 bytes in segment CODE32

Совершенно привычные соотношения. Cпасибо.
Цитата
ARM в арме. Тумбу даже пробовать не буду...

Это правильно smile.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 06:41
Сообщение #30


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Гм... Вообщем, нельзя доверять этим симуляторам в иаре... AVR'овский правильно такты считает, а ARM - слишком льстит - B за 1 такт вместо 3, ST за 1 такт вместо 2, LD за 2 такта вместо 3х.. AVR32 тоже далек от правды, причем в другую сторону... Ну для AVR32 я студию выйму, посмотрю, чего она насчитает, а вот для ARM'а... Чем бы таким посимулить поумнее?

Цитата
DCT и преобразование Уолша проверены на реальном продаваемом оборудовании


Это говорит только о том, что Вы не в теме wink.gif И оптимизацию, как сейчас модно говорить, ниасилили.

Цитата
Очень интересное число.


Щас будем пересматривать...


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 06:56
Сообщение #31


Гуру
******

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



Цитата(Rst7 @ Jun 3 2008, 10:41) *
Чем бы таким посимулить поумнее?

Эксперимент с RVDS 2.2 дал такие цифры:
Код
CODE      2456
CLOCKS    5215498
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 3 2008, 07:01
Сообщение #32


Профессионал
*****

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



Для Rst7: не симулируй.
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 3 2008, 07:04
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(etoja @ Jun 3 2008, 10:30) *
DCT и преобразование Уолша проверены на реальном продаваемом оборудовании
Тогда, если не секрет, сообщите, плиз, реальные характеристики оборудования, т.е: количество кадров/сек., размер кадров, формат цвета. smile.gif
И, заодно, какой там используется процессор, если, конечно, речь не идет о сжатии на FPGA. wink.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 07:14
Сообщение #34


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата(aaarrr @ Jun 3 2008, 09:56) *
Эксперимент с RVDS 2.2 дал такие цифры:
Код
CODE      2456
CLOCKS    5215498


Выкладываю последнюю ревизию. Попробуйте посимулить ее, и дайте листинг, чего он там накомпилил.
Прикрепленный файл  JPEGcoderARM.zip ( 85.57 килобайт ) Кол-во скачиваний: 665


Цитата(etoja @ Jun 3 2008, 10:01) *
Для Rst7: не симулируй.



Ну нету у меня под рукой ARM7 живого, а на ARM9 (да еще и под многозадачкой) - чистота экперимента будет нарушена.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 07:28
Сообщение #35


Гуру
******

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



Цитата(Rst7 @ Jun 3 2008, 11:14) *
Выкладываю последнюю ревизию. Попробуйте посимулить ее, и дайте листинг, чего он там накомпилил.

Код
CODE      2452
CLOCKS    4379723



Прикрепленный файл  dump.txt ( 44.17 килобайт ) Кол-во скачиваний: 536
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 07:42
Сообщение #36


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
 dump.txt ( 44.17кб )


А вменяемый листинг можно положить? С сишным исходником в каментах? И кстати, рекомендую выключить инлайн функций, может нехватать регистров.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
AKimbo
сообщение Jun 3 2008, 07:46
Сообщение #37


Участник
*

Группа: Новичок
Сообщений: 48
Регистрация: 26-10-06
Пользователь №: 21 675



Прогонял исходники jpeg-6b на симуляторе в ИАРе V4, ARM7.
Вот что получилось по соотношению %времени/процессы.
Сжатие кадра 720*576, размер выходного 28Кб, коэф сжатия 25, цвет 4:2:2.

1) Использовался "быстрый" DCT

30 rgb_ycc_convert
40 forward_DCT
19 jpeg_fdct_ifast
16 encode_mcu_huff

2) Использовался "точный" DCT

24 rgb_ycc_convert
43 forward_DCT
26 jpeg_fdct_islow
15 encode_mcu_huff

Фц. jpeg_fdct_??? непосредственно вычисляет коэффициенты, является частью forward_DCT. Заметно что вклад "вычисления коэффициентов" и "разборки результатов" примерно равен. Различия в выходных картинка не замечаю, хотя материал немного не тот. В прикреплении пожатые картинки.
Прикрепленный файл  jpeg6b_out_25.rar ( 54.51 килобайт ) Кол-во скачиваний: 282


Сообщение отредактировал AKimbo - Jun 3 2008, 07:52
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 08:06
Сообщение #38


Гуру
******

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



Цитата(Rst7 @ Jun 3 2008, 11:42) *
А вменяемый листинг можно положить? С сишным исходником в каментах?

Вменяемый листинг получить нельзя.

Цитата(Rst7 @ Jun 3 2008, 11:42) *
И кстати, рекомендую выключить инлайн функций, может нехватать регистров.

Он и так выключен. Включение, кстати, картину немного улучшает:
Код
CODE      2208
CLOCKS    4290777
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 3 2008, 08:10
Сообщение #39


Профессионал
*****

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



Коммерчески ценные исходники никто никогда никуда не выкладывает.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 08:25
Сообщение #40


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Вменяемый листинг получить нельзя.


а objdump -S out.elf?

Ну и так, кстати, видно, что качество кода IAR'у уступает...


Цитата
Коммерчески ценные исходники никто никогда никуда не выкладывает.


Ваши исходники никто не просит, у Вас просят общее описание - какое железо, количество FPS, во сколько раз пакует...


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 08:34
Сообщение #41


Гуру
******

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



Цитата(Rst7 @ Jun 3 2008, 12:25) *
а objdump -S out.elf?

Не совсем так, но: Прикрепленный файл  jprocess.txt ( 69.73 килобайт ) Кол-во скачиваний: 373


Цитата(Rst7 @ Jun 3 2008, 12:25) *
Ну и так, кстати, видно, что качество кода IAR'у уступает...

Очень сильно в этом сомневаюсь. Впрочем, IAR'а у меня нет, сравнить не получится.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 08:47
Сообщение #42


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Не совсем так


Во, почти получилось. Выключите, плиз, инлайн нафиг, и будет хороший листинг.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 09:01
Сообщение #43


Гуру
******

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



Цитата(Rst7 @ Jun 3 2008, 12:47) *
Во, почти получилось. Выключите, плиз, инлайн нафиг, и будет хороший листинг.

Так и быть smile.gif
Прикрепленный файл  jprocess.txt ( 76.58 килобайт ) Кол-во скачиваний: 559
Go to the top of the page
 
+Quote Post
blackfin
сообщение Jun 3 2008, 09:05
Сообщение #44


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(Rst7 @ Jun 2 2008, 21:01) *
После этого на моей тестовой картинке 3235931 такта. Больше видимо уже не удасться выжать.

Цитата(aaarrr @ Jun 3 2008, 12:06) *
Включение, кстати, картину немного улучшает: CLOCKS 4290777
Так чему в итоге верить? laughing.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 09:08
Сообщение #45


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Так чему в итоге верить?


Видимо не мне. Потому как выше отписал, как IAR'овский симулятор льстит по тактам wink.gif

Надо бы в реальном железе проверить. Кто возьмется?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 09:12
Сообщение #46


Гуру
******

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



Сейчас попробую сделать доброе дело...
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Jun 3 2008, 09:46
Сообщение #47


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



События развиваются так быстро, что не успеваю переваривать. smile.gif

Может тогда осветить вопрос наиболее подходящих камер для подобных проектов?

Выкладываю даташит на одну из них.


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 09:47
Сообщение #48


Гуру
******

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



Готово. SAM7, все из RAM, картинка во флеш:
Код
FWS=0    4361472
FWS=1    4438400

Все вполне соответствует симулятору.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 09:48
Сообщение #49


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Очень сильно в этом сомневаюсь.


Да, вроде ничего, сейчас внимательнее рассмотрел. Есть спорное место о замене загрузки непосредственного операнда и умножения на 3 сложения. Дело в том, что операнд <256, следовательно, умножение выполняется 2 такта + 1 такт MOV, значит, по тактам - одинаково, но зато лишнее слово. А это - потенциальная потеря скорости (например, из-за MAM на LPC, или промаха мимо кеша).

А в остальном вроде особых граблей нет, правда местами он лишнего из цикла повыносил с потерей общего быстродействия (это я специально при помощи goto обманывал).


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 3 2008, 09:50
Сообщение #50


Гуру
******

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



Цитата(aaarrr @ Jun 3 2008, 13:47) *
Все вполне соответствует симулятору.

70000 лишних тактов откуда-то набежало только.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 09:53
Сообщение #51


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Готово.


Ну что-же. Тогда пересматриваем цифры. Значит, до BF'а нам еще 80%, почти в 2 раза хуже. С другой стороны, соотношение с тактов у AVR с тактами у ARM уменьшилось - так что выигрыш за счет 32хразрядной архитектуры стал около 2х.

Цитата
70000 лишних тактов откуда-то набежало только.


да хрен с ними, на 4х миллионах то...


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Jun 3 2008, 09:59
Сообщение #52


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



События развиваются так быстро, что не успеваю переваривать. smile.gif

Может тогда осветить вопрос наиболее подходящих камер для подобных проектов?

Выкладываю даташит на одну из них.
Прикрепленные файлы
Прикрепленный файл  LZ0P39HA_SPECIFICATIONS_20071108.part1.rar ( 1.39 мегабайт ) Кол-во скачиваний: 161
Прикрепленный файл  LZ0P39HA_SPECIFICATIONS_20071108.part2.rar ( 340.4 килобайт ) Кол-во скачиваний: 151
 


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 3 2008, 10:07
Сообщение #53


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Выкладываю даташит на одну из них.


А Вам обязательно такое разрешение? Имейте в виду, что понадобится ОЗУ для хранения всего кадра, и время упаковки растет пропорционально площади изображения (единица измерения - пиксель^2) - так что картинка с такой камеры будет жаться не 4, а 100 миллионов тактов (это чб, с цветом - в полтора-два раза дольше, как выберете).

Рекомендую, кстати, искать камеру, которая умеет сразу выдавать YUV, а не RGB - минус матрицирование, тоже требующая времени операция.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Jun 3 2008, 10:56
Сообщение #54


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(Rst7 @ Jun 3 2008, 14:07) *
А Вам обязательно такое разрешение? Имейте в виду, что понадобится ОЗУ для хранения всего кадра, и время упаковки растет пропорционально площади изображения (единица измерения - пиксель^2) - так что картинка с такой камеры будет жаться не 4, а 100 миллионов тактов (это чб, с цветом - в полтора-два раза дольше, как выберете).

Рекомендую, кстати, искать камеру, которая умеет сразу выдавать YUV, а не RGB - минус матрицирование, тоже требующая времени операция.



Собственно озу предолагалось метров на 64. Теперь буду думать над оптимизацией.


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
dENIM
сообщение Jun 3 2008, 13:43
Сообщение #55


Местный
***

Группа: Свой
Сообщений: 226
Регистрация: 13-03-07
Из: Севастополь
Пользователь №: 26 137



Цитата(Vitaliy_ARM @ Jun 3 2008, 12:59) *
События развиваются так быстро, что не успеваю переваривать. smile.gif

Может тогда осветить вопрос наиболее подходящих камер для подобных проектов?

Выкладываю даташит на одну из них.


Очинь апасна

Но все же, если не секрет, для чего такое разрешение?
Эти все поделки на армах и камерах идут, в основном, в системы наблюдения, видеофоны всякие.
А ваше разрешение подразумевает нечто монструозное. Неужели фотоаппарат? biggrin.gif
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Jun 7 2008, 07:26
Сообщение #56


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(dENIM @ Jun 3 2008, 17:43) *
Очинь апасна

Но все же, если не секрет, для чего такое разрешение?
Эти все поделки на армах и камерах идут, в основном, в системы наблюдения, видеофоны всякие.
А ваше разрешение подразумевает нечто монструозное. Неужели фотоаппарат? biggrin.gif



Не совсем секрет. Устройство, очень похожее на хороший фотоаппарат. Ничего монстроузорного в 2 Мпикселях нет.


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Jun 7 2008, 09:59
Сообщение #57


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(Vitaliy_ARM @ Jun 3 2008, 13:59) *
Выкладываю даташит на одну из них.


Нет ли у кого более подробной информации по LZ0P39HA или LZ0P3954?
Всмысле I2C и режимов работы. Конструктив мне понятен.
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Jun 7 2008, 14:01
Сообщение #58


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(_4afc_ @ Jun 7 2008, 13:59) *
Нет ли у кого более подробной информации по LZ0P39HA или LZ0P3954?
Всмысле I2C и режимов работы. Конструктив мне понятен.


Все остальное, вроде, под NDA дается.


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Jun 9 2008, 09:49
Сообщение #59


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(Vitaliy_ARM @ Jun 7 2008, 18:01) *
Все остальное, вроде, под NDA дается.


Может брал кто уже под NDA? Поделитесь пожалуйста.
А то лежат LZ0P39HA, не знаю как подступиться...
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 9 2008, 11:36
Сообщение #60


Профессионал
*****

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



NDA - это соглашение о неразглашении информации. Из подписавших никто не даст из-за последствий.
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Jun 9 2008, 17:52
Сообщение #61


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(_4afc_ @ Jun 9 2008, 13:49) *
Может брал кто уже под NDA? Поделитесь пожалуйста.
А то лежат LZ0P39HA, не знаю как подступиться...


А если попробовать VS6724?


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jun 9 2008, 18:59
Сообщение #62


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(_4afc_ @ Jun 9 2008, 13:49) *
Может брал кто уже под NDA? Поделитесь пожалуйста.
А то лежат LZ0P39HA, не знаю как подступиться...
А вот это не подходит ?
http://hw.cz/files/redaktor130/LZ0P39HA_SP...NS_20071108.pdf
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Jun 10 2008, 07:01
Сообщение #63


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(Vitaliy_ARM @ Jun 9 2008, 21:52) *
А если попробовать VS6724?


Вам она больше подойдёт несомненно, поскольку жмёт в JPEG сама.
Меня больше интересует изображение в YUV420 ибо камеры на самом деле, в частности MT9D131, выдают JFIF без заголовков и коэфициентов, которые надо формировать самому. Т.е. надо или работать с постоянными коэф. или вычитывать их по I2C.
Причём доступ к многим регистрам в MT9D131 через узенькую дырочку.

PS: VS6724 мне понравилась, жаль раньше не видел. И дока подробная.


Цитата(singlskv @ Jun 9 2008, 22:59) *
А вот это не подходит ?
http://hw.cz/files/redaktor130/LZ0P39HA_SP...NS_20071108.pdf


Это есть в нескольких местах в интернете, и естественно я получил этот документ при покупке модулей.

Прочитав документ я не нахожу ответа что такое адреса 5e4-5eb, неясно каким образом осуществляется 5 кратный зум и перевороты картинки.

Кроме того различные регулировки баланса белого и т.п.

И регулировка автофокуса не ясна. Данные о наличии или отсутствии фокуса должны идти с камеры, даже если я сам кручу мотором. Если мне самаму придётся обрабатывать кадр - это уже ручной фокус.

Сообщение отредактировал _4afc_ - Jun 10 2008, 07:17
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Jun 10 2008, 10:14
Сообщение #64


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(_4afc_ @ Jun 10 2008, 11:01) *
PS: VS6724 мне понравилась, жаль раньше не видел. И дока подробная.


Для полного счастья не хватает примеров работы. Нашел только какие-то обрывки кода для получения данных на STR9... Жудко нехороший процессор


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Aug 14 2008, 07:14
Сообщение #65


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(Rst7 @ Jun 2 2008, 11:03) *
Вот повставлял в исходники необходимые упоминания про GPL и выкладываю... Теперь посмотрим, какие новые поделки с камерами за бабло появятся biggrin.gif


Что-то у меня с JPEG никак отношения не ладятся.
Откомпилировал ваш исходник в DEV-C++ под винду - результат конвертации ошеломляет. Может кто подскажет - что не так, визуально?
Округления? Инты, шорты, чары? Структуры?
Исходная картинка - таже.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 14 2008, 12:26
Сообщение #66


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
что не так, визуально?


Разная обработка сдвигов в ARM и в x86. Разный результат у сдвигов на 32 бита.

Для ARM кодер собирается и работает, так что пользуйте. Не забывая про GNU smile.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 26 2008, 09:12
Сообщение #67


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата(_4afc_ @ Aug 14 2008, 10:14) *
Что-то у меня с JPEG никак отношения не ладятся.


Ну как? Разобрались? Если нет - то в версии для x86 замените _WRITE_BITS_N на это
Код
#define _WRITE_BITS_N(LEN,SYM) \
  { \
    if ((REG)(__bs_bit-=LEN)>0) \
    { \
      __bs_buf|=SYM<<__bs_bit; \
    } \
    else \
    { \
      UREG c; \
      __bs_buf|=SYM>>(__bs_bit=0-__bs_bit); \
      c=__bs_buf>>24; \
      if ((*__bs_bytep++=c)==0xFF) *__bs_bytep++=0; \
      c=__bs_buf>>16; \
      if ((*__bs_bytep++=c)==0xFF) *__bs_bytep++=0; \
      c=__bs_buf>>8; \
      if ((*__bs_bytep++=c)==0xFF) *__bs_bytep++=0; \
      c=__bs_buf>>0; \
      if ((*__bs_bytep++=c)==0xFF) *__bs_bytep++=0; \
      if (__bs_bit) __bs_buf=SYM<<(__bs_bit=32-__bs_bit); else {__bs_buf=0; __bs_bit=32;}\
    } \
  } \


Собственно говоря, актуален последний if.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
yes
сообщение Aug 26 2008, 11:07
Сообщение #68


Гуру
******

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



Цитата(blackfin @ Jun 1 2008, 19:38) *
Т.е. цветное 4:2:2 будет сжимать примерно за 8 MIPS'ов.
BF, все же, быстрее.. wink.gif


а как в JPEG/JFIF записать 4:2:2? вроде бы все примеры, которые я встречал, используют 4:2:0
Go to the top of the page
 
+Quote Post
blackfin
сообщение Aug 26 2008, 11:54
Сообщение #69


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(yes @ Aug 26 2008, 15:07) *
а как в JPEG/JFIF записать 4:2:2? вроде бы все примеры, которые я встречал, используют 4:2:0
Стандарт JFIF фиксирует кол-во цветов (1 или 3) и их представление (Ci = YCbCr). Формат MCU, кол-во scan'ов и interleaving зависит от Вас. Цвет можно сделать любой: 4:2:0, 4:2:2 или 4:4:4.
Go to the top of the page
 
+Quote Post
yes
сообщение Aug 27 2008, 11:05
Сообщение #70


Гуру
******

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



Цитата(blackfin @ Aug 26 2008, 15:54) *
Стандарт JFIF фиксирует кол-во цветов (1 или 3) и их представление (Ci = YCbCr). Формат MCU, кол-во scan'ов и interleaving зависит от Вас. Цвет можно сделать любой: 4:2:0, 4:2:2 или 4:4:4.


собственно интересно [можно ли] в неиннтерлейсном режиме 3 цвета, что писать в SOF и как MCU (если не ошибаюсь - прямоугольник 8х16) кодируется
Go to the top of the page
 
+Quote Post
blackfin
сообщение Aug 27 2008, 11:12
Сообщение #71


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(yes @ Aug 27 2008, 15:05) *
собственно интересно [можно ли]
Можно, читайте стандарт. rolleyes.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 28 2008, 15:28
Сообщение #72


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата(_4afc_ @ Aug 28 2008, 13:08) *
Самостоятельно - нет. Дал ковырятся местному программисту, но он увяз.

Слабак smile.gif шютка

Цитата
Ваш вариант работает. У вашего кодера чуть больше артефактов, чем у Cristi Cuturicu - вероятно из-за целочисленных вычислений, правда у Cristi Cuturicu файл больше.

Дык поиграйтесь коэффициентом сжатия, он задается параметром функции-генератора заголовка. Чем он больше, тем выше качество и выходной размер.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Aug 29 2008, 09:04
Сообщение #73


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(Rst7 @ Aug 28 2008, 19:28) *
Дык поиграйтесь коэффициентом сжатия, он задается параметром функции-генератора заголовка. Чем он больше, тем выше качество и выходной размер.

Я сначала подумал, что чем больше коэф. - тем хуже качество smile.gif
Кстати, замена усечения на округление - улучшает резкость.
Код
#define MUL_U16(a,b) ( (unsigned int)( ( ((UINT32)(a)*(b))+0x8000 )>>16 ) )

В теме проскакивали тесты на скорость - ваш исходник скомпилированный влоб на VDSP5 под BF жмёт ч/б 640х480 за 42 миллиона тактов, что неплохо.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 29 2008, 12:46
Сообщение #74


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Кстати, замена усечения на округление - улучшает резкость.


Возможно. Надо вообще проверить это место, чтобы совпадало с проверкой на минимальное значение. Короче, я гляну.

Цитата
ваш исходник скомпилированный влоб на VDSP5 под BF жмёт ч/б 640х480 за 42 миллиона тактов, что неплохо.


На арме эту картинку жало бы примерно 20 миллионов тактов. Перепишите хотя-бы DCT на асме, для остального DSPшные фичи особо не нужны...


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Aug 29 2008, 19:08
Сообщение #75


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



В прошлые выходные реализовал JPEG . Честно признаюсь, не написал ни строчки кода smile.gif Хотя и разобрался как работает, всё увёл из http://mxhaard.free.fr/spca50x/Download/sp...20060127.tar.gz . Это драйвера для вебкамер под линукс. НО в папке encode есть кодировщик и в папке decode раскодировщик.

Эсть готовые функции
encode_image и decode_image
Go to the top of the page
 
+Quote Post
VAI
сообщение Aug 30 2008, 05:54
Сообщение #76


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Цитата
НО в папке encode есть кодировщик и в папке decode раскодировщик.
Эсть готовые функции encode_image и decode_image

В этом архиве нет папок "encode" и "decode". И нет функций "encode_image" и "decode_image".
Может Вы ошиблись ссылкой?


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Aug 30 2008, 08:34
Сообщение #77


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Сорри... в аттаче
Прикрепленные файлы
Прикрепленный файл  gspcagui.rar ( 327.31 килобайт ) Кол-во скачиваний: 371
 
Go to the top of the page
 
+Quote Post
VAI
сообщение Aug 30 2008, 10:32
Сообщение #78


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Цитата
Сорри... в аттаче

Спасибо.


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
BaRaGoZ
сообщение Dec 20 2014, 21:53
Сообщение #79





Группа: Новичок
Сообщений: 5
Регистрация: 19-08-11
Пользователь №: 66 788



Добрый вечер, у меня вопрос по кодеку JpegCoderARM, я его перед тем как переносить на МК, попробовал в Windows, что то не выходит картинка, на вход давал картинку 320*240 grayscale, в том числе пробовал и фотку из архива, в чем может быть причина, картинка получается, по размеру файл сжатый, но ооочень неправильная, непонятно что изображено, может как то алгоритм по другому под виндой работает? Просто боюсь все переносить на МК, ощущение непонимания возникает! )

Сообщение отредактировал BaRaGoZ - Dec 20 2014, 21:56
Go to the top of the page
 
+Quote Post
WitFed
сообщение Dec 24 2014, 13:01
Сообщение #80


Местный
***

Группа: Свой
Сообщений: 271
Регистрация: 6-12-11
Из: Taganrog
Пользователь №: 68 701



Выложу свои летние опыты -- в MS-Студию-08 всё заехало успешно, картинка с пацаном размноженным конвертится нормально.
Прикрепленные файлы
Прикрепленный файл  jpgcoder.zip ( 274.25 килобайт ) Кол-во скачиваний: 73
 
Go to the top of the page
 
+Quote Post

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

 


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


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