СПОСОБ КАЛИБРОВКИ КАМЕРЫ
METHOD OF CAMERA CALIBRATION

Область техники, к которой относится изобретение
Настоящее изобретение относится к вычислительному устройству и способу калибровки камеры, осуществляемому в вычислительном устройстве.
Уровень техники
Различные типы транспортных средств, в том числе, легковые автомобили, внедорожники, легкие, средние и тяжелые грузовые автомобили и т.д., могут включать в себя камеры, направленные наружу, например, камеры могут быть установлены в пассажирском салоне транспортного средства за лобовым стеклом. Такие камеры могут использоваться для выполнения различных действий, например, для выдачи предупреждений, касающихся смены или удержания полосы движения, управления фарами (например, для управления включением дальнего света), обнаружения дорожных знаков, светофоров и приближающихся транспортных средств и т.д. Однако в случае неправильной высоты установки и угла расположения камеры (угла камеры относительно линии горизонта) при выполнении действий, описанных выше, данная камера не будет выдавать точные результаты измерений и/или обнаружений (например, она может неправильно определять боковое расстояние от камеры до разделительной линии). Угол расположения камеры может быть определен на основании известного значения высоты расположения камеры, например, расстояния от земли до камеры, установленной в транспортном средстве, и параметров щита с мишенью (расстояние, размеры). В этом случае определение угла расположения камеры зависит от расчетной высоты транспортного средства. Однако некоторые транспортные средства могут иметь множество конфигураций и/или разный вес, в результате чего высота транспортного средства в конце процесса сборки, во время которого обычно выполняется калибровка камеры, может иметь достаточно сильно различающиеся значения. В настоящее время существует необходимость в механизмах, позволяющих определять высоту и/или угол расположения камеры в транспортных средствах при неизвестном значении их высоты (например, при отсутствии дополнительных эталонных значений высоты, таких как высота арки колес или высота расположения кузова транспортного средства).
Раскрытие изобретения
Предложено вычислительное устройство с процессором и запоминающим устройством, запрограммированное для:
сохранения на запоминающем устройстве значения первого горизонтального расстояния от камеры до первого щита и значения второго горизонтального расстояния от камеры до второго щита;
приема значений первого и второго углов между центральной осью камеры в номинальном положении и соответствующими первым и вторым положениями, причем первое положение задано положением, в котором камера обнаруживает первую центральную точку на первом щите, а второе положение задано положением, в котором камера обнаруживает вторую центральную точку на втором щите, и
использования значений первого и второго углов и значений первого и второго горизонтальных расстояний от камеры до первого щита и второго щита, соответственно, для определения:
вертикального расстояния от второй центральной точки до точки, заданной пересечением первой линии, проходящей через второй щит, и второй линией, которая параллельна полу и имеет конечную точку в камере и определенный угол, и
угла отклонения между третьей линией, проходящей от камеры в номинальном положении, и второй линией.
Значения первого и второго углов могут быть определены на основании обработки по крайней мере одного изображения, полученного камерой.
Вычислительное устройство может быть дополнительно запрограммировано для определения угла отклонения вычислением соответствующих тригонометрических функций первого и второго углов и использования расчетных значений тригонометрических функций и первого и второго горизонтальных расстояний для определения значения тригонометрической функции угла отклонения.
Вычислительное устройство может быть запрограммировано для определения угла отклонения вычислением тангенса угла отклонения в соответствии с уравнением:
A
1
2
A
1
2
где x=tanθ, y=tanθ, z=tanθ, и дополнительно в котором θ обозначает угол отклонения, θ обозначает первый угол, а θ обозначает второй угол.
Вычислительное устройство может быть включено в камеру.
Первая центральная точка первого щита может быть расположена на первом вертикальном расстоянии от пола, а вторая центральная точка второго щита может быть расположена на втором вертикальном расстоянии от пола.
Первое вертикальное расстояние и второе вертикальное расстояние могут быть одинаковыми вертикальными расстояниями.
Вычислительное устройство дополнительно может быть запрограммировано для использования первого вертикального расстояния и/или второго вертикального расстояния для определения высоты расположения камеры относительно пола.
Предложен способ определения угла и высоты расположения камеры, исполняемый в вычислительном устройстве с процессором и запоминающим устройством, в котором:
измеряют первый и второй углы между центральной осью камеры в номинальном положении и соответствующими первым и вторым положениями, причем первое положение задано положением, в котором камера обнаруживает первую центральную точку на первом щите, а второе положение задано положением, в котором камера обнаруживает вторую центральную точку на втором щите, и
используют значения первого и второго углов и значения первого и второго горизонтальных расстояний от камеры до первого щита и второго щита, соответственно, получая определенное вертикальное расстояние и определенный угол; причем:
определенное вертикальное расстояние представляет собой расстояние от второй центральной точки до точки, заданной пересечением первой линии, проходящей через второй щит, и второй линией, которая параллельна полу и имеет конечную точку в камере, и
определенный угол представляет собой угол между третьей линией, проходящей от камеры в номинальном положении, и второй линией.
Значения первого и второго углов могут определять на основании обработки по крайней мере одного изображения, полученного камерой.
В способе могут дополнительно определять угол отклонения вычислением соответствующих тригонометрических функций первого и второго углов и использовать расчетные значения тригонометрических функций и первое и второе горизонтальные расстояния для определения значения тригонометрической функции угла отклонения.
В способе могут дополнительно использовать первое вертикальное расстояния и/или второе вертикальное расстояния для определения высоты расположения камеры относительно пола.
Предложена система для определения угла и высоты расположения камеры, включающая в себя:
первый щит, который включает в себя первую центральную точку, и второй щит, который включает в себя вторую центральную точку;
камеру, расположенную на первом горизонтальном расстоянии от первого щита и втором горизонтальном расстоянии от второго щита;
вычислительное устройство, включающее в себя процессор и запоминающее устройство, при этом на запоминающем устройстве хранятся значения первого и второго горизонтальных расстояний, а также инструкции, исполняемые процессором для:
измерения первого и второго углов между центральной осью камеры в номинальном положении и соответствующими первым и вторым положениями, причем первое положение задано положением, в котором камера обнаруживает первую центральную точку, а второе положение задано положением, в котором камера обнаруживает вторую центральную точку, и
использования значений первого и второго углов и значений первого и второго горизонтальных расстояний, для получения определенного вертикального расстояния и определенного угла; причем определенное вертикальное расстояние представляет собой расстояние от второй центральной точки до точки, заданной пересечением первой линии, проходящей через второй щит, и второй линией, которая параллельна полу и имеет конечную точку в камере, и определенный угол представляет собой угол между третьей линией, проходящей от камеры в номинальном положении, и второй линией.
Инструкции, исполняемые процессором, могут также включать в себя инструкции для использования первого вертикального расстояния и/или второго вертикального расстояния для определения высоты расположения камеры относительно пола.
Краткое описание чертежей
На фиг. 1 представлен пример системы определения угла отклонения и высоты расположения камеры.
На фиг. 2 представлен пример первого щита с мишенью для камеры, который является частью системы с фиг. 1.
На фиг. 3 представлен пример второго щита с мишенью для камеры, который является частью системы с фиг. 1.
На фиг. 4 представлен пример способа определения угла и высоты расположения камеры.
Осуществление изобретения
1
2
1
2
1
2
1
2
1
2
На фиг. 1 представлен пример системы 10 для определения угла отклонения и высоты расположения камеры 12, например, камеры 12, устанавливаемой в транспортное средство во время процесса сборки, например, непосредственно перед его завершением. Камера 12 устанавливается на первом заранее заданном известном горизонтальном расстоянии R от первого щита 14 с мишенью для камеры и на втором заранее заданном известном горизонтальном расстоянии R от второго щита 16 с мишенью для камеры. Щиты 14, 16 могут быть размещены таким образом, чтобы соответствующие центральные точки СР, СР находились на одинаковом вертикальном расстоянии от пола 18. Следует понимать, что центральные точки CP, СР могут не быть геометрическими центрами щитов 14, 16, однако зачастую они находятся практически в центре щитов 14, 16, в любом случае для простоты описания будем называть их центральными точками, хотя можно использовать более общий термин «контрольные точки». Также следует понимать, что центральные точки СР, СР могут находиться на разных вертикальных расстояниях от пола 18, хотя очевидно, что установка центральных точек СР, СР на одинаковых вертикальных расстояниях от пола 18 упростит расчеты, приведенные ниже.
1
2
3
2
2
2
3
2
1
2
На фиг. 2 представлен пример первого щита 14 с мишенью для камеры, при этом центральная точка CP находится на мишени с кругами. На фиг. 3 представлен пример второго щита 16 с мишенью для камеры, при этом центральная точка СР находится на мишени в виде шахматной доски. Точка I может соответствовать номинальной или начальной точке, на которой фокусируется камера 12, а точка I может соответствовать целевой точке (точке горизонта), используемой при установке ориентации камеры 12. Следует понимать, что в соответствии с различными вариантами осуществления точки СР, I, I на щите 16 могут иметь различные формы, конфигурации и т.д., в частности, могут быть использованы прямые линии, круглые мишени и т.д. В соответствии с примером с фиг. 3 на щите 16 используется мишень в виде шахматной доски, на которой камера 12 обнаруживает точку СР. Соответственно, щиты 14, 16 могут быть использованы для установки камеры 12 в правильное положение, при этом для определения высоты расположения камеры 12 относительно центральных точек CP, СР могут выполняться измерения, описанные в настоящем документе, после чего можно будет определить высоту расположения камеры 12 относительно пола 18.
1
2
1
1
2
2
3
1
2
Как показано на фиг. 1, вертикальные оси V и V проходят соответственно через щиты 14, 16. Горизонтальная ось А, проходящая от точки О отсчета у камеры 12, пересекается с вертикальной осью V в точке I и с вертикальной осью V в точке I. Точка О отсчета соответствует положению центральной точки линзы камеры 12. Горизонтальной линией А обозначена линия горизонта для камеры 12, т.е. при горизонтальной ориентации камеры 12 данная камера 12 будет расположена параллельно полу 18. Линией D обозначена так называемая «номинальная» ориентация или ориентация по центральной оси поля обзора камеры 12 после ее установки в транспортное средство, т.е. при выравнивании камеры 12 относительно точки I на щите 16. Линией С обозначена линия между центральной осью камеры 12 и обнаруженной центральной точкой CP на щите 14 с мишенью. Линией В обозначена линия между центральной осью камеры 12 и обнаруженной центральной точкой СР на щите 16 с мишенью.
1
1
1
2
2
A
2
2
2
2
Угол θ ограничен линией D и линией С, т.е. угол θ представляет собой угол между центральной осью камеры 12 в номинальном положении (линия D) и линией, проходящей от камеры через центральную точку CP щита 14 (линия С). Аналогичным образом угол θ представляет собой угол между центральной осью камеры 12 в номинальном положении (линия D) и линией, проходящей от камеры через центральную точку СР щита 16 (линия В). В соответствии с настоящим описанием предложены механизмы для определения угла θ между номинальным или начальным положением (линия D) и линией горизонта, т.е. линией, соответствующей горизонтальной ориентации камеры 12 (линия А). Кроме того, данные механизмы позволяют определить значение высоты Н, т.е. расстояние между центральной точкой СР щита 16 и точкой I на линии А горизонта. Определив значение высоты Н и зная расстояние от центральной точки СР до пола 18, которое может быть получено на основании положения центральной точки СР на щите 16 и значения высоты, на которой щит 16 находится над полом 18, можно получить значение высоты СН расположения камеры 12 относительно пола 18.
1
2
1
2
1
2
1
2
А
A
А
Камера 12 может включать в себя процессор и запоминающее устройство, при этом на данном запоминающем устройстве могут храниться инструкции для измерения углов θ, θ. В соответствии с одним примером обнаружение центральных точек CP, СР и измерение углов θ, θ могут выполняться с помощью стандартных технологий обработки изображений, например, путем отсчета пикселей до известного центра или точек CP, СР на щите 14, 16 и до места (например, ряда пикселей), в котором на щитах 14, 16 обнаружен определенный элемент мишени (например, край, перекрестие и т.д.). Для получения значений высоты Н и угла θ в инструкциях, сохраненных и исполняемых камерой 12, также могут использоваться указанные измеренные значения и данные о расстояниях, например, как описано ниже. В некоторых случаях угол θ может называться углом отклонением, поскольку он равен разности между фактическим и ожидаемым (идеальным) положениями камеры 12. В любом случае информация о значениях угла θ и (или) высоты Н может впоследствии быть использована камерой 12 и (или) другими вычислительными устройствами в транспортном средстве для использования данных от камеры 12 при выполнении различных действий, например, контроля смены полосы движения, сближения с другими транспортными средствами, дорожных знаков и (или) сигналов светофора и т.д. Следует понимать, что в качестве альтернативы или дополнения камера может быть подключена, например, по проводному или беспроводному каналу связи, ко второму устройству, например, к вычислительному устройству, включающему в себя процессор и запоминающее устройство и способному выполнять некоторые или все вычисления, указанные в настоящем документе, на основании измерений, выполненных камерой 12.
1
2
1
2
А
1
2
1
2
В соответствии с одним примером, зная значения расстояний R, R и углов θ, θ, можно определить значения высоты Н и угла θ, используя основные положения алгебры и тригонометрии, что будет показано в следующих уравнениях. (Хотя в представленных ниже уравнениях используется функция тангенса, следует понимать, что вместе со значениями R, R, θ и θ, которые могут быть получены в соответствии с описанием, приведенным выше, отдельно или в сочетании друг с другом можно использовать другие тригонометрические функции).
Таким образом:
Путем постепенного преобразования уравнения (5) получим уравнение (12):
A
1
2
Допустим x=tanθ, y=tanθ, z=tanθ, тогда:
A
А
А
Напомним, что x=tanθ. Таким образом, решив уравнение 11 относительно х, можно получить значение θ. Зная значение θ, можно получить значение Н с помощью любого из уравнений 1-4, приведенных выше.
А
На фиг. 4 представлен пример способа определения значений угла θ и высоты расположения камеры 12. Способ 48 начинается на этапе 50, на котором выполняется установка камеры 12. Например, во время производства транспортное средство может быть установлено относительно щитов 14, 16 в положение, указанное выше.
1
2
На этапе 52 камера 12 может записывать изображения щитов 14, 16, как было описано выше, также в соответствии с приведенным выше описанием можно измерить углы расположения камеры 12, например, углы θ, θ.
А
1
2
1
2
На этапе 54 можно вычислить угол θ отклонения, например, с помощью уравнений 1-12, приведенных выше. Например, как было сказано выше, камера 12 может включать в себя процессор и запоминающее устройство, при этом на запоминающем устройстве могут быть записаны инструкции для вычисления угла, а также данные, используемые при расчете угла, включая расстояния R, R и записанные значения углов θ, θ.
На этапе 56 камера 12 вычисляет и сохраняет значение высоты Н.
На этапе 58 камера 12 вычисляет значение вертикальной высоты расположения СН, как показано на фиг. 1, представляющее собой расстояние от камеры 12 до пола 18, используя значение высоты Н, благодаря чему камера 12 сможет использовать значение вертикальной высоты расположения камеры 12 при выполнении операций, основанных на данных от камеры 12.
После этапа 56 способ 48 завершается.
В общем случае вычислительные устройства, аналогичные тем, что были рассмотрены в настоящем описании, могут содержать инструкции, исполняемые одним или несколькими вычислительными устройствами, аналогичными тем, что были рассмотрены в настоящем описании, для осуществления этапов или операций вышеуказанных способов. Например, рассмотренные выше этапы способа могут быть реализованы в виде машиночитаемых инструкций.
Машиночитаемые инструкции могут быть скомпилированы или транслированы из компьютерных программ, созданных с использованием различных языков и (или) технологий программирования, включая, но не ограничиваясь этим, языки Java, С, С++, Visual Basic, Java Script, Perl, HTML и т.д. или их комбинации. В общем случае процессор (например, микропроцессор) принимает инструкции, например, от запоминающего устройства, машиночитаемого носителя и т.д., и выполняет эти инструкции, тем самым, реализуя один или несколько способов, включая один или несколько способов, приведенных в настоящем описании. Такие инструкции и другие данные могут храниться и передаваться с помощью различных машиночитаемых носителей. Файл в вычислительном устройстве обычно представляет собой набор данных, хранящихся на машиночитаемом носителе, например, на носителе данных или в оперативном запоминающем устройстве, и т.д.
Машиночитаемый носитель может представлять собой любой носитель, предоставляющий данные (например, инструкции), которые могут быть обработаны компьютером. Такой носитель может иметь множество форм, включая, но не ограничиваясь этим, постоянные запоминающие устройства, оперативные запоминающие устройства и т.д. Постоянными запоминающими устройствами могут быть, например, оптические или магнитные диски, а также другие виды энергонезависимых носителей. Оперативные запоминающие устройства могут представлять собой, например, динамическое оперативное запоминающее устройство (DRAM), которые обычно являются частью основного запоминающего устройства. Стандартными формами машиночитаемых носителей являются гибкий магнитный диск, жесткий диск, магнитная лента, любые другие виды магнитных носителей, CD-ROM, DVD, любые другие оптические носители, перфорированная лента, бумажная лента, любые другие физические носители информации с отверстиями, RAM, PROM, EPROM, FLASH-EEPROM, другие чипы или карты памяти, а также любые другие носители, с которыми может работать компьютер.
На чертежах одинаковые элементы обозначены одинаковыми ссылочными позициями. Также некоторые или все элементы могут быть изменены. Что касается описанных в данном документе носителей, процессов, систем, способов и т.д., следует понимать, что, несмотря на обозначенную последовательность этапов, такие способы могут быть выполнены с использованием другой последовательности данных этапов. Также следует понимать, что некоторые этапы могут быть выполнены одновременно, а некоторые этапы могут быть добавлены или исключены. Другими словами, описания способов представлены лишь в качестве примера вариантов воплощения изобретения и не могут рассматриваться как ограничение формулы изобретения.
Таким образом, следует понимать, что описание приведено выше в целях наглядности, а не ограничения. Многие варианты осуществления и способы применения, отличные от указанных примеров, станут очевидными после ознакомления с вышеприведенным описанием. Объем изобретения должен определяться не на основании приведенного выше описания, а на основании прилагаемой формулы изобретения вместе со всеми эквивалентами, указанными в данной формуле изобретения. Можно предположить и ожидать будущего развития технологий, упомянутых в данном описании изобретения, а также того, что раскрытые системы и способы будут включены в подобные будущие варианты осуществления изобретения. Таким образом, следует понимать, что применение изобретения может быть изменено и скорректировано и что оно ограничивается только формулой изобретения.
Все термины, используемые в формуле изобретения, следует понимать в их обычных значениях, как это понимают специалисты в области техники, если иное явно не указано в настоящем документе. В частности, использование слов «какой-либо», «данный», «вышеуказанный» и т.д. надо понимать как один или несколько указанных элементов, если в формуле не указано иное.