Zigrund 0 March 18, 2011 Posted March 18, 2011 · Report post Надо написать алгоритм преобразования Bmp в Jpg. Нашёл много теории: Тут например: http://algolist.manual.ru/compress/image/jpeg.php Конечно можно самому написать, но Интересует пример готового алгоритма. Может кто-нибудь ссылочкой поделеться!? Заранее спасибо. Уточню задачу. Есть массив пиксель цвет(rgb) (из bmp его легко получить), его надо преобразовать в jpeg не используя стандартных средств builder. Quote Share this post Link to post Share on other sites More sharing options...
Guest TSerg March 18, 2011 Posted March 18, 2011 · Report post >его надо преобразовать в jpeg не используя стандартных средств builder. Цель-то какова ? Изобретение "своего" варианта преобразования ? Quote Share this post Link to post Share on other sites More sharing options...
Zigrund 0 March 18, 2011 Posted March 18, 2011 (edited) · Report post >его надо преобразовать в jpeg не используя стандартных средств builder. Цель-то какова ? Изобретение "своего" варианта преобразования ? Не обязательно своего. Потом на контроллер использовать буду и есть свои мысли. Просто нужен имеено сам алгоритм. Он вроде бы есть в интете и многии им интересовали до меня, но пока мои поиски не увенчались успехом. Edited March 18, 2011 by Prinz Quote Share this post Link to post Share on other sites More sharing options...
Zigrund 0 March 18, 2011 Posted March 18, 2011 · Report post Изучая теорию, возник вопрос, а почему кусок именно 8*8 | 95 88 88 87 95 88 95 95| |143 144 151 151 153 170 183 181| |153 151 162 166 162 151 126 117| IMG = |143 144 133 130 143 153 159 175| |123 112 116 130 143 147 162 189| |133 151 162 166 170 188 166 128| |160 168 166 159 135 101 93 98| |154 155 153 144 126 106 118 133| Это типа часть исходного рисунка. А что эти цифирьки значут? Это RGB пикселей??? Или что? Просьба о примере готового кода всё ещё в силу) Quote Share this post Link to post Share on other sites More sharing options...
kurtis 0 March 18, 2011 Posted March 18, 2011 · Report post Может вам libjpeg нужен? Quote Share this post Link to post Share on other sites More sharing options...
Zigrund 0 March 18, 2011 Posted March 18, 2011 · Report post Может вам libjpeg нужен? А можно с этго места поподробнее!? В нём код, или это просто билиотека, которую подключил и всё. Если просто библиотека, то не надо. Я знаю, что есть в билдере готовый конвертер во все стороны, но мне нужен именно сам алгоритм, чтобы запихнуть свои примочки а него. Quote Share this post Link to post Share on other sites More sharing options...
kurtis 0 March 18, 2011 Posted March 18, 2011 · Report post Библиотека доступна в исходных текстах (если вы это имели ввиду). Quote Share this post Link to post Share on other sites More sharing options...
Guest TSerg March 18, 2011 Posted March 18, 2011 · Report post http://www.ijg.org/ Quote Share this post Link to post Share on other sites More sharing options...
Zigrund 0 March 21, 2011 Posted March 21, 2011 · Report post http://www.ijg.org/ Вы имелли ввиду вот этот вот архивчик? jpegsr8c.zip. Библиотека доступна в исходных текстах (если вы это имели ввиду). А где эти исходные тексты можно посмотреть? http://www.ijg.org/ А вы сами разбирадись? Можете мне слегка подсказать, где там, что выдерать? :smile3046: Я разбирался с теорией. http://algolist.manual.ru/compress/image/jpeg.php Возник опрос. А от куда получился такой RES в итоге? вот формула, по которой производится ДКП: RES*IMG*DCT T для начала нужно посчитать промежуточную матрицу: TMP = IMG*DCT |-103 -3 1 2 4 0 -1 5| | 89 -40 12 -2 -7 5 1 0| | 57 31 -30 6 2 0 5 0| TMP = | 55 -28 24 1 0 -8 0 0| | 32 -60 18 -1 14 0 -8 1| | 84 -11 -37 17 -24 4 0 -4| | 19 81 -16 -20 8 -3 4 0| | 22 40 11 -22 8 0 -3 2| затем умножаем ее на ДКП матрицу: RES = TMP*DCT | 91 3 -5 -6 2 0 1| |-38 -57 9 17 -2 2 2| |-80 58 0 -18 4 3 4| RES = |-52 -36 -11 13 -9 3 0| |-86 -40 44 -7 17 -6 4| |-62 64 -13 -1 3 -8 0| |-16 14 -35 17 -11 2 -1| |-53 32 -9 -8 22 0 2| Quote Share this post Link to post Share on other sites More sharing options...