RU2601421C2 - Способ и система калибровки камеры - Google Patents
Способ и система калибровки камеры Download PDFInfo
- Publication number
- RU2601421C2 RU2601421C2 RU2013141224/07A RU2013141224A RU2601421C2 RU 2601421 C2 RU2601421 C2 RU 2601421C2 RU 2013141224/07 A RU2013141224/07 A RU 2013141224/07A RU 2013141224 A RU2013141224 A RU 2013141224A RU 2601421 C2 RU2601421 C2 RU 2601421C2
- Authority
- RU
- Russia
- Prior art keywords
- camera
- points
- image
- energy source
- parameters
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000013598 vector Substances 0.000 claims description 48
- 238000004422 calculation algorithm Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000006073 displacement reaction Methods 0.000 claims description 9
- 230000005484 gravity Effects 0.000 claims description 5
- 239000000126 substance Substances 0.000 abstract 1
- 238000005457 optimization Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 8
- 230000000875 corresponding effect Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000002068 genetic effect Effects 0.000 description 4
- 230000035945 sensitivity Effects 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 2
- 238000010191 image analysis Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000000053 physical method Methods 0.000 description 1
- 238000001454 recorded image Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/002—Diagnosis, testing or measuring for television systems or their details for television cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/65—Control of camera operation in relation to power supply
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
- G06T2207/30208—Marker matrix
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Studio Devices (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
Изобретение относится к способу калибровки камеры. Техническим результатом является обеспечение эффективной калибровки камеры. Предложен способ и система калибровки камеры, содержащая источник энергии и калибруемую камеру, при этом по меньшей мере источник энергии или камера установлены на механическом приводе с возможностью перемещения относительно друг друга. Процессор соединен с источником энергии, механическим приводом и камерой, и процессор запрограммирован на управление механическим приводом с целью перемещения по меньшей мере источника энергии или камеры относительно друг друга через множество дискретных точек целевой модели калибровки. Процессор дополнительно управляет камерой в каждой из дискретных точек с целью получения цифрового изображения и определяет параметры дисторсии объектива на каждом изображении. Определяют фокусное расстояние камеры, содержащей любой соединенный с камерой объектив, а затем определяют постороннее положение камеры для каждого изображения. 2 н. и 18 з.п. ф-лы, 2 ил.
Description
Предпосылки создания изобретения
Настоящее изобретение относится к способу и системе калибровки камеры.
Для этого сначала определяют параметры дисторсии объектива, затем определяют фокусное расстояние и, наконец, определяют посторонние положения камеры/камер.
На основе описанной методики в настоящем изобретении предложены усовершенствованные способ и система калибровки камеры.
Краткое изложение сущности изобретения
В одном из примеров осуществления предложена система калибровки камеры, содержащая:
источник энергии и калибруемую камеру, при этом по меньшей мере источник энергии или камера установлены на механическом приводе с возможностью перемещения относительно друг друга,
процессор, соединенный с источником энергии, механическим приводом и камерой, при этом процессор запрограммирован на:
управление механическим приводом с целью перемещения по меньшей мере источника энергии или камеры относительно друг друга через множество дискретных точек целевой модели калибровки,
управление камерой в каждой из дискретных точек с целью получения цифрового изображения,
определение параметров дисторсии объектива на каждом изображении,
определение фокусного расстояния камеры, содержащей любой соединенный с камерой объектив, путем:
выбора первоначального фокусного расстояния,
использования алгоритмов в сочетании с первоначальным фокусным расстоянием, физическими размерами пикселов, координатами источника энергии неискаженного изображения в каждой точке последовательности и точными положениями механического привода в каждой точке последовательности с целью определения положения камеры относительно каждой дискретной точки,
определения того, насколько плотно сгруппированы положения камеры, и
уточнения в числовой форме первоначального фокусного расстояния, пока определенные дискретные точки не будут наиболее плотно упакованы, и
определение постороннего (несвойственного) положения камеры для каждого изображения.
Процессор может определять параметры дисторсии объектива путем:
выбора модели коррекции дисторсии и осуществления первоначального расчета параметров этой модели с целью коррекции наблюдаемой дисторсии,
выбора показателя прямолинейности для измерения и представления в количественной форме колинеарных точек на протяжении дискретизированной линии,
использования показателя прямолинейности и уточнения в числовой форме первоначального расчета параметров, пока линии на изображении со скорректированной дисторсией не станут максимально прямыми.
Процессор может определять постороннее положение камеры путем:
создания пучка векторов на геометрической основе,
создания пучка векторов на основе обработки изображений,
выбора показателя для измерения сходства двух пучков векторов, и
уточнения расчетного положения камеры относительно источника энергии с целью доведения до максимума сходства пучков векторов.
В одном из примеров после того, как зарегистрированы цифровые изображения, процессор дополнительно выполняет следующие шаги обработки изображений:
определяет, какие области соседних пикселов на изображении имеют интенсивность, превышающую выбранное пороговое значение,
генерирует список таких областей и пикселов, относящихся к каждой области, с указанием координат и интенсивности пикселов,
удаляет из этого списка любые области, содержащие слишком малое или слишком число большое составляющих пикселов, определенное в зависимости от характеристик камеры, объектива и источника энергии,
удаляет из списка все области, не отвечающие критериям формы, и
определяет центр наибольшей остающейся области.
Процессор может определять центр путем подгонки эллипса к пикселу области и использования ее центра или путем вычисления центра тяжести пикселов в области.
Критерием формы может являться симметрия, при этом симметрия проверяется путем нахождения поперечного сечения области, образующего наиболее протяженный профиль с точки зрения расстояния от первого обнаруженного пиксела до последнего обнаруженного пиксела, и сравнения этого расстояния с расстоянием, определенным при использовании перпендикуляра к наиболее длинной оси.
В одном из примеров процессор управляет механическим приводом с целью его перемещения таким образом, чтобы последовательность точек была поделена на несколько совокупностей, каждая из которых содержит по меньшей мере 3 точки в плоскости и по меньшей мере одну точку вне плоскости, заданной остальными точками.
Процессор определяет точные относительные смещения этих точек путем использования позиционной обратной связи с механическим приводом.
Например, каждая совокупность создается путем применения отличающегося поступательного и углового сдвига с шестью степенями свободы к стандартной нетрансформированной совокупности точек с получением новой совокупности дискретных точек, которые имеют такие же относительные положения.
В другом примере осуществления предложен способ калибровки камеры, включающий:
управление механическим приводом с целью перемещения по меньшей мере источника энергии или камеры относительно друг друга через множество дискретных точек на целевой модели калибровки,
получение цифрового изображения в каждой из дискретных точек с помощью камеры,
определение параметров дисторсии объектива на каждом изображении,
определение фокусного расстояния камеры, содержащей любой соединенный с камерой объектив, и
определение постороннего положения камеры для каждого изображения.
Краткое описание чертежей
На фиг. 1 проиллюстрирован один из примеров системы калибровки цифровой камеры, и
на фиг. 2 показана блок-схема, на которой проиллюстрирован процессор системы, показанной на фиг. 1.
Описание вариантов осуществления
Изобретение относится к способу и система калибровки камеры.
В настоящем изобретении определяются характеристики камеры с любым (известным) спектром чувствительности с точки зрения ее собственных и посторонних параметров. Собственными являются параметры, которые затрагивают проекцию наблюдаемой реальной сцены на формирующее изображения электронное оборудование камеры, и включают по меньшей мере одно из следующего: параметры дисторсии объектива, фокусное расстояние объектива, размер пикселов и ортогональность формирующего изображения электронного оборудования оптической оси объектива.
Посторонние параметры включают по меньшей мере местонахождение камеры относительно точки отсчета или ее ориентацию относительно выбранного определения оси.
Как показано на сопровождающих чертежах, система 10 содержит по меньшей мере одну камеру 12 и/или по меньшей мере один источник 14 энергии.
Следует учесть, что может использоваться несколько камер 12 и несколько источников 14 энергии.
Система также содержит процессор 16, соединенный с источником энергии и/или камерой. Процессор 16 имеет несколько модулей, функциональные возможности которых будут подробнее описаны далее.
В одном из примеров осуществления описанные далее модули могут быть реализованы посредством машиночитаемой среды, в которой воплощены команды, которые при их выполнении машиной побуждают ее осуществлять любой из описанных выше способов.
В другом примере осуществления модули могут быть реализованы с использованием программно-аппаратного обеспечения, специально запрограммированного на осуществление описанных в изобретении способов.
Следует учесть, что варианты осуществления настоящего изобретения не ограничены такой архитектурой и также могут находить применение в системе с распределенной или одноранговой архитектурой. Так, проиллюстрированные модули могут размещаться в одном или нескольких серверах, управляемых одной или несколькими организациями.
Следует также учесть, что в любом из этих случаев модули образуют физическое устройство с физическими модулями специально для выполнения шагов описанного в изобретении способа.
С процессором 16 соединена память 28.
В одном из примеров осуществления для выполнения описанной калибровки используется механический привод 18 в виде роботизированной руки, перемещающей источник энергии в поле обзора камеры.
В проиллюстрированном примере осуществления механический привод 18 может перемещаться серводвигателями (не показанными) под управлением процессора 16.
Положение роботизированной руки 18 в любой заданный момент является известным, и камера регистрирует изображения источника энергии.
Каждое изображение роботизированной руки и источника энергии, регистрируется камерой и доставляется в процессор 16. Камера 12 может быть сконфигурирована таким образом, чтобы сократить время экспозиции и/или раскрыть ирисовую диафрагму объектива, в результате чего источник энергии является видимым, и при этом исключается большая часть фона. Описанные далее алгоритмы действуют независимо от того, сделано ли это, и требуют лишь одного изображения с видимым источником энергии.
Сначала процессор 16 определяет характеристики дисторсии объектива, а затем определяет фокусное расстояние и, наконец, посторонние положения камеры/камер. Эти шаги буду подробнее описаны далее.
После того как зарегистрированы цифровые изображения, модуль 20 обработки цифровых изображений выполняет следующие шаги обработки изображений с целью реализации описанных выше принципов.
1) Определяет, какие области соседних пикселов на изображении имеют интенсивность, превышающую выбранное пороговое значение. Генерирует список таких областей и пикселов, относящихся к каждой области, с указанием координат и интенсивности пикселов.
2) Удаляет из этого списка любые области, содержащие слишком малое или слишком число большое составляющих пикселов, определенное в зависимости от характеристик камеры, объектива и источника энергии.
3) Удаляет из списка все области, не отвечающие критериям формы, таким как симметрия. Симметрия проверяется путем нахождения поперечного сечения области, образующего наиболее протяженный профиль с точки зрения расстояния от первого обнаруженного пиксела до последнего обнаруженного пиксела. Это расстояние сравнивается с расстоянием, определенным при использовании перпендикуляра к наиболее длинной оси. Если соотношение двух расстояний превышает заданное допустимое отклонение от единицы, область отбрасывается.
4) Находит центр наибольшей остающейся области. Он может быть найден, например, путем подгонки эллипса к пикселу области и использования ее центра или путем вычисления центра тяжести пикселов в области.
Затем модуль 22 определения параметров дисторсии объектива процессора 16 выполняет следующие шаги определения параметров дисторсии объектива.
1) Неподвижно устанавливает камеру в положение, позволяющее без помех наблюдать перемещение роботом источника энергии.
2) Побуждает робота перемещать источник энергии по ряду прямых линий. Хотя предполагается, что линии охватывают все поле обзора камеры, это не является строго необходимым.
3) Получает в нескольких (по меньшей мере трех) точках на протяжении каждой линии, а затем обрабатывает изображение источника энергии, как описано выше.
4) Выбирает модель коррекции дисторсии и осуществляет первоначальный расчет параметров этой модели с целью коррекции наблюдаемой дисторсии. При этом используется расширенная форма модели Брауна дисторсии объектива, и используются предшествующие знания или генетический алгоритм с целью определения первоначального исходного положения.
5) Выбирает показатель прямолинейности, определяющий и представляющий в количественной форме степень колинеарности точек на протяжении каждой дискретизированной линии, использованной на шаге 2. Это делается путем подбора подогнанной методом наименьших квадратов линии с наилучшим приближением погрешности на протяжении каждой из дискретизированных точек для каждой прямой. В таком случае показателем является среднеквадратичное расстояние по вертикали от каждой дискретизированной точки до соответствующей ей линии с наилучшим приближением.
6) Использует полученный на шаге 5 показатель. Уточняет в числовой форме выполненный на шаге 4 первоначальный расчет параметров, пока линии на изображении со скорректированной дисторсией (полученном с использованием модели дисторсии и текущего набора параметров) не станут максимально прямыми. Для этого применяются методы многомерной нелинейной численной оптимизации для сведения к минимуму показателя, описанного на шаге 5. В частности, применяются методы с перешагиванием и метод Флетчера-Ривса определения сопряженных градиентов.
После этого модуль 24 определения фокусного расстояния процессора 16 следующим образом определяет фокусное расстояние.
1) Определяет характеристики дисторсии объектива камеры.
2) Неподвижно устанавливает камеру в положение, позволяющее без помех наблюдать перемещение роботом источника энергии.
3) Перемещает робота таким образом, чтобы он задерживался в последовательности дискретных точек. Эта последовательность точек поделена на несколько совокупностей. Каждая совокупность содержит по меньшей мере 3 точки в плоскости и по меньшей мере одну точку вне плоскости, заданной остальными точками. Точные относительные смещения этих точек определяются путем использования позиционной обратной связи с роботом. Каждая совокупность создается путем применения отличающегося поступательного и углового сдвига с шестью степенями свободы к стандартной нетрансформированной совокупности точек с получением новой совокупности дискретных точек, которые имеют такие же относительные положения. Например, в одном из опытных вариантов осуществления каждая совокупность состоит из четырех точек, образующих тетраэдр. В каждом из пяти положений было создано четыре тетраэдра под углом вверх влево, вверх вправо, вниз влево и вниз вправо. В результате общее число тетраэдров составило 20.
4) Обрабатывает изображение камеры в каждой из описанных на шаге 3 дискретных точек, как описано выше, с целью определения координат источника энергии.
5) Использует определенные параметры дисторсии, чтобы найти положение неискаженных пикселов для каждой зарегистрированной координаты, полученной на шаге 4.
6) Выбирает первоначальное фокусное расстояние на основании предшествующих знаний или указанного изготовителем номинального фокусного расстояния.
7) Применяет алгоритмы, описанные в документе RANSAC (Martin А. Fischler и Robert С. Bolles. 1981 г. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography. Commun. ACM 24, 6 (июнь 1981 г. ), 381-395. DOI=10.1145/358669.358692 http://doi.acm.org/10.1145/358669.358692) или документе Kieper (L. Kneip, D. Scaramuzza, R. Siegwart, "A Novel Parametrization of the Perspective-Three-Point Problem for a Direct Computation of Absolute Camera Position and Orientation", Proc. of The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Колорадо-Спрингс, США, июнь 2011 г. ) в сочетании с предполагаемым фокусным расстоянием; физическими размерами пикселов; координатами источника энергии неискаженного изображения в каждой точке последовательности; и точными положениями робота в каждой точке последовательности с целью определения положения камеры относительно каждой совокупности точек.
8) Определяет, насколько плотно сгруппированы определенные положения камеры с шестью степенями свободы. Теоретически положения камеры должны быть идентичными, поскольку камера была установлена неподвижно на шаге 2. Для этого используется сумма стандартных отклонений каждого из положений с шестью степенями свободы в качестве показателя плотности. Тем самым эта чувствительность дополнительно повышается путем наблюдения последовательности точек в двух неподвижных положениях и использования суммы стандартных отклонений относительного положения камер, которые, разумеется, должны быть постоянными.
9) Уточняет в числовой форме предполагаемое фокусное расстояние объектива, пока определенные точки камеры не будут наиболее плотно упакованы в соответствии с показателем, полученным на шаге 8. При этом выполняется простой поиск методом "грубо-точного" последовательного перебора в силу прерывистой природы показателя и его одномерности.
Затем модуль 26 определения посторонних положений камеры процессора 16 следующим образом определяет посторонние положения камер.
1) Определяет параметры дисторсии объектива камеры. Требуются по меньшей мере параметры радиальной и тангенциальной дисторсии, считающиеся значимыми.
2) Определяет фокусное расстояние камеры (или добавляет его к списку неизвестных величин, как описано далее).
3) Неподвижно устанавливает камеру/камеры на механическом основании, желательном для конкретного применения, неподвижно устанавливает механическое основание таким образом, чтобы камеры без помех наблюдали перемещение роботом источника энергии.
4) Перемещает робота через последовательность дискретных точек. Регистрирует изображения в каждой дискретной точке и находит центр источника энергии на изображении камеры, как описано ранее. Также регистрирует в каждой точке точное положение источника энергии, определенное роботом.
5) Определяет первоначальное расчетное положение камеры относительно робота. Для этого используются предшествующие знания о физическом расположении или генетический алгоритм.
6) Создает пучок векторов на основе изображений. Это делается путем использования определенных параметров дисторсии в сочетании с физическими размерами пикселов и фокусным расстоянием. Это фокусное расстояние может быть известно априорно или может быть добавлено в качестве седьмой неизвестной величины, подлежащей определению.
7) Создает пучок векторов на геометрической основе. Они создаются путем использования предполагаемого положения камеры с шестью степенями свободы (шаг 5) и известного положения источника энергии в каждой точке последовательности.
8) Выбирает показатель для определения сходства двух пучков векторов. Для этого в качестве показателя используется сумма углов между соответствующими векторами.
9) Уточняет расчетное положение камеры с шестью степенями свободы относительно робота (и фокусное расстояние камеры, если оно не известно априори) с целью доведения до максимума сходства двух пучков векторов. Для этого используется алгоритм Флетчера-Ривса определения сопряженных градиентов (Fletcher, R. и Reeves, С., "Function minimization by conjugate gradients", Computer Journal 7, 140-054 (1964)) или многомерные нелинейные алгоритмы численной оптимизации с перешагиванием (Snyman, J., "An improved version of the original leap-frog dynamic method for unconstrained minimization: Lfop1(b)," Applied Mathematics and Modelling 7, 216-218 (1983)).
10) В случае калибровки множества камера и при желании выбирает одну камеру или другую известную точку качестве система отсчета для набора камер и отображает определенные положения камер относительно этой точки.
Далее более подробно описаны математические вычисления, лежащие в основе описанных шагов.
Далее используется следующая система математических обозначений: трехмерный вектор Vabc означает вектор, направленный от точки a в сторону точки b и выраженный в виде его проекций на оси системы с ортогональных координат. Vabc используется, когда величина вектора не известна или не имеет значения.
Tabc означает перемещение или смещение точки b относительно точки a. Rab означает эйлерову матрицу поворота 3×3, отображающую поворот системы a с ортогональной осью относительно системы b с ортогональной осью (и в виде ее проекций на нее). Отдельные элементы трехмерных векторов обозначаются как x, y или z, а элементы двухмерных векторов обозначаются во избежание путаницы как горизонтальные (h) и вертикальные (ν).
Соответствующие модули процессора 16 выполняют следующие функциональные шаги с данными зарегистрированных изображений.
1.1) Осуществляют маркировку связных компонент всех пикселов с более высокой яркостью, чем выбранный порог.
1.2) Отбрасывают все компоненты, не отвечающие критериям размера, зависящим от типа источника энергии и разрешения камеры.
1.3) Отбрасывают все компоненты, не отвечающие критериям симметрии формы, т.е. следующим образом для каждой связной компоненты:
a) подбирают линию с наилучшим приближением для каждого из пикселов компоненты:
при этом:
(xi, yi) = кратный i пиксел компоненты
N = число пикселов в компоненте и
= коэффициенты для линии y=mx+c.
Уравнение 1
LA=LA, max-LA, min
при этом:
iЄ(0, N-1)
N = число пикселов, и
m, c = как указано в Уравнении 1.
Уравнение 2
б) определяют ширину компоненты, перпендикулярной линии с наилучшим приближением.
LP-LP, max-LP, min
при этом:
iЄ(0, N-1)
N = число пикселов, и
m, c = как указано в Уравнении 1.
Уравнение 3
Затем процессор сравнивает соотношение длины (LA) и ширины (LP) и отбрасывает его, его оно не отвечает заданным критериям.
1.4) Определяют центр каждой компоненты соответствующим методом, такими как два метода, описанные далее в целях иллюстрации.
а) Центр тяжести
I(x, y) = интенсивность пискела в положении (x, y),
(xi, yi) = координаты кратного i пиксела компоненты
iЄ(0, N-1) и
N = число пикселов в компоненте.
Уравнение 4
б) Подгонка эллипса путем (например) сведения к минимуму следующего показателя:
metric=c0πab+с1(CS-ES)+c2(WS-2ES),
при этом
cn = энный весовой член,
CS = сумма интенсивностей по результатам вычисления центра,
I(h, ν) = интенсивность изображения с двухмерной координатой (h, v),
α=(1-(CR-ER))
W=h∈(Eh-(a+3), Eh+(a+3)),
ν∈(Eν-(a+3), Eν+(a+3))
(Eh, Eν) = центр эллипса,
а = большая ось эллипса,
b = малая ось эллипса
θ = угол большой оси к горизонтали.
Уравнение 5
Определение параметров дисторсии объектива
Для определения параметров дисторсии объектива используется тот факт, что после коррекции дисторсии прямые линии в реальном мире должны проецироваться на прямые линии в пространстве изображения. Для этого робот (и приданный ему источник энергии) перемещается по ряду прямых линий, останавливаясь в нескольких точках на протяжении каждой линии с целью регистрации изображения. В результате регистрируется N линий, каждая из которых имеет Mi, iε(0, N-1) точек. Эти точки обозначаются как
и указывают положение кратной j точки на кратной i линии первоначального необработанного (т.е. искаженного) изображения.
После этого может быть в числовом виде определено произвольное число параметров модели дисторсии объектива Брауна (Brown DC (1966). "Decentering distortion of lenses.". Photogrammetric Engineering. 7:444-462).
Может использоваться любая стандартная программа многомерной численной оптимизации, хотя некоторые из них являются менее эффективными в силу своей техники математических решений и в высокой степени коррелированного характера параметров и остаточного шума, присущего результатам измерений входных данных.
В одном из прототипов настоящего изобретения используется расширенный вариант модели Брауна, в котором к параметрам радиальной дисторсии применяется коэффициент масштабирования радиального усиления, чтобы способствовать разбросу, который мог бы быть вызван неортогональностью объектива оптической оси или другими производственными дефектами. Это не влияет на применимость этой модели, поскольку f(θ)=1 соответствует стандартному случаю, описанному в литературе. Без ущерба для применимости в целях наглядности предположим, что f(θ) имеет форму:
при этом:
(xu, yu) = точка неискаженного изображения,
(xd, yd) = точка искаженного изображения,
(хс, yc) = центр дисторсии,
Kn = энный радиальный коэффициент искажения,
Pn = энный тангенциальный коэффициент искажения,
f(θ) = радиальное усиление,
… = бесконечный ряд.
Уравнение 6
Для измерения того, насколько прямой является совокупность линий, используется показатель, который определяет линию с наилучшим приближением с использованием точек каждой зарегистрированной прямой линии (смотри Уравнение 1), а затем определяет среднеквадратичное расстояние от точек до их прямых линий. Процедура, используемая для определения линии с наилучшим приближением, приведена в Уравнении 1. Этим показателем является:
при этом
NL = число прямых линий в зарегистрированных данных,
Mn = число точек на протяжении энной линии,
dn = однонаправленный вектор, ортогональный среднеквадратичной прямой n,
mn, cn = коэффициент линии n с наилучшим приближением согласно Уравнению 1 и
Уравнение 7
Затем выполняются следующие шаги, чтобы определить остаточную дисторсию, возникающую при заданном наборе параметров.
2.1) Масштабируются полученные параметры из десенсибилизированного пространства градиента:
при этом:
NK = число радиальных параметров,
NP = число тангенциальных параметров,
Nγ = число параметров асимметрии,
(κxc, κxy) = параметры масштабирования центра дисторсии,
κKi = коэффициент масштабирования кратного i радиального параметра,
κPi = коэффициент масштабирования кратного i тангенциального параметра,
κγi = коэффициент масштабирования кратного i параметра асимметрии,
Уравнение 8
2.2) Используются масштабированные параметры, чтобы устранить искажение каждой точки каждой линии, зарегистрированной с целью устранения искажения, т.е.
при этом:
Findist = расширенная модель Брауна, приведенная в Уравнении 6.
Уравнение 9
2.3) Используется Уравнение 1 с целью определения линии с наилучшим приближением с использованием точек с устраненным искажением каждой линии из набора входных данных.
2.4) Используется Уравнение 7 среднеквадратичного расстояния по вертикали от точек до их линий.
Далее приведена процедура численной оптимизации характеризующих дисторсию параметров.
Затем процессор 16 следующим образом вычисляет численную оптимизацию характеризующих дисторсию параметров.
3.1) Определяет, какие параметры будут оптимизироваться. Иными словами, выбирает число параметров радиальной и тангенциальной дисторсии; выбирает, используется ли центр изображения или будет ли найден оптимальный центр дисторсии; и выбирает функцию радиального усиления.
3.2) Выбирает первоначальное значение для каждого параметра. Для этого используются три общепринятых способа:
а) установка всех параметров на 0,
б) использование предшествующих знаний для выбора приблизительных первоначальных значений,
в) определение диапазона каждого параметра и осуществление грубой глобальной оптимизации, такой как, поиск методом последовательного перебора или генетический алгоритм.
3.3) Масштабирует каждый из входных параметров с тем, чтобы градиент был в равной мере чувствительным к отклонению каждого измерения постоянного размера. Это позволяет более точно рассчитывать градиент путем локальной оптимизации, что обеспечивают лучшее определение параметров. В Уравнении 10 представлена процедура масштабирования согласно Уравнению 8.
при этом:
Уравнение 10
3.4) Использует процедуру локальной оптимизации с целью уточнения в числовой форме нормализованных первоначальных параметров, приведенных в Уравнении 10, при этом значение для сведения к минимуму указано в Алгоритме 2. В частности, для выполнения операции минимизации применяются методы с перешагиванием и методы Флетчера-Ривса.
3.5) Денормализует полученные значения характеризующих дисторсию параметров с использованием Уравнения 8.
Определение фокусного расстояния
Процессор 16 определяет фокусные параметры без включения посторонних параметры в группу параметров, подлежащих уточнению в числовой форме.
Далее будет описано определение фокусного расстояния одновременно с посторонними параметрами. При независимом определении фокусного расстояния уменьшается размерность определения посторонних параметров и устраняется неоднозначность, препятствующая возможности определять фокусное расстояние при ортогональном наблюдении плоскостной модели (или последовательности перемещений робота в плоскости).
А. Задача тетраэдральной перспективы
При этой калибровке используется задача трехточечной перспективы, которая в виде формул представлена в документах RANSAC и KIEPER (упомянутых выше) и в целях пояснения в словесной форме изложена в настоящем описании. Когда наблюдает три точки, расстояния между которыми известно, ориентация и перемещение камеры относительно трех точек может определяться методами анализа.
Это делается путем вычисления однонаправленных векторов от камеры до каждой из точек (смотри Уравнение 20), а затем вычисления угла между этими направляющими векторами (посредством скалярного произведения векторов).
Теорема косинусов, приведенная в Уравнении 11, является обобщением теоремы Пифагора применительно к непрямоугольным треугольникам.
а2=b2+c2-2bccos(θa)
при этом:
a, b, c = длины сторон треугольника и
θа = угол напротив стороны а.
Уравнение 11
С помощью теоремы косинусов и с учетом того, что скалярное произведение двух векторов равно косинусу угла между ними, можно создать ряд следующих совместных уравнений, выражающих три неизвестные длины векторов от камеры до каждой точки обзора в перечете на единичные векторы от камеры до точек и известные расстояния между точками треугольника:
= единичный вектор, направленный от камеры к точке i треугольника согласно Уравнению 20.
при этом:
Уравнение 12
Уравнение 12 имеет четыре множества решений (которые определены в документах RANSAC и KIEPER (упомянутых выше), хотя не все решения являются вполне вещественными на комплексной плоскости. Чтобы выбрать, какое решение является верным, требуется четвертая точка, которая лежит вне плоскости первых трех точек и смещение которой относительно другой точки является известным. В таком случае четыре точки образуют тетраэдр, при этом четвертая точка является вершиной. Для каждого вещественного решения вычисляется положение камеры относительно треугольника точек (т.е. основания тетраэдра), а затем вычисляется положение четвертой точки относительно камеры. Направленный в это вычисленное положение вектор четвертой точки сравнивается с вектором, вычисленным на основании координат изображения четвертой точки, и в качестве верного решения выбирается решение с наименьшим углом между этими двумя векторами.
Вся процедура обобщенно представлена далее в Уравнении 13.
при этом:
ft = процедуры, описанные раннее в данном разделе,
Rct = эйлерова матрица поворота системы координат камеры относительно тетраэдра,
Уравнение 13
При определении фокусного расстояния используется описанная выше и обобщенно представленная в Уравнении 13 задача тетраэдра. Следует отметить, что в Уравнении 13 используется следующее далее Уравнение 20, зависящее от параметров дисторсии объектива, которые считаются уже калиброванными методам, описанными в алгоритме 3, и от фокусного расстояния, которое является предметом этого определения параметров.
Используется робот для помещения источника энергии в определенное число положений в поле обзора камеры, в результате чего создается определенное число тетраэдров. В одном из примеров осуществления создается 20 тетраэдров в виде четырех групп по 5 тетраэдров. В каждой группе имеется тетраэдр с центром в отличающемся положении, при этом центральные положения групп образуют ′+′. Поскольку тетраэдры имеют угловое смещение в каждом положении, оптическая ось камеры не перпендикулярна основанию тетраэдра. Тетраэдры в группе расположены под соответствующим углом вверх вправо, вниз вправо, вниз влево и вверх влево относительно точки обзора камеры.
С целью определения фокусного расстояния камера была помещена в два положения для наблюдения тетраэдров. Камеру неподвижно установили в первое положение, а затем наблюдали все тетраэдры, после чего установили ее во второе положение и снова наблюдали, как робот перемещается через те же самые тетраэдры. Камеры была неподвижна в каждом положении при наблюдении тетраэдров. Это означает, что относительное перемещение камеры являлось постоянным. Поскольку для перемещения источника энергии в каждое последующее положение для каждого тетраэдра использовался робот, перемещении точек тетраэдра являются известными. Если параметры дисторсии уже известны, единственным параметром, требуемым Уравнением 13, остается фокусное расстояние.
Для предполагаемого фокусного расстояния может быть вычислено положение и ориентация камеры относительно роботизированного эталона (которым является система координат, в которой известны перемещения источника энергии (т.е. Ticc из Уравнения 13)).
При правильном фокусном расстоянии геометрическое место точек вычисленных положений камеры будет являться наименьшим. Это само по себе может использоваться в качестве показателя для определения идеального фокусного расстояния, хотя при сравнении относительного положения и ориентации камеры во втором положении и в первом положении эта чувствительность к фокусному расстоянию возрастает для каждого тетраэдра. Возможно, это объясняется высокой степенью однотипности используемых роботов (в примере осуществления и ABB IRB120). Отклонение относительных положений является показателем, который сводится к минимуму. Вычисление этого показателя описано далее в Алгоритме 4.
Затем процессор следующим образом вычисляет отклонение камеры от положений с шестью степенями свободы для набора тетраэдров и фокусное расстояние.
4.1) Вычисляет единичные векторы на основании обработанных изображений источника энергии, параметров дисторсии и заданного фокусного расстояния, как описано в Уравнении 20:
при этом:
Ntet = число зарегистрированных тетраэдров
fUV = создает единичный вектор на основании координаты изображения и собственных параметров камеры (Уравнение 20),
Уравнение 14
4.2) Вычисляет для всех тетраэдров положение камеры в каждом положении (следует отметить, что в качестве оси тетраэдра используется роботизированный эталон.
при
Уравнение 15
4.3) Вычисляет для каждого тетраэдра положение камеры в положении b относительно камеры в положении a.
при
Уравнение 16
4.4) Производит итерацию с результатами и выделяет углы рыскания, тангажа и крена из эйлеровых матриц поворота относительных ориентации камеры в двух положениях (т.е. из)
.
4.5) Вычисляет стандартное отклонение ординаты X относительного перемещения камер, вычисленного на протяжении всех тетраэдров. Повторяет вычисление для ординаты Y, ординаты Z и только что вычисленных положений рыскания, тангажа и крена.
4.6) Вычисляет взвешенную сумму стандартных отклонений для использования в качестве показателя:
при этом:
Kn = n-й весовой
Уравнение 17
В одном из примеров осуществления в Уравнении 17 использовались значения весового коэффициента K0=K1=K2=1:0 и K3=K4=K5=10:0.
Чтобы найти идеальное фокусное расстояние, для минимального значения Уравнения 17 должен быть найден диапазон, сосредоточенный вокруг заявленного/расчетного фокусного расстояния объектива. Это может сделано любым методом последовательного перебора, таким как метод Пауэлла или метод Ньютона с целью нахождения переход производной через нуль. Поскольку, как показано, показатель является прерывистым и одномерным, в одном из примеров осуществления применяется поиск методом "грубо-точного" последовательного перебора.
Определение посторонних параметров
Требуется определить положение камеры с шестью степенями свободы относительно робота, фокусное расстояние (если оно не определено, как описано в Разделе VI) и положение пикселов в точке оптического пересечения (также известное как главная точка). Для этого любой из показателей, представленных в Уравнении 18 или Уравнении 19, может быть оптимизирован в числовом виде с использованием устойчивого алгоритма, такого как алгоритм Флетчера-Ривса или алгоритм с перешагиванием (которые упомянуты выше). Первый показатель действует медленнее, но является более точным за счет повышенной чувствительности к почти параллельным векторам, генерируемым обратной косинусной функцией (с большим объемом вычислений).
Уравнения 18 и 19
Показателем является сравнение двух пучков векторов. В Уравнении 20 далее показано, как может генерироваться один из пучков векторов на основании изображений источника энергии, установленного на роботе, после обработки изображений, как описано в Разделе IV, а затем устраняться искажения с использованием Уравнения 6 и характеризующих дисторсию окончательных параметров, определенных в Разделе V. Поскольку считается, что размеры пикселов известны из технических данных, единственными неизвестными величинами остаются (потенциальное) фокусное расстояние и точка пересечения оптических осей. Хорошими исходными подсказками для численной оптимизация служат заявленное изготовителем фокусное расстояние и центр дисторсии, соответственно.
при этом:
fundiatort = положении i,
PP = заданная функция, характеризующая устранение дисторсии
pix_ω = объектива,
pix_h = положение пикселов в точке пересечения оптических осей,
Focal_Len = ширина пикселов на изображении камеры,
Уравнение 20
Второй пучок векторов вычисляют посредством Уравнения 21.
Предполагается, что в каждом положении робота известно положение источника энергии
. После этого используют неизвестный пространственный сдвиг роботизированного эталона
и (также неизвестный) эйлеров поворот роботизированного эталона относительно камеры (Rrc), чтобы определить, а затем нормализовать вектор к каждому положению источника энергии. Следует также отметить, что оба показателя имеют определенную особенность при использовании плоскостного оптического направляющего шаблона, который помещают перпендикулярно оптической оси камеры.
Rrc = роботизированного эталона,
Уравнение 21
В следующем далее алгоритме поясняется, как определяют посторонние параметры, если задан соответствующий набор положений источника энергии, полученных от робота
, и координаты пикселов в местоположении источника энергии на изображении камеры
, полученные способами, описанными в алгоритме 3. Считается, что параметры дисторсии уже были определены, как описано выше.
Далее процессор следующим образом определяет посторонние параметры камеры.
5.1) Выбирает первоначальные значения девяти оптимизируемых параметров. Заявленное/расчетное значение является хорошей отправной точкой для определения фокусного расстояния, а центр дисторсии - для определения главной точки. Отправной точкой для определения трех параметров перемещения и трех параметров ориентации может служить приблизительное физическое измерение. В качестве альтернативы, для получения первоначальных значений может применяться метод грубой глобальной оптимизации, такой как дискретизация методом разреженного последовательного перебора или (как в одном из примеров осуществления) генетический алгоритм.
5.2) Выбирает для каждого из параметров градиент, уменьшающий восприимчивость к коэффициентам масштабирования. Далее приведены значения, используемые в одном из примеров осуществления.
а) Коэффициент γFLen масштабирования фокусного расстояния составляет 10-1 при определении фокусного расстояния (в мм) или исключается из набора оптимизируемых параметров при определении посредством алгоритма 3,
б) Коэффициенты γPPh, γPPν масштабирования главной точки по горизонтали и вертикали составляют 102 при определении главной точки (в пикселах) или исключается из набора параметров при использовании центра дисторсии,
в) коэффициент γYaw масштабирования рыскания составляет 100, при этом угол выражен в радианах,
г) коэффициент γPitch масштабирования тангажа составляет 100, при этом угол выражен в радианах,
д) коэффициент γRoll масштабирования крена составляет 100, при этом угол выражен в радианах,
е) коэффициент γX масштабирования по оси X составляет 10-3, при этом смещение выражено в мм,
ж) коэффициент γY масштабирования по оси Y составляет 10-3, при этом смещение выражено в мм,
з) коэффициент γZ масштабирования по оси Z составляет 10-3, при этом смещение выражено в мм.
5.3) Делит каждый параметр на его соответствующий коэффициент масштабирования, чтобы получить нормализованные параметры (обозначенные надстрочным индексом n).
5.4) Уточняет в числовой форме масштабированные параметры с использованием показателя, описанного в Алгоритме 6. Может использоваться любая нелинейная многомерная численная локальная оптимизация. В одном из примеров осуществления используется алгоритм с перешагиванием или алгоритм Флетчера-Ривса (которые упомянуты выше).
5.5) Умножает полученные масштабированные параметры на их соответствующие коэффициенты масштабирования, чтобы определить положение робота относительно камеры, выраженное через ось камеры (Rrc) и перемещение робота относительно камеры, выраженное через ось камеры
.
5.6) Вычисляет положение камеры относительно робота:
при этом:
Rcr = эйлерова матрица поворота камеры относительно оси координат робота и
Уравнение 22
Затем вычисляют показатель уточнения постороннего параметра.
6.1) Умножают полученные параметры на их соответствующие коэффициенты масштабирования:
Уравнение 23
6.2) Вычисляют эйлерову матрицу поворота робот относительно камеры (Rrc) на основании углов рыскания, тангажа и крена.
6.4) Вычисляют основанный на изображении пучок единичных векторов с использованием Уравнения 20, фокусного расстояния, главной точки, размера пикселов, параметров коррекции дисторсии согласно Уравнению 6 и совокупности положений пикселов центров источника энергии
. (Это требуется делать только один раз, если фокусное расстояние и главная точка не входят в набор оптимизированных параметров).
6.5) Вычисляют пучок векторов на основании положения камеры относительно робота с использованием Уравнения 21, совокупности положений источника энергии п оси робота
, текущей оценки ориентации робота относительно камеры (Rrc) и текущей оценки перемещения робота относительно камеры
.
6.6) Измеряют сходство двух пучков векторов с использованием Уравнения 18.
Следует учесть, что описанные выше способ и система относятся к процессу калибровки камеры и используются в одном из примеров осуществления. Пример осуществления является лишь одним из возможных примеров осуществления интеллектуальной собственности, права на которую заявлены в настоящем изобретении. В частности:
1) использование роботизированной руки для регистрации точек на протяжении прямых линий с целью калибровки параметров дисторсии объектива камера путем подбора модели дисторсии объектива, чтобы обеспечить проекцию прямых линий в пространстве объекта на прямые линии в пространстве изображения. Модели дисторсии могут включать без ограничения модель дисторсии объектива Брауна (упомянутую выше) с использованием или без использования функции радиального усиления и нейронные сети.
2) Определение фокусного расстояния путем сведения к минимуму геометрического места точек (трех- или шестимерных) положений камеры, вычисленных путем наблюдения трех или более планарных точек и одной или нескольких точек вне плоскости.
3) Определение (трех- или шестимерного) положения камеры путем наблюдения набора изображений источника энергии, перемещаемого роботом, и сравнение пучка векторов, основанных на анализе изображений, со вторым пучком векторов, вычисленных на основании предполагаемого (трех- или шестимерного) положения камеры.
После того как камера калибрована, она может использоваться для определения точного местонахождения источника энергии.
Claims (20)
1. Система калибровки камеры, содержащая:
источник энергии и калибруемую камеру, при этом по меньшей мере источник энергии или камера установлены на механическом приводе с возможностью перемещения относительно друг друга;
процессор, соединенный с источником энергии, механическим приводом и камерой, при этом процессор запрограммирован на:
управление механическим приводом с целью перемещения по меньшей мере источника энергии или камеры относительно друг друга через множество дискретных точек целевой модели калибровки;
управление камерой в каждой из дискретных точек с целью получения цифрового изображения;
определение параметров дисторсии объектива на каждом изображении;
определение фокусного расстояния камеры, содержащей любой соединенный с камерой объектив, путем:
выбора первоначального фокусного расстояния,
использования алгоритмов в сочетании с первоначальным фокусным расстоянием, физическими размерами пикселов, координатами источника энергии неискаженного изображения в каждой точке последовательности и точными положениями механического привода в каждой точке последовательности с целью определения положения камеры относительно каждой дискретной точки,
определения того, насколько плотно сгруппированы положения камеры, и
уточнения в числовой форме первоначального фокусного расстояния, пока определенные дискретные точки не будут наиболее плотно упакованы; и
определение несвойственного положения камеры для каждого изображения.
источник энергии и калибруемую камеру, при этом по меньшей мере источник энергии или камера установлены на механическом приводе с возможностью перемещения относительно друг друга;
процессор, соединенный с источником энергии, механическим приводом и камерой, при этом процессор запрограммирован на:
управление механическим приводом с целью перемещения по меньшей мере источника энергии или камеры относительно друг друга через множество дискретных точек целевой модели калибровки;
управление камерой в каждой из дискретных точек с целью получения цифрового изображения;
определение параметров дисторсии объектива на каждом изображении;
определение фокусного расстояния камеры, содержащей любой соединенный с камерой объектив, путем:
выбора первоначального фокусного расстояния,
использования алгоритмов в сочетании с первоначальным фокусным расстоянием, физическими размерами пикселов, координатами источника энергии неискаженного изображения в каждой точке последовательности и точными положениями механического привода в каждой точке последовательности с целью определения положения камеры относительно каждой дискретной точки,
определения того, насколько плотно сгруппированы положения камеры, и
уточнения в числовой форме первоначального фокусного расстояния, пока определенные дискретные точки не будут наиболее плотно упакованы; и
определение несвойственного положения камеры для каждого изображения.
2. Система по п. 1, в которой процессор способен определять параметры дисторсии объектива путем:
выбора модели коррекции дисторсии и осуществления первоначального расчета параметров этой модели с целью коррекции наблюдаемой дисторсии,
выбора показателя прямолинейности для измерения и представления в количественной форме колинеарных точек на протяжении дискретизированной линии,
использования показателя прямолинейности и уточнения в числовой форме первоначального расчета параметров, пока линии на изображении со скорректированной дисторсией не станут максимально прямыми.
выбора модели коррекции дисторсии и осуществления первоначального расчета параметров этой модели с целью коррекции наблюдаемой дисторсии,
выбора показателя прямолинейности для измерения и представления в количественной форме колинеарных точек на протяжении дискретизированной линии,
использования показателя прямолинейности и уточнения в числовой форме первоначального расчета параметров, пока линии на изображении со скорректированной дисторсией не станут максимально прямыми.
3. Система по п. 1, в которой процессор способен определять несвойственное положение камеры путем:
создания пучка векторов на геометрической основе исходя из предполагаемого положения камеры,
создания пучка векторов на основе обработки изображений,
выбора показателя для измерения сходства двух пучков векторов, и
уточнения расчетного положения камеры относительно источника энергии с целью доведения до максимума сходства пучков векторов.
создания пучка векторов на геометрической основе исходя из предполагаемого положения камеры,
создания пучка векторов на основе обработки изображений,
выбора показателя для измерения сходства двух пучков векторов, и
уточнения расчетного положения камеры относительно источника энергии с целью доведения до максимума сходства пучков векторов.
4. Система по п. 1, в которой после того, как зарегистрированы цифровые изображения, процессор дополнительно выполняет следующие шаги обработки изображений:
определяет, какие области соседних пикселов на изображении имеют интенсивность, превышающую выбранное пороговое значение,
генерирует список таких областей и пикселов, относящихся к каждой области, с указанием координат и интенсивности пикселов,
удаляет из этого списка любые области, содержащие слишком малое или слишком большое число составляющих пикселов, определенное в зависимости от характеристик камеры, объектива и источника энергии,
удаляет из списка все области, не отвечающие критериям формы, и
определяет центр наибольшей остающейся области.
определяет, какие области соседних пикселов на изображении имеют интенсивность, превышающую выбранное пороговое значение,
генерирует список таких областей и пикселов, относящихся к каждой области, с указанием координат и интенсивности пикселов,
удаляет из этого списка любые области, содержащие слишком малое или слишком большое число составляющих пикселов, определенное в зависимости от характеристик камеры, объектива и источника энергии,
удаляет из списка все области, не отвечающие критериям формы, и
определяет центр наибольшей остающейся области.
5. Система по п. 4, в которой процессор способен определять центр путем подгонки эллипса к пикселу области и использования ее центра или путем вычисления центра тяжести пикселов в области.
6. Система по п. 4, в которой критерием формы является симметрия.
7. Система по п. 6, в которой симметрия проверяется путем нахождения поперечного сечения области, образующего наиболее протяженный профиль с точки зрения расстояния от первого обнаруженного пиксела до последнего обнаруженного пиксела, и сравнения этого расстояния с расстоянием, определенным при использовании перпендикуляра к наиболее длинной оси.
8. Система по п. 1, в которой процессор способен управлять механическим приводом с целью его перемещения таким образом, чтобы последовательность точек была поделена на несколько совокупностей, каждая из которых содержит по меньшей мере 3 точки в плоскости и по меньшей мере одну точку вне плоскости, заданной остальными точками.
9. Система по п. 8, в которой процессор способен определять точные относительные смещения этих точек путем использования позиционной обратной связи с механическим приводом.
10. Система по п. 8, в которой каждая совокупность создается путем применения отличающегося поступательного и углового сдвига с шестью степенями свободы к стандартной нетрансформированной совокупности точек с получением новой совокупности дискретных точек, которые имеют такие же относительные положения.
11. Способ калибровки камеры, включающий:
управление механическим приводом для перемещения по меньшей мере источника энергии или камеры относительно друг друга через множество дискретных точек на целевой модели калибровки;
получение цифрового изображения в каждой из дискретных точек с помощью камеры;
определение параметров дисторсии объектива на каждом изображении;
определение фокусного расстояния камеры, содержащей любой соединенный с камерой объектив, путем:
выбора первоначального фокусного расстояния,
использования алгоритмов в сочетании с первоначальным фокусным расстоянием, физическими размерами пикселов, координатами источника энергии неискаженного изображения в каждой точке последовательности и точными положениями механического привода в каждой точке последовательности с целью определения положения камеры относительно каждой дискретной точки,
определения того, насколько плотно сгруппированы положения камеры, и
уточнения в числовой форме первоначального фокусного расстояния, пока определенные дискретные точки не будут наиболее плотно упакованы; и
определение несвойственного положения камеры для каждого изображения.
управление механическим приводом для перемещения по меньшей мере источника энергии или камеры относительно друг друга через множество дискретных точек на целевой модели калибровки;
получение цифрового изображения в каждой из дискретных точек с помощью камеры;
определение параметров дисторсии объектива на каждом изображении;
определение фокусного расстояния камеры, содержащей любой соединенный с камерой объектив, путем:
выбора первоначального фокусного расстояния,
использования алгоритмов в сочетании с первоначальным фокусным расстоянием, физическими размерами пикселов, координатами источника энергии неискаженного изображения в каждой точке последовательности и точными положениями механического привода в каждой точке последовательности с целью определения положения камеры относительно каждой дискретной точки,
определения того, насколько плотно сгруппированы положения камеры, и
уточнения в числовой форме первоначального фокусного расстояния, пока определенные дискретные точки не будут наиболее плотно упакованы; и
определение несвойственного положения камеры для каждого изображения.
12. Способ по п. 11, в котором определение параметров дисторсии объектива осуществляется путем:
выбора модели коррекции дисторсии и осуществления первоначального расчета параметров этой модели с целью коррекции наблюдаемой дисторсии,
выбора показателя прямолинейности для измерения и представления в количественной форме колинеарных точек на протяжении дискретизированной линии,
использования показателя прямолинейности и уточнения в числовой форме первоначального расчета параметров, пока линии на изображении со скорректированной дисторсией не станут максимально прямыми.
выбора модели коррекции дисторсии и осуществления первоначального расчета параметров этой модели с целью коррекции наблюдаемой дисторсии,
выбора показателя прямолинейности для измерения и представления в количественной форме колинеарных точек на протяжении дискретизированной линии,
использования показателя прямолинейности и уточнения в числовой форме первоначального расчета параметров, пока линии на изображении со скорректированной дисторсией не станут максимально прямыми.
13. Способ по п. 11, в котором несвойственное положение камеры определяют путем:
создания пучка векторов на геометрической основе исходя из предполагаемого положения камеры,
создания пучка векторов на основе обработки изображений,
выбора показателя для измерения сходства двух пучков векторов, и
уточнения расчетного положения камеры относительно источника энергии с целью доведения до максимума сходства пучков векторов.
создания пучка векторов на геометрической основе исходя из предполагаемого положения камеры,
создания пучка векторов на основе обработки изображений,
выбора показателя для измерения сходства двух пучков векторов, и
уточнения расчетного положения камеры относительно источника энергии с целью доведения до максимума сходства пучков векторов.
14. Способ по п. 13, в котором после того, как зарегистрированы цифровые изображения, дополнительно выполняются следующие шаги обработки изображений:
определяется, какие области соседних пикселов на изображении имеют интенсивность, превышающую выбранное пороговое значение,
генерируется список таких областей и пикселов, относящихся к каждой области, с указанием координат и интенсивности пикселов,
удаляются из этого списка любые области, содержащие слишком малое или слишком большое число составляющих пикселов, определенное в зависимости от характеристик камеры, объектива и источника энергии,
удаляются из списка все области, не отвечающие критериям формы, и
определяется центр наибольшей остающейся области.
определяется, какие области соседних пикселов на изображении имеют интенсивность, превышающую выбранное пороговое значение,
генерируется список таких областей и пикселов, относящихся к каждой области, с указанием координат и интенсивности пикселов,
удаляются из этого списка любые области, содержащие слишком малое или слишком большое число составляющих пикселов, определенное в зависимости от характеристик камеры, объектива и источника энергии,
удаляются из списка все области, не отвечающие критериям формы, и
определяется центр наибольшей остающейся области.
15. Способ по п. 14, в котором центр определяется путем подгонки эллипса к пикселу области и использования ее центра или путем вычисления центра тяжести пикселов в области.
16. Способ по п. 14, в котором критерием формы является симметрия.
17. Способ по п. 16, в котором симметрия проверяется путем нахождения поперечного сечения области, образующего наиболее протяженный профиль с точки зрения расстояния от первого обнаруженного пиксела до последнего обнаруженного пиксела, и сравнения этого расстояния с расстоянием, определенным при использовании перпендикуляра к наиболее длинной оси.
18. Способ по п. 11, в котором механический привод перемещается таким образом, чтобы последовательность точек была поделена на несколько совокупностей, каждая из которых содержит по меньшей мере 3 точки в плоскости и по меньшей мере одну точку вне плоскости, заданной остальными точками.
19. Способ по п. 18, в котором точные относительные перемещения этих точек определяются путем использования позиционной обратной связи с механическим приводом.
20. Способ по п. 18, в котором каждая совокупность создается путем применения одной из шести отличающихся степеней свободы поступательного и углового сдвига к стандартной нетрансформированной совокупности точек с получением новой совокупности дискретных точек, которые имеют такие же относительные положения.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2012/056820 WO2014083386A2 (en) | 2012-11-29 | 2012-11-29 | A method of calibrating a camera and a system therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2013141224A RU2013141224A (ru) | 2015-03-20 |
RU2601421C2 true RU2601421C2 (ru) | 2016-11-10 |
Family
ID=50436405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2013141224/07A RU2601421C2 (ru) | 2012-11-29 | 2012-11-29 | Способ и система калибровки камеры |
Country Status (8)
Country | Link |
---|---|
US (1) | US9330463B2 (ru) |
EP (1) | EP2926543B1 (ru) |
KR (1) | KR101857472B1 (ru) |
CN (1) | CN105308627B (ru) |
IL (1) | IL228659A (ru) |
RU (1) | RU2601421C2 (ru) |
WO (1) | WO2014083386A2 (ru) |
ZA (1) | ZA201306469B (ru) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2699401C1 (ru) * | 2018-08-03 | 2019-09-05 | Общество с ограниченной ответственностью "ДиСиКон" (ООО "ДСК") | Способ и система определения параметров калибровки PTZ камеры |
RU2749363C1 (ru) * | 2020-07-22 | 2021-06-09 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет имени В.Ф. Уткина" | Устройство для автоматизированной калибровки видеокамер различных спектральных диапазонов |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3076657B1 (en) * | 2015-04-02 | 2017-05-24 | Axis AB | Method for determination of focal length for a zoom lens |
WO2016183723A1 (zh) * | 2015-05-15 | 2016-11-24 | 华为技术有限公司 | 一种测量的方法及终端 |
US10882185B2 (en) * | 2017-02-07 | 2021-01-05 | Veo Robotics, Inc. | Dynamically determining workspace safe zones with speed and separation monitoring |
US11820025B2 (en) | 2017-02-07 | 2023-11-21 | Veo Robotics, Inc. | Safe motion planning for machinery operation |
EP3606040B1 (en) | 2017-03-31 | 2021-05-05 | Panasonic Intellectual Property Management Co., Ltd. | Imaging system and correction method |
EP3606038B1 (en) * | 2017-03-31 | 2021-12-08 | Panasonic Intellectual Property Management Co., Ltd. | Imaging system and correction method |
CN107871329B (zh) * | 2017-12-18 | 2021-09-07 | 北京峰云视觉技术有限公司 | 一种相机光学中心的快速标定方法及装置 |
GB2572956B (en) * | 2018-04-16 | 2021-09-08 | Sony Interactive Entertainment Inc | Calibration system and method |
CN109146978B (zh) * | 2018-07-25 | 2021-12-07 | 南京富锐光电科技有限公司 | 一种高速相机成像畸变校准装置及方法 |
CA3111675A1 (en) * | 2018-09-12 | 2020-03-19 | Brainlab Ag | Intra-operative determination of a focal length of a camera for medical applications |
US11074720B1 (en) * | 2020-02-07 | 2021-07-27 | Aptiv Technologies Limited | System and method for calibrating intrinsic parameters of a camera using optical raytracing techniques |
CN111627073B (zh) * | 2020-04-30 | 2023-10-24 | 贝壳技术有限公司 | 一种基于人机交互的标定方法、标定装置和存储介质 |
US20220264072A1 (en) * | 2021-02-12 | 2022-08-18 | Sony Group Corporation | Auto-calibrating n-configuration volumetric camera capture array |
CN113223175B (zh) * | 2021-05-12 | 2023-05-05 | 武汉中仪物联技术股份有限公司 | 基于真实姿态角的管道三维非线性模型构建方法和*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08268393A (ja) * | 1995-03-29 | 1996-10-15 | Toshiba Tesco Kk | 駐機位置指示装置のキャリブレーション方法 |
EP1434169A2 (en) * | 2002-12-27 | 2004-06-30 | Olympus Corporation | Calibration apparatus, calibration method, program for calibration, and calibration jig |
RU2289111C2 (ru) * | 2004-02-16 | 2006-12-10 | Курский государственный технический университет | Способ адаптивной калибровки радиальной дисторсии оптической подсистемы системы технического зрения |
EP1953496A2 (en) * | 2007-02-05 | 2008-08-06 | Fanuc Ltd | Calibration device and method for robot mechanism |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5444481A (en) * | 1993-01-15 | 1995-08-22 | Sanyo Machine Works, Ltd. | Method of calibrating a CCD camera |
US6678411B1 (en) * | 1999-06-04 | 2004-01-13 | Look Dynamics, Inc. | Apparatus and method for characterizing, encoding, storing, and searching images by shape |
JP2005515910A (ja) * | 2002-01-31 | 2005-06-02 | ブレインテック カナダ インコーポレイテッド | シングルカメラ3dビジョンガイドロボティクスの方法および装置 |
KR101587176B1 (ko) | 2007-04-18 | 2016-01-20 | 마이크로닉 마이데이타 에이비 | 무라 검출 및 계측을 위한 방법 및 장치 |
DE102010064593A1 (de) * | 2009-05-21 | 2015-07-30 | Koh Young Technology Inc. | Formmessgerät und -verfahren |
WO2011009108A2 (en) * | 2009-07-17 | 2011-01-20 | Universal Robotics, Inc. | System and method for automatic calibration of stereo images |
-
2012
- 2012-11-29 EP EP12869586.3A patent/EP2926543B1/en active Active
- 2012-11-29 WO PCT/IB2012/056820 patent/WO2014083386A2/en active Application Filing
- 2012-11-29 RU RU2013141224/07A patent/RU2601421C2/ru active
- 2012-11-29 US US14/002,195 patent/US9330463B2/en active Active
- 2012-11-29 KR KR1020137027035A patent/KR101857472B1/ko active IP Right Grant
- 2012-11-29 CN CN201280024667.4A patent/CN105308627B/zh active Active
-
2013
- 2013-08-28 ZA ZA2013/06469A patent/ZA201306469B/en unknown
- 2013-09-30 IL IL228659A patent/IL228659A/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08268393A (ja) * | 1995-03-29 | 1996-10-15 | Toshiba Tesco Kk | 駐機位置指示装置のキャリブレーション方法 |
EP1434169A2 (en) * | 2002-12-27 | 2004-06-30 | Olympus Corporation | Calibration apparatus, calibration method, program for calibration, and calibration jig |
RU2289111C2 (ru) * | 2004-02-16 | 2006-12-10 | Курский государственный технический университет | Способ адаптивной калибровки радиальной дисторсии оптической подсистемы системы технического зрения |
EP1953496A2 (en) * | 2007-02-05 | 2008-08-06 | Fanuc Ltd | Calibration device and method for robot mechanism |
Non-Patent Citations (1)
Title |
---|
TSAI R.Y. et al. A new technique for fully autonomous and efficient 3D robotics hand/eye calibration, IEEE Transactions on Robotics and Automation, June 1989, abstract. TSAI R.Y., A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses, IEEE Journal of Robotics and Automation, N4, August 1987, abstract. * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2699401C1 (ru) * | 2018-08-03 | 2019-09-05 | Общество с ограниченной ответственностью "ДиСиКон" (ООО "ДСК") | Способ и система определения параметров калибровки PTZ камеры |
RU2749363C1 (ru) * | 2020-07-22 | 2021-06-09 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет имени В.Ф. Уткина" | Устройство для автоматизированной калибровки видеокамер различных спектральных диапазонов |
Also Published As
Publication number | Publication date |
---|---|
IL228659A (en) | 2017-12-31 |
CN105308627A (zh) | 2016-02-03 |
WO2014083386A3 (en) | 2015-08-06 |
EP2926543A2 (en) | 2015-10-07 |
ZA201306469B (en) | 2015-09-30 |
EP2926543B1 (en) | 2017-11-22 |
US9330463B2 (en) | 2016-05-03 |
RU2013141224A (ru) | 2015-03-20 |
WO2014083386A2 (en) | 2014-06-05 |
US20150287196A1 (en) | 2015-10-08 |
KR20150101484A (ko) | 2015-09-04 |
EP2926543A4 (en) | 2016-09-14 |
IL228659A0 (en) | 2014-03-31 |
CN105308627B (zh) | 2018-10-30 |
KR101857472B1 (ko) | 2018-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2601421C2 (ru) | Способ и система калибровки камеры | |
CN104616292B (zh) | 基于全局单应矩阵的单目视觉测量方法 | |
CN110345921B (zh) | 立体视场视觉测量及垂轴像差和轴向像差校正方法及*** | |
CN112184824B (zh) | 一种相机外参标定方法、装置 | |
JP2012202694A (ja) | カメラ校正方法 | |
JPWO2016042779A1 (ja) | 三角測量装置、三角測量方法およびそのプログラム | |
WO2020188799A1 (ja) | カメラ校正装置、カメラ校正方法、及びプログラムが格納された非一時的なコンピュータ可読媒体 | |
KR20200023211A (ko) | 스테레오 이미지의 정류를 위한 방법 및 시스템 | |
JP2016218815A (ja) | ラインセンサカメラのキャリブレーション装置及び方法 | |
Zhao et al. | A flexible method combining camera calibration and hand–eye calibration | |
JP6696230B2 (ja) | ラインセンサカメラのステレオキャリブレーション装置及びステレオキャリブレーション方法 | |
Charbal et al. | Hybrid stereocorrelation using infrared and visible light cameras | |
CN113658270B (zh) | 基于工件孔心的多目视觉标定的方法、装置、介质及*** | |
JP2018179577A (ja) | 位置計測装置 | |
Rodríguez | Online self-calibration for mobile vision based on laser imaging and computer algorithms | |
KR102185329B1 (ko) | 왜곡 교정 장치를 이용한 3차원 좌표 데이터의 왜곡 교정 방법 및 이를 위한 시스템 | |
Bingwei et al. | Accurate geometric camera calibration technique using multi-views of a non-metric planar grid | |
CN112241984A (zh) | 双目视觉传感器标定方法、装置、计算机设备和存储介质 | |
JP2007034964A (ja) | カメラ視点運動並びに3次元情報の復元及びレンズ歪パラメータの推定方法、装置、カメラ視点運動並びに3次元情報の復元及びレンズ歪パラメータの推定プログラム | |
Börlin et al. | Flexible photogrammetric computations using modular bundle adjustment: The chain rule and the collinearity equations | |
CN112819900A (zh) | 一种智能立体摄影内方位、相对定向和畸变系数标定方法 | |
Buat et al. | Single image depth-from-defocus with a learned covariance: algorithm and performance model for co-design | |
KR20160082659A (ko) | 다채널 연속 촬영 영상을 이용한 구조물의 입체적인 진동 자동 측정 방법 | |
CN112053406B (zh) | 成像装置参数标定方法、装置及电子设备 | |
RU2722412C1 (ru) | Способ стереокалибровки разноспектральных камер с малыми угловыми размерами пересечения полей зрения |