На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! правила раздела Алгоритмы
1. Помните, что название темы должно хоть как-то отражать ее содержимое (не создавайте темы с заголовком ПОМОГИТЕ, HELP и т.д.). Злоупотребление заглавными буквами в заголовках тем ЗАПРЕЩЕНО.
2. При создании темы постарайтесь, как можно более точно описать проблему, а не ограничиваться общими понятиями и определениями.
3. Приводимые фрагменты исходного кода старайтесь выделять тегами code.../code
4. Помните, чем подробнее Вы опишете свою проблему, тем быстрее получите вразумительный совет
5. Запрещено поднимать неактуальные темы (ПРИМЕР: запрещено отвечать на вопрос из серии "срочно надо", заданный в 2003 году)
6. И не забывайте о кнопочках TRANSLIT и РУССКАЯ КЛАВИАТУРА, если не можете писать в русской раскладке :)
Модераторы: Akina, shadeofgray
  
> Срочно! Субдискретизация изображений
    Как реализуется субдискретизация изображений?
    Есть, например, картинка 100x100, состоящая из трех каналов Y, U и V.
    Субдискретизация по схеме 4:4:4 - значит оставить все без изменений.
    По схеме 4:2:2 - значит канал Y не трогать, а каналы U и V уменьшить "по габаритам" в 2 раза? Т. е. если было 3 канала размером по 100x100 пикселей, то должно получиться: 1 канал 100x100 и 2 канала 50x50? Т. е. нужно просто написать функцию для масштабирования этих каналов?
      угу. примерно так:)
      только вот в жпеге например потом делают такую штуку:
      обьединяют некоторое количество участков, так, чтобы каналы были как исходные.
      то есть, если ты сделал масштабирование для 16х16, для канала Y осталось 16х16 а для U и V 8х8 то обьединяют четыре блока , так чтобы в сумме для U было 16х16и для Vбыло 16х16
      то есть, охватываются сразу четыре блока 16х16.
      а для Y понятно будет 4 раза по 16x16.
        Цитата Demo_S, 13.06.02, 17:48:08
        угу. примерно так:)
        только вот в жпеге например потом делают такую штуку:
        обьединяют некоторое количество участков, так, чтобы каналы были как исходные.
        то есть, если ты сделал масштабирование для 16х16, для канала Y осталось 16х16 а для U и V 8х8 то обьединяют четыре блока , так чтобы в сумме для U было 16х16и для Vбыло 16х16
        то есть, охватываются сразу четыре блока 16х16.
        а для Y понятно будет 4 раза по 16x16.

        Я, кажется, лажанулся в своей мессаге. 4:2:2 - это, типа, не габариты, а _площадь_, т. е из 4 пикселей сделать 2, т. е. из 2x2 сделать sqrt(2) x sqrt(2). Или меня глючит? Блин, а статейки нет на эту тему?
          по моему на самом деле все выглядит немого по другому.
          Для уменьшения размера т.е. из 4 точек (2Х2) делать не sqrt(2) на sqrt(2). Берется усреднение в прямом смысле этого слова. И из 4 точек получается либо 1 (усреднение по обоим координатам 1х1) либо уже 2 по одной из координат (1х2) или (2х1). Если надо подробней сообщи, подберу, что-нибудь. ;D ;D ;D
            Цитата andyag, 13.06.02, 18:46:27

            Блин, а статейки нет на эту тему?

            а на кой тебе эта субдискретизация нужна.
            если для жпега, то см доку по жпегу
            http://www.sources.ru/cpp/graphics/jpeg_doc.rar
              Цитата Demo_S, 14.06.02, 17:13:40

              а на кой тебе эта субдискретизация нужна.
              если для жпега, то см доку по жпегу
              http://www.sources.ru/cpp/graphics/jpeg_doc.rar

              Не совсем по жпегу, хотя почти. Алгоритм похожь на жпег, но, только есть несколько новых фишек, преобразование "не совсем DCT", и больше возможностей по настройке. Большинство фишек уже написано, вот надо теперь субдискретизацию прикрутить... :-)
                Цитата GrAnd, 14.06.02, 13:11:57
                по моему на самом деле все выглядит немого по другому.
                Для уменьшения размера т.е. из 4 точек (2Х2) делать не sqrt(2) на sqrt(2). Берется усреднение в прямом смысле этого слова. И из 4 точек получается либо 1 (усреднение по обоим координатам 1х1) либо уже 2 по одной из координат (1х2) или (2х1). Если надо подробней сообщи, подберу, что-нибудь. ;D ;D ;D

                То, как ты описал позволит сделать только несколько прошитых вариантов, т. е. комбинации 4, 3, 2, 1, 0. А хотелось бы побольше вариантов, т. е. если использовать блоки не 2x2, а больше... Хотя... Какой смысл? 256:255:255 как-то глупо смотрится. :-)
                Сообщение отредактировано: andyag -
                  но ты все таки посмотри, как оно в жпеге реалзовано, может полегче станет, велосипеды разные изобретать не придется:)))

                  а насчет прошитиых вариантов, тебе их что, не хватает?
                  2x1 3x1 4x1
                  2x2 3x2
                  3x3
                  4x4
                  ...
                    Цитата Demo_S, 15.06.02, 00:19:31
                    но ты все таки посмотри, как оно в жпеге реалзовано, может полегче станет, велосипеды разные изобретать не придется:)))

                    а насчет прошитиых вариантов, тебе их что, не хватает?
                    2x1 3x1 4x1
                    2x2 3x2
                    3x3
                    4x4
                    ...

                    Наверно, так и сделаю :-)
                      Ну вот. После "бурных" дебатов, нашли наконец-то решение над "трудной" задачей ;D ;D ;D
                        Цитата GrAnd, 17.06.02, 07:54:29
                        Ну вот. После "бурных" дебатов, нашли наконец-то решение над "трудной" задачей ;D ;D ;D

                        Типа:
                        последнее слово мое (с) модератор:)
                          Да нет с чего ты так. Просто радуюсь, что помогли человеку чем смогли.
                          P.S.
                          Спасибо тебе за поздравления. ;D ;D ;D
                            Ходят слухи, что субдискретизации 4->3 не бывает (4:3:3), а бывает только 4->0, 4->1, 4->2, 4->4.
                              Да нет бывать, то она бывает. Проблема только в том, что  обычно переход делают по степеням двойки 0->1->2->4->... А для 4->3 немного  геморно все это реализовывать ;D ;D ;D
                              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                              0 пользователей:


                              Рейтинг@Mail.ru
                              [ Script execution time: 0,0307 ]   [ 15 queries used ]   [ Generated: 27.04.24, 11:03 GMT ]