Я пытаюсь написать программу (prob в java), чтобы объединить несколько jpeg вместе без потерь без их декодирования.
Я думал, что начну просто, и попытаюсь добавить 2 jpegs того же размера, сжатых с теми же настройками один над другим, используя hex-редактор.
Сначала я извлекаю данные изображения jpeg B и добавляю его в jpeg A. Изменяя размеры, указанные в заголовках, я получаю новое распознаваемое изображение (jpeg A + jpeg B, добавленное по оси y), которое можно разложить. Однако, хотя данные изображения из jpeg B четко распознаются, он, кажется, потерял много информации о цвете и явно неверен.
Итак, мой вопрос - какие шаги я пропустил здесь? Я не думаю, что есть какие-то другие значения заголовка измерения, которые мне нужно изменить, поэтому, возможно, мне нужно, чтобы huffman декодировал данные изображения из обоих jpegs, затем добавлял их вместе, а затем перекодировал лот?
Я потратил некоторое время на чтение jpeg-спецификаций и заголовков и т.д., но, честно говоря, я не в своей глубине и мог бы сделать это с помощью указателя или двух!
Большое спасибо за любую помощь.
Спасибо за все предложения. Да, это определенно возможно, я должен был упомянуть jpegtran в моем первоначальном вопросе. Я в основном пытаюсь воспроизвести этот аспект функции jpegtran, но использовать его в своей собственной программе. Я думаю, я должен посмотреть на источник jpegtran, но я ничего не знаю о C и не очень много о программировании в целом, поэтому обратный инженерный исходный код легче сказать, чем сделать!