Устройство съемки движущихся изображений, система и устройство обработки информации и способ обработки изображений
Иллюстрации
Показать всеИзобретение относится к устройствам захвата и обработки изображений. Техническим результатом является обеспечение обработки изображений, которая при использовании высококачественных элементов формирования изображений обеспечивает уменьшение запаздывания от момента съемки изображения до момента воспроизведения изображения, используя данные этого изображения. Блок синтеза изображений (156) камеры получает соответствующие значения пикселей одной строки j интерполированного изображения, 1/16 интерполированного изображения и 1/64 интерполированного изображения от пирамидального фильтра, имеющегося в предшествующем каскаде и используемого для уменьшения за несколько этапов кадра снятого движущегося изображения. Затем блок синтеза изображений (156) соединяет полученные значения пикселей по заданному правилу так, что создает виртуальное синтезированное изображение, и выдает это созданное синтезированное изображение в виде потоков. Блок управления (164) блока передачи изображений (151) уведомляет блок селекции данных (154) о запросе от главного терминала. Блок селекции данных (154) выбирает и выделяет необходимые данные из потоков данных синтезированного изображения, изображение RAW и 1/1 интерполированное изображение, которые соответственно выводятся из блока синтеза изображений (156), блока получения изображений и блока цветовой интерполяции, имеющихся в предшествующем этапе, и генерирует поток данных, подлежащий передаче. Блок формирования пакетов (162) преобразует поток в пакеты и пересылает поток в форме пакетов на главный терминал. 6 н. и 7 з.п. ф-лы, 14 ил.
Реферат
Область техники
Настоящее изобретение относится к технологии, которая осуществляет обработку информации в соответствии с движением объекта.
Известный уровень техники
В родственном уровне техники известны игры, в которых видеокамерой снимается изображение некоторой части тела пользователя, такой как голова, а затем в этой части выделяется заранее заданная область глаз, губ, рук и пр., и в которых выделенная область заменяется другим изображением для последующего воспроизведения на дисплее (например, патентный документ №1). Кроме того, известен также интерфейс пользователя, который при исполнении прикладной задачи получает команды воспроизведения движений рта или рук пользователя, снятых видеокамерой.
Документы известного уровня техники
Патентный документ №1: публикация европейской заявки на патент №0999518.
Раскрытие сущности изобретения
Проблемы, которые должны быть решены изобретением
В технике, такой, например, как описано выше, для выделения заранее заданной области, например, рта или руки пользователя, необходимо изображение высокого разрешения. Однако при этом, по мере того как при повышении качества элементов формирования изображений видеокамеры улучшается разрешение, возникают такие проблемы, как возрастание объема данных, повышение стоимости при исполнении процедур извлечения данных, таких как фильтрация, масштабирование, кадрирование и пр., для которых требуется предоставление в необходимом объеме информации, которая сжимается для передачи, обнаруживается, распознается, измеряется и пр., и возрастание запаздывания до момента поступления от видеокамеры выходных данных, необходимых для каждого типа обработки. Далее, в случае, когда камера используется в качестве интерфейса пользователя, возникает проблема в том, что возрастание запаздывания приводит к существенному понижению удобства использования. Таким образом, даже когда качество пикселей изображения видеокамеры повышается, качество всей системы в целом может быть серьезно ухудшено.
Настоящее изобретение разработано в контексте решения перечисленных проблем, а целью настоящего изобретения является предоставление технологии обработки изображений, которая при использовании высококачественных элементов формирования изображений обеспечивает уменьшение запаздывания от момента съемки изображения до момента воспроизведения изображения, используя данные этого изображения.
Средства решения этих проблем
Один пример осуществления настоящего изобретения относится к устройству съемки движущихся изображений. Устройство съемки движущихся изображений содержит: блок генерации данных изображений, который последовательно генерирует соответствующие фрагменты данных многих изображений, каждое из которых имеет различные уровни разрешения посредством многокаскадного понижения в заданном порядке числа пикселей каждого кадра движущегося изображения, получаемого съемкой объекта, и последовательно выдает эти фрагменты данных в форме потоков; блок синтеза изображений, который, соединяя в каждой строке пикселей одной горизонтальной строки пикселей изображения или в каждой строке пикселей меньшего диапазона соответствующие фрагменты данных многих заданных изображений из соответствующих фрагментов данных многих изображений, выдаваемых из блока генерации данных изображений, и выдавая затем соответствующие фрагменты данных упомянутых многих заданных изображений в форме потоков, генерирует виртуальные синтезированные изображения, содержащие эти многие заданные изображения; и блок передачи изображений, который получает запрос на передачу данных от главного терминала, к которому он подсоединен, генерирует поток данных, которые должны быть переданы, выделением данных пикселей, входящих в изображение, и области, которые запрашиваются, из многих потоков, которые выдаются из блока генерации данных изображений и блока синтеза изображений, и пересылает поток данных на главный терминал.
Другой пример осуществления настоящего изобретения относится также к устройству съемки движущихся изображений. Устройство съемки движущихся изображений содержит пару камер для съемки изображения одного объекта с различных - правой и левой - точек наблюдения, при этом, каждая из пары упомянутых камер содержит: блок генерации данных изображений, который последовательно генерирует соответствующие фрагменты данных многих изображений, каждое из которых имеет различные уровни разрешения за счет многокаскадного понижения в заданном порядке числа пикселей каждого кадра движущегося изображения, получаемого съемкой объекта, и последовательно выдает эти фрагменты данных в форме потоков; блок синтеза изображений, который, соединяя в каждой строке пикселей одной горизонтальной строки пикселей изображения или в каждой строке пикселей меньшего диапазона, соответствующие фрагменты данных многих заданных изображений из соответствующих фрагментов данных этих многих изображений, выдаваемых из блока генерации данных изображений, и выдавая затем соответствующие фрагменты данных многих заданных изображений в форме потоков, генерирует виртуальные синтезированные изображения, содержащие многие заданные изображения; и при этом упомянутое устройство съемки движущихся изображений также содержит: блок согласования стереопар, который в заданном порядке пикселей генерирует изображение глубины, указывающее положение объекта в трехмерном пространстве, исполнением согласования стереопар на соответствующих фрагментах данных изображений, имеющих заданный уровень разрешения, среди соответствующих фрагментов данных изображений, полученных с различных точек наблюдения, которые генерируются парой камер, и последовательно выдает изображения глубины в форме потока; и блок передачи изображений, который получает запрос на передачу данных от главного терминала, к которому он подсоединен, генерирует поток данных, которые должны быть переданы, выделением запрашиваемых данных пикселей, входящих в изображение, и области из многих потоков, которые выдаются из блока генерации данных изображений, блока синтеза изображений и блока согласования стереопар, и пересылает поток данных на главный терминал.
Еще один пример осуществления настоящего изобретения относится к системе обработки информации. Система обработки информации содержит: устройство съемки движущихся изображений, которое ведет съемку объекта и генерирует данные движущихся изображений; и главный терминал, который получает часть данных движущегося изображения от этого устройства съемки движущихся изображений и воспроизводит изображение после выполнения заданного процесса обработки изображения, используя эту часть данных, при этом устройство съемки движущихся изображений содержит: блок генерации данных изображения, который последовательно генерирует соответствующие фрагменты данных многих изображений, каждое из которых имеет различные уровни разрешения посредством многокаскадного понижения в заданном порядке числа пикселей каждого кадра движущегося изображения, получаемого съемкой объекта, и последовательно выдает эти фрагменты данных в форме потоков; блок синтеза изображений, который, соединяя в каждой строке пикселей одной горизонтальной строки пикселей изображения или в каждой строке пикселей меньшего диапазона, соответствующие фрагменты данных многих заданных изображений из соответствующих фрагментов данных многих изображений, выдаваемых из блока генерации данных изображений, и выдавая затем соответствующие фрагменты данных многих заданных изображений в форме потоков, генерирует виртуальные синтезированные изображения, содержащие эти многие заданные изображения; и блок передачи изображений, который получает запрос на передачу данных от главного терминала, к которому он подсоединен, генерирует поток данных, которые должны быть переданы, выделением запрашиваемых данных пикселей, входящих в изображение, и области из многих потоков, которые выдаются из блока генерации данных изображений и блока синтеза изображений, и пересылает поток данных на главный терминал.
Еще один пример осуществления настоящего изображения относится к устройству обработки информации. Устройство обработки информации содержит: блок запроса данных, который выдает на камеру, снимающую изображение объекта, запрос на передачу данных изображений кадров движущегося изображения, указывая при этом уровень разрешения и область внутри изображения; и блок развертывания данных, который в оперативной памяти в виде данных двумерного изображения развертывает данные изображения, передаваемые из камеры, в соответствии с запросом, в форме потока, в котором значения пикселей указанной области соединяются для каждой строки пикселей; и блок обработки данных, который использует данные двумерного изображения и воспроизводит изображение после исполнения заданного процесса обработки изображения, при этом блок запроса данных определяет синтезируемое изображение, которое генерируется внутри камеры, и в котором многие изображения с различными уровнями разрешения, полученные уменьшением за несколько каскадов кадра движущегося изображения, размешены в соответствующих заданных прямоугольных областях, и блок развертывания данных исполняет разделение изображений развертыванием синтезированного изображения, переданного из камеры, в отдельные фрагменты двумерных данных изображения для каждого изображения, являющегося объектом синтеза.
Еще один пример осуществления настоящего изобретения относится к способу обработки данных изображений. Способ обработки данных изображений, исполняемый устройством съемки движущихся изображений, содержит: этап, на котором генерируются соответствующие фрагменты данных многих изображений с различными уровнями разрешения, полученных уменьшением за несколько каскадов каждого кадра движущегося изображения, получаемого съемкой объекта, и последовательно выдаются фрагменты данных в форме потока; этап, на котором генерируется виртуальное синтезированное изображение, содержащее многие заданные изображения, соединением соответствующих фрагментов данных многих заданных изображений среди данных многих изображений, выданных на этом этапе, на каждую строку пикселей части одной горизонтальной строки изображения или на каждую строку пикселей в меньшем диапазоне, и выдачей результата соединения в форме потоков; и этап получения запроса на передачу данных от главного терминала, генерации потока данных, которые должны быть переданы, посредством выделения данных, входящих в запрошенное изображение и запрошенную область, из многих потоков, которые были выданы на этапе выдачи и этапе генерации, и пересылки на главный терминал.
В качестве дополнительных форм настоящего изобретения могут на практике применяться также различные необязательные комбинации описанных выше конструктивных элементов и реализации изобретения в форме способов, устройств, систем, компьютерных программ и носителей записи, на которых записаны компьютерные программы.
Преимущества настоящего изобретения
В соответствии с настоящим изобретением, может быть уменьшено запаздывание от момента съемки изображения до момента воспроизведения изображения, используя данные этого изображения.
Краткое описание чертежей
Фиг. 1 - рисунок, который показывает полную конфигурацию системы камеры с низким запаздыванием, в соответствии с первым примером осуществления;
Фиг. 2 - блок-схема, которая показывает конфигурацию камеры, в соответствии с первым примером осуществления;
Фиг. 3 - блок-схема, которая подробно показывает конфигурацию блока синтеза изображений и конфигурацию блока передачи изображений камеры, в соответствии с первым примером осуществления;
Фиг. 4 - блок-схема, которая показывает конфигурацию внутренней схемы главного терминала, в соответствии с первым примером осуществления;
Фиг. 5 - рисунок, который схематично показывает основные переходы форм данных в камере и главном терминале, в соответствии с первым примером осуществления;
Фиг. 6 - временная диаграмма, которая показывает моменты ввода из блока пирамидального фильтра соответствующих значений пикселей 1/4 изображения после цветовой интерполяции, 1/16 изображения после цветовой интерполяции и 1/64 изображения после цветовой интерполяции, в соответствии с первым примером осуществления;
Фиг. 7 - рисунок, который схематически показывает состояние, когда соответствующие фрагменты данных строк пикселей многих изображений соединяются блоком синтеза изображений, в соответствии с первым примером осуществления;
Фиг. 8 - блок-схема, которая показывает конфигурацию, относящуюся к обработке запроса данных от главного терминала и к обработке при передаче данных камеры, в соответствии с первым примером осуществления;
Фиг. 9 - блок-схема, которая показывает пример изменения конфигурации блока передачи изображений, в соответствии с первым примером осуществления;
Фиг. 10 - блок-схема, которая показывает конфигурацию камеры, в соответствии со вторым примером осуществления;
Фиг. 11 - блок-схема, которая показывает конфигурацию камеры, в соответствии с третьим примером осуществления;
Фиг. 12 - рисунок, который показывает диаграмму, иллюстрирующую пример процедур обработки изображений, совместно выполняемых главным терминалом и стереокамерой, в соответствии с третьим примером осуществления, и иллюстрирующую примеры создаваемых при этом изображений;
Фиг. 13 - рисунок, который показывает диаграмму, иллюстрирующую другой пример процедур обработки изображений, совместно выполняемых главным терминалом и стереокамерой, в соответствии с третьим примером осуществления, и иллюстрирующую пример создаваемых при этом изображений;
Фиг.14 - рисунок, который показывает диаграмму, иллюстрирующую другой пример процедур обработки изображений, совместно выполняемых главным терминалом и стереокамерой, в соответствии с третьим примером осуществления, и иллюстрирующую пример создаваемых при этом изображений.
Формы реализации изобретения
Первый пример осуществления
На Фиг. 1 показывается полная конфигурация системы камеры с низким запаздыванием 10, в соответствии с настоящим примером осуществления. В этой системе движущиеся изображения пользователя 6 снимаются камерой 100, а главным терминалом 20 на базе полученных при этом данных осуществляется обработка изображений. Затем результат обработки воспроизводится на дисплее 4 или пересылается заданному получателю сообщения через сеть 12, такую, например, как интернет или локальная сеть LAN (Local Area Network).
Камера 100 является цифровой видеокамерой, содержащей элементы формирования изображений, такие как ПЗС (прибор с зарядовой связью) или КМОП (комплементарный металлооксидный полупроводник), и установленной, как показано на Фиг. 1, на верхней части корпуса дисплея 4. Дисплей 4 может быть, например, телевизором на жидких кристаллах, плазменным телевизором, дисплеем ПК и пр. Обычно пользователь 6 стоит перед дисплеем 4 так, что камерой 100 снимается изображение всего или некоторой части корпуса пользователя.
Изображение, которое воспроизводится на дисплее 4, изменяется в зависимости от прикладной задачи, исполняемой в системе камеры с низким запаздыванием 10. Например, когда система камеры с низким запаздыванием 10 используется в качестве интерфейса пользователя UI (user interface), который распознает движения или выражения лица пользователя 6 и интерпретирует движения или выражения лица, как некоторый тип рабочей команды, то изображение 8, воспроизводимое на дисплее 4, является изображением некоторой части пользователя 6, такой как лицо или рука, или даже всего целиком его корпуса. Когда система камеры с низким запаздыванием 10 используется для обмена видеоинформацией, то изображение 8, воспроизводимое на дисплее 4, является изображением лица партнера по информационному обмену, а изображение пользователя 6 воспроизводится на дисплее партнера по обмену информацией через сеть 12.
В свете такой формы использования, как описанной выше, камеру 100 наиболее целесообразно устанавливать на верхней части корпуса дисплея 4. Однако как только изображение всего целиком или части корпуса пользователя 6 будет снято, камера 100 может быть установлена в другом месте, в стороне от дисплея 4, например, вблизи от главного терминала 20 или поблизости от пользователя. Камера 100, вместо того чтобы быть выполненной в виде отдельной конструкции, может быть, например, встроена в корпус дисплея 4. Вместо использования в камере 100 дискретных элементов формирования изображений, может использоваться аналоговое формирование изображений, но с их последующим аналого-цифровым (A/D) преобразованием.
Главный терминал 20 представляет собой компьютерный терминал, такой как персональный компьютер или игровое устройство, который имеет функции обработки изображений. Главный терминал 20 последовательно принимает в хронологическом порядке каждый кадр движущегося изображения, или данные различных типов, которые могут быть получены от каждого кадра движущегося изображения, полученного при съемке пользователя 6 камерой 100, и выполняет заранее заданные процессы обработки изображений. В случае решения задачи по обмену видеоинформацией, изображение пользователя 6 передается в реальном времени партнеру по обмену через сеть 12. В случае применения в качестве интерфейса пользователя, исполняется заранее заданный процесс обработки информации на базе изображений пользователя 6, данных различных типов, которые могут быть получены от этих изображений, а результат обработки выдается затем на дисплей 4.
Например, на дисплей 4 выводятся в реальном времени изображение знаков, которые движутся в соответствии с движениями пользователя 6, или изображение, в котором в руку пользователя 6 вкладывается некоторый объект, такой как меч. Процесс обнаружения лица пользователя 6 и процесс слежения за определенной его частью, который необходим в такой прикладной задаче, может быть осуществлен главным терминалом 20. В альтернативном варианте, эти процессы могут быть выполнены камерой 100, как описывается позднее, а полученный результат может быть передан на главный терминал 20 в качестве части упомянутых выше "данных различных типов".
В приведенной выше задаче обмена видеоданными обработка также может проводиться так, что будет показываться только область лица пользователя 6, что получается как результат процесса обнаружения лица на изображениях с высоким разрешением. Помимо упомянутых выше процессов обработки изображений, главный терминал 20 обладает также возможностями синтеза изображений объектов, таких как меню или курсор, для исполнения различных прикладных задач, а затем воспроизведения синтезированных изображений на дисплее 4.
Таким образом, в системе камеры с низким запаздыванием 10 возможно существование самых различных процессов, которые могут исполняться с использованием движущихся изображений, снимаемых камерой 100, причем содержание этих процессов ничем особенным не ограничивается. В случае когда в настоящем примере осуществления проводится какая-либо обработка изображений, то даже безотносительно к тому, какие движущиеся изображения снимаются камерой 100, синтезируется несколько различных типов данных. Существует много различных процессов, которые выполняются камерой 100, и даже соответствующих конфигураций этих процессов, зависящих от прикладной задачи, возможностей проводить обработку камерой и главным терминалом, и пр.
В настоящем примере осуществления, камера 100 создает данные движущихся изображений, которые представляют видеоизображения, снятые самой камерой 100, с многими уровнями разрешения, и пересылает на главный терминал 20 в реальном времени только ту часть данных, которая необходима в соответствии с запросом от главного терминала 20. Здесь принимается, что главный терминал 20, помимо того, что может специфицировать параметры воспроизведения всего целиком изображения, такие как разрешение, цветовая система и ее компоненты, может специфицировать также область внутри кадра.
Например, когда от камеры 100 запрашиваются данные всего целиком изображения с низким уровнем разрешения, а среди всех изображений с высоким уровнем разрешения запрашиваются данные изображения только той области, на которую необходимо обратить внимание, то последующим комбинированием этих изображений на плоскости изображения может быть воспроизведено на дисплее движущееся изображение, в котором в подробностях показана только выделенная область, что снижает нагрузку при передаче данных. Этот пример эффективен, например, для таких задач, как обмен видео, если область лица, полученная выполнением процесса обнаружения лица в главном терминале 20, задается как та область, на которую необходимо обратить внимание.
На Фиг. 2 показывается конфигурация камеры 100, в соответствии с примером осуществления. Компоненты, показанные здесь и на фиг. 3, фиг. 4, фиг. 8-11, которые описаны позднее, такие как ЦП (центральный процессор), ЗУПВ (ЗУ с произвольной выборкой), ПЗУ (постоянное ЗУ) и схема рендеринга могут быть реализованы аппаратными средствами, а функция ввода данных, функция хранения данных, функция обработки изображений, функция рендеринга и прочие могут быть реализованы программно и исполняются программами. На этих рисунках иллюстрируются функциональные блоки, реализованные соединением данных компонентов. Следовательно, эти функциональные блоки могут быть реализованы в различных формах комбинацией программных и аппаратных средств. Для упрощения объяснения, фиг.2 содержит блок-схему, которая показывает части изображений, обрабатываемых в каждом функциональном блоке.
Камера 100 содержит блок получения изображений 102, блок цветовой интерполяции 104, блок пирамидального фильтра 170, блок синтеза изображений 156, блок передачи изображений 151 и блок связи 108. Блок получения изображений 102 считывает с заранее заданной частотой (например, 60 раз/с) изображение, которое снимается элементами формирования изображений, таким как ПЗС или КМОП. В последующем объяснении будет приниматься, что снимаемое изображение имеет ширину в "W" пикселей по горизонтальному направлению и имеет ширину в "Н" пикселей по вертикальному направлению. Это изображение представляет собой необработанное изображение, так называемое изображение RAW. Блок получения изображений 102 передает изображение RAW на блок цветовой интерполяции 104 и на блок передачи изображений 151 каждый раз, как заканчивается экспозиция одной горизонтальной строки изображения RAW.
Блок цветовой интерполяции 104 содержит буфер FIFO (First in First Out) буфер обратного магазинного типа 105, который имеет емкость в W пикселей, и блок простой интерполяционной обработки 106. Информация пикселей одной горизонтальной строки изображения RAW вводится в буфер FIFO 105, в котором она хранится до тех пор, пока в блок цветовой интерполяции 104 не будут вводиться пиксели следующей горизонтальной строки. Когда будут получены пиксели двух горизонтальных строк, то блок простой интерполяционной обработки 106 исполняет процесс цветовой интерполяции, при которой он, используя полученные пиксели двух строк, дополняет цветовую информацию каждого пикселя, базируясь на пикселях его окрестности, и образует в результате полноцветное изображение.
Как известно специалистам в этой области техники, существует большое число алгоритмов цветовой интерполяции. Однако в данном случае достаточен простой процесс цветовой интерполяции, при котором используются только пиксели двух горизонтальных строк. В качестве примера, когда для пикселя, для которого должно быть вычислено соответствующее ему значение YCbCr, имеется только значение G, то сначала вычисляются значения RGB, используя в качестве значения R среднее значение соответствующих значений R смежного ему правого и левого пикселя, в качестве значения G - само имеющееся значение G, а в качестве значения В значения В пикселя, расположенного выше или ниже данного пикселя, а затем подстановкой значений RGB в заранее заданное уравнение преобразования вычисляется значение YCbCr. Поскольку такой процесс цветовой интерполяции хорошо известен, то его дальнейшее детальное описание будет здесь опущено. Цветовое пространство данных изображения, которое создается блоком цветовой интерполяции 104 или в последующем процессе, не ограничивается форматом YCbCr.
Причиной, по которой достаточным является такой простой процесс цветовой интерполяции, является то, что в случае, когда необходимо изображение высокого качества, может использоваться само изображение RAW. В качестве примера варианта простого процесса цветовой интерполяции можно использовать алгоритм, который образует значение YCbCr одного пикселя из четырех пикселей RGB. В этом случае, изображение после интерполяции представляет собой изображение размером в 1/4 изображения RAW, и поэтому становится ненужным первый фильтр 110, который описан позднее.
Блок простой интерполяционной обработки 106, например, как показано на рисунке, преобразует RGB четырех пикселей (два горизонтальных пикселя × два вертикальных пикселя) в цветовой сигнал формата YCbCr. Далее, блок, состоящий из этих четырех пикселей, пересылается на блок передачи изображений 151 в качестве 1/1 интерполированного изображения, и вместе с этим пересылается на блок пирамидального фильтра 170.
Блок пирамидального фильтра 170 имеет функцию иерархической организации поступившего изображения по нескольким уровням разрешения и выдачи изображения в иерархической форме. Пирамидальный фильтр обычно содержит фильтры сжатия на 1/4, число которых соответствует числу необходимых уровней разрешения, однако в настоящем примере осуществления имеется трехуровневый фильтр - от первого фильтра 110 до третьего фильтра 130. Каждый фильтр исполняет процесс билинейной интерполяции четырех пикселей, которые являются смежными между собой, а затем вычисляет среднее значение этих четырех пикселей. Следовательно, размер изображения, полученного после обработки, становится равным 1/4 размера изображения перед обработкой. Специалисты в этой области техники без труда поймут, что в настоящем примере осуществления можно таким же образом применять фильтры, которые не являются трехуровневыми фильтрами.
На входе каждого каскада первого фильтра 110 расположены буферы FIFO 112 на W пикселей для каждого из сигналов Y, Cb и Cr соответственно. Каждый из этих буферов FIFO 112 предназначен для хранения пикселей YCbCr одной горизонтальной строки до тех пор, пока из блока простой интерполяционной обработки 106 не будет выдана следующая горизонтальная строка. Время хранения пикселей определяется в соответствии со скоростью линейного сканирования элементов формирования изображений. При вводе пикселей двух горизонтальных строк первый фильтр 110 усредняет значения пикселей Y, Cb и Cr четырех пикселей, образованных из двух пикселей по горизонтали и двух пикселей по вертикали. При повторении этого процесса длина 1/1 интерполированного изображения становится равной 1/2 как по вертикали, так и по горизонтали, так что изображение преобразуется и становится равным ј размера целого изображения. Преобразованное 1/4 интерполированное изображение передается на блок синтеза изображений 156, а также пересылается на последующий второй фильтр 120.
Перед каждым каскадом второго фильтра 120 расположены буферы FIFO 122 на W пикселей соответственно для каждого из сигналов Y, Cb и Cr. Каждый из этих буферов FIFO 122 предназначен для хранения пикселей YCbCr одной горизонтальной строки до тех пор, пока из первого фильтра 110 не будет выдана следующая горизонтальная строка. При вводе пикселей двух горизонтальных строк второй фильтр 120 усредняет значения пикселей Y, Cb и Cr четырех пикселей, образованных из двух пикселей по горизонтали и двух пикселей по вертикали. При повторении этого процесса длина интерполированного изображения 1/4 становится равной 1/2 как по вертикали, так и по горизонтали, так что изображение преобразуется и становится равным 1/16 размера целого изображения. Преобразованное 1/16 интерполированное изображение передается на блок синтеза изображений 156, а также пересылается на последующий третий фильтр 130.
На входном каскаде третьего фильтра 130 установлены буферы FIFO 132 для W/4 пикселей, а во всем остальном повторяется та же самая обработка, что и описана ранее. После цветовой интерполяции изображение размером 1/64 пересылается затем на блок синтеза изображений 156. Поскольку пирамидальный фильтр, подобный рассмотренному выше, хорошо известен и описан в патентной литературе 1, то его дальнейшее детальное объяснение в настоящем описании опускается.
Таким образом, с каждого фильтра блока пирамидального фильтра 170 соответствующие выходные изображения, которые были сжаты одно за другим до 1/4, поступают на вход блока синтеза изображений 156. Как очевидно из этого, размер буфера FIFO, который необходим перед каждым фильтром, становится меньше по мере того, как в пирамидальном фильтре 170 число фильтров, через которое прошло изображение, становится больше. Число фильтров не ограничено тремя, и оно может быть определено надлежащим образом в зависимости от требуемого диапазона разрешения изображений.
Блок синтеза изображений 156 принимает значения пикселей YCbCr 1/4 интерполированного изображения, 1/16 интерполированного изображения и 1/64 интерполированного изображения соответственно от первого фильтра 110, второго фильтра 120 и третьего фильтра 130. Затем блок синтеза изображений 156 генерирует новую строку пикселей, где соответствующие строки пикселей 1/4 интерполированного изображения, 1/16 интерполированного изображения и 1/64 интерполированного изображения по заранее заданному правилу соединяются между собой по каждой величине пикселя Y, Cb и Cr соединением строк пикселей одного горизонтального ряда каждого изображения или строк пикселей в диапазоне меньшем, чем одна строка. Сгенерированная таким образом строка пикселей передается на блок передачи изображений 151.
Блок передачи изображений 151 в соответствии с данными запроса, принятого от главного терминала 20 через блок связи 108, выбирает среди многих типов данных изображений, которые на него поступили, необходимые данные. Затем блок передачи изображений 151 формирует выбранные данные в пакет и пересылает пакет данных на блок связи 108. В настоящем примере осуществления процессы, которые исполняются камерой 100, проводятся в растровом порядке, начиная от верхнего левого изображения, и повторяя процесс слева направо в направлении книзу. В качестве базового блока обработки задаются пиксели одной горизонтальной строки. Кроме того, формат данных каждого типа изображений, которые поступают на блок передачи изображений 151, и формат данных изображений, которые передаются на главный терминал 20, являются, в основном, потоками, в которых фрагменты данных, каждый из которых является одной горизонтальной строкой изображения, соединены в порядке сверху вниз.
Блок связи 108 передает пакет данных на главный терминал 20 в соответствии с заранее заданным протоколом, таким, например, как USB 1.0/2.0. Связь с главным терминалом 20 не ограничена проводным типом связи. Например, связь может осуществляться с использованием беспроводной LAN в таком стандарте, как IEEE 802.11a/b/g, или с использованием инфракрасной связи в таком стандарте, как IrDA. На Фиг. 2 данные Y, данные Cb и данные Cr представлены раздельно, а стрелки ввода данных и вывода данных представлены для каждого типа данных. Однако для снижения сложности рисунков компоненты в дальнейшем показываются одной группой.
В настоящем примере осуществления, данные, генерируемые блоком синтеза изображений 156, представляют собой поток последовательностей значений пикселей, в которых смешаны соответствующие строки пикселей трех изображений после цветовой интерполяции. Следовательно, строго говоря, изображение в двумерной плоскости не возникает как результат соединения трех интерполированных изображений. Однако, как подробно описано позднее, когда число пикселей, соответствующее числу пикселей одной горизонтальной строки изображения, определяется для потока, который выдается блоком синтеза изображений 156, то последующие процессы являются теми же самыми, что и процессы для данных изображения RAW или 1/1 изображения, к которым блок синтеза изображений 156 не причастен. В результате, блок синтеза изображений 156 генерирует, по существу, изображение, в котором комбинируются 1/4 интерполированного изображения, 1/16 интерполированного изображения и 1/64 интерполированного изображения. Далее это виртуальное изображение именуется как "синтезированное изображение".
На Фиг. 3 показываются соответствующие конфигурации блока синтеза изображений 156 и блока передачи изображений 151 камеры 100. Блок синтеза изображений 156 имеет буферы FIFO 149 и 150 для временного хранения соответственно данных одной горизонтальной строки 1/16 интерполированного изображения и данных одной горизонтальной строки 1/64 интерполированного изображения, которые были получены соответственно от второго фильтра 120 и от третьего фильтра 130.
Как будет подробно описано позднее, блок синтеза изображений 156 подсоединяет к данным пикселей одной горизонтальной строки 1/4 интерполированного изображения из первого фильтра 110, данные половины пикселей строки пикселей одной горизонтальной строки 1/16 интерполированного изображения из второго фильтра 120 и данные одной четверти пикселей строки пикселей одной горизонтальной строки 1/64 интерполированного изображения из третьего фильтра 130 в упомянутом порядке, так что в результате образуются данные одной горизонтальной строки виртуального синтезированного изображения.
Блок передачи изображений 151 состоит из блока селекции данных 154, блока формирования пакетов 162 и блока управления 164. Блок управления 164, базируясь на запросе от главного терминала 20, выдает команду блоку селекции данных 154 о том, какой из различных фрагментов данных изображения должен быть передан в виде пакета. Блок селекции данных 154, используя в качестве входных данных данные строк пикселей изображения RAW, которое было введено из блока получения изображения 102, данные строк пикселей 1/1 интерполированного изображения, которое было введено из блока цветовой интерполяции 104, и данные строк пикселей синтезированного изображения, которое было введено из блока синтеза изображений 156, выбирает и выделяет данные, указанные блоком управления 164, и передает эти данные на блок формирования пакетов 162.
В это время блок селекции данных 154, в зависимости от запроса из главного терминала 20, пересылает поток данных заданного изображения, как единое целое, или же пересылает только данные части диапазона, содержащегося в области, на которую следует обратить внимание, как было описано выше. В последнем случае поток повторно формируется посредством соединения фрагментов данных передаваемой части. Блок формирования пакетов 162 формирует в пакет, размер которого определяется в соответствии с протоколом блока связи 108, поток, который был введен из блока селекции данных 154, и записывает пакетированный поток во внутренний буфер пакетов (не показан). Например, в случае протокола USB блок формирования пакетов 162 пакетирует поток в соответствии с размерами в точке загрузки.
Блок связи 108 пересылает пакет, находящийся внутри буфера пакетов, на главный терминал 20 в соответствии с заранее заданным протоколом связи. В случае когда запрашиваются фрагменты данных многих изображений из числа данных изображения RAW, данных 1/1 интерполированного изображения и данных синтезированного изображения, то блок селекции данных 154 вводит несколько потоков, соответствующих этим фрагментам данных, в блок формирования пакетов 162. Образованием нескольких каналов вывода данных из блока селекции данных 154, нескольких каналов ввода в блок формирования пакетов 162 и нескольких каналов вывода из него, а также нескольких каналов ввода в блок связи 108 и нескольких каналов вывода из него, так чтобы все запрашиваемые данные передавались параллельно, может