УСТРОЙСТВО ОБРАБОТКИ ИЗОБРАЖЕНИЙ И СПОСОБ УПРАВЛЕНИЯ ИМ
IMAGE PROCESSING DEVICE AND CONTROL METHOD THEREFOR

Область техники, к которой относится изобретение
Настоящее изобретение имеет отношение к устройству обработки изображений и к способу управления этим устройством.
Уровень техники
Имеется традиционное устройство обработки изображений, с помощью которого обнаруживается контур (край) изображения и в соответствии с характеристиками контура выполняется процесс выделения контура. Также известно устройство обработки изображений, с помощью которого определяется тип объекта в изображении и в соответствии с определенным типом объекта выполняется обработка изображения.
Например, выложенная заявка Японии № 2000-59651 раскрывает устройство обработки изображений, с помощью которого степенью выделения контура управляют в соответствии с уровнем яркости входного сигнала. С помощью метода выложенной заявки Японии № 2000-59651 выделение контура ослабляется для частей видеосигнала с низким уровнем яркости и усиливается для частей видеосигнала с высоким уровнем яркости. Кроме того, выложенная заявка Японии № 2002-190984 раскрывает устройство обработки изображений, которое определяет, является ли изображение пейзажным или текстовым изображением, и если это текстовое изображение, выполняет управление для усиления выделения контура.
Однако с помощью метода, раскрытого в выложенной заявке Японии № 2000-59651, поскольку степенью выделения контура управляют только на основе яркости корректируемого контура, выделение контура будет выполняться с одинаковой степенью, пока яркость является одинаковой, независимо от того, что представляет собой часть контура объекта. В результате в зависимости от объекта выделение контура может быть слишком сильным или наоборот недостаточным, и это создает проблему, заключающуюся в том, что над объектом не может быть адекватным образом выполнена надлежащая обработка.
С помощью метода, раскрытого в выложенной заявке Японии № 2002-190984, определяется тип изображения (является ли оно текстовым изображением или пейзажным изображением) в соответствии с распределением яркости. Однако выложенная заявка Японии № 2002-190984 не раскрывает метод, который подходит для установления различия между чем-либо кроме текстового изображения и пейзажным изображением (например, установление различия между искусственным объектом, таким как здание, и естественным объектом, таким как цветок или пейзаж). Даже если бы была предпринята попытка использовать метод выложенной заявки Японии № 2002-190984 для установления различия между искусственными и естественными объектами, было бы по-прежнему трудно устанавливать различие с высокой точностью, поскольку не получено четкого характерного различия относительно распределения яркости между искусственными и естественными объектами. Таким образом, трудно изменить степень выделения контура, например, между зданиями и естественными объектами.
Раскрытие изобретения
Настоящее изобретение было создано с учетом этой ситуации и обеспечивает метод, который позволяет с высокой точностью определять тип объекта, включенного в изображение.
В соответствии с аспектом настоящего изобретения обеспечено устройство обработки изображений, содержащее блок сбора, выполненный с возможностью собирать данные изображения, выражающие изображение, включающее в себя заданный объект; блок формирования, выполненный с возможностью формировать сигнал контура, выражающий часть контура, включенного в изображение; блок обнаружения, выполненный с возможностью обнаруживать на основе сигнала контура характерное направление контура для каждой из множества разделенных областей, полученных посредством деления изображения, блок обнаружения обнаруживает заданное направление как характерное направление контура, когда направление всей части контура, включенной в разделенную область, смещено в заданном направлении по меньшей мере с заданной степенью; блок определения, выполненный с возможностью определять тип объекта на основе по меньшей мере одного из следующих критериев: распределение по направлениям частоты обнаруженных характерных направлений контура, степень, до которой разделенные области, в которых было обнаружено характерное направление контура с предопределенным направлением, непрерывно размещены по одной линии в направлении, перпендикулярном по отношению к предопределенному направлению в изображении, и количество обнаруженных характерных направлений контура; и блок коррекции, выполненный с возможностью корректировать данные изображения в соответствии со способом коррекции, соответствующим типу объекта.
В соответствии с другим аспектом настоящего изобретения обеспечен способ управления устройством обработки изображений, содержащий этапы, на которых собирают данные изображения, выражающие изображение, включающее в себя заданный объект; формируют сигнал контура, выражающий часть контура, включенного в изображение; обнаруживают на основе сигнала контура характерное направление контура для каждой из множества разделенных областей, полученных посредством деления изображения, причем заданное направление обнаруживается как характерное направление контура, когда направление всей части контура, включенной в разделенную область, смещено в заданном направлении по меньшей мере с заданной степенью; определяют тип объекта на основе по меньшей мере одного из следующих критериев: распределение по направлениям частоты обнаруженных характерных направлений контура, степень, до которой разделенные области, в которых было обнаружено характерное направление контура с предопределенным направлением, непрерывно размещены по одной линии в направлении, перпендикулярном по отношению к предопределенному направлению в изображении, и количество обнаруженных характерных направлений контура; и корректируют данные изображения в соответствии со способом коррекции, соответствующим типу объекта.
С помощью описанной выше структуры настоящего изобретения возможно с высокой точностью определить тип объекта, содержащегося в изображении.
Дополнительные признаки настоящего изобретения станут видны из последующего описания иллюстративных вариантов осуществления со ссылкой на приложенные чертежи.
Краткое описание чертежей
Фиг. 1 - блок-схема примера конфигурации цифрового фотоаппарата 100 в соответствии с первым вариантом осуществления.
Фиг. 2 - подробный вид блока 105 обработки изображения.
Фиг. 3A-3G - схемы примеров выделения контура с помощью блока 206 выделения контура.
Фиг. 4A - схема примера входного сигнала.
Фиг. 4B - схема примера фильтра.
Фиг. 4C - схема примера вертикального полосового фильтра (BPF) 221.
Фиг. 4D - схема примера горизонтального полосового фильтра (BPF) 222.
Фиг. 4E - схема примера полосового фильтра (BPF) 223 для направления вверх и вправо.
Фиг. 4F - схема примера полосового фильтра (BPF) 224 для направления вниз и вправо.
Фиг. 5A - схема примера деления изображения с помощью блока 250 деления сигнала в первом варианте осуществления.
Фиг. 5B - схема примера деления изображения с помощью блока 250 деления сигнала во втором варианте осуществления, когда изменение масштаба имеет телескопическую настройку или фокусное расстояние ниже или равно заданному порогу.
Фиг. 5C - схема примера деления изображения с помощью блока 250 деления сигнала во втором варианте осуществления, когда изменение масштаба имеет широкоугольную настройку.
Фиг. 6A - блок-схема последовательности операций, дающая обзор определения типа объекта и коррекции изображения согласно типу объекта в первом варианте осуществления.
Фиг. 6B - подробная блок-схема последовательности операций процесса на этапе S602 на фиг. 6A.
Фиг. 7 - подробная блок-схема последовательности операций процесса на этапе S611 на фиг. 6B.
Фиг. 8 - схема примера классификации блока.
Фиг. 9A - схема объекта и выполнения деления на блоки.
Фиг. 9B - схема, на которой характерные направления контура (части контура) блоков, соответствующих фиг. 9A, обозначены линиями.
Фиг. 9C - схема примера связности направления контура.
Фиг. 10A и 10B - графики распределения по объектам с нанесенными на график различными характеристиками, имеющими отношение к контуру.
Фиг. 11A и 11B - таблицы, показывающие примеры параметров коррекции изображения, соответствующей различным объектам.
Фиг. 12 - подробная блок-схема последовательности операций процесса на этапе S603 на фиг. 6A в примере модификации первого варианта осуществления.
Фиг. 13A-13D - схемы, иллюстрирующие группировку (пометку) блоков.
Фиг. 14 - подробная блок-схема последовательности операций процесса на этапе S602 на фиг. 6A во втором варианте осуществления.
Фиг. 15A-15C - концептуальные схемы коррекции направления контура согласно наклону цифрового фотоаппарата 100 во втором варианте осуществления.
Фиг. 16 - подробная блок-схема последовательности операций процесса на этапе S611 на фиг. 6B в третьем варианте осуществления.
Фиг. 17 - подробная блок-схема последовательности операций процесса на этапе S603 на фиг. 6A в четвертом варианте осуществления.
Фиг. 18A-18D - концептуальные схемы определения, имеется ли здание на заднем плане лица, в четвертом варианте осуществления.
Осуществления изобретения
Далее со ссылкой на приложенные чертежи описаны варианты осуществления настоящего изобретения. Следует отметить, что технический объем настоящего изобретения определен посредством формулы изобретения и не ограничен никаким из описанных ниже вариантов осуществления. Кроме того, для реализации настоящего изобретения необязательно требуются все комбинации признаков, описанных в вариантах осуществления.
ПЕРВЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Со ссылкой на фиг. 1-5A и 6A-13D описан вариант осуществления, в котором устройство обработки изображений настоящего изобретения применено к цифровому фотоаппарату. Фиг. 1 является блок-схемой примера конфигурации цифрового фотоаппарата 100 в соответствии с первым вариантом осуществления.
На фиг. 1, 101 обозначает группу линз, которая включает в себя трансфокатор и линзу фокусировки, 102 обозначает затвор, имеющий апертурную функцию, и 103 обозначает блок захвата изображения, состоящий из прибора с зарядовой связью (CCD; ПЗС), элемента комплементарной структуры металл-оксид-полупроводник (CMOS; КМОП) и т.п., который преобразовывает оптическое изображение в электрический сигнал. 104 обозначает аналого-цифровой преобразователь, который преобразовывает аналоговый сигнал в цифровой сигнал, и 105 обозначает блок обработки изображения, который выполняет различные виды коррекции изображения, такие как гамма-коррекция, коррекция цвета, выделение контура или шумоподавление, над данными изображения, выданными из аналого-цифрового преобразователя 104. 106 обозначает видеопамять, 107 обозначает блок управления памятью, который управляет видеопамятью 106, 108 обозначает цифроаналоговый преобразователь, который преобразовывает введенный цифровой сигнал в аналоговый сигнал, 109 обозначает жидкокристаллический дисплей (LCD) или другой подобный блок отображения, и 110 обозначает блок кодека, который подвергает данные изображения кодированию и декодированию со сжатием.
180 обозначает карту памяти, жесткий диск или другой подобный носитель записи, 111 обозначает интерфейс с носителем 180 записи, и 50 обозначает системный блок управления, который управляет всей системой цифрового фотоаппарата 100.
120 обозначает блок манипуляции для ввода различных операционных команд, 121 обозначает выключатель питания, 122 обозначает блок управления питанием, и 123 обозначает источник питания. Блок 122 управления питанием состоит из схемы обнаружения батареи, преобразователя DC-DC, схемы переключения для переключения блоков, на которые подается ток, и т.д., и используется для обнаружения, была ли установлена батарея, тип батареи и оставшийся заряд батареи. Блок 122 управления питания также управляет преобразователем DC-DC на основе результатов этой обнаруженной информации и команды от системного блока 50 управления и подает необходимое напряжение на различным блоки цифрового фотоаппарата 100, в том числе на носитель 180 записи, пока это требуется.
124 обозначает энергонезависимую память, способную к электрическому удалению и записи, и представляет собой, например, электрически стираемое программируемое постоянное запоминающее устройство (EEPROM; ЭСППЗУ) или подобную память. 125 обозначает гироскопический датчик ускорения, который обнаруживает наклон и ускорение цифрового фотоаппарата 100. 126 обозначает системный таймер, который отслеживает время, используемое в различных видах управления, или время на встроенных часах, и 127 обозначает системную память, в которой располагаются программы и т.п., считанные из энергонезависимой памяти 124, а также константы и переменные, используемые при работе системного блока 50 управления.
Далее будут описаны основные операции во время захвата изображения объекта с помощью цифрового фотоаппарата 100, сконфигурированного, как описано выше. Блок 103 захвата изображения подвергает свет, который падает через группу 101 линз и затвор 102, оптическо-электронному преобразованию и выдает полученный результат аналого-цифровому преобразователю 104 как входной сигнал изображения. Аналого-цифровой преобразователь 104 преобразовывает аналоговый сигнал изображения, выданный из блока 103 захвата изображения, в цифровой сигнал изображения и выдает полученный результат блоку 105 обработки изображения.
Блок 105 обработки изображения подвергает данные изображения от аналого-цифрового преобразователя 104 или данные изображения от блока 107 управления памятью обработке баланса белого цвета или другому подобному цветовому преобразованию и гамма-коррекции, выделению контура, шумоподавлению и т.д., что будет описано позже. Блок 105 обработки изображения также использует данные захваченного изображения для выполнения заданного вычисления, и системный блок 50 управления выполняет управление экспозицией и контроль измерений на основе полученного таким образом результата вычисления. Далее выполняется автофокусировка (AF) в режиме TTL (через линзу), автоматическое экспонирование (AE) и электронная обработка перед применением вспышки (EF). Блок 105 обработки изображения затем использует данные захваченного изображения для выполнения заданного вычисления, а также выполняет автоматический баланс белого цвета (AWB) в режиме TTL на основе полученного таким образом результата вычисления.
Данные изображения, выданные из блока 105 обработки изображения, записываются в видеопамять 106 через блок 107 управления памятью. Видеопамять 106 содержит данные изображения, выданные из блока 103 захвата изображения, и данные изображения для отображения на блоке 109 отображения.
Цифроаналоговый преобразователь 108 преобразовывает используемые для дисплея данные изображения, сохраненные в видеопамяти 106, в аналоговый сигнал и подает его на блок 109 отображения. Блок 109 отображения выполняет отображение в соответствии с аналоговым сигналом из цифроаналогового преобразователя 108 на жидкокристаллическом дисплее или другом устройстве отображения.
Блок 110 кодека подвергает данные изображения, записанные в видеопамять 106, кодированию со сжатием в соответствии со стандартом, таким как MPEG. Системный блок 50 управления сохраняет закодированные данные изображения на носителе 180 записи через интерфейс 111.
Выше были описаны основные операции во время захвата объекта. В дополнение к описанным выше основным операциям системный блок 50 управления также выполняет различные процессы этого варианта осуществления, рассмотренные ниже, исполняя программы, записанные в описанной выше энергонезависимой памяти 124. Используемое в этом варианте осуществления слово "программа" обозначает программу для исполнения процессов различных блок-схем последовательности операций, рассматриваемых ниже. Системный блок 50 управления при этом разворачивает константы и переменные, используемые для работы системного блока 50 управления, а также программы и т.д., считанные из энергонезависимой памяти 124, в системной памяти 127.
Далее со ссылкой на фиг. 2 будет описан блок 105 обработки изображений. На фиг. 2, 200 обозначает блок формирования сигнала яркости/цветности, 201 обозначает блок усиления баланса белого цвета, 202 обозначает блок гамма-коррекции цвета, 203 обозначает блок формирования цветоразностного сигнала, 204 обозначает блок коррекции цвета, и 230 обозначает блок шумоподавления. 205 обозначает блок гамма-коррекции яркости, и 206 обозначает блок выделения контура. В блоке 206 выделения контура 207 обозначает полосовой фильтр (BPF), блок 208 обозначает блок вырезания, 209 обозначает блок усиления, 210 обозначает блок отсекания, и 211 обозначает блок добавления. 220 обозначает блок формирования сигнала контура по направлениям, в котором 221 обозначает полосовой фильтр для вертикального направления, 222 обозначает полосовой фильтр для горизонтального направления, 223 обозначает полосовой фильтр для (диагонального) направления вверх и вправо, и 224 обозначает полосовой фильтр для (диагонального) направления вниз и вправо. 250 обозначает блок деления сигнала.
Далее будет описан процесс, выполняемый блоком 105 обработки изображения. Данные изображения, выданные из аналого-цифрового преобразователя 104 или блока 107 управления памятью на фиг. 1, вводятся в блок 105 обработки изображения. Данные изображения, введенные в блок 105 обработки изображения, затем вводятся в блок 200 формирования сигнала яркости/цветности. Блок 200 формирования сигнала яркости/цветности производит сигнал яркости Y и цветовые сигналы R, G и B из введенных данных изображения. Цветовые сигналы R, G и B выдаются блоку 210 усиления баланса белого цвета, в то время как сигнал яркости Y выдается блоку 205 гамма-коррекции яркости и блоку 220 формирования сигнала контура по направлениям.
Блок 201 усиления баланса белого цвета корректирует баланс белого цвета посредством применения усиления к цветовым сигналам R, G и B на основе значений усиления баланса белого, вычисленных системным блоком 50 управления. Блок 202 гамма-коррекции цвета выполняет гамма-коррекцию над сигналами цвета R, G и B. Блок 203 формирования цветоразностного сигнала производит цветоразностные сигналы R-Y и B-Y из цветовых сигналов R, G и B и выдает их блоку 204 коррекции цвета. Блок 204 коррекции цвета затем корректирует оттенок и насыщенность, например посредством применения усиления к цветоразностным сигналам R-Y и B-Y. Блок 204 коррекции цвета выдает скорректированные цветоразностные сигналы R-Y и B-Y блоку 230 шумоподавления и блоку 250 деления сигнала.
Блок 205 гамма-коррекции яркости выполняет гамма-коррекцию над сигналом яркости Y и выдает полученный результат блоку 206 выделения контура. Фиг. 3A-3G являются схемами примеров выделения контура в блоке 206 выделения контура. Фиг. 3A показывает часть сигнала яркости (горизонтальный сигнал), введенного в блок 206 выделения контура.
Полосовой фильтр 207 представляет собой полосовой фильтр, который извлекает заданный диапазон частот. Первоначальный введенный сигнал (фиг. 3A) подвергается полосовой фильтрации для получения сигнала контура, показанного на фиг. 3B. Выходной сигнал полосового фильтра 207 подается на блок 208 вырезания. Как показано на фиг. 3G, блок 208 вырезания выполняет отсечение близких к нулю частей входного сигнала. В результате входной сигнал имеет форму, показанную на фиг. 3C. Выходной сигнал блока 208 вырезания подается на блок 209 усиления. Блок 209 усиления применяет усиление к входному сигналу. Сигнал, полученный посредством применения усиления к сигналу на фиг. 3C, показан на фиг. 3D. Выходной сигнал блока 209 усиления подается на блок 210 отсечения. Блок 210 отсечения подвергает отсечению до предельного уровня входной сигнал, который выше (или ниже) заданного предельного уровня. Пример этого отсечения показан на фиг. 3E. Выходной сигнал блока 210 отсечения выдается блоку 211 добавления. Блок добавления добавляет первоначальный сигнал (фиг. 3A) к сигналу контура (фиг. 3E), выданному из блока 210 отсечения и производит сигнал яркости (фиг. 3F) с выделенным контуром. Блок 206 выделения контура выдает сигнал яркости Y, контур которого был выделен описанным выше образом блоку 230 шумоподавления и блоку 250 деления сигнала. Выше было описано выделение контура только в горизонтальном направлении, но такой же процесс выделения контура выполняется в вертикальном направлении.
Далее будет описана работа блока 230 шумоподавления. Блок 230 шумоподавления выполняет пространственное шумоподавление. Более определенно, он выполняет обработку с помощью ε-фильтра. Эпсилон-фильтр использует разность между интересующим пикселем для обработки и окружающими пикселями как локальную информацию. Если эта разность меньше значения ε, применяется низкочастотный фильтр. Когда ε-фильтр выражен как одномерный сигнал, он представлен следующим образом.
Уравнение 1:
Здесь x(n) - пиксельное значение в позиции пикселя n, и x'(n) - пиксельное значение после ε-фильтрации. Кроме того, f(x) задана следующим уравнением.
Уравнение 2:
k
Здесь a - коэффициент низкочастотного фильтра и выполнен таким образом, что сумма равна 1.
Блок 230 шумоподавления выдает сигнал яркости Y и цветоразностные сигналы R-Y и B-Y, которые подверглись описанному выше шумоподавлению, в видеопамять 106 через блок 107 управления памятью.
Далее будет описана работа блока 220 формирования сигнала контура по направлениям. Блок 220 формирования сигнала контура по направлениям параллельно применяет четыре вида полосовых фильтров к введенному сигналу яркости Y и выдает четыре вида сигнала изображения (сигнала контура), которые прошли через полосовой фильтр, блоку 250 деления сигнала. Блок 220 формирования сигнала контура по направлениям использования фильтр обнаружения контура (полосовой фильтр) с размером 3×3 пиксели в каждом направлении контура для извлечения компонентов контура (сигналов контура) для горизонтального направления, вертикального направления, направления вверх и вправо и направления вниз и вправо из сигнала яркости Y.
Фильтры обнаружения контура (полосовые фильтры 221-224) будут описаны со ссылкой на фиг. 4A-4F. Фиг. 4A показывает входной сигнал f(i, j), и фиг. 4B показывает фильтр, примененный к входному сигналу f(i, j). Выходной сигнал f'(i, j), полученный посредством фильтрации, вычисляется из следующего уравнения.
Уравнение 3:
Компонент контура для каждого направления может быть извлечен посредством изменения коэффициента фильтра в приведенном выше уравнении. Фиг. 4C-4F показывают примеры коэффициентов фильтра для обнаружения контура в каждом направлении. Фиг. 4C - пример фильтра обнаружения вертикального контура (горизонтальная линия), используемого вертикальным полосовым фильтром 221, и фиг. 4D - пример фильтра обнаружения горизонтального контура (вертикальная линия), используемого горизонтальным полосовым фильтром 222. Фиг. 4E - пример фильтра обнаружения диагонального контура (нижняя правая линия), используемого полосовым фильтром 223 направления вверх и вправо, и фиг. 4F - пример фильтра обнаружения диагонального контура (верхняя правая линия), используемого полосовым фильтром 224 направления вниз и вправо.
Как описано выше, блок 220 формирования сигнала контура по направлениям формирует сигнал изображения (сигнал контура), выражающий части контура для каждого направления, включенного в изображение, и выдает этот сигнал блоку 250 деления сигнала.
Блок 250 деления сигнала делит введенный сигнал изображения на множество разделенных областей (блоки с размером 8×8), показанных на фиг. 5A, и выполняет вычисление сигнала для каждого блока. В этом варианте осуществления сигнал яркости Y, цветоразностные сигналы R-Y и B-Y и сигнал контура из блока 220 формирования сигнала контура по направлениям вводится в блок 250 деления сигнала. Блок 250 деления сигнала вычисляет среднее значение для каждого блока на основе сигнала яркости Y и цветоразностных сигналов R-Y и B-Y. Блок 250 деления сигнала также вычисляет сумму для каждого блока на основе сигналов контура, выданных блоком 220 формирования сигнала контура по направлениям. Чем больше компонентов контура включено в блок, тем больше сумма, таким образом, сумма может использоваться в качестве индикатора количества компонентов контура, включенных в блок. Поскольку блоком 220 формирования сигнала контура по направлениям выданы сигналы контура, относящиеся к четырем направлениям, сумма также вычисляется для каждого из четырех направлений. Данные, вычисленные блоком 250 деления сигнала, сохраняются в системной памяти 127.
Выше был подробно описан блок 105 обработки изображения. Далее будет описан процесс определения типа объекта и процесс коррекции изображения согласно типу объекта в соответствии с первым вариантом осуществления со ссылкой на блок-схемы последовательности операций на фиг. 6A, 6B и 7. Когда включается питание цифрового фотоаппарата 100 и устройство готово к захвату изображения, начинается процесс в блок-схеме последовательности операций на фиг. 6A.
На этапе S602 системный блок 50 управления определяет тип объекта, включенного во входное изображение. В этом варианте осуществления системный блок 50 управления идентифицирует, является ли объект зданием или естественным объектом (таким как цветок или пейзаж). Процесс на этапе S602 будет подробно описан со ссылкой на фиг. 6B.
На этапе S610 блок 105 обработки изображения формирует сигналы контура на основе введенного изображения для каждого из четырех направлений (по вертикали, по горизонтали, вверх вправо и вниз вправо) посредством описанного выше способа, вычисляет сумму сигналов контура в каждом направлении для каждого блока и сохраняет результат в системной памяти 127. Системный блок 50 управления получает из системной памяти 127 сумму вычисленных таким образом сигналов контура для каждого блока и каждого направления.
На этапе S611 системный блок 50 управления классифицирует блоки с размером 8×8 согласно характеристикам контура на основе суммы сигналов контура, полученных на этапе S610, и обнаруживает характерное направление контура для каждого блока. "Характерное направление контура" представляет собой характерное направление, относящееся ко всей части контура, включенной в блок, и если направление всей части контура смещено в некотором направлении по меньшей мере в некоторой степени, то это некоторое направление обнаруживается как характерное направление контура. Таким образом, характерное направление контура не обнаруживается, когда нет выраженного смещения в направлении всей части контура, или если включена небольшая часть контура (когда сумма сигналов контура мала). Процесс на этапе S611 будет подробно описан со ссылкой на фиг. 7.
На этапе S701 системный блок 50 управления начинает циклическую обработку блоков с размером 8×8 по одному.
На этапе S702 системный блок 50 управления определяет, является ли по меньшей мере одна из сумм сигналов контура в четырех направлениях (по вертикали, по горизонтали, вверх вправо и вниз вправо) обрабатываемого блока меньше, чем порог TH1. Если значение больше, чем TH1, процесс переходит на этап S703, в ином случае процесс переходит на этап S709.
На этапе S703 системный блок 50 управления определяет, является ли по меньшей мере две из сумм сигналов контура в четырех направлениях (по вертикали, по горизонтали, вверх вправо и вниз вправо) обрабатываемого блока больше, чем порог TH2 (где TH2>TH1). Если эти значения больше, чем TH2, процесс переходит на этап S707, в ином случае процесс переходит на этап S704.
На этапе S704 системный блок 50 управления 50 обнаруживает максимальное значение среди сумм сигналов контура в четырех указаниях (по вертикали, по горизонтали, вверх вправо и вниз вправо) обрабатываемого блока. Это максимальное значение будет обозначаться E1.
На этапе S705 системный блок 50 управления получает сумму сигналов контура в направлении, перпендикулярном по отношению к направлению максимального значения, обнаруженного на этапе S704. Эта сумма будет обозначаться E2. Например, если направление максимального значения будет горизонтальным направлением (то есть если контур выражен в горизонтальном направлении (вертикальная линия)), то перпендикулярное направление будет вертикальным направлением (направление горизонтальной линии). Аналогичным образом, если направление максимального значения будет направлением вверх и вправо (то есть если контур будет выражен направлении вверх и вправо (линия вниз и вправо)), то перпендикулярное направление будет направлением вниз и вправо (направление линии вверх и вправо).
На этапе S706 системный блок 50 управления определяет, достаточно ли высока интенсивность контура в направлении максимального значения по сравнению с интенсивностью контура направления, которое является перпендикулярным. Более определенно, например, системный блок 50 управления определяет, выполняется ли условие E1<k * E2 (k<1). Если E1<k * E2, то процесс переходит на этап S708, в ином случае процесс переходит на этап S707.
На этапе S707 системный блок 50 управления классифицирует обрабатываемый блок как "блок без направления (сложный блок)". "Блок без направления" представляет собой блок, который включает в себя много сигналов контура в пределах блока, но в котором сигналы контура не смещены в конкретном направлении. В блоке без направления не будет обнаружено характерного направления контура. Фиг. 8 является схемой примера классификации блока. Блок, который включает в себя сигналы контура в различных направлениях, как в блоке 801, или блок, который включает в себя сигналы контура в двух перпендикулярных направлениях, как в блоке 802, классифицируется как блок без направления.
На этапе S708 системный блок 50 управления классифицирует обрабатываемый блок как "блок с контуром" и обнаруживает направление максимального значения, обнаруженного на этапе S704, как характерное направление контура. Системный блок 50 управления записывает обнаруженное характерное направление контура в системную память 127. "Блок с контуром" представляет собой блок, имеющий отличительную часть контура только в конкретном направлении, как блок 803 на фиг. 8.
На этапе S709 системный блок 50 управления классифицирует обрабатываемый блок как "блок без контура". Блок без контура представляет собой плоский блок, у которого нет части контура, как у блоков 804 и 805 на фиг. 8. В блоке без контура не обнаруживается никакого характерного направления.
Как описано выше, классификация блоков и обнаружение характерного направления контура выполняются для блоков с размером 8×8 по одному. Кроме того, как описано выше, системный блок 50 управления записывает обнаруженное характерное направление контура для "блоков с контуром" в системную память 127.
Как показано на фиг. 6B, на этапе S612 системный блок 50 управления начинает циклическую обработку блоков с размером 8×8 по одному.
На этапе S613 системный блок 50 управления определяет, является ли обрабатываемый блок "блоком с контуром" (блоком, для которого было обнаружено характерное направление контура). Если это "блок с контуром", процесс переходит на этап S614, в ином случае (если это "блок без направления" или "блок без контура") процесс возвращается на этап S612 и выбирается следующий блок для обработки.
На этапе S614 системный блок 50 управления вычисляет связность направления контура (то есть контура вертикальной линии) в заданном направлении (здесь в горизонтальном направлении). Вычисление связности направления контура будет подробно описано со ссылкой на фиг. 9A-9C.
Фиг. 9A является схемой объекта и выполнения разделения на блоки. Здесь мы опишем случай вычисления связности направления контура блока 901. Для вычисления связности направления контура блока с вертикальными линиями системный блок 50 управления сначала определяет, является ли характерное направление контура обрабатываемого блока горизонтальным направлением (вертикальной линией). Если это горизонтальное направление (вертикальная линия), системный блок 50 управления подсчитывает количество блоков, у которых характерное направление контура представляет собой горизонтальное направление (вертикальную линию), которые непрерывно размещены по одной линии в направлении, перпендикулярном по отношению к характерному направлению контура (то есть в направлении вверх и вниз от этого блока), и это количество будет называться связностью направления контура. Фиг. 9B является схемой, в которой характерные направления контура блоков, соответствующих фиг. 9A (части контура), обозначены линиями (эти линии перпендикулярны по отношению к характерному направлению контура). Если при этом вычисляется связность направления контура блока 901 (обрабатываемого блока), системный блок 50 управления подсчитывает, сколько блоков среди блоков сверху и снизу блока 901 и смежных с ним, имеющих характерное направление контура в горизонтальном направлении (вертикальная линия), непрерывно размещены по одной линии. В примере блока 901, поскольку всего имеется три блока, непрерывно размещенных по одной линии, один сверху и два снизу, связность направления контура блока 901 равна 3. Аналогичным образом, когда связность направления контура в горизонтальном направлении (вертикальная линия) вычислена для всех блоков, результат показан на фиг. 9C. Наконец, системный блок 50 управления вычисляет сумму связности направлений контура. Эта сумма представляет собой показатель степени, в которой блоки, для которых было обнаружено заданное характерное направление контура (здесь горизонтальное направление), непрерывно размещены по одной линии в направлении, перпендикулярном по отношению к характерному направлению контура (здесь вертикальное направление) во входном изображении.
На этапе S615 системный блок 50 управления увеличивает счетчик характерного направления контура для обрабатываемого блока (до этапа S612 счетчик каждого направления инициализируется значением 0). Этот процесс в конечном счете приводит к количеству блоков для каждого характерного направления контура.
Как описано выше, является ли блок "блоком с контуром", определяется для блоков с размером 8×8 по одному, и если блок является "блоком с контуром", тогда выполняется вычисление связности направления контура и подсчет количества блоков для каждого характерного направления контура.
После этого на этапе S616 системный блок 50 управления определяет тип объекта на основе по меньшей мере одного из следующих критериев: распределение по направлениям частоты характерного направления контура (то есть количество блоков, подсчитанных для каждого характерного направления контура на этапе S615), сумма для связности направления контура и количество обнаруженных характерных направлений контура (то есть количество "блоков с контуром"). Конкретная комбинация этой информации (характеристики, связанные с контуром) может соответственно различаться согласно типу определенного объекта, необходимой точности определения и так далее. Здесь в качестве одного примера со ссылкой на фиг. 10A и 10B будет описан случай определения, является ли объект зданием или естественным объектом.
Фиг. 10A и 10B являются графиками распределения по объектам с нанесенными на график различными характеристиками, имеющими отношение к контуру. В этом варианте осуществления устанавливается отличие зданий от естественных объектов (цветов или пейзажей), таким образом, показано распределение зданий, цветов и пейзажей. На фиг. 10A горизонтальная ось показывает количество блоков, имеющих характерное направление контура в горизонтальном или вертикальном направлении, и вертикальная ось показывает количество блоков, имеющих характерное направление контура в диагональном направлении (вверх и вправо или вниз и вправо). На фиг. 10B горизонтальная ось показывает связность горизонтального направления контура (вертикальная линия), и вертикальная ось показывает пропорцию (или количество) "блоков с контуром".
Системный блок 50 управления определяет, где на графиках, показанных на фиг. 10A и 10B, присутствует объект, включенный во входное изображение, на основе суммы связности направления контура, вычисленной на этапе S614, и количества блоков для каждого характерного направления контура, подсчитанного на этапе S615 (количество блоков для каждого характерного направления контура добавляется при необходимости). Например, рассмотрим случай, в котором некоторый объект присутствует в местоположениях характеристической точки 1001 на фиг. 10A и характеристической точки 1002 на фиг. 10B.
Затем, как показано на фиг. 10A, при рассмотрении заданной оси A1, которая разделяет два типа объекта (здание и что-то другое), и оси X1, которая перпендикулярна оси A1, вычисляется точка, в которую характеристическая точка 1001 объекта проецируется на ось X1, и эта точка будет обозначаться X1p. Что касается фиг. 10B, аналогичным образом рассмотрим ось X2 и перпендикуляр X3 к заданным осям A2 и A3, которые разделяют типы объекта. Точками, в которые характеристическая точка 1002 проецируется на оси X2 и X3, обозначены как X2p и X3p.
Оценочное значение вычисляется на основе следующего уравнения на основе определенных выше значений X1p, X2p и X3p.
оценочное значение = αX1p+βX2p+γX3p
Здесь, α, β и γ - предварительно заданные весовые коэффициенты.
Если оценочное значение находится на заданном пороге или выше него, системный блок 50 управления определяет тип объекта как "здание", в ином случае определяет тип субъекта как "естественный объект".
Выше был описан процесс, показанный на фиг. 6B (обработка этапа S602 на фиг. 6A). Вернемся к фиг. 6A, где на этапе S603 блок 105 обработки изображения выполняет коррекцию изображения согласно типу объекта (коррекция изображения посредством способа коррекции, соответствующего типу объекта) под управлением системного блока 50 управления. Более определенно, например, системный блок 50 управления устанавливает параметры блока 206 выделения контура и блока 230 шумоподавления равными значениям, соответствующим типу объекта. Блок 206 выделения контура и блок 230 шумоподавления выполняют выделение контура и шумоподавление в соответствии с установленными параметрами. Пример параметров при коррекции изображения, соответствующих различным видам объекта, будет описан со ссылкой на фиг. 11A.
Если тип объекта - "здание", то возможно, что качество изображения будет лучше с сильно выделенным контуром. С учетом этого, как показано на фиг. 11A, центральная частота обнаружения контура устанавливается между средней и низкой. Это делается посредством изменения параметра (коэффициента) полосового фильтра 207 на фиг. 2. Кроме того, в блоке 208 вырезания расширяется диапазон вырезания. В частности, на фиг. 3G, расширяется диапазон, по которому отсекаются входные значения. Кроме того, блок 209 усиления настраивается для увеличения усиления выделения контура. Кроме того, в блоке 230 шумоподавления увеличивается значение ε.
С другой стороны, если тип объекта - "естественный объект, то будет выглядеть странным, если контур будет слишком выделен, таким образом, лучше не выделять контур очень сильно. Поскольку в естественном объекте важно воспроизведение мелких деталей, лучше всего, если при вырезании и шумоподавлении не будет потери большого количества информации о деталях. С учетом этого центральная частота обнаружения контура устанавливается между средней и высокой посредством изменения параметра полосового фильтра 207. В блоке 208 вырезания устанавливается низкий диапазон вырезания и устанавливается слабое усиление блока 209 усиления. Кроме того, в блоке 230 шумоподавления уменьшается значение ε.
Выше был описан процесс на этапе S603 на фиг. 6A (коррекция изображения согласно типу объекта). Далее на этапе S604 системный блок 50 управления определяет, должен ли процесс быть закончен. Например, определяется, что процесс должен быть закончен, если было выключено питание цифрового фотоаппарата 100. Если обработка не закончена, процесс возвращается на этап S601 и повторяется.
Как описано выше, в первом варианте осуществления цифровой фотоаппарат 100 делит изображение на множество блоков, обнаруживает характерное направление контура для каждого блока и определяет тип объекта на основе результатов обнаружения (распределение частоты, связность направления контура, количество обнаруженных характерных направлений контура и т.д.). Кроме того, цифровой фотоаппарат 100 выполняет коррекцию изображения в соответствии со способом коррекции, соответствующим типу объекта.
Таким образом, посредством обнаружения характерного направления контура на уровне блоков возможно обнаружить характеристики, относящиеся к контуру объекта, и на результат будут меньше влиять шум объекта или мелкий рисунок. Следовательно, возможно с высокой точностью определить тип объекта, включенного в изображение. В результате возможно выполнить выделение контура, шумоподавление или другую подобную коррекцию изображения, которая подходит для типа объекта. Кроме того, поскольку характерное направление контура обнаружено на уровне блоков, вычислительная нагрузка уменьшается по сравнению с тем, когда контур обнаруживается на уровне пикселей.
Кроме того, в этом варианте осуществления обработка посредством блока 206 выделения контура и обработка посредством блока 230 шумоподавления были даны как пример коррекции изображения согласно типу объекта, но коррекция изображения не ограничена ими. Например, согласно типу объекта могут быть изменены гамма-коррекция яркости или цветовая коррекция. В этом случае для "здания" системный блок 50 управления дает команду блоку 205 гамма-коррекции яркости выполнить гамма-коррекцию яркости с усилением контраста. Для "естественного объекта" системный блок 50 управления дает команду блоку 204 коррекции цвета выполнить коррекцию цвета с повышением насыщенности.
Кроме того, в этом варианте осуществления в качестве обработки посредством блока 230 шумоподавления была описана только обработка с использованием ε-фильтра, который является пространственным фильтром, но способ шумоподавления не ограничен этим. Например, может использоваться временной фильтр, который выполняет низкочастотную фильтрацию в направлении времени, и в этом случае параметр временного фильтра может изменяться согласно типу объекта.
Кроме того, в этом варианте осуществления был обсужден пример, в котором устанавливалось отличие "здания" от "естественного объекта", но если характерное направление контура обнаруживается на уровне блоков и тип объекта определяется с использованием распределения частоты, связности направления контура, количества характерных обнаруженных направлений контура и т.д., то может быть определен любой тип объекта.
Кроме того, в этом варианте осуществления тип объекта был определен как бинарный выбор между "зданием" и "естественным объектом", но это не обязательно должно быть бинарное определение. Например, чем выше оценочное значение, вычисленное в примере на фиг. 10A и 10B, тем больше вероятность того, что объект является "зданием", таким образом, параметры коррекции изображения могут устанавливаться ближе к зданию по мере повышения оценочного значения и устанавливаться ближе к естественному объекту по мере уменьшения оценочного значения.
Кроме того, в этом варианте осуществления классификация блоков (имеют ли они контур) определялась на основе суммы сигналов контура, посредством направления, для обрабатываемого блока, но способ классификации блоков не ограничен этим. Например, может использоваться способ, в котором блоки классифицируются с использованием сигнала яркости и сигнала цветности в дополнение к сигналу контура. В этом случае системой управляют таким образом, чтобы блок не был определен как блок с контуром, если яркость выше или ниже заданного порога. Кроме того, сигнал цветности может использоваться для определения, является ли блок блоком с контуром, или обнаружения характерного направления контура. В этом случае, если средние значения для оттенка и насыщенности в пределах блока удовлетворяют заданному условию, то блок определяется как блок с контуром (или условие для определения, что характерное направление контура изменено). Более определенно, блок, имеющий много сигналов с зеленым цветом высокой насыщенности, не определяется как блок с контуром из-за низкой вероятности, что это контур здания. В качестве альтернативы, даже если блок определен как блок с контуром, порог для определения его как блока, имеющего горизонтальный или вертикальный контур, изменяется, чтобы сделать менее вероятным, что он будет определен как имеющий горизонтальное или вертикальное направление. Это позволяет дополнительно повысить точность определения типа объекта.
Кроме того, обрабатываемый блок может быть сравнен с окружающими блоками и определен как блок с контуром, если сумма сигналов контура является большой относительно окружающих блоков. При этом сумма сигналов контура сравнивается с суммой сигналов контура смежных блоков в том же направлении, что и направление контура. Например, если блок с контуром обнаружен в горизонтальном направлении (вертикальная линия), сумма сигналов контура сравнивается с суммой сигналов контура левого и правого смежных блоков, которые находятся в том же направлении (горизонтальном направлении), и блок определяется как блок с контуром, если бóльшая разность суммы сигналов контура у левого и правого блоков находится на заданном пороге или выше него.
ПРИМЕР МОДИФИКАЦИИ
В первом варианте осуществления способ коррекции изображения изменялся в зависимости от типа объекта, но коррекция выполнялась с использованием одних и тех же параметров для всего изображения. Однако коррекция может быть выполнена с использованием параметров, соответствующих характеристикам разных областей изображения. Это будет описано со ссылкой на фиг. 11B, фиг. 12 и Фиг. 13A-13D.
Фиг. 12 является подробной блок-схемой последовательности операций процесса на этапе S603 на фиг. 6A в примере модификации первого варианта осуществления.
На этапе S1200 системный блок 50 управления 50 определяет, является ли тип объекта, определенный на этапе S602, "зданием". Если это "здание", процесс переходит на этап S1201, в ином случае процесс переходит на этап S1211.
Этапы S1201-S1210 выполняются, когда объект был определен как "здание", и определяются местоположение и характеристики здания (является ли это оно зданием со многими плоскими частями, таким как офисное здание, или зданием со сложными деталями, таким как церковь). Более определенно, на этапе S1201 системный блок 50 управления помечает блоки с размером 8×8 на основе подобия среди блоков и таким образом группирует блоки. Это присвоение меток будет подробно описано со ссылкой на фиг. 13A-13D.
Фиг. 13A показывает захваченное изображение объекта, которое было разделено на блоки. Системный блок 50 управления подвергает эти блоки присвоению меток при растровом сканировании диапазона поиска, показанного на фиг. 13B. На фиг. 13B блок 1301 представляет собой обрабатываемый блок, и блоки сверху слева, сверху, сверху справа и слева от обрабатываемого блока будут называться опорными блоками (заштрихованы).
Системный блок 50 управления сравнивает обрабатываемый блок с опорными блоками на предмет яркости и цвета и дает обрабатываемому блоку такую же метку, как у опорного блока с самой близкой яркостью и цветом. Например, на фиг. 13C, метка "2" дана блоку сверху слева от обрабатываемого блока 1302, и метка "3" дана блокам сверху, сверху справа и слева. Если при этом опорный блок, который является самым близким по яркости и цвету к обрабатываемому блоку 1302, является блок сверху слева, то системный блок 50 управления дает метку "2" обрабатываемому блоку 1302. Однако если нет опорного блока, или если различие между обрабатываемым блоком и всеми опорными блоками превышает заданное значение, системный блок 50 управления дает обрабатываемому блоку новую метку.
Таким образом, системный блок 50 управления помечает все блоки по аналогичным областям. Фиг. 13D представляет собой пример присвоения меток всем блокам объекта на фиг. 13A. В результате этого присвоения меток блоки с размером 8×8 группируются таким образом, чтобы было по меньшей мере заданное сходство среди блоков в пределах группы (среди разделенных областей). Диапазон поиска не ограничивается тем, который показан на фиг. 13B. На фиг. 13D блоки в группе расположены непрерывно, но в зависимости от настройки диапазона поиска блоки, принадлежащие одной группе, могут присутствовать в разделенных местоположениях.
Вернемся к фиг. 12, где на этапе S1202 системный блок 50 управления начинает циклическую обработку меток, присвоенных на этапе S1201, по одной (в примере, показанном на фиг. 13D, последовательно обрабатываются метки от "0" до "3").
На этапе S1203 системный блок 50 управления определяет, является ли размер группы обрабатываемой метки (количество блоков в группе) выше или равным заданному порогу. Если размер выше или равен заданному порогу, процесс переходит на этап S1204, в ином случае процесс переходит на этап S1209.
На этапе S1204 системный блок 50 управления вычисляет пропорции блоков, имеющих характерное направление контура в горизонтальном или вертикальном направлениях (вертикальная и горизонтальная линии) относительно всех "блоков с контурами" в группе обрабатываемой метки. Системный блок 50 управления также вычисляет пропорцию "блоков без контура" (блоков, в которых сигналы контура меньше или равны заданной величине, как может быть понятно из этапов S702 и S709 на фиг. 7) относительно всех блоков в группе обрабатываемой метки.
На этапе S1205 системный блок 50 управления определяет, является ли пропорция блоков, имеющих характерное направление контура в горизонтальном или вертикальном направлении (вертикальная и горизонтальная линии), вычисленная на этапе S1204, больше или равна порогу. Если она больше или равна порогу, процесс переходит на этап S1206, в ином случае процесс переходит на этап S1209.
На этапе S1206 системный блок 50 управления определяет, является ли пропорция "блоков без контура", вычисленная на этапе S1204, больше или равна порогу. Если она больше или равна порогу, процесс переходит на этап S1207, в ином случае процесс переходит на этап S1208.
На этапе S1207 системный блок 50 управления привязывает флаг плоского здания к обрабатываемой метке. Этот флаг указывает, что объект в группе обрабатываемой метки является зданием, имеющим много плоских поверхностей, таких как на офисном здании.
На этапе S1208 системный блок 50 управления привязывает флаг сложного здания к обрабатываемой метке. Этот флаг указывает, что объект в группе обрабатываемой метки является зданием, имеющим много сложных деталей, таких как на церкви.
На этапе S1209 системный блок 50 управления привязывает метку "не является зданием" к обрабатываемой метке.
На этапе S1210 блок 105 обработки изображения выполняет коррекцию изображения согласно типу объекта в группе (коррекция изображения посредством способа коррекции, соответствующего типу объекта в группе) для каждой группы под управлением системного блока 50 управления. Процесс этапа S1210 будет специально описан со ссылкой на фиг. 11B. Фиг. 11B подобен фиг. 11A в том, что она показывает пример типов объектов и соответствующих параметров для выделения контура и шумоподавления. Фиг. 11B отличается от фиг. 11A тем, что когда тип объекта представляет собой "здание", параметры предусмотрены для каждого типа объекта в пределах группы.
В примере на фиг. 11B, когда объект в группе представляет собой плоское здание, используются такие же параметры, как для "здания" на фиг. 11A. С другой стороны, в случае сложного здания центральная частота обнаружения контура устанавливается между низкой и средней. Кроме того, диапазон вырезания сужается, устанавливается среднее усиление и значение ε шумоподавления уменьшается. Это позволяет выполнить выделение контура и шумоподавления, минимизируя потерю информации о деталях зданий, имеющих сложные конфигурации, таких как церковь. Кроме того, для областей, не являющихся зданием, параметры устанавливаются такими же, как в случае, когда объект представляет собой "естественный объект".
Вернемся к фиг. 12, где на этапе S1211 блок 105 обработки изображения выполняет коррекцию изображения, соответствующую "естественному объекту", под управлением системного блока 50 управления. Этот процесс является таким же, когда объект представляет собой "естественный объект" на этапе S603 первого варианта осуществления.
Выше был описан случай выполнения коррекции изображения для каждой группы согласно типу объекта в группе. В этом модифицированном примере случай, в котором параметры обработки изображений были установлены для каждой группы по блокам, был описан в качестве пример, но если параметры обработки изображений переключаются по блокам, на границе групп может появиться "ступенька", которая относится к разности параметров обработки изображений. В соответствии с этим может быть добавлена обработка для уменьшения этой "ступеньки", например, с использованием среднего значения двух параметров на границе групп.
ВТОРОЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Теперь будет описан второй вариант осуществления настоящего изобретения со ссылкой на фиг. 5B и 5C и 14-15C. В этом втором варианте осуществления тип объекта определяется в значительной степени таким же процессом, как в первом варианте осуществления, но определение также включает в себя состояние (изменение масштаба, фокус, ориентация и т.д.) цифрового фотоаппарата 100 во время захвата изображения. Конфигурация и основные операции цифрового фотоаппарата 100 во втором варианте осуществления являются такими же, как описанные для первого варианта осуществления, и поэтому не будут подробно описываться снова (см. фиг. 1 и 2).
Во втором варианте осуществления подробности процесса на этапе S602 на фиг. 6A отличаются от первого варианта осуществления, и вместо процесса, показанного на фиг. 6B, выполняется процесс, показанный на фиг. 14. На фиг. 14 те этапы, на которых выполняются такие же процессы, как на фиг. 6B, пронумерованы так же и не будут описываться снова.
На этапе S1401 системный блок 50 управления получает информацию, указывающую на текущие состояния изменение масштаба и фокуса, от группы 101 линз и сохраняет их в системной памяти 127.
На этапе S1402 системный блок 50 управления формирует информацию о наклоне камеры на основе вывода гироскопического датчика 125 ускорения и сохраняет ее в системной памяти 127.
На этапе S1403 системный блок 50 управления изменяет размер разделения на блоки и количество блоков в блоке 250 деления сигнала (см. фиг. 2) на основе информации об изменении масштаба и информации о фокусе, полученной на этапе S1401. Более определенно, системный блок 50 управления увеличивает размер блока, когда изменение масштаба имеет телескопическую настройку (когда увеличение масштаба является большим) или когда фокусное расстояние короче заданного порога, и уменьшает размер блока, когда изменение масштаба имеет широкоугольную настройку. В частности, когда фокусное расстояние короче заданного порога, размер блока представляет собой по меньшей мере заданный размер независимо от увеличения масштаба. Этот пример показан на фиг. 5B и 5C. Фиг. 5B показывает разделение на блоки (блоки с размером 8×8), когда изменение масштаба имеет телескопическую настройку или когда фокусное расстояние короче заданного порога. Между тем, фиг. 5C показывает разделение на блоки (блоки с размером 16×16 в этом примере), когда изменение масштаба имеет широкоугольную настройку. В этом случае имеется больше блоков, поскольку размер блока уменьшен, и собирается информация от всего изображения. Управление системой таким образом позволяет препятствовать тому, чтобы изменение масштаба вызвало большие колебания количества информации, относящейся к форме объекта и т.д. для единственного блока.
На этапе S1405 системный блок 50 управления использует информацию о наклоне, сформированную на этапе S1402, для коррекции направление контура. Более определенно, системный блок 50 управления корректирует направление контура, когда цифровой фотоаппарат 100 наклонен по меньшей мере с заданным порогом. Фиг. 15A показывает изображение, захваченное в состоянии, в котором цифровой фотоаппарат 100 имел наклон больше порога (например, 30 градусов). При этом направление контура корректируется в соответствии с направлением наклона.
Фиг. 15B показывает направление контура перед коррекцией, и фиг. 15C показывает направление контура после коррекции. Таким образом, системный блок 50 управления выполняет коррекцию так, чтобы сигнал контура, выданный как горизонтальный контур (вертикальная линия) 1501a, был обработан как контур 1501b в направлении вниз и вправо, и сигнал контура, выданный как контур 1502a в направлении вверх и вправо, был обработан как горизонтальный контур (вертикальная линия) 1502b. Аналогичным образом, системный блок 50 управления выполняет коррекцию так, чтобы сигнал контура, выданный как вертикальный контур (горизонтальная линия) 1503a, был обработан как контур 1503b в направлении вверх и вправо, и сигнал контура, выданный как контур 1504a в направлении вниз и вправо, был обработан как вертикальный контур (горизонтальная линия) 1504b. Таким образом, в соответствии с наклоном корректируется только информация о направлении.
Процесс на этапе S1406 является таким же, как на этапе S614 на фиг. 6B, но немного отличается, когда на этапе S1405 скорректирован наклон. Например, когда направление контура скорректировано, как показано на фиг. 15C, горизонтальный контур (вертикальная линия) соединяется по диагонали, связность направления контура вычисляется в диагональном направлении. Другими словами, при вычислении связности оценивается соединение в направления контура, перпендикулярном по отношению к рассматриваемому характерному направлению контура (здесь горизонтальное направление), но это "перпендикулярное направление" также корректируется в соответствии с коррекцией направления контура.
Процесс на этапе S1407 является таким же, как на этапе S616 на фиг. 6B, но порог для установления различия, является ли объект "зданием" или "естественным объектом" (A1-A3 на фиг. 10A и 10B), изменяется на основе информации о фокусе. Более определенно, порог изменяется (A1-A3 на фиг. 10A и 10B) так, чтобы объект с меньшей вероятностью был определен как "здание", если фокусное расстояние будет меньше заданного расстояния. Например, выполняется смещение оси A2 вверх и смещение оси A3 вправо.
Как описано выше, во втором варианте осуществления цифровой фотоаппарат 100 выполняет определение типа объекта посредством включения в рассмотрение состояния изменения масштаба, наклона и т.д. во время захвата изображения. Это позволяет увеличить точность определения по сравнению со случаем, когда тип объекта определяется на основе только самого изображения.
В этом варианте осуществления был описан случай, в котором устройство обработки изображений настоящего изобретения было применено к цифровому фотоаппарату 100, но этот вариант осуществления также может быть применен к устройству, не имеющему системы захвата изображения, если оно выполняет обработку изображений. В этом случае изменение масштаба и другая подобная информация о камере добавляется к данным изображения заранее, и на основе этого устройством обработки изображений выполняется обработка.
Кроме того, в этом варианте осуществления был описан пример, в котором количество (размер) блоков при делении сигнала, включающего в себя управление в зависимости от состояния изменения масштаба и фокуса, имело два типа, но количество блоков при делении не ограничено двумя типами. Может использоваться конфигурация, в которой размером или количеством блоков при делении управляют в несколько шагов согласно характеристикам изменения масштаба.
ТРЕТИЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Далее описан третий вариант осуществления настоящего изобретения со ссылкой на фиг. 16. Этот третий вариант осуществления отличается от первого варианта осуществления тем, что тип объекта определяется с использованием характеристик перемещения объекта и цифрового фотоаппарата 100 в течение времени. Конфигурация и основные операции цифрового фотоаппарата 100 в третьем варианте осуществления являются такими же, как описанные для первого варианта осуществления, и поэтому не будут подробно описываться снова (см. фиг. 1 и 2).
В этом третьем варианте осуществления подробности процесса на этапе S611 на фиг. 6B отличаются от первого варианта осуществления, и вместо процесса, показанного на фиг. 7, выполняется процесс, показанный на фиг. 16. На фиг. 16 те этапы, на которых выполняются такие же процессы, как на фиг. 7, пронумерованы так же и не будут описываться снова.
На этапе S1601 системный блок 50 управления вычисляет значение разности кадров относительно обрабатываемого блока. Более определенно, системный блок 50 управления вычисляет значения разности пикселей для разделенных на блоки изображений в одинаковых позициях более раннего сигнала изображения (вторые данные изображения, выражающие второе изображение), который сохранен на этапе S1605, описанном позже, и вычисляет сумму этих значений разности пикселей в пределах группы.
На этапе S1602 системный блок 50 управления получает информацию ускорения цифрового фотоаппарата 100 из вывода гироскопического датчика 125 ускорения. Системный блок 50 управления определяет, что цифровой фотоаппарат 100 перемещается, если ускорение больше или равно заданному порогу TH3. Если определено, что цифровой фотоаппарат 100 перемещается, процесс переходит на этап S702, в ином случае процесс переходит на этап S1603.
На этапе S1603 системный блок 50 управления определяет, является ли сумма значений разности кадров, вычисленная на этапе S1601, больше порога TH4. Если сумма больше порога TH4, процесс переходит на этап S1604, в ином случае процесс переходит на этап S702.
На этапе S1604 системный блок 50 управления определяет, что обрабатываемый блок является блоком, не относящимся к зданию. Это происходит потому, что область, которая перемещается даже при том условии, что цифровой фотоаппарат 100 не перемещается, не рассматривается как здание. Другими словами, предполагается, что движущаяся область является областью, содержащей изображение человека, или областью естественного объекта, такого как растение, которое колышется на ветру. В этом случае характерное направление контура не обнаруживается.
На этапе S1605 системный блок 50 управления записывает обрабатываемое в настоящий момент изображение в видеопамять 106. Это изображение используется при вычислении значений разности кадров на этапе S1601.
Выше была описана классификация обрабатываемого блока на основе информации о перемещении (обнаружение характерного направления контура). Другие процессы являются такими же, как описанные со ссылкой на фиг. 6A и 6B в первом варианте осуществления, и поэтому они не будут описываться снова.
В этом варианте осуществления процесс, в котором блоки для областей объекта, которые перемещаются во времени, не рассматриваются как блоки с контурами, добавляется к первому варианту осуществления. Это позволяет более точно обнаруживать только желаемый контур объекта, таким образом, тип объекта определяется более точно.
Кроме того, в этом варианте осуществления в качестве примера был описан случай установления различий между зданием и естественным объектом, но если область, используемая для установления различий, ограничивается перемещением объекта, может быть установлено различие для любого вида объекта.
В этом варианте осуществления информация о перемещении объекта использовалась только при определении типа объекта, но параметры для коррекции изображения блоком 105 обработки изображения могут быть изменены на основе перемещения. Например, может быть добавлена такая обработка, что если объект определен как естественный объект, усиление выделения контура будет увеличено, и средняя частота понижена в движущихся областях по сравнению со стационарными областями. Это позволяет избежать противоестественного выделения контура посредством выполнения выделения контура высокочастотной составляющей относительно объекта, для которого высокочастотная информация была потеряна вследствие перемещения.
ЧЕТВЕРТЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ
Четвертый вариант осуществления настоящего изобретения описан со ссылкой на фиг. 17 и фиг. 18A-18D. В этом четвертом варианте осуществления выполняется в значительной степени такая же коррекция изображения, как в первом варианте осуществления, но коррекция изображения включает в себя позиционное отношение между человеком и объектом. Конфигурация и основные операции цифрового фотоаппарата 100 в четвертом варианте осуществления являются такими же, как описанные для первого варианта осуществления, и поэтому не будут подробно описываться снова (см. фиг. 1 и 2).
Этот четвертый вариант осуществления отличается от первого варианта осуществления деталями процесса на этапе S603 на фиг. 6A, и вместо этого выполняется процесс, показанный на фиг. 17. На этапе S1701 системный блок 50 управления группирует (помечает) блоки и определяет тип объекта в группе посредством такого же процесса, как на этапах S1201-S1209 на фиг. 12.
На этапе S1702 системный блок 50 управления обнаруживает лицо человека в изображении. Для обнаружения лица может использоваться любой известный способ. Например, выполняется сопоставление с образцом с помощью количественного значения признака для лица и количественного значения признака для указанной области в изображении, и область определяется как лицо, если степень соответствия больше или равна заданному порогу.
На этапе S1703 системный блок 50 управления определяет, было ли обнаружено лицо на этапе S1702. Если лицо было обнаружено, процесс переходит на этап S1704, в ином случае процесс переходит на этап S1707.
На этапе S1704 системный блок 50 управления определяет, является ли тип объекта, определенного на этапе S602 (фиг. 6A), "зданием". Если тип объекта является "зданием", процесс переходит на этап S1705, в ином случае процесс переходит на этап S1707.
На этапе S1705 системный блок 50 управления определяет, присутствует ли здание на заднем плане обнаруженного лица (определение фона). Этот процесс будет описан со ссылкой на фиг. 18A-18D. Фиг. 18A показывает захваченное изображение, и фиг. 18B показывает пример присвоения меток, соответствующего фиг. 18A. При этом флаг для области здания (флаг плоского здания или флаг сложного здания на этапе S1207 или S1208) соответствует метке "1" посредством присвоения меток. Область метки "2" представляет собой область, в которой было обнаружено лицо на этапе S1702. На этом этапе системный блок 50 управления определяет, является ли блок, включающий в себя метку для области здания, смежным с блоком, включающим в себя область лица. В примере на фиг. 18B блок с меткой "2" является смежным с блоком с меткой здания "1", таким образом, определяется, что здание присутствует на заднем плане лица. Фиг. 18C показывает захваченное изображение, как на фиг. 18A, и фиг. 18D показывает пример присвоения меток соответственно фиг. 18C. Метка "1" соответствует области здания, и метка "2" соответствует области лица. На фиг. 18D, поскольку нет блоков с меткой "1", смежных с блоком с меткой "2", определяется, что здание не присутствует на заднем плане лица. Если посредством этого процесса определения определяется, что здание присутствует на заднем плане лица, процесс переходит на этап S1706, в ином случае процесс переходит на этап S1707.
На этапе S1706 блок 105 обработки изображения выполняет коррекцию изображения для фонового здания под управлением системного блока 50 управления. При коррекции изображения для фонового здания в основном используются параметры согласно типу объекта, показанные на фиг. 11A. Однако усиление устанавливается более низким в блоке 206 выделения контура.
Между тем, на этапе S1707 блок 105 обработки изображения выполняет коррекцию изображения с помощью параметров, показанных на фиг. 11A, точно так же, как в первом варианте осуществления, под управлением системного блока 50 управления.
В этом варианте осуществления цифровой фотоаппарат 100 изменил параметры для коррекции изображения в зависимости от того, обнаружено ли лицо и имеется ли здание на заднем плане лица. Следовательно, возможно предотвратить чрезмерное выделение контура фонового объекта (в этом случае здания), которое выделило бы его больше, чем лицо.
Кроме того, в этом варианте осуществления был рассмотрен пример, в котором изменялось только усиление выделения контура в качестве коррекции изображения для фонового здания, но параметры, которые изменяются, не ограничены этим. Например, если здание присутствует на заднем плане лица, может быть увеличено значение ε шумоподавления или может быть изменен любой другой параметр.
В дополнение к рассмотренному выше управлению также возможно иметь конфигурацию, в которой для изменения параметра используется информация о камере. Например, когда группа 101 линз установлена в состояние, которое размывает фон (открытая апертура и т.д.), может быть выполнено выключение выделения контура за исключением лица и усилено шумоподавление. Это позволяет избежать выделения контура даже при размытом фоне, что произвело бы неестественное изображение. Кроме того, в этом варианте осуществления в качестве примера использовалось здание, но настоящее изобретение также может быть применено в случае, когда объект представляет собой любой искусственный объект, имеющий признаки контура, похожего на контуры здания, например стол или другой предмет мебели.
ДРУГИЕ ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ
Аспекты настоящего изобретения также могут быть реализованы посредством компьютера системы или устройства (или таких устройств, как центральный процессор (CPU) или микропроцессор (MPU)), которые считывают и выполняют программу, записанную в запоминающем устройстве, для выполнения функций описанных выше вариантов осуществления, и посредством способа, этапы которого выполняются компьютером системы или устройством, например посредством считывания и исполнения программы, записанной в запоминающем устройстве, для выполнения функций описанных выше вариантов осуществления. С этой целью программа предоставляется компьютеру, например, через сеть или с носителя записи различных типов, служащего в качестве запоминающего устройства (например, машиночитаемого носителя).
Хотя настоящее изобретение было описано в отношении иллюстративных вариантов осуществления, следует понимать, что изобретение не ограничивается раскрытыми иллюстративными вариантами осуществления. Объем следующей формулы изобретения должен получить самую широкую интерпретацию для охвата всех таких модификаций и эквивалентных структур и функций.