УСТРОЙСТВО И СПОСОБ ПОЛУЧЕНИЯ ИЗОБРАЖЕНИЙ С БОЛЕЕ ВЫСОКИМ РАЗРЕШЕНИЕМ ВО ВСТРОЕННОМ УСТРОЙСТВЕ
DEVICE AND METHOD FOR HIGH-RESOLUTION IMAGING AT BUILT-IN DEVICE

Область техники, к которой относится изобретение
Варианты выполнения настоящего изобретения, в общем, относятся к встроенным устройствам и, более конкретно, к способу и устройству, которые позволяют получать изображение с более высоким разрешением во встроенном устройстве с использованием технологии сверхразрешения.
Уровень техники
Пользователь устройства камеры может “снимать” изображение объекта, генерируя цифровое изображение объекта с определенным разрешением изображения. Обычно цифровое изображение включает в себя данные пикселя, которые представляют объект, и разрешение изображения относится к количеству деталей цифрового изображения. В частности, цифровое изображение, генерируемое устройством фотокамеры, может быть искажено. Например, дрожание рук (например, тряска камеры) может вызвать искажения (например, смазывание) цифрового изображения.
Иногда можно использовать технологию сверхразрешения для уменьшения эффекта дрожания рук. Технология сверхразрешения позволяет формировать изображения с более высоким разрешением из одного или более изображений с более низким разрешением. Технология сверхразрешения прогнозирует отсутствующие детали (например, данные пикселя) из изображений с меньшим разрешением, используя оценку движения и технологии устранения размытости изображения. Отсутствующие детали применяют к одному или более изображениям с меньшим разрешением для получения изображения с более высоким разрешением.
В настоящее время технологии сверхразрешения не применяют во встроенном устройстве из-за ограниченных возможностей процессора и памяти. Встроенное устройство может представлять собой устройство со встроенной камерой, такое как мобильный телефон, карманный персональный компьютер (PDF, КПК), “смартфон” и т.п. Из-за ограничения размеров встроенное устройство ограничено определенными размерами памяти и/или ресурсами процессора. Необработанные и несжатые изображения имеют относительно большой размер и занимают существенный объем памяти. В результате процессор должен обрабатывать слишком большое количество изображений для выполнения технологии сверхразрешения при использовании встроенного устройства.
В настоящее время технологии сверхразрешения выполняют в автономном режиме встроенного устройства перед синхронизацией, в ходе которой изображения с малым разрешением могут быть сохранены в памяти устройства. Обработку выполняют в автономном режиме перед передачей изображений с малым разрешением из встроенного устройства в другое устройство (например, компьютер). Пользователь, однако, не имеет возможности просматривать изображение с высоким разрешением на экране с малым разрешением.
Поэтому в данной области техники существует потребность в получении изображений с более высоким разрешением во встроенном устройстве.
Сущность изобретения
Варианты воплощения настоящего изобретения направлены на способ, устройство и встроенное устройство, которое позволяет получать изображение с высоким разрешением в результате выполнения технологии сверхразрешения для последовательности сжатых изображений, используя один или более векторов движения. В одном варианте воплощения способ для использования технологии видеосжатия, который обеспечивает сверхразрешение во встроенном устройстве, содержит сжатие последовательности изображений, используя технологию видеосжатия, в которой последовательность изображений содержит множество изображений с меньшим разрешением, и применяя технологию сверхразрешения для сжатой последовательности изображений для генерирования изображения с более высоким разрешением.
Краткое описание чертежей
Для подробного описания отмеченных выше свойств настоящего изобретения, более конкретное описание изобретения, кратко представленное выше, может быть приведено со ссылкой на варианты воплощения, некоторые из которых иллюстрируются на приложенных чертежах. Однако следует отметить, что на приложенных чертежах иллюстрируются только типичные варианты воплощения данного изобретения, и поэтому их не следует рассматривать как ограничение его объема, поскольку в изобретении могут быть выполнены другие в равной степени эффективные варианты воплощения.
На фиг.1 показана блок-схема встроенного устройства, предназначенного для выполнения технологии сверхразрешения для последовательности сжатых изображений, для формирования изображения с более высоким разрешением, в соответствии с одним или более вариантами воплощения;
на фиг.2 показана блок-схема последовательности операций способа использования технологии видеосжатия, который обеспечивает возможность применения сверхразрешения во встроенном устройстве, в соответствии с одним или более вариантами воплощения;
на фиг.3 показана блок-схема последовательности операций способа сжатия множества изображений с более низким разрешением для обеспечения возможности получения сверхразрешения во встроенном устройстве, в соответствии с одним или более вариантами воплощения;
на фиг.4 показана блок-схема последовательности операции способа для генерирования разностного изображения, в соответствии с одним или более вариантами воплощения; и
на фиг.5 показана блок-схема последовательности операций способа сжатия последовательности изображений в датчике встроенного устройства, в соответствии с одним или более вариантами воплощения.
Подробное описание изобретения
На фиг.1 показана блок-схема встроенного устройства 100, предназначенного для выполнения технологии сверхразрешения для последовательности сжатых изображений, для получения изображения с более высоким разрешением в соответствии с одним или более вариантами воплощения настоящего изобретения. Последовательность сжатых изображений может быть сжата с использованием технологии сжатия видеоизображения без потерь или практически без потерь.
Встроенное устройство 100 может представлять собой мобильный телефон, камерофон, смартфон, карманный персональный компьютер (КПК), широко известные в данной области техники. Встроенное устройство 100 включает в себя микропроцессор 102, различные вспомогательные схемы 104, память 106, модуль 108 камеры и модуль 110 сверхразрешения. Микропроцессор 102 способствует обработке и сохранению данных. Различные вспомогательные схемы 104 способствуют работе микропроцессора 102 и включают в себя, по меньшей мере, одну из схемы тактовой частоты, источника питания, кэш, схемы ввода/вывода и т.п. Память 106 содержит, по меньшей мере, одно из постоянного запоминающего устройства (ROM, ПЗУ), оперативного запоминающего устройства (RAM, ОЗУ), накопителя привода диска, оптического накопителя, съемного накопителя и т.п. Память 106 включает в себя модуль 115 управления, программный кодек 116 и изображения 118 с малым разрешением. Обычно программный кодек 116 включает в себя программный код, предназначенный для сжатия последовательности изображений, используя технологию сжатия видеоизображения без потерь (например, YUV (цветоразностные сигналы) сжатие Хаффмана, CorePNG и т.п.) или практически без потерь (например, сжатие DV (ЦВ, цифровое видео), FastCodec и т.п.). В одном варианте воплощения программный кодек 116 использует технологию прогнозирования между кадрами для обработки последовательности необработанных изображений. Программный кодек 116 может оценивать вектора движения между последовательными изображениями, используя технологию оценки вектора движения. Различные технологии оценки движения, которые можно использовать с помощью программного кодека 116, известны в данной области техники. В одном варианте воплощения программный кодек 116 разделяет изображение с более низким разрешением из изображений 118 с более низким разрешением на множество блоков пикселей и выполняет прогнозирование между блоками и сжатие на основе от блока к блоку. В некоторых вариантах воплощения модуль 108 камеры может включать в себя аппаратный кодек 114, который выполняет функцию программного кодека 116, будучи воплощенным как аппаратное средство.
В одном варианте воплощения модуль 108 камеры включает в себя коммерчески доступное встроенное устройство генерирования изображения (например, встроенную камеру). В качестве примера, а не для ограничения, модуль 108 камеры использует для съемки множество необработанных изображений для последовательности изображений (например, последовательности несжатых изображений). Модуль 108 камеры включает в себя датчик 112 (то есть датчик изображения). В одном варианте воплощения датчик 112 сохраняет последовательность снятых изображений в памяти 106, как изображения 118 с малым разрешением. В другом варианте воплощения датчик 112 преобразует последовательность снятых изображений в электрический сигнал, который может быть передан в различные участки встроенного устройства 110 через микропроцессор 102. Например, датчик 112 может связываться с модулем 110 сверхразрешения.
Обычно модуль НО сверхразрешения представляет собой компонент встроенного устройства 100, который включает в себя модуль 120 улучшения разрешения и локальную память 122. Локальная память 122 содержит, по меньшей мере, одну из постоянного запоминающего устройства (ПЗУ), оперативного запоминающего устройства (ОЗУ), накопителя привода диска, оптического накопителя, съемного накопителя и т.п. Локальная память 122 включает в себя последовательность 124 сжатых изображений, информацию 126 вектора движения и изображение 128 с высоким разрешением. В одном или более вариантах воплощения настоящего изобретения модуль 110 сверхразрешения сохраняет последовательность 124 сжатых изображений и информацию 126 вектора движения, как сформированную путем использования аппаратного кодека 114 или программного кодека 116. Как дополнительно описано ниже, модуль 120 улучшения разрешения применяет одну или более технологий сверхразрешения для последовательности 124 сжатых изображений и информацию 126 вектора для генерирования изображения 128 с более высоким разрешением. Различные технологии сверхразрешения, известные в данной области техники, можно использовать в настоящем изобретении. Следует отметить, что модуль 120 улучшения разрешения применяет технологию (технологии) сверхразрешения без полного восстановления изображения 118 с малым разрешением из последовательности 124 сжатых изображений.
В соответствии с различными вариантами воплощения настоящего изобретения модуль 115 управления включает в себя программный код, предназначенный для управления формированием изображения 128 с высоким разрешением из необработанной несжатой последовательности изображения, состоящий из изображений с малым разрешением. Во время работы модуль 115 управления координирует сжатие необработанных изображений и применение технологии сверхразрешения для последовательности 124 сжатых изображений. В одном варианте воплощения модуль 115 управления выполняет программный кодек 116 для сжатия изображения 118 с малым разрешением и сохраняет последовательность 124 сжатых изображений в локальной памяти 122. В соответствии с этим изображения 118 с малым разрешением могут быть удалены для высвобождения ресурсов памяти. В одном варианте воплощения последовательность 124 сжатых изображений включает в себя опорное изображение (например, первое изображение в последовательности изображения), один или более векторов движения, и одно или более разностных изображений (например, данные пикселя, представляющие разность между исходным изображением и версией исходного изображения, прогнозируемой на основе опорного изображения). Опорное изображение и/или одно или более изображений разности могут быть сжаты с использованием технологии сжатия без потерь. Можно использовать технологию оценки вектора движения для определения одного или более векторов движения. Для ясности, в качестве примера, последовательность 124 сжатых изображений описана здесь, как имеющая одно опорное изображение. Для специалистов в данной области техники будет понятно, что последовательность 124 сжатых изображений может включать в себя множество опорных изображений.
В некоторых вариантах воплощения исходное изображение представляет собой любое изображение в последовательности несжатых изображений. Опорное изображение представляет собой одно из исходных изображений. Для разностного изображения прогнозируемое изображение формируют путем расчета векторов движения относительно опорного изображения и затем выполняют компенсацию движения реконструируемой версии опорного изображения, используя вектора движения. Разностное изображение формируют путем вычитания прогнозируемого изображения из исходного кодируемого изображения. Такое прогнозирование между изображениями может быть выполнено на основе от блока к блоку для каждого исходного изображения в последовательности после опорного изображения. Таким образом, формируют последовательность 124 сжатых изображений и информацию 126 вектора движения. В то время как здесь описаны конкретные варианты воплощения прогнозирования между изображениями, для специалистов в данной области техники будет понятно, что программный кодек 116 и/или аппаратный кодек 114 могут выполнять другие виды обработки прогнозирования между изображениями, аналогичные описанным здесь, такие как прогнозирование между изображениями, используемое в стандартах Экспертной группы по вопросам движущегося изображения (MPEG), известных в данной области техники.
В соответствии с одним вариантом воплощения дрожание рук встроенного устройства 100 может привести к возникновению одного или более различий между изображениями с малым разрешением, которые формируют несжатую последовательность изображения. Изображения с малым разрешением могут быть сгенерированы для идентичной сцены, но могут включать различные данные пикселей, представляющих идентичную сцену, из-за движения (то есть тряски) встроенного устройства 100. Поскольку данные пикселя могут отличаться друг от друга, изображение с более низким разрешением может включать в себя дополнительные детали, не снятые в другом изображении с низким разрешением. В соответствии с этим детали из двух или более изображений с низким разрешением могут быть скомбинированы для получения изображения с более высоким разрешением.
В соответствии с различными вариантами воплощения настоящего изобретения модуль 120 улучшения разрешения выполняет одну или более технологий сверхразрешения для последовательности 124 сжатых изображений для генерирования изображения 128 с более высоким разрешением. В соответствии с одним вариантом воплощения технология (технологии) сверхразрешения включает в себя временную интерполяцию и/или пространственную интерполяцию опорного изображения и изображения разности. Например, технология (технологии) сверхразрешения интерполирует отсутствующие детали сцены из опорного изображения, векторов движения и изображения разности. После этого модуль 120 улучшения разрешения использует отсутствующие детали для улучшения разрешения опорного изображения.
В одном варианте воплощения последовательность сжатых изображений не полностью декодируют для восстановления всех изображений 118 с низким разрешением перед применением технологий сверхразрешения с помощью модуля 120 улучшения разрешения. Другими словами, технологию сверхразрешения не выполняют для последовательности декодированных изображений (например, изображений 118 с низким разрешением) в соответствии с одним или более вариантов воплощения настоящего изобретения. Технология сверхразрешения может быть выполнена непосредственно для последовательности 124 сжатых изображений. В одном варианте воплощения модуль 120 улучшения разрешения выполняет технологию сверхразрешения для последовательности 124 сжатых изображений на уровне блока (то есть блоков пикселей одновременно). То есть учитывая опорное изображение вектора движения и разностные изображения, модуль 120 улучшения разрешения может начать декодирование последовательности 124 сжатых изображений на основе от блока к блоку. Технологии сверхразрешения затем могут быть применены к каждому блоку по мере его декодирования для формирования изображения 128 с более высоким разрешением. Благодаря выполнению сверхразрешения на основе от блока к блоку, для модуля 120 улучшения разрешения не требуется ожидать, пока все исходные изображения будут декодированы, и при этом нет необходимости сохранять все исходные изображения в памяти.
В одном варианте воплощения информация 126 вектора движения включает в себя вектора движения для данных (например, двумерные вектора движения) между опорным изображением и последующими изображениями в последовательности. Каждый вектор движения предоставляет смещение от координат в опорном изображении до координат в следующем изображении. В одном или более вариантах воплощения вектора движения определяют как точность на уровне подпикселя (например, одной сотой пикселя) с помощью программного кодека 116 или аппаратного кодека 114. Модуль 120 улучшения разрешения использует вектора движения, с точностью на уровне подпикселя, для генерирования изображения 128 с более высоким разрешением из опорного изображения и разностных изображений на уровне блока, в соответствии с одним вариантом воплощения.
В соответствии с одним вариантом воплощения модуль 108 камеры и модуль 110 сверхразрешения взаимодействуют для генерирования изображения 128 с более высоким разрешением из изображений 118 с более низким разрешением. В качестве примера, а не для ограничений, датчик 112 модуля камеры 108 снимает множество изображений с более низким разрешением, которые сохраняют как изображения 118 с низким разрешением. Программный кодек 116 сжимает изображения 118 с более низким разрешением, используя технологию сжатия видеоизображения без потерь или практически без потерь.
Во время выполнения этапа сжатия программный кодек 116 также рассчитывает вектора движения между последовательными изображениями с низким разрешением в последовательности изображений с точностью на уровне подпикселя.
В случае необходимости, датчик 112 включает в себя аппаратный кодек 114. В одном или более вариантах воплощения настоящего изобретения аппаратный кодек 114 представляет собой компонент, который воплощает технологию сжатия видеоизображения без потерь или практически без потерь. В одном варианте воплощения аппаратный кодек 114 разделяет изображение с низким разрешением для изображений 118 с низким разрешением на множество блоков пикселей. Во время работы, по мере того, как необработанные изображения снимают с помощью датчика 112, аппаратный кодек 114 сжимает последовательность изображений, используя технологию сжатия видеоизображения без потерь или практически без потерь с прогнозированием между изображениями, как описано выше со ссылкой на программный кодек 116. В результате последовательность 124 сжатых изображений генерируют и сохраняют в модуле 110 сверхразрешения. В соответствии с одним вариантом воплощения модуль 120 улучшения разрешения применяет технологию сверхразрешения для последовательности 124 сжатых изображений и генерирует изображение 128 с высоким разрешением. В одном варианте воплощения аппаратный кодек 114 обеспечивает работу технологии сжатия без потерь или практически без потерь для последовательности изображений перед сохранением в памяти 106. Вследствие этого, сохраняется пространство памяти, благодаря тому, что изображения 118 с низким разрешением не требуется сохранять для формирования изображения 128 с высоким разрешением.
На фиг.2 показана блок-схема последовательности операции способа 200, предназначенного для использования технологии видеосжатия, которая обеспечивает обработку сверхразрешения во встроенном устройстве, и для генерирования изображения с более высоким разрешением в соответствии с одним вариантом воплощения. Способ 200 начинается на этапе 202 и переходит на этап 204, где последовательность изображения (например, множество изображений с более низким разрешением) сохраняют в локальной памяти (например, локальная память 122 по фиг.1).
На этапе 206 последовательность изображений сжимают, используя технологию сжатия видеоизображения, работающую без потерь, с прогнозированием между изображениями. В другом варианте воплощения используют кодек сжатия видеоизображения, работающий в режиме, близком к режиму без потерь, для сжатия последовательности изображений. На этапе 208 применяют технологию сверхразрешения к последовательности сжатых изображений (например, последовательности 124 сжатых изображений по фиг.1). На этапе 210 генерируют изображение с более высоким разрешением (например, изображение 128 с более высоким разрешением по фиг.1). На этапе 212 способ 200 заканчивается. В одном варианте воплощения модуль улучшения разрешения (например, модуль 120 улучшения разрешения по фиг.1) применяет одну или более технологий сверхразрешения к опорному изображению, одному или более векторам движения и одному или более разностным изображениям, как описано выше.
На фиг.3 показана блок-схема последовательности операций способа 300, предназначенная для сжатия множества изображений с более низким разрешением для обеспечения возможности получения сверхразрешения во встроенном устройстве в соответствии с одним вариантом воплощения. Способ 300 начинается на этапе 302 и переходит на этап 304, на котором обращаются к множеству изображений с более низким разрешением, содержащихся в памяти (например, в памяти 106 по фиг.1).
На этапе 306 опорное изображение (то есть первое изображение среди изображений с более низким разрешением) обрабатывают (например, сжимают, используя алгоритм без потерь или практически без потерь). На этапе 308 получают следующее изображение (то есть следующее изображение с более низким разрешением). На этапе 310 определяют вектор движения между следующим изображением и опорным изображением. В одном варианте воплощения технология оценки вектора движения определяет вектора движения с точностью на уровне подпикселя. На этапе 312 генерируют разностное изображение. Разностное изображение представляет одно или более различий (то есть ошибок), между следующим изображением и результатом прогнозирования следующего изображения, получаемого из опорного изображения, как описано выше.
На этапе 314 определяют, существует ли следующее изображение в последовательности изображений, предназначенное для обработки. Если определяют, что существует следующее изображение в последовательности изображений, предназначенных для обработки (вариант выбора: “Да”), способ 300 переходит на этап 308. Если на этапе 314 определяют, что больше нет изображений в последовательности изображений, предназначенных для обработки (вариант выбора: “Нет”), способ 300 переходит на этап 316. На этапе 316 сохраняют опорное движение вектора движения и разностного изображения. В одном варианте воплощения опорное изображение вектора движения и разностное изображение составляют сжатые последовательности изображения, которые передают в модуль сверхразрешения (например, модуль сверхразрешения 110 по фиг.1) встроенного устройства. В другом варианте воплощения опорное изображение и/или разностное изображение перед сохранением сжимают, используя технологию сжатия, работающую без потерь. На этапе 318 способ 300 заканчивается.
На фиг.4 показана блок-схема последовательности операции способа 400 для генерирования разностного изображения в соответствии с одним вариантом воплощения. Способ 400 начинается на этапе 402 и переходит на этап 404, на котором обрабатывают опорное изображение и вектора движения. На этапе 406 генерируют прогнозирование кодируемого изображения из опорного изображения и векторов движения. В одном варианте воплощения кодек прогнозирует кодируемое изображение путем применения векторов движения к первому изображению (например, ранее кодированному и реконструированному изображению). На этапе 408 прогнозируемое изображение вычитают из кодируемого изображения (например, наблюдаемого или фактического изображения). На этапе 410 рассчитывают разностное изображение. На этапе 412 разностное изображение сжимают. На этапе 414 способ 400 заканчивается.
На фиг.5 показана блок-схема последовательности операции способа 500, предназначенного для сжатия последовательности изображений в датчике встроенного устройства в соответствии с одним вариантом воплощения. Способ 500 начинается на этапе 502 и переходит на этап 504, где снимают множество изображений с более низким разрешением. Изображения с более низким разрешением сохраняют в памяти (например, в памяти 106 по фиг.1) как последовательность несжатых необработанных изображений. На этапе 506 множество изображений с более низким разрешением сжимают, используя аппаратный кодек. В одном или более вариантах воплощения аппаратный кодек может быть воплощен, как аппаратный кодек без потерь или практически без потерь с прогнозированием, между изображениями, как описано выше. На этапе 508 сжатое множество изображений с более низким разрешением преобразуют в электрический сигнал. На этапе 510 электрический сигнал передают в модуль сверхразрешения (например, модуль 110 сверхразрешения по фиг.1) и сохраняют. Способ 500 заканчивается на этапе 512.
Таким образом, были представлены различные варианты воплощения настоящего изобретения. Различные варианты воплощения настоящего изобретения, предпочтительно, могут обеспечить возможность получения сверхразрешения во встроенном устройстве. Кроме того, способ в соответствии с изобретением и устройство можно использовать для работы непосредственно с последовательностью сжатых изображений с малым разрешением. Кроме того, различные варианты воплощения могут уменьшать объем памяти и ресурсы процессора, требуемые для оптимального или эффективного использования встроенного устройства.
Хотя предыдущее описание направлено на вариант воплощения настоящего изобретения, другие и дополнительные варианты воплощения изобретения могут быть разработаны без выхода за пределы его основного объема, и его объем определяют с помощью следующей формулы изобретения.