ОБНАРУЖЕНИЕ И КОМПЕНСАЦИЯ ФОТОГРАФИЧЕСКОГО МЕРЦАНИЯ
PHOTOGRAPHIC FLICKER DETECTION AND COMPENSATION

УРОВЕНЬ ТЕХНИКИ
Флуоресцентные лампы типично используют механизмы балласта, которые могут быть причиной варьирования интенсивности вывода света при скорости двойной частоты сети переменного тока (AC), подаваемого на флуоресцентную лампу. Варьирующаяся интенсивность, или мерцание, ламп является в общем не обнаруживаемой человеческим глазом, но она может взаимодействовать с датчиками изображения камеры. В некоторых случаях мерцание может вызывать появление заметных артефактов в видеоизображениях, таких как астатическое образование полос или пульсирующая яркость. Камера может существенно уменьшить эти артефакты посредством использования набора интервалы времени экспонирования, которые совпадают в частотой AC, подаваемого флуоресцентным лампам. Однако существуют две основные частоты AC, используемые по всему миру, 50 Гц и 60 Гц, которые могут усложнять задачу уменьшения нежелательных артефактов посредством совпадающих интервалов времени экспонирования.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Следовательно, различные варианты осуществления раскрыты в настоящем документе, которые относятся к обнаружению и компенсации присутствия периодического мерцания в фотографических установках. Например, один раскрытый вариант осуществления включает в себя внесение камеры в фотографическую установку, так чтобы свет падал на камеру и световой детектор и схему детектора света камеры. Множество сэмплов захвачены из схемы детектора света, каждый из которых зависим некоторым образом от интенсивности света, воздействию которого подвергают камеру. Способ дополнительно включает в себя обработку сэмплов, чтобы идентифицировать, варьируется ли интенсивность падающего света при одной или более заранее выбранных частотах. Такая обработка может включать в себя перемножение сэмплов с одним или более периодическими сигналами для генерирования выводов скалярных произведений и анализ выводов скалярных произведений для выявления присутствия периодического мерцания.
Это краткое изложение предоставлено для того, чтобы представить выбор концептов в упрощенной форме, которая дополнительно описана ниже в подробном описании. Это краткое изложение не предназначено для того, чтобы идентифицировать ключевые признаки или существенные признаки заявленного объекта изобретения, и не предназначено для использования в качестве ограничения объема заявленного объекта изобретения. К тому же заявленный объект изобретения не ограничен реализациями, которые решают какие-либо или все недостатки, отмеченные в какой-либо части этого раскрытия.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
На фиг.1 показан вариант осуществления камеры, включающей в себя схему детектора света.
На фиг.2 показана диаграмма интервалов времени сигналов от узлов схемы детектора света.
На фиг.3 показан вариант осуществления способа сэмплирования электрических сигналов, которые варьируются в ответ на интенсивность окружающего света.
На фиг.4 показан вариант осуществления способа для обработки сэмплов, чтобы идентифицировать варьируется ли интенсивность окружающего света, ассоциированного с сэмплами при одной из множества заранее выбранных частот.
ПОДРОБНОЕ ОПИСАНИЕ
Как указано выше, часто желательно конфигурировать видеозаписывающие устройства и другие камеры для расчета периодических изменений в среде окружающего света. Например, чтобы уменьшить артефакты, созданные периодическими вариациями интенсивности флуоресцентных источников света, интервалы времени экспонирования камеры могут быть синхронизированы с периодическими вариациями интенсивности окружающего света. Так как существуют две основные частоты AC, используемые по всему миру, 50 Гц и 60 Гц, вызывающие вариации интенсивности при 100 Гц и 120 Гц, соответственно, часто желательно конфигурировать камеру для интервалов времени экспонирования, согласованных с частотой местной сети AC.
Одно решение для конфигурирования камеры состоит в том, чтобы пользователь камеры в ручную сконфигурировал камеру для частоты местной сети AC. Например, пользователь может выбрать частоту местной сети AC из меню, представленного на дисплее камеры. Второе решение состоит в том, чтобы сделать одну модель камеры для сети AC в 50 Гц и второю для сети AC в 60 Гц. Разные модели должны быть затем идентифицированы посредством разных единиц складского учета (SKU).
При альтернативном варианте решения камера может включать в себя детектор для автоматического обнаружения вариаций интенсивности окружающего света. Одним потенциальным преимуществом этого решения является то, что пользователь не может случайно сконфигурировать камеру для неверной частоты сети AC. Другим потенциальным преимуществом является устранение необходимости делать разные модели камеры. Еще одной выгодой является то, что устройство может автоматически корректировать и работать правильно, когда помещено в среде с разным мерцанием, как, например, когда пользователь камеры едет в регион с другой частотой сети AC. Следовательно, раскрыты различные системы и способы для автоматического обнаружения и корректировки или компенсации периодического мерцания.
На фиг.1 показан примерный вариант осуществления камеры 100, включающей в себя оптическую систему 10, датчик 20 изображения, схему 40 детектора света и логическую подсистему, такую как процессор 32. Камера 100 может работать в среде окружающего света, которая включает в себя мерцающий источник света, такой как флуоресцентная лампа 110. Когда камеру вводят в такую фотографическую установку, свет от флуоресцентной лампы 110 может быть падающим на датчик 20 изображения и схему 40 детектора света, как показано лучами 112 и 114 соответственно.
Оптическая система 10 может содержать систему линз для фокусировки изображения на датчике 20 изображения. Оптическая 10 система может включать в себя фильтры, такие как инфракрасный блокирующий фильтр, или цветные фильтры для направления красного, зеленого и синего света к выбранным пикселям датчика 20 изображения, например. Датчик 20 изображения конвертирует изображение из оптической системы 10 в набор электрических сигналов, которые отправляют процессору 32. Датчик 20 изображения может быть устройством с зарядовой связью (CCD), комплементарный металло-оксидный полупроводниковый (CMOS) датчик с активными пикселями или любым другим пригодным устройством. Датчик 20 изображения типично содержит массив пикселей, скомпонованный в последовательности рядов и столбцов.
Датчик 30 изображения может включать в себя электронный затвор, контролируемый процессором 32, или другой механизм для контролирования времени интеграции каждого ряда пикселей. Когда время интеграции пикселей не синхронизировано с мерцанием, присутствующим в окружающем свете, в видеоизображении могут появиться артефакты, такие как астатическое образование полос или пульсирующая яркость. Одним источником мерцания может быть флуоресцентная лампа, мерцающая при скорости двойной частоты сети переменного тока (AC), подаваемого на флуоресцентную лампу. Другим источником мерцания может быть свет от компьютерного монитора, мерцающего при скорости обновления монитора. Если может быть определено, что среда записи включает в себя интенсивность света, которая варьируется при конкретной частоте (например, периодическое мерцание, возникающее из-за флуоресцентного источника света), время интеграции пикселей может быть скорректировано для уменьшения или устранения потенциальных артефактов.
Камера 100 типично включает в себя компоненты, функционально связанные с процессором 32 для выполнения обнаружения/компенсации мерцания и для проведения других задач. В качестве примера камера 100 может включать в себя логическую схему 33 ввода и вывода общего назначения (GPIO) (например, микросхема или набор микросхем) и подсистему хранения данных, которая может включать в себя энергонезависимое хранилище 30, оперативную память (RAM) 34 и/или съемные носители 35. В одном варианте осуществления камеры 100, электронные компоненты могут быть интегрированы в одно или более известных устройств, таких как специализированная интегральная микросхема (ASIC) или система на кристалле (SOC). Камера 100 может опционально включать в себя дисплей 36 и/или другие компоненты, не показанные на фиг.1.
Процессор 32 может быть выполнен с возможностью исполнения одной или более инструкций, хранящихся в подсистеме хранения данных, такой как энергонезависимое хранилище 30. Например, процессор 32 может быть выполнен с возможностью обработки сэмплированного света и, в ответ, корректировки, или иначе контроля, интервалов времени экспонирования датчика 20 изображения. Неограничивающие примеры энергонезависимого хранилища 30 включают в себя флэш-память и накопитель на жестком магнитном диске. RAM 34 может быть также выполнена с возможностью хранения инструкций для исполнения процессором 32. Процессор 32 может быть выполнен с возможностью побуждения данных изображения из датчика 20 изображения храниться в RAM 34, энергонезависимом хранилище 30 и/или съемных носителях 35. Неограничивающие примеры съемных носителей 35 включают в себя видеопленку, записываемые оптические диски и карты памяти. В альтернативном варианте осуществления процессор 32 может быть выполнен с возможностью побуждения данных изображения из датчика 20 изображения быть переданными на вычислительное устройство посредством видеокабеля и/или проводной или беспроводной сети.
Если включена в состав, подсистема 36 отображения может быть использована для представления визуального представления данных, удерживаемых в подсистеме хранения данных. Например, подсистема 36 отображения может быть использована для отображения данных изображения из датчика 20 изображения как, например, на экране дисплея и/или посредством оптического видоискателя. В другом примере подсистема 36 отображения может быть использована для отображения данных изображения, хранящихся в съемных носителях 35. Таким образом, наблюдатель может просматривать изображения, которые хранятся в камере. Подсистема 36 отображения может включать в себя оптические компоненты, как указано выше, или один или более устройств отображения, использующих фактически любой тип технологии, такой как жидко-кристаллический дисплей (LCD).
DD
DD
IH
DD
IH
Логическая подсистема камеры 100 может быть выполнена с возможностью осуществления связи посредством одного или более сигнальных штырьков GPIO 33. Например, GPIO 33 включает в себя логическую схему, присоединенную к первому сигнальному штырьку GPIO, GPIO1 и второму сигнальному штырьку GPIO, GPIO2. Сигнальный штырек GPIO может быть запрограммирован быть входом или выходом. Когда запрограммирован как выход, GPIO 33 может задавать логический ноль или логическую единицу на сигнальный штырек. Например, напряжение на земле может быть логическим нулем, а напряжение источника электропитания, V, логической подсистемы может быть логической единицей. Когда запрограммирован как вход, GPIO 33 может считывать логический ноль или логическую единицу с сигнального штырька. Напряжение на сигнальном штырьке GPIO может быть между землей и V. Когда сигнальный штырек GPIO сконфигурирован как вход, напряжение на сигнальном штырьке GPIO может быть интерпретировано как логическая единица, когда напряжение превышает напряжение V и в противном случае как логический ноль. Параметры V и V являются функцией устройств, используемые для реализации логической подсистемы. PIC18F2550 изготовленный корпорацией Microchip Technology, Chandler, AZ, является примером недорогого контроллера, который включает в себя логическую схему GPIO и сигнальные штырьки.
В общем, схема 40 детектора света отвечает за интенсивность света, который падает на камеру (например, видеозаписывающее устройство). Например, схема может быть выполнена с возможностью ответа на интенсивность окружающего света посредством выдачи электрического сигнала, пропорционального интенсивности падающего света. Таким образом, может быть измерена интенсивность окружающего света. В одном примере выход схемы 40 детектора света может быть сэмлирован в разные моменты времени. Сэмплы могут быть затем обработаны для идентификации периодических вариаций интенсивности в падающем свете. Более конкретно, может быть желательно использовать обработку, которая стремится идентифицировать вариации интенсивности, которые происходят при одной или множестве заранее выбранных дискретных частотах. Такой подход может быть предпочтительным с точки зрения эффективности и может обеспечить возможность использования компонентов с низкой стоимостью и вычислительных способов, которые потребляют минимальные ресурсы.
Схема 40 детектора света типично включает в себя датчик света с выходом, который варьируется согласно интенсивности света, падающего на датчик света. Неограничивающие примеры датчиков света включают в себя фототранзисторы, фотодиоды, фоторезисторы и устройства с зарядовой связью. Датчик света может быть дискретным компонентом с низкой стоимостью, производящим выход вскоре после включения камеры 100. Например, датчик света может создавать выход до того, как инициализированы другие компоненты камеры 100. Таким образом, выход датчика света может быть использован для определения интервалов времени экспонирования датчика 20 изображения, незамедлительно после запуска, до оперирования камерой 100 пользователем. В альтернативном варианта осуществления датчик света может быть интегрирован с другими электронными компонентами камеры 100 в одном или более известных устройств, таких как ASIC или SOC.
В примерном варианте осуществления на фиг.1, схема 40 детектора света присоединена к GPIO 33 посредством сигнальных штырьков GPIO, GPIO1 и GPIO2. Фототранзистор 42 конвертирует свет в электрический сигнал, пропорциональный интенсивности света, падающего на фототранзистор 42. Свет может быть направлен к фототранзистору 42 посредством оптической системы 10, или свет может достигать фототранзистора 42 посредством прямого экспонирования, или иначе, независимо от оптической системы 10. Фототранзисторы могут быть изготовлены с варьирующимися чувствительностями к разным длинам волн света. Фототранзистор 42 может быть изготовлен с возможностью быть чувствительным к видимому спектру света, от приблизительно 380 нанометров (нм) до 750 нм. Фототранзисторы являются специализированным видом биполярного плоскостного транзистора, включающего в себя базу, коллектор, эмиттер и паразитный конденсатор между коллектором и эмиттером. SFH 310, изготовленный OSRAM Opto Semiconductors, Регенсбург, Германия, может быть пригодным для фототранзистора 42, например.
Резисторы 44 и 46 смещают фототранзистор 42 так, что ток, генерируемый светом, ударяющимся об область база-коллектор фототранзистора 42, может быть усилен как ток, текущий от коллектора C к эмиттеру B. Резистор 44 присоединен между сигнальным штырьком GPIO1 и коллектором фототранзистора 42. Резистор 46 присоединен к земле с одной стороны и к сигнальному штырьку GPIO2 и эмиттеру фототранзистора 42 с другой стороны. Сопротивление резистора 46 может быть намного большим, чем сопротивление резистора 44. Например, значения резисторов 44 и 46 могут быть 10 Ом и 510 килоом соответственно.
На фиг.2 показана диаграмма интервалов времени, которая иллюстрирует один пример того, как может быть использована схема 40 детектора света для обнаружения интенсивности света, падающего на фототранзистор 42. В примере на Фиг.2 схему 40 детектора света поочередно разряжают и заряжают, так чтобы время нарастания схемы 40 детектора света могло быть последовательно измерено, чтобы сгенерировать множество сэмплов времени нарастания. Время нарастания схемы 40 детектора света пропорционально интенсивности света, падающего на схему 40 детектора света. В альтернативных вариантах осуществления могут быть измерены другие свойства схемы 40 детектора света, такие как ток через фототранзистор 42 или напряжение на резисторе 46. Как указано выше, существуют многочисленные возможности для генерирования и сэмплирования электрических сигналов, которые варьируются в ответ на интенсивность окружающего света.
IH
Продолжая с примером на фиг.2, в момент времени T0 схема 40 детектора света находится в состоянии разряда. Сигнальные штырьки GPIO, GPIO1 и GPIO2 сконфигурированы как выходы, заданные в логический ноль. В момент времени T1 схему 40 детектора света переключают в состояние заряда. GPIO1 сконфигурирован как выход, задающий логическую единицу, и GPIO2 сконфигурирован как вход. В установившемся состоянии, когда на фототранзистор 42 падает достаточно света, напряжение GPIO2 будет дано делителем напряжения, сформированным резисторами 44 и 46. Когда резистор 46 намного больше, чем резистор 44, напряжение GPIO2 будет превышать V и выход GPIO2 будет интерпретирован как логическая единица.
DD
IH
DD
Однако в переходном состоянии начиная с момента времени T1, паразитный конденсатор фототранзистора 42 предохраняет напряжение от немедленного изменения на коллекторе и эмиттере фототранзистора 42. Паразитный конденсатор заряжается со скоростью, определяемой его емкостью, сопротивлением резисторов 44 и 46, V и количеством падающего света на фототранзистор 42. По мере того как конденсатор заряжается, напряжение GPIO2 может увеличиваться, пока схема достигает установившегося состояния или пока напряжение GPIO1 задают с помощью логического нуля. На фиг.2, напряжение GPIO2 достигает установившегося состояния и напряжение GPIO2 превышает V в момент времени T2. Время 210 нарастания, которое является разницей между моментом времени T2 и T1, может быть измерено как представление количества (интенсивности) света, ударяющего фототранзистор 42. Когда свет, ударяющий фототранзистор 42, увеличен (т.е. большая интенсивность), паразитный конденсатор будет заряжаться быстрее и время 210 нарастания будет уменьшено. Таким образом, существует обратная взаимосвязь между интенсивностью окружающего света и временем 210 нарастания. Время 220 заряда, которое является разницей между моментом времени T3 и T1, может быть установлено так, чтобы время 210 нарастания было меньше, чем время 220 заряда для ожидаемых диапазонов интенсивности окружающего света и допусков сопротивления резисторов 44 и 46, V, и емкости фототранзистора 42.
В момент времени T3, схему 40 детектора света возвращают в состояние разряда. GPIO1 и GPIO2 сконфигурированы как выходы, задающие логические нули. Это может обеспечить возможность паразитному конденсатору фототранзистора 42 быстро разряжаться через малый резистор 44. Посредством разряда паразитного конденсатора, схеме 40 детектора света обеспечивают возможность для следующего состояния заряда в момент времени T4. Время 230 разряда, которое является разницей между моментом времени T4 и T3, может быть короче, чем время 220 заряда. Период 240 сэмплирования является суммой времени 220 заряда и времени 230 разряда.
Из вышеуказанного следует осознавать, что диаграмма интервалов времени на Фиг.2 предоставляет пример того, как индивидуальный сэмпл может быть захвачен из схемы детектора света. Следует осознавать, однако, что типично захватывают множественные сэмплы. Конкретно, последовательность сэмплов может быть собрана из схемы 40 детектора света посредством множественных циклов операции заряда и разряда, описанной выше. Сэмплы могут быть сохранены посредством записи каждого времени 210 нарастания, когда это происходит, например, посредством записи времени нарастания в место хранения (например, в RAM 34 или энергонезависимое хранилище 30).
Возвращаясь теперь к фиг.3, примерный способ будет описан для получения множества сэмплов. Способ применяют для получения любого желаемого числа сэмплов. Как будет разъяснено ниже более подробно, желаемое число сэмплов и другие параметры сэмплирования могут зависеть от различных факторов. В общем, желательно минимизировать количество сэмплирования, тогда как в то же время предоставлять число сэмплов, которое обеспечивает высокодостоверный выход и которое хорошо подходит к вычислительным способам, которые используют для распознавания интенсивности мерцания. К тому же использование подходящего числа сэмплов будет в некоторых случаях облегчать использование эффективных способов и процессов, которые уменьшают сложность и время, ассоциированные с обработкой сэмплов.
На фиг.3 показан примерный вариант осуществления способа захвата множества сэмплов времени нарастания из схемы 40 детектора света. При описании фиг.3 различные ссылки будут также сделаны на компоненты и сигнальные элементы, показанные на Фиг.1 и 2. На этапе 310, номер сэмпла устанавливают в ноль и сигнальные штырьки GPIO, GPIO1 и GPIO2 конфигурируют как выходы, задающие логический ноль. Таким образом, паразитный конденсатор фототранзистора 42 может быть разряжен, как проиллюстрировано в T0 на Фиг.2. Таймер сэмплирования, таймер заряда и таймер разряда инициализируют с их начальным значением. В примерном варианте осуществления таймеры могут быть инициализированы со значением ноль, так что таймеры могут быть увеличены, чтобы показать ход времени. В альтернативном варианте осуществления в таймеры может быть записано желаемое значение, ассоциированное с интервалом времени, и таймеры могут быть уменьшены, чтобы показать ход времени.
Далее, на этапе 315 номер сэмпла сравнивают с максимальным числом сэмплов. Если номер сэмпла равняется максимальному числу сэмплов, то все сэмплы были захвачены и обработка завершается. Если номер сэмпла меньше, чем максимальное число сэмплов, то требуется захватить больше сэмплов и способ 300 продолжается на этапе 320.
IH
На этапе 320 GPIO1 сконфигурирован как выход, задающий логическую единицу, и GPIO2 сконфигурирован как вход. Таймер заряда и таймер сэмплирования могут быть запущены. Таймеры могут быть реализованы с помощью выделенных аппаратных таймеров или программных контуров, например. Таким образом, схема 40 детектора света может начать состояние заряда, как например, в момент времени T1 на фиг.2. На этапе 325 определяют, превышает ли напряжение на GPIO2 V и является ли логической единицей. Если GPIO2 является логической единицей, способ 300 продолжается на этапе 330. Если GPIO2 не является логической единицей, стандартная программа 300 продолжается на этапе 327. На этапе 327 способ 300 ожидает прежде чем продолжить с этапом 325. Этапы 325 и 327 могут быть выполнены посредством активного опроса на предмет значения GPIO2 или посредством ожидания прерывания, ассоциированного со значением GPIO2, например.
IH
На этапе 330 напряжение на сигнальном штырьке GPIO2 гораздо больше чем или равно V и значение таймера сэмплирования может быть сохранено. Это соответствует моменту времени T2 на фиг.1. Значение таймера сэмплирования измеряет время нарастания сигнала GPIO2 от логического нуля до логической единицы. Значение таймера сэмплирования может быть использовано в качестве одиночного сэмпла сигнала интенсивности окружающего света. На этапе 335 определяют, равен ли таймер заряда итоговому значению таймера заряда. Итоговое значение таймера заряда может быть нулем, когда таймер уменьшают, чтобы показать ход времени. В альтернативном варианте осуществления итоговое значение таймера заряда может быть другим значением, когда таймер увеличивают, чтобы показать ход времени. Значения таймера заряда выбирают так, чтобы таймер заряда достиг своего итогового значения, когда время 220 заряда истечет, соответствующего моменту времени T3 на фиг.2. Если таймер заряда равен итоговому значению таймеру заряда, способ 300 продолжается на этапе 340. Если таймер заряда не равен итоговому значению таймеру заряда, способ 300 продолжается на этапе 337. На этапе 337 способ 300 ожидает прежде чем продолжить с этапом 335. Этапы 335 и 337 могут быть выполнены посредством активного опроса на предмет значения, сгенерированного посредством программного или аппаратного таймера, или посредством ожидания прерывания, ассоциированного с аппаратным таймером, например.
На этапе 340, GPIO1 и GPIO2 сконфигурированы как выходы, задающие логические нули. Таймер разряда может быть запущен. Таким образом, схема 40 детектора света может начать состояние разряда, как например, в момент времени T3 на фиг.2. Во время состояния разряда паразитный конденсатор фототранзистора 42 может быть разряжен. На этапе 345 определяют, равен ли таймер разряда итоговому значению таймера разряда. Значения таймера разряда выбирают так, чтобы таймер разряда достиг своего итогового значения, когда время 230 разряда истечет, соответствующего моменту времени T4 на фиг.2. Если таймер разряда равен итоговому значению таймеру разряда, способ 300 продолжается на этапе 350. Иначе, способ 300 продолжается на этапе 347, где способ 300 ожидает, прежде чем продолжить на этапе 345.
На этапе 350 способ 300 подготавливает таймеры для еще одной итерации цикла сэмплирования. Таймер сэмплирования, таймер заряда и таймеры разряда инициализируют с их начальными значениями. Номер сэмпла увеличивают, и способ 300 продолжается на этапе 315. Таким образом, может быть захвачено множество сэмплов времени нарастания из детектора 40 света.
Множество сэмплов времени нарастания может быть обработано, как проиллюстрировано в примерном варианте осуществления на фиг.4 для идентификации периодических вариаций интенсивности. Более конкретно, данный пример иллюстрирует обработку, которую используют для определения того, варьировалась ли интенсивность света, который упал на детектор, при одной из множества заранее выбранных частот. Например, мерцание света от флуоресцентной лампы может быть проанализировано для определения того, питается ли флуоресцентная лампа источником электропитания AC в 50 Гц или источником электропитания AC в 60 Гц, с помощью результирующей вариации интенсивности, происходящей при 100 Гц или 120 Гц соответственно.
В блоке 410, сигнал сэмплируют и захватывают, например, используя системы и способы, описанные относительно фиг.1-3. В одном варианте осуществления N сэмплов сигнала захватывают на протяжении всего временного окна до того, как обработка может продолжиться. В альтернативном варианте осуществления сэмплирование и захват сигнала могут происходить параллельно с обработкой 415. По меньшей мере один сэмпл захватывают до того, как обработка 415 может начаться, и N сэмплов захватывают до того, как обработка 415 может завершиться. Сэмплы сигнала пропускают через блоки 430, 432, 434 и 436 для дальнейшей обработки.
В блоках 420, 422, 424 и 426 генерируют прямоугольные волны для вычисления набора скалярных произведений. В настоящем примере две прямоугольные волны используют для каждой дискретной частоты вариации интенсивности, подлежащей обнаружению. Каждая прямоугольная волна чередуется между единицей и нулем при частоте, подлежащей обнаружению. В некоторых вариантах осуществления рабочий цикл волн может быть 50%, так что прямоугольная волна является высокой (например, единица) для половины периода и низкой (например, ноль) для половины периода. В альтернативном варианте осуществления, прямоугольная волна может чередоваться между положительными и отрицательными значениями (например, положительная единица и отрицательная единица). Типично, две прямоугольные волны, используемые для данной частоты, применяют на 90 градусов не совпадающими по фазе друг с другом. В некоторых вариантах осуществления такое использование сдвинутых по фазе колебательных сигналов может обеспечить возможность обнаружения частоты при произвольной фазе, так как исходное мерцание и сэмплирование в камере обычно являются асинхронными.
Настоящий пример представлен в контексте идентификации того, питаются ли ближайшие флуоресцентные источники света сетью AC в 50 Гц или 60 Гц. Следовательно, используют четыре прямоугольные волны - две при 100 Гц и другие две при 120 ГЦ. В частности, на этапе 420, первую прямоугольную волну генерируют с частотой 100 Гц. В блоке 422 генерируют вторую прямоугольную волну, имеющую ту же частоту, что и первая, но на 90 градусов не совпадает по фазе. В блоке 424 третью прямоугольную волну генерируют с частотой 120 Гц. В блоке 426 генерируют четвертую прямоугольную волну с той же частотой, что и третья, но на 90 градусов не совпадает по фазе. Как показано в блоках 430, 432, 434 и 436, прямоугольные волны смешивают с сэмплами 410 для генерирования скалярных произведений.
Конкретно, в блоках 430, 432, 434 и 436 скалярные произведения вычисляют посредством смешивания (перемножения) сэмплов индивидуально с каждой из четырех прямоугольных волн. Результирующее значение суммирований (т.е. скалярные произведения S0, S1, S2 и S3) будет зависеть от конкретной реализации прямоугольных волн как, например, является ли нижний участок прямоугольной волны отрицательным, нулевым или некоторым другим значением.
В блоках 440 и 442 генерируют промежуточные суммы для скалярных произведений при каждой частоте. В частности, в блоке 440 вывод скалярного произведения при 100 Гц вычисляют посредством прибавления абсолютного значения скалярного произведения S0 к абсолютному значению скалярного произведения S1. В блоке 442 вывод скалярного произведения при 120 Гц вычисляют посредством прибавления абсолютного значения скалярного произведения S2 к абсолютному значению скалярного произведения S3. Относительные величины промежуточной суммы при 100 Гц и промежуточной суммы при 120 Гц могут указывать, варьируется ли интенсивность (мерцание) основного источника света при 100 Гц или 120 Гц, или нет. Этот анализ может быть выполнен, например, в блоке 450.
о
В частности в блоке 450, промежуточные суммы сравнивают для определения того, варьируется ли интенсивность основного источника света при одной из заранее выбранных частот, т.е. 100 Гц или 120 Гц в текущем примере. Например, относительно бльшая промежуточная сумма может указывать, что мерцание происходит при частоте, ассоциированной с этой промежуточной суммой. Более конкретно, в зависимости от числа сэмплов и экспериментальных наблюдений, может быть установлено, что всегда, когда промежуточная сумма при 100 Гц больше, чем промежуточная сумма при 120 Гц на множитель 4, то установка является средой с AC 50 Гц. И наоборот, среда с AC 60 Гц следует предполагать, когда промежуточная сумма при 120 Гц была по меньшей мере в четыре раза больше, чем промежуточная сумма при 100 Гц. Если ни одно условие не существует, то следует предполагать, например, что среда освещения не содержит ощутимого мерцания (например, нет близкого флуоресцентного источника света).
Вышеуказанный пример является предпоследней возможностью для сравнения, выполняемого в блоке 450. Каждую промежуточную сумму можно сравнить с заранее определенным пороговым значением или с относительным пороговым значением. Как указано выше, пороговые значения или другие пусковые значения могут быть получены посредством эксперимента. Могут быть также использованы теоретические способы.
Относительное пороговое значение может улучшить точность обнаружения при определенных условиях освещения. При определенных установках, например, авторы изобретения наблюдали, что большие расхождения между промежуточными суммами строго согласуются с присутствием мерцания при конкретной интенсивности. Конкретно, когда записывающее устройство подвергают воздействию среды с флуоресцентным светом, питаемым AC в 60 Гц, использование настоящих способов приводит к промежуточной сумме при 120 Гц, которая значительно больше, чем промежуточная сумма при 100 Гц. Как вкратце упомянуто выше, множитель четыре был использован в одном варианте осуществления для установления относительных пороговых значений как следует: (1) когда промежуточная сумма при 100 Гц по меньшей мере в четыре раза больше, чем промежуточная сумма при 120 Гц, предполагают, что окружающая среда включает в себя мерцание при 100 Гц (например, сеть AC в 50 Гц); и (2) когда промежуточная сумма при 120 Гц по меньшей мере в четыре раза больше, чем промежуточная сумма при 100 Гц, предполагают, что окружающая среда включает в себя мерцание при 120 Гц (например, сеть AC в 60 Гц).
Как следует осознавать из вышеуказанного примера, в некоторых случаях сравнение в блоке 450 не будет окончательным. Одна промежуточная сумма может быть незначительно больше, чем другая. В частности, видеозаписывающее устройство может быть использовано вне помещения или в комнате, где естественный свет гораздо более интенсивный, чем тот, который создан флуоресцентным освещением или другим источником мерцания. В таком случае сравнение в блоке 450 может оканчиваться определением, что ощутимое мерцание не присутствует.
Несмотря на конкретный путь, которым достигнуты определения, за сравнением в блоке 450 может следовать подходящая установка интервалов времени экспонирования. Например, после определения в блоке 450, что источник света мерцал при 100 Гц, время экспонирования следует соответственно скорректировать в блоке 460, например, посредством корректировки времени интеграции датчика изображения. Как рассмотрено ранее, корректировка интервалов времени экспонирования для расчета известного мерцания может существенно уменьшить визуальные артефакты в записанных изображениях.
Посредством вышеуказанных примеров, которые рассмотрены главным образом в контексте мерцания при 100 Гц и 120 Гц, существуют много других возможностей. Вместо поиска вариаций интенсивности при одной из заранее выбранных частот вариации могут искать только для одиночной заранее выбранной частоты, или при трех и более частотах. Пример поиска при одиночной частоте предполагает для поиска частоты скорости обновления компьютерного монитора, для того чтобы компенсировать вариации интенсивности света, отданного компьютерным монитором. Также, поиск мерцания при множественных разных частотах может быть достигнут посредством выполнения множественных итераций одночастотного поиска, но последовательно при разных частотах. На самом деле, вышеуказанные примеры следует альтернативно выполнять посредством сначала запуска одночастотного поиска мерцания при 100 Гц и затем, последовательно, запуска поиска мерцания при 120 Гц.
Способы, описанные на фиг.3 и 4, могут быть реализованы на процессоре цифровой обработки сигналов (DSP) или другом пригодном устройстве. DSP типично используют аппаратное обеспечение специального назначения и инструкции для эффективной обработки сигналов этой природы. Однако аппаратное обеспечение специального назначения и инструкции могут идти по увеличенной стоимости и/или с большей мощностью, чем другие процессоры, такие как PIC18F2550, например. Способы, описанные на Фиг.3 и 4, имеют отношение к обнаружению одной или более конкретных заранее выбранных дискретных частот. Эта задача типично менее дорогая в вычислительном отношении, чем захват сэмплов колебательных сигналов и реконструирование колебательного сигнала из набора сэмплов. Сложность может быть также уменьшена в результате поиска ограниченного числа частот, как противопоставлено использованию способа, нацеленного на тщательное, многочастотное обнаружение и анализ. Следовательно, описанные на фиг.3 и 4 способы могут иметь добавленное преимущество, которое они могут реализовать на недорогом и/или относительно простом процессоре.
Использование прямоугольных волн может также выдавать различные выгоды, относящиеся к эффективности. Прямоугольные волны могут упростить вычисления относительно других колебательных сигналов, которые могут обеспечить программным/программно-аппаратным реализациям возможность проведения задач, использующих уменьшенное кодовое пространство и время исполнения. Прямоугольные волны могут быть также проще для синтезирования в некоторых случаях, например, по сравнению с синусоидальной или косинусоидальной волнами.
Детали операции сэмплирования могут влиять на способность обнаружения мерцания в окружающем свете. Типично, скорость сэмплирования будет выбрана для удовлетворения теоремы сэмплирования Найквиста-Шенона, которая требует от сэмплирования происходить при скорости в два раза большей, чем частота, подлежащая обнаружению. Следовательно, компоненты схемы 40 детектора света (Фиг.1) и ассоциированную обработку следует выполнять с возможностью сэмплирования на скорости по меньшей мере 240 Гц для того, чтобы идентифицировать вариации интенсивности при 120 Гц. К тому же на производительность технологического приема скалярного произведения, описанного выше, может влиять число сэмплов, которые собирают посредством способа на фиг.3 и используют в блоке 410 (фиг.4). В общем, желательно использовать меньше сэмплов, для того чтобы сберечь вычислительные ресурсы и уменьшить время обработки. С другой стороны, сэмпл должен быть достаточно большим для генерирования значительных и достоверных результатов.
В контексте способа скалярного произведения, описанного выше, было определено, что желательное число сэмплов может быть вычислено на основе делителей/множителей заранее выбранных частот, представляющих интерес. Конкретно, в случае двух частот идентифицируют наибольший общий множитель. Затем, оставшиеся множители перемножают вместе и этот результат умножают на четыре. Этот примерный способ выдает целое число периодов для обеих частот, представляющих интерес, которые могут потенциально предотвратить утечку спектра и появление паразитных частот. Результирующий показатель, отмеченный ниже как N, формирует одну основу для полезного числа сэмплов. Конкретно, если используют грубо N сэмплов (или множественные сэмплы), было обнаружено, что вычисления скалярного произведения могут быть выполнены эффективно и быстро, и что результаты строго и точно идентифицируют, когда мерцание присутствует при одной из двух частот. К тому же удвоение базового числа сэмплов в некоторых случаях может обеспечить улучшенное отношение сигнал-шум.
Ссылаясь опять на конкретный контекст среды окружающего света, которая может включать в себя флуоресцентные источники света, питающиеся АС в 50 Гц или 60 Гц, потенциальные вариации интенсивности будут происходить либо при 100 Гц, либо 120 Гц. Таким образом, способ повлечет за собой обработку сэмплов для определения, варьировалась ли интенсивность падающего света при 100 Гц или 120 Гц. Используя вышеуказанную терминологию, наибольший общий множитель равен 20. Остаточный множитель для 100 Гц равен 5 (т.е. 100/20) и остаточный множитель для 120 Гц равен 6 (т.е. 120/20). Остаточные множители затем перемножают вместе и дополнительно умножают на множитель 4, тем самым выдавая 120. Таким образом, желательное базовое число сэмплов 120.
В более общем смысле, когда пытаются идентифицировать вариации интенсивности, происходящие либо при первой частоте, f1, либо второй частоте, f2, базовое число сэмплов N может быть вычислено как следует: для целочисленных частот, каждая частота может быть разложена на наибольший множитель c (т.е. общий для каждой частоты f1 и f2) и остаточный множитель. В частности, f1=с·a, и f2=с·b, где a и b являются остаточными множителями. Число сэмплов может быть вычислено как остаточные множители, умноженные на четыре: Число сэмплов =a·b·4. При некоторых установках, может быть достаточно использовать приближенное множество N сэмплов (например, в пределах 10% или 15% множества N сэмплов) для получения пригодных результатов.
Множитель четыре использован в определенных примерах потому, что 360 градусов, разделенные на 90 градусов, равняются четырем, что может упростить вычисление прямоугольной волны, которая не совпадает по фазе на 90 градусов.
Как описано выше на фиг.1, камера 100 может включать в себя компоненты типа вычислительной системы, которые могут выполнять один или более из вышеописанных способов и процессов. Например, камера может включать в себя логическую подсистему и подсистему хранения данных.
Если включена в состав, логическая подсистема может включать в себя один или более физических устройств, выполненных с возможностью исполнения одной или более инструкций. Например, логическая подсистема может быть выполнена с возможностью исполнения одной или более инструкций, которые являются частью одной или более программ, стандартных программ, объектов, компонентов, структур данных или других логических конструкций. Такие инструкции могут быть реализованы для выполнения задачи, реализации типа данных, преобразования состояния одного или более устройств или достижения иным образом желаемого результата. Логическая подсистема может включать в себя один или более процессоров, которые выполнены с возможностью исполнения программных инструкций. Дополнительно или в качестве альтернативы, логическая подсистема может включать в себя одну или более аппаратных или программно-аппаратных логических машин, выполненных с возможностью исполнения программных или программно-аппаратных инструкций. Логическая подсистема может включать в себя логическую схему ввода и вывода общего назначения для осуществления связи с электрической схемой камеры 100.
Если включена в состав, подсистема хранения данных может включать в себя одно или более физических устройств, выполненных с возможностью хранения данных и/или инструкций, исполняемых логической подсистемой, для реализации способов и процессов, описанных в настоящем документе. Когда реализуют такие способы и процессы, состояние подсистемы хранения данных может быть преобразовано (например, для хранения других данных). Подсистема хранения данных может включать в себя съемные носители и/или встроенные устройства. Подсистема хранения данных может включать в себя оптические запоминающие устройства, полупроводниковые запоминающие устройства и/или магнитные запоминающие устройства, среди прочих. Подсистема хранения данных может включать в себя устройства с одной или более из следующих характеристик: энергозависимая, энергонезависимая, динамическая, статическая, чтение/запись, только чтение, произвольного доступа, последовательного доступа, адресуемая размещением, адресуемая файлом и адресуемая контентом. В некоторых вариантах осуществления логическая подсистема и подсистема хранения данных могут быть интегрированы в одно или более известных устройств, таких как специализированная интегральная микросхема (ASIC) или система на кристалле (SOC).
Следует понимать, что конфигурации и подходы, описанные в настоящем документе, являются примерными по природе и что эти конкретные варианты осуществления или примеры не должны рассматриваться в ограничивающем смысле, так как возможны многочисленные вариации. Конкретные стандартные программы или способы, описанные в настоящем документе, могут представлять одну или более из любого числа стратегий обработки. В связи с этим различные действия могут быть выполнены в проиллюстрированной последовательности, в других последовательностях, параллельно или в некоторых случаях пропущены. Аналогично, порядок вышеописанных процессов может быть изменен.
Объект изобретения настоящего раскрытия включает в себя все новаторские и неочевидные комбинации и подкомбинации различных процессов, систем и конфигураций, и других признаков, функций, действий и/или свойств, раскрытых в настоящем документе, равно как и какие-либо или все их эквиваленты.