ЦИФРОВАЯ ПРОМЕЖУТОЧНАЯ (ЦП) ОБРАБОТКА И РАСПРОСТРАНЕНИЕ С МАСШТАБИРУЕМЫМ СЖАТИЕМ ПРИ ПОСТ-ОБРАБОТКЕ КИНОФИЛЬМОВ
INTERMEDIATE PROCESSING AND DISTRIBUTION WITH SCALED COMPRESSION IN MOTION PICTURE FILM POSTPROCESSING

ОПИСАНИЕ
Область техники, к которой относится изобретение
Настоящее изобретение относится к поточной обработке, используемой при создании кинофильмов и видеофильмов и, более конкретно, к задачам, которые встречаются во время цифровой промежуточной обработки при пост-обработке кинофильмов.
Описание предшествующего уровня техники
Цифровая промежуточная (ЦП) обработка
Хотя в последнее время все большее количество кинофильмов записываются и/или демонстрируются с использованием цифровых камер и/или цифровых проекторов, большинство кинофильмов снимаются и демонстрируются, используя пленку. Даже при том, что кинофильм может быть снят и может быть показан с использованием пленки, для все большего количества кинофильмов используются технологии цифровой обработки при пост-обработке. Эта обработка известна как цифровая промежуточная (ЦП, DI) обработка. Примеры пост-обработки включают в себя редактирование (определение того, какие изображения будут включены и в каком порядке), коррекцию цвета, спецэффекты, увеличение или уменьшение, субтитры, разделение кадра, изменение установки рамки кадра, классификацию сцены, удаление искажений, повышение разрешения, снижение уровня шума, увеличение резкости и проверку. После ЦП обработки изображения снова записываются на пленку, чтобы получить различные копии кинофильма, требуемые для записи оригинала и распространения кинофильма.
При ЦП обработке создают "изображение-посредник" с уменьшенным разрешением для каждого изображения, используемое для пост-обработки. Это делают путем передискретизации цифрового изображения с понижением частоты дискретизации до фиксированного разрешения. Каждую версию с пониженной частотой дискретизации затем сжимают с фиксированным уровнем качества и сжатые изображения-посредники сохраняют. Разрешение и уровень качества выбирают на основе компромисса между вычислительной мощностью, емкостью памяти, возможностями отображения и требованиями различных функций редактирования. Когда оператор пост-обработки (редактор, колорист и т.д.) запрашивает некоторую сцену или отрывок, соответствующие сжатые изображения распаковываются для отображения последовательности изображений-посредников. Изображения-посредники представляют собой различные цифровые изображения, созданные из исходных изображений, но которые являются совершенно отдельными от цифровых версий исходных изображений. Сжатые изображения-посредники требуется сохранять в дополнение к хранению цифровых версий исходных изображений. При пост-обработке генерируют один или несколько списков решений, которые включают в себя список операций, которые были выполнены в отношении каждого из изображений-посредников. После окончания редактирования, коррекции цвета и т.д. в отношении изображений-посредников, списки решений применяются к цифровым изображениям так, что те же самые операции выполняются в отношении цифровых версий исходных изображений.
В патенте США № 5577191 описана система редактирования цифрового видеоизображения и издательская система, в которой данные цифрового видеоизображения сжаты, только внутрикадровым образом, и сохранены. Выбранные кадры сжатых данных распаковываются, редактируются и повторно сжимаются. Отредактированную и сжатую последовательность видеоизображений распаковывают и затем повторно сжимают, используя как внутрикадровое, так и межкадровое сжатие. Параметры внутрикадрового сжатия, используемого при создании этого цифрового мастер-файла, установлены так, что распакованное изображение имеет выбранные разрешение и качество, соразмерные с целевыми данными, предназначенными для публикации. В этом подходе комбинируется возможность распаковывания и редактирования отдельных кадров при использовании внутрикадрового сжатия только изначально и более высокого уровня возможности внутрикадрового и межкадрового сжатия. В этом подходе не используются изображения-посредники для редактирования. Следовательно, если целевые данные, предназначенные для публикации, имеют очень высокое разрешение, процесс редактирования может стать очень громоздким.
JPEG2000 представляет собой новый международный стандарт сжатия изображения (ISO/IEC 15444), который предлагает современные рабочие характеристики сжатия для неподвижных изображений и ряд функций, обеспечивающих, в частности, соответствие требованиям передачи и сохранения новых прикладных программ обработки изображения. В частности, JPEG2000 предлагает несколько механизмов, обеспечивающих возможности масштабирования и произвольного доступа для сжатых кодовых потоков, чтобы уменьшить объем данных, передаваемых во время распространения цифровых изображений большого размера. В частности, версии с малым разрешением, уменьшенные пространственные области и изображения с пониженным качеством или их комбинации могут быть выделены из кодового потока. С этой целью данные изображения сжимаются и сохраняются в пакетах в кодовых потоках.
Функциональные возможности JPEG2000 были разработаны, чтобы упростить передачу изображений большого размера, например, для сохранения и распространения медицинских изображений. Кроме того, JPEG2000 используется для распространения больших проецируемых изображений и карт. Эти изображения и карты можно рассматривать в интерактивном режиме для представления разных пространственных областей с разрешением, требуемым для пользователя. В Библиотеке Конгресса США рассматривают возможность использования JPEG2000 для обеспечения пользователям возможности просмотра архивных изображений по Интернет. В частности, JPEG2000 выбран для распространения цифровых кинофильмов. Этот выбор в значительной степени был основан на том факте, что один файл можно использовать как для проекторов с высокой разрешающей способностью, так и для проекторов со средней разрешающей способностью. В частности, весь файл может подходить для проектора с высокой разрешающей способностью. В качестве альтернативы изображение со средним разрешением может быть выделено (в кинотеатре) для использования с проектором со средней разрешающей способностью.
Сущность изобретения
Настоящее изобретение предусматривает возможность использования масштабируемого сжатия изображения, чтобы облегчить творческий процесс при пост-обработке кинофильмов. В частности, настоящее изобретение обеспечивает возможность цифровой промежуточной (ЦП) обработки кинофильмов посредством динамического формирования изображений-посредников в ответ на клиентские запросы. Прикладная программа ЦП выполнена с возможностью повышения эффективности пост-обработки и качества получаемого продукта посредством предоставления редакторам, колористам и другим творческим людям возможности выбирать области, разрешение и уровень качества видеоклипов-посредников, которые они обрабатывают. Прикладная программа ЦП также предоставляет способ, позволяющий эффективно применять списки решений к полной (не являющейся посредником) версии сжатого кодового потока или распакованных изображений, а также форматировать отредактированный продукт для пленки, цифрового кино, цифрового многофункционального диска (DVD) и других видеоприложений.
Цифровые изображения из кинофильма сжимаются с очень высоким качеством, возможно без потерь, используя масштабируемый алгоритм сжатия, такой как JPEG2000, и сохраняются как сжатый кодовый поток. Распакованные цифровые изображения и/или сжатые кодовые потоки архивируются. Со своего персонального компьютера (ПК, PC) или рабочей станции оператор пост-обработки запрашивает некоторое количество кадров, конкретную пространственную область в пределах этих кадров и требуемое уменьшенное разрешение и/или требуемое пониженное качество.
В ответ прикладная программа ЦП извлекает и распаковывает пакеты, требуемые для формирования изображений-посредников с запрашиваемыми пространственной областью, разрешением и качеством, в рабочей станции оператора пост-обработки. Это обеспечивает возможность для редактора, колориста, художников спецэффектов и т.д. подгонять изображения-посредники, которые они рассматривают, к своим конкретным и изменяющимся требованиям и персональным предпочтениям и к изменяющемуся содержанию кинофильма. Кроме того, они могут изменять свой запрос, чтобы рассмотреть другие области, разрешения или уровни качества, и могут даже одновременно запросить два или больше разных видов одного и того же изображения или последовательности изображений. Изображения-посредники генерируются динамически, по мере необходимости, непосредственно из сжатых сохраненных изображений. Никакие фиксированные изображения-посредники не создаются и не сохраняются.
При пост-обработке генерируют список или списки решений, которые включают в себя все операции, которые были выполнены в отношении динамических изображений-посредников (редактирование, коррекция цвета, спецэффекты, разделы и т.д.). Эти списки решений можно применять к цифровым изображениям для каждой функции пост-обработки или после того, как все функции пост-обработки будут закончены. Их можно применять к сжатому кодовому потоку или к распакованным цифровым изображениям. Список можно применять к кодовому потоку посредством извлечения пакетов, включая пакеты, используемые для формирования изображения-посредника, и дополнительные пакеты для разрешения и/или уровней качества, не задействуемых в изображении-посреднике, распаковывания этих пакетов, выполнения операций пост-обработки по каждому списку решений, повторного сжатия данных и вставки упомянутых пакетов обратно в сохраненный кодовый поток в соответствующих местах. В качестве альтернативы каждый список решений можно применять к сжатому кодовому потоку при завершении конкретной функции, и затем, после того, как все функции пост-обработки будут закончены, все списки решений можно применить к распакованным цифровым изображениям, чтобы получить цифровую мастер-копию.
Эти и другие признаки и преимущества изобретения будут очевидны для специалиста в данной области техники из нижеследующего подробного описания предпочтительных вариантов выполнения и прилагаемых чертежей.
Перечень чертежей
На фиг.1 показана блок-схема клиент-серверной сети для ЦП обработки в соответствии с настоящим изобретением;
на фиг.2 показана блок-схема последовательности выполнения операций ЦП обработки с использованием JPEG2000 для показа на пленке и в цифровом кинотеатре в соответствии с настоящим изобретением;
на фиг.3 иллюстрируется извлечение пакетов из кодового потока JPEG2000 для формирования видеоизображений с другим разрешением, качеством, пространственной областью и/или компонентом;
на фиг.4 показана блок-схема последовательности операций для получения списков решений для сжатого кодового потока;
на фиг.5 показана запись цифровой мастер-копии для пленки и дистрибутивной цифровой мастер-копии;
на фиг.6a-6b и 7 представлены схемы ЦП обработки и создания цифровой мастер-копии, в которых сохраняются некоторые или все списки решений;
на фиг.8 показана блок-схема последовательности операций для перезаписи прошедшего пост-обработку кодового потока данными переменной длины;
на фиг.9 показана блок-схема последовательности операций для перезаписи прошедшего пост-обработку кодового потока данными фиксированной длины; и
на фиг.10 показана схема фиксирования длины данных, прошедших пост-обработку, на длине, соответствующей сжатому кодовому потоку.
Подробное описание изобретения
Настоящее изобретение предусматривает цифровую промежуточную (ЦП) обработку посредством динамического предоставления изображений-посредников в ответ на клиентские запросы.
Функциональные возможности масштабируемых кодеков, таких как JPEG2000, можно использовать для выполнения ЦП обработки, задействующей сжатые изображения с высоким разрешением/высоким качеством в соответствии с настоящим изобретением. Хотя изобретение описано относительно JPEG2000, понятно, что можно использовать любое представление изображения, имеющее аналогичные свойства масштабирования. Например, началась разработка проекта, известного как SVC (масштабируемое кодирование видеоизображения), в рамках MPEG (Экспертной группы по цифровой записи видео и звука). Точно также, хотя изобретение описано для ЦП обработки (предполагающей съемку на пленку), понятно, что оно применимо при использовании видеокамер, цифровых кинокамер или других устройств электронной съемки и/или записи изображения. В этом случае цифровые данные могут быть сжаты непосредственно в камере, используя JPEG2000, или могут быть сжаты после съемки (также используя JPEG2000). Такое сжатие может быть выполнено с очень высоким качеством (возможно, без потерь). Наконец, хотя ЦП обработка описана в контексте клиент-серверной сети, следует понимать, что возможны другие конфигурации. Например, все этапы сохранения, обработки, создания и распространения могут быть выполнены одним приложением, работающим на одном компьютере.
При очень высоких разрешениях 2k и 4k, ассоциированных с пленкой, характеристики сжатия JPEG2000 конкурируют или превышают характеристики сжатия других традиционных и современных видеокодеров. Для цифровых приложений с самым высоким разрешением, таких как приложения, соответствующие показу в цифровом кинотеатре, JPEG2000 может использоваться как для выполнения ЦП обработки, так и для распространения кинофильма. Для более низкого разрешения цифровые приложения, такие как DVD, видеопленка, телевидение, JPEG2000 можно использовать для ЦП обработки с другим видеокодером (MPEG, WM-9), используемым для распространения.
Как показано на фиг.1 и 2, прикладная программа ЦП 90 реализована в клиент-серверной архитектуре 92 для выполнения ЦП обработки при высоком разрешении/высоком качестве сжатого изображения, используя масштабируемость и функциональные возможности произвольного доступа JPEG2000. В студию пост-обработки обычно приносят записанные данные оригинала (пленку 94), состоящие из последовательности изображений 96 (этап 98). Сканер 100 сканирует каждое изображение 96 (этап 102) для создания цифрового изображения 104. Сервер 106 сжимает последовательность цифровых изображений, используя JPEG2000 (или аналогичный масштабируемый кодер) (этап 108), с очень высоким качеством, возможно без потерь, и сохраняет сжатый кодовый поток 110 (см. фиг.3) (этап 112) в запоминающем устройстве 114 большой емкости. Оригинальные распакованные и/или сжатые цифровые изображения обычно архивируются для безопасного хранения.
"Оператор пост-обработки", работающий на своей клиентской рабочей станции 115, выбирает требуемые кадры фильма, выбирает разрешение, пространственную область, уровень качества и/или компонент цвета (этап 116) и передает запрос (этап 118). Заданный по умолчанию начальный запрос может быть направлен на извлечение всех требуемых кадров в полном пространственном диапазоне, с уменьшенным разрешением, при среднем качестве и во всех компонентах цвета. Оператор пост-обработки может выполнить множество одновременных и разных запросов из одного и того же кодового потока. Например, оператор пост-обработки может захотеть просмотреть версию с низким разрешением всего изображения одновременно с просмотром версии с высоким разрешением отдельных областей изображения. Оператор пост-обработки может работать над одним, некоторыми или всеми из сформированных изображений одновременно или последовательно. Кроме того, в некоторых случаях множество операторов пост-обработки (операторов монтажа, колористов, операторов спецэффектов и т.д.) могут делать разные запросы одновременно.
Клиентская рабочая станция 115 может быть расположена вместе с сервером 106, например, в студии пост-обработки, или она может быть расположена на удалении, например, в собственной студии оператора пост-обработки или у него дома. Так или иначе, сервер должен передавать много данных по каналу 119 связи, например, Ethernet, шине FireWire, Интернет и т.д. Для отдаленных клиентов канал связи может иметь "ограниченную полосу пропускания", например, может быть слишком медленным для передачи данных для динамического формирования запрашиваемых изображений-посредников в интерактивной рабочей среде. Один из подходов может состоять в загрузке всего сжатого кодового потока в рабочую станцию отдаленного клиента без использования подключения к сети и с последующим продолжением работы, как описано выше. Однако такой подход занял бы много времени, потребовал бы, чтобы у клиента был достаточный объем памяти для хранения всего фильма, вывел бы весь кодовый поток из-под управления со стороны студии пост-обработки. В качестве альтернативы оператор пост-обработки передает начальный клиентский запрос в сервер, задающий одну или несколько сцен и, возможно, подлежащий выполнению этап пост-обработки. Сервер извлекает пакеты для этих сцен с уменьшенным разрешением и/или уровнем качества и передает их по каналу с ограниченной полосой пропускания в отдаленную клиентскую рабочую станцию. Уменьшенные разрешения и/или уровень качества могут быть зафиксированы на уровнях, которые все еще обеспечивают очень высококачественное изображение, но с меньшим количеством битов, либо могут быть определены на основе априорного знания пропускной способности канала передачи данных, требований подлежащих выполнению этапов пост-обработки и/или возможностей конкретной клиентской рабочей станции. Клиент принимает пакеты и сохраняет их локально. После этого все клиентские запросы на предмет конкретных пространственных областей с уменьшенным разрешением и/или уровнем качества в дальнейшем обрабатываются локально для динамического формирования изображений-посредников. После окончания список решений передают назад в сервер.
Поскольку оператор пост-обработки имеет большую гибкость, обеспечиваемую функциональными возможностями JPEG2000, в плане запрашивания разных областей, разрешений и уровней качества, запрос может оказаться несовместимым с инструментальными средствами редактирования или может оказаться неоптимальным в том смысле, что может быть предоставлено больше информации. Например, дисплей оператора пост-обработки может не поддерживать отображение изображения 4k, или рабочая станция может быть не в состоянии визуализировать весь пространственный диапазон изображения при высоком качестве с высоким разрешением для отдельных изображений и, в частности, с частотой следования кадров видеоизображения. Операторы пост-обработки обычно рассматривают изображения как в форме видеоизображений, так и в форме отдельных кадров для выполнения своих задач. Запрос может быть составлен так, чтобы он соответствовал возможностям системы, путем регулирования одного или нескольких параметров (этап 120). В качестве альтернативы несоответствующий запрос может быть обработан и приведен в соответствие на рабочей станции, используя субдискретизацию, обрезку и т.д.
В ответ на запрос прикладная программа ЦП извлекает требуемые пакеты для получения необходимой пространственной области с заданными урезанными разрешением, качеством или компонентом из кодового потока 110 (этап 122), распаковывает данные из этих пакетов (этап 124) и формирует их (этап 128) в последовательность урезанных изображений-посредников 126 в рабочей станции 115. Для минимизации вычислений в предпочтительном варианте выполнения прикладная программа извлекает только те пакеты, которые требуются, чтобы сформировать изображение-посредник. При первоначальном запросе изображения формируются непосредственно из распакованных пакетов. При последующих запросах в отношении тех же самых изображений дополнительные пакеты извлекаются и добавляются к уже существующим пакетам, затем они распаковываются для получения изображений с дополнительным разрешением, качеством, пространственным диапазоном или компонентом цвета.
Пример обработки для извлечения пакетов из кодового потока 110 для цифрового изображения 200 иллюстрируется на фиг.3. В результате сжатия 202 в соответствии с JPEG2000 получают кодовый поток 110, из которого извлекают и распаковывают 210 пакеты для изображения 204 с уменьшенным разрешением, изображения 206 с уменьшенной пространственной областью и изображения 208 с уменьшенной пространственной областью и уменьшенным разрешением.
Указанные цифровые изображения 126 отображаются как последовательности неподвижных изображений или видеоизображений в рабочей станции 115 оператора пост-обработки. Оператор пост-обработки использует программный комплекс пост-обработки для выбора и переупорядочивания кадров, постепенной смены одного кадра другим, очистки, наплывов изображения, постепенного исчезновения изображения, проведения коррекции цвета, панорамирования и сканирования, вставки спецэффектов, разделения кадра, изменения установки рамки кадра, классификации сцены, удаления искажений, повышения разрешения, снижения уровня шума, увеличения резкости и проверки и т.д. (этап 132). Во многих случаях эти функции выполняются разными людьми на разных устройствах в разных местах. Кроме того, некоторые из этих функций могут быть выполнены компьютерами с минимальным взаимодействием или без взаимодействия с пользователем. Каждая из этих отдельных задач генерирует список решений (этап 134), в котором записаны операции, выполненные в отношении каждого указанного цифрового изображения. При выполнении этих функций оператор пост-обработки может захотеть выполнить панорамирование разных участков кадра, увеличить масштаб изображения с повышением его разрешения, уменьшить масштаб изображения, чтобы увидеть весь кадр, наблюдать различные уровни качества, включая без потерь качества и, возможно, черно-белый вид (этап 136). Стандартные функции рабочей станции, обеспечиваемые с помощью мыши, стилуса и т.д., могут использоваться как интерфейс для переформулирования (этап 116) и подачи другого запроса редактора (этап 118). Такая гибкость значительно увеличивает эффективность оператора пост-обработки и повышает качество продукта.
Для иллюстрации гибкости, которую настоящее изобретение привносит в ЦП обработку, предположим, что исходные изображения имеют размер 4096·2160 (4k) и сжаты с очень высоким качеством (возможно без потерь). При принятии решения касаемо того, какие изображения должны быть включены и в каком порядке, только версии с уменьшенным разрешением (таким как 2048·1080) могут быть распакованы и отображены. Аналогично можно также использовать пониженное качество. Решения при редактировании могут быть приняты на основании уменьшенного разрешения/качества. Если нужно редактор может "увеличить масштаб", чтобы рассмотреть конкретную пространственную область с более высоким разрешением. В каждом случае изображения, рассматриваемые редактором, распаковываются из сжатого кодового потока с высоким разрешением/высоким качеством. В результате этого процесса генерируется список решений в отношении того, какие изображения оставить и в каком порядке.
В качестве другого примера рассмотрим коррекцию цвета. Версии изображений с низким разрешением/качеством могут быть отображены в режиме реального времени. Колорист затем работает над версиями с уменьшенным разрешением/качеством. Как только решения в отношении цвета будут приняты, их записывают в список решений. Колорист может увеличить масштаб изображения, чтобы лучше рассмотреть конкретную пространственную область. В этом случае колорист может выполнять коррекцию в отношении пикселей увеличенного масштаба. Эти пиксели могут быть представлены с полным разрешением или с разрешением "между" полным разрешением и уменьшенным разрешением, номинально используемым для выполнения коррекции цвета. Аналогичную методику можно использовать для коррекции с выборочным контролем в пределах некоторой пространственной области. После выполнения коррекции цвета с низким разрешением колорист может увеличить масштаб изображения, чтобы видеть результаты при (более высоком или) полном разрешении. Возможность увеличения масштаба изображения до полного разрешения может позволить колористу выполнить коррекцию с высокой детализацией, такую как коррекция "красных глаз", что находится вне возможностей изображений-посредников с фиксированным разрешением. Как только все решения по коррекции цвета будут приняты, их сохраняют в списке решений для последующего использования для полного (неурезанного) сжатого кодового потока.
В качестве еще одного примера, если на исходной пленке отснято изображение с более широким полем обзора, чем требуется в конечном итоге, и пленка была сканирована с еще более высокой разрешающей способностью, например 5k, редактор может выполнить панорамирование и сканирование в пределах этого изображения, чтобы получить цифровое изображение 4k. Это обеспечивает для редактора, режиссера и т.д. значительную гибкость в плане изменения фильма во время ЦП обработки без необходимости повторной съемки, что экономит время и деньги. Конечно, это также относится к случаю, когда используется цифровая камера для съемки изображения с более широким полем зрения, например 5k.
Прикладная программа ЦП применяет список решений к (урезанному) сохраненному кодовому потоку или оригинальному распакованному изображению, чтобы включить в них операции пост-обработки (этап 138). В последнем случае эти обработанные изображения могут быть затем сжаты и вставлены в кодовый поток для замены аналогичных изображений. Как показано на фиг.4, чтобы применить списки к кодовому потоку прикладная программа ЦП извлекает соответствующие пакеты из кодового потока (этап 140). Эти соответствующие пакеты включают в себя поднабор пакетов, извлеченных для получения изображения-посредника (некоторые из пакетов посредников могут не быть изменены), а также дополнительные пакеты (неизвлеченные при формировании изображений-посредников), если сформированное изображение-посредник имело меньшие, чем полные (или требуемые выходные) разрешение и/или качество. Прикладная программа ЦП распаковывает извлеченные пакеты (в случае необходимости) (этап 142), выполняет операции по каждому списку решений (этап 144) и повторно сжимает данные, чтобы сформировать измененные пакеты (в случае необходимости) (этап 146). В большинстве случаев некоторые распаковка/повторное сжатие будут необходимы, но, например, функция редактирования выбора кадра и изменения их порядка не требует этого.
Прикладная программа ЦП записывает кодовый поток, который включает в себя измененные пакеты в соответствующих местах (этап 148). В предпочтительном в настоящее время варианте выполнения только измененные пакеты заменяются в модифицированном кодовом потоке. Многие пакеты в измененном кодовом потоке могут остаться немодифицированными. При изменении только скорректированных пространственных областей исключается "накопление шума", которое можно ощущать в существующих системах, в которых все пиксели распаковываются/повторно сжимаются, даже только когда требуется изменить малую пространственную область. Это также позволяет исключить ненужные вычисления, ускоряя, таким образом, обработку. Однако, в случае необходимости, могут быть выполнены полная распаковка и повторное сжатие всей области пост-обработки или даже всего изображения.
ЦП обработку повторяют для каждого этапа пост-обработки. После того, как последний список решений будет применен, сжатый кодовый поток будет либо непосредственно выведен как "цифровая мастер-копия" 150 в сжатом формате, например, JPEG2000, или все списки решений будут применены к распакованным изображениям оригинала, сжаты и затем выведены как цифровая мастер-копия. Как показано на фиг.5, цифровую мастер-копию 150 распаковывают (этап 154) и записывают на пленку 155 (этап 156). Цифровая мастер-копия может быть также "урезана" (этап 158) либо путем исключения битов из кодового потока, либо путем его транскодирования в кодовый поток, имеющий другие значения параметров JPEG2000, чтобы получить цифровую дистрибутивную мастер-копию, сохраненную на подходящем цифровом носителе, например жестком диске, магнитной ленте или на DVD 159 для цифрового показа (этап 160).
В альтернативном варианте выполнения для авторской разработки и распространения контента сохраненный кодовый поток не обновляется после каждой задачи пост-обработки. Как показано на фиг.6a и 6b, исходный кодовый поток 112 поддерживается, и списки решений сохраняются (этап 170) как вершины 171 в дереве решений 172, по мере их создания вдоль ветвей 173 для разных форматов показа. Например, отрывки для пленки HD DVD (DVD с высокой плотностью записи) и телевещания могут быть разными. Коррекция цвета для пленки и цифрового показа по телевидению также может выполняться по-разному. Компромисс состоит в том, что задачи пост-обработки вдоль ветви 173 в дереве нужно применять к сформированному изображению-посреднику (этап 174), возможно в режиме реального времени, для "текущей" подлежащей выполнению задачи пост-обработки. Следует отметить, что необходимо применять только те задачи пост-обработки, которые пространственно перекрываются со сформированным изображением-посредником. В другом варианте выполнения общие задачи пост-обработки (общие вершины 175) применяются к кодовому потоку (этап 176). Разделенные ветви 173, включающие необщие вершины, сохраняются (этап 170) и применяются к сформированным изображениям-посредникам в соответствии с необходимостью.
Как показано на фиг.7, сохранение некоторых или всех списков решений для разных носителей отдельно от сжатого кодового потока обеспечивает значительную гибкость при создании множества цифровых дистрибутивных мастер-копий. В этом случае цифровая мастер-копия состоит из сжатого кодового потока и дерева 180 решений, либо исходного кодового потока и всего дерева, либо кодового потока с общими вершинами, уже примененными вместе с уникальными ветвями. Для заданного формата показа списки решений, соответствующие вершинам вдоль заданной ветви в дереве, применяются последовательно к кодовому потоку. Первую вершину выбирают (этап 182), и пакеты извлекают на основе дистрибутивного формата (этап 184). Биты из затронутых пространственных областей распаковываются (этап 186), и список решений для выбранной вершины применяют для выполнения операций (этап 187). После этого обработанные биты повторно сжимаются и вставляются назад в кодовый поток, например, перезаписываются (этап 188). Этот процесс повторяют, чтобы создать цифровую мастер-копию JPEG2000 для конкретного носителя (этап 190). В качестве альтернативы возможно извлечь области, затронутые всеми списками решений, распаковать, применить все списки решений и повторно сжать, используя JPEG2000 или целевой выходной кодек. Полная распаковка и повторное сжатие всего изображения могут быть выполнены, если это требуется. Цифровая мастер-копия может быть урезана, как описано выше, чтобы создать цифровую дистрибутивную мастер-копию JPEG2000, или распакована (этап 192) и повторно сжата с помощью другого кодека, такого как MPEG или WM-9 (этап 194). В качестве альтернативы, начиная со сжатого кодового потока и списков решений 180, все данные могут быть распакованы, соответствующие списки решений применены, после чего может быть выполнено повторное сжатие, используя JPEG2000 или другой кодек. В другом варианте выполнения списки решений в конкретном дереве (этап 182) можно применить к исходному распакованному (этап 189) и сжатому изображению (этап 188) для формирования цифровой мастер-копии.
Как описано выше, в некоторых вариантах выполнения прошедшие пост-обработку данные пикселей сжимаются, организуются в пакеты и записываются обратно в кодовый поток JPEG2000. Обычно длина соответствующих пакетов отличается от длины до пост-обработки. Поэтому кодовый поток после пост-обработки может быть сгенерирован либо путем (a) перезаписи всего или, по существу, всего кодового потока, либо путем (b) принудительного установления длины участка измененных данных, равной длине соответствующего исходного участка сохраненных данных. В случае (b) прошедший пост-обработку кодовый поток может быть создан просто путем записи поверх измененных участков кодового потока.
В случае (a) никакие пакеты, кроме пакетов, прошедших пост-обработку, не требуется изменять. Пакеты, не прошедшие пост-обработку, можно просто копировать в недавно отредактированный кодовый поток. Процесс перезаписи кодового потока показан на фиг.8. На фиг.8 каждый неизмененный пакет копируется из нередактированного сжатого кодового потока в измененный сжатый кодовый поток, заменяя измененные пакеты в соответствующих местах. В частности, начиная с начала сжатого кодового потока (этап 300), к каждому пакету обращаются по очереди (этап 302) и проверяют, чтобы определить его соответствие (этап 304). Если пакет не соответствует пост-обработке (пакет является неизмененным), его копируют непосредственно в (новый) измененный кодовый поток (этап 306). Если пакет является соответствующим, неизмененный пакет отбрасывают и измененную версию пакета вставляют в измененный кодовый поток (этап 308).
Во втором случае (b), как показано на фиг.9, требования по вводу-выводу могут быть снижены путем исключения существенного переписывания кодового потока. Это может дополнительно повысить скорость работы. Как показано на фиг.10, обращаются к неизмененному сжатому кодовому потоку (этап 310). Для первого участка кодового потока определяют, что его длина изменилась (этап 312). Для соответствующего измененного участка кодового потока принудительно устанавливают ту же длину (этап 314). Поверх неизмененного участка затем записывают измененный участок (этап 316). Этот процесс повторяют для каждого участка кодового потока, для которого требуется модификация (этап 318), пока процесс не будет закончен (этап 320).
Если измененный участок кодового потока ограничен одним пакетом, то измененный пакет должен иметь ту же самую длину, что и неизмененный пакет, который им заменяют. С другой стороны, если измененный участок кодового потока затрагивает множество смежных пакетов, тогда только полная длина измененных пакетов вместе должна равняться полной длине неизмененных пакетов. В частности, длины отдельных измененных пакетов могут отличаться от длин их неизмененных дубликатов. Эта ситуация изображена на фиг.10.
В то время, как несколько иллюстративных вариантов выполнения изобретения были показаны и описаны, многочисленные вариации и альтернативные варианты выполнения могут быть выполнены специалистом в данной области техники. Такие изменения и альтернативные варианты выполнения подразумеваются и могут быть реализованы без отступления от сущности и объема изобретения, определяемого прилагаемой формулой изобретения.