На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела "Программирование графики"
1) Данный раздел предназначен для обсуждения проблем, возникающих при программировании задач, связанных с чтением, сохранением, обработкой, созданием, отрисовкой графической информации (в том числе - 3D [OpenGL, Direct3D] и анимации [в т.ч. VFW, DirectShow, OpenDML]).
Флэш обсуждают здесь!.

2) Если вы хотите получить совет для конкретной платформы/языка программирования, обязательно укажите их в вопросе.

3) Уважаемые новички! Мы приветствуем Ваше желание научить всех посетителей раздела правильному программированию. Но огромная просьба, перед тем, как писать поучения в старых (последний ответ - "старее" месяца, а особенно, если вопрошавший не появляется на форуме уже не первый месяц, в чем можно убедиться в его профиле) темах, хорошо подумать, будет ли кому-нибудь, кроме Вас cамих, это интересно.



Ваше мнение о модераторах: user posted imageBarazuk, user posted imageOpenGL, user posted imageMikle
Модераторы: OpenGL, Mikle
  
> Повернуть jpeg на 180 градусов
    Если я правильно понял где-то в хидере файла должны быть 2 байта orientation
    orientation может быть от 1 до 8
    Хочу повернуть существующую картинку на 180 градусов

    Какое смещение у этих двух байт??

    Или все таки поворот возможен только если проводить матричные преобразования?
      Зачем нужны матричные преобразования при повороте на 180 градусов? Это же просто показ пикселей задом-наперёд.
        Цитата lSergey @
        Или все таки поворот возможен только если проводить матричные преобразования?
        XnView при "преобразовании JPEG без потерь\Поворот на 180 градусов" весьма существенно внутренние байты меняет, а не только пару байт из заголовка. :whistle:
          Два байта называются Exif orientation tag. Конкретного смещения у них нет, jpeg состоит из чанков, которые теоретически могут быть перемешаны в любом порядке. Нужно перебирать все чанки, пока не доберёшься до чанка Exif (E1FFh), а потом ещё в нём искать тэг (0112h). Или дописывать к файлу, если чанка/тэга нет. В общем, лучше для начала посмотреть готовые библиотеки для работы с Exif, чтобы не разбираться со всеми тонкостями.
          Проблема ещё в том, что не все программы поддерживают тэг, особенно это касается встроенных средств Windows (вьюер, тумбнэйлы) - говорят, только в 8-ке прикрутили наконец.

          А jpeg lossless transform это другое, там переставляются DCT-коэффициенты без перепаковки, вернее, с частичной перепаковкой. Это сложнее и медленнее, зато надёжнее, картинка везде показывается как повёрнутая.
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0373 ]   [ 15 queries used ]   [ Generated: 28.03.24, 08:46 GMT ]