Цифровая фотограмметрия и бесконтактные измерения

Материал из Техническое зрение
Перейти к: навигация, поиск

Содержание

Фотограмметрический метод бесконтактных трехмерных измерений.

Развитие современной вычислительной техники и средств получения цифровых изображений обеспечило надежный фундамент для создания бесконтактных систем трехмерных измерений, основанных на $\textit{фотограмметрическом}$ подходе, позволяющем определять пространственные координаты объекта по его разноракурсным изображениям (фотографиям). В настоящее время фотограмметрические методы широко используются для построения карт и моделей местности по аэро- и космическим снимкам. Снимки архитектурных сооружений используются для измерения необходимых пространственных размеров зданий. Фотограмметрические методы применяются в судостроении (внутренние и внешние обмеры элементов корабля), медицине, микроизмерениях и многих других областях.}

Развитие фотограмметрии от появления фотографии как средства получения изображений до недавнего времени шло, главным образом, по линии решения задач, возникающих при проведении наземных съемок и аэрофотосъемок для целей картографирования. Использование фотограмметрии для измерений близко расположенных объектов (инженерной фотограмметрии) ограничивалось необходимостью использования дорогостоящей и низкопроизводительной аналоговой измерительной техники (стереокомпараторов, стереометров, стереопланиграфов). Однако распространение высокопроизводительной вычислительной техники, с одной стороны, и совершенствование средств получения цифровых изображений, с другой стороны, обусловили необходимые предпосылки для появления высокоэффективных цифровых аппаратно-программных комплексов для практической инженерной фотограмметрии. В последние десятилетия стало возможным применять методы машинного зрения для решения задач бесконтактных измерений и создания трехмерных компьютерных моделей объектов сложной формы, и, тем самым, обеспечивать высокую точность и высокую степень автоматизации измерений в промышленности и на производстве.

Основными задачами, которые требуется решить при определении трехмерных координат точек объекта фотограмметрическими методами, являются следующие.

Выбор конфигурации съемки.

Качество измерений существенно зависит от выбранных масштаба съемки, расположения съемочных камер, собственной формы объекта, а также от ограничений, налагаемых условиями съемки. Поэтому для обеспечения требуемых показателей качества модели в каждом конкретном случае необходимо для заданного класса объектов решать задачу выбора количества, параметров и расположения камер.

Задача калибровки.

Под задачей калибровки понимаются определение адекватной математической модели съемки (геометрии получения изображения) и оценка параметров данной модели.

Задача стереоотождествления.

Проблема стереоотождествления заключается в идентификации на разноракурсных (стерео) снимках соответствующих двумерных изображений одной и той же заданной трехмерной точки поверхности объекта и высокоточном измерении ее координат на этих изображениях.

Задача расчета трехмерных координат точек объекта сложной формы.

Стереосистема машинного зрения может определить трехмерные координаты тех точек объекта, которые одновременно видны обеими камерами. Поэтому даже для не очень сложных поверхностей по стереопаре изображений может быть восстановлена лишь частичная модель (фрагмент) объекта.

Рассмотрим далее основные элементы фотограмметрического решения задач трехмерных бесконтактных измерений.

Математическая модель камеры.

В традиционных фото- и видеокамерах, используемых в технических системах, снимок формируется по закону центрального проектирования, когда точка снимка получается как точка пересечения прямой, проходящей через центр проекции (точку съемки) и точку объекта, с плоскостью снимка.

Для описания геометрической модели камеры вводятся две системы координат.

$\textit{Пиксельная система координат}$ цифрового снимка ($O_{\textrm{pix}} x_{\textrm{pix}} y_{\textrm{pix}})$ имеет начало координат в левом верхнем углу оцифрованного изображения. Начало координат выбирается таким образом, что левый верхний пиксел изображения имеет координаты $\langle 0,0\rangle$. Ось $O_{\textrm{pix}}x_{\textrm{pix}}$ направлена вправо вдоль строк изображения, а ось $O_{\textrm{pix}}y_{\textrm{pix}}$ вниз. Единицей измерения координат в этой системе является пиксел.

В этой системе координат измеряются координаты точек оцифрованного изображения

$\textit{Пространственная система координат}$ цифрового снимка $Sxyz$ имеет начало координат в центре проектирования. Отрицательное направление оси $Sz$ совпадает с главной осью съемочной камеры. Оси $Sx$ и $Sy$ лежат в плоскости снимка и образуют вместе с осью $Sz$ правую систему координат. Ось $Sx$ параллельна оси $O_{\textrm{pix}}x_{\textrm{pix}}$ пиксельной системы координат, а ось $Sy$ параллельна оси $O_{\textrm{pix}}y_{\textrm{pix}}$ пиксельной системы координат и направлена в противоположную сторону.

При рассмотрении модели камеры считается, что плоскость снимка лежит впереди центра проектирования, поэтому любая точка снимка в этой системе имеет координаты $\langle x, y, -f \rangle$. Величина $f$ равняется расстоянию от центра проектирования до плоскости снимка и всегда считается положительной.

В этой системе координат записываются координаты точки снимка в условиях коллинеарности и при вычислении пространственных координат точек объекта.

Рассмотрим связи между пиксельной $O_{\textrm{pix}}x_{\textrm{pix}}y_{\textrm{pix}}$ и пространственной $Sxyz$ системами координат снимка. Пусть $\langle x_{\textrm{pix}},y_{\textrm{pix}}\rangle$ - пиксельные координаты точки снимка. Тогда переход к искаженным координатам точки снимка осуществляется по формулам: \begin{gather*} x_{a}=m_{x }\cdot (x_{\textrm{pix}} - b_{x}),\cr y_{a}=m_{y }\cdot (b_{y} - y_{\textrm{pix}}), \end{gather*} где $m_{x}$, $m_{y}$ - размер элемента дискретизации изображения, $b_{x}$, $b_{y}$ - пиксельные координаты главной точки снимка.

Нелинейные искажения изображения вводятся в виде \begin{gather*} \Delta x=a_0 y_a +x_a (a_1 r^2+a_2 r^4+a_3 r^6)+a_4 (r^2+2x_a^2 )+2a_5 x_a y_a ,\cr \Delta y=a_0 x_a +y_a (a_1 r^2+a_2 r^4+a_3 r^6)+a_5 (r^2+2y_a^2 )+2a_5 x_a y_a , \end{gather*} где $r^2=x_a^2 +y_a^2 $.

Преобразование пиксельных координат точки снимка осуществляется следующим образом:


  1. пиксельные координаты $x_{\textrm{pix}}, y_{\textrm{pix}}$ преобразуются к искаженным координатам $x_{a} , y_{a}$;
  2. вычисляются нелинейные искажения $\Delta x$, $\Delta y$ для данной точки;
  3. вычисляются истинные координаты $x, y$ точки снимка путем прибавления к

рассчитанным искаженным координатам соответствующих нелинейных искажений:

\begin{gather*} x=x_{a} + \Delta x,\cr y=y_{a} + \Delta y. \end{gather*}

При решении задачи вычисления координат точки снимка, соответствующей данной точке поверхности, необходимо по истинным координатам $\langle x,y\rangle $ вычислить пиксельные координаты $\langle x_{\textrm{pix}},y_{\textrm{pix}}\rangle$ точки снимка. В дальнейшем все геометрические соотношения записываются для истинных координат снимка $\langle x,y\rangle $, связь которых с пиксельными координатами приведена выше.

Положение снимка относительно выбранной фотограмметрической системы координат, в которой измеряются пространственные координаты точек объекта, определяется вектором координат точки съемки $\textbf{x}_{0f }$ и матрицей вращения $\textbf{A}_{f}$, которая является функцией трех углов последовательных поворотов системы координат.

В аэросъемке принято использовать следующую последовательность поворотов $\langle \alpha , \omega , \kappa \rangle$:


  1. первый поворот вокруг оси - $OY$ фотограмметрической системы координат;
  2. второй - вокруг новой оси $OX$;
  3. третий - вокруг оси $OZ$ системы координат, связанной с камерой.


Элементы матрицы вращения находятся из следующих соотношений: \begin{align*} a_{11} &= \cos \alpha \cdot \cos \kappa -\sin \alpha \cdot \sin \omega \cdot \sin \kappa ; \\ a_{12} &= \cos \omega \cdot \sin \kappa ; \\ a_{13} &= \sin \alpha \cdot \cos \kappa +\cos \alpha \cdot \sin \omega \cdot \sin \kappa ; \\ a_{21} &= -\cos \alpha \cdot \sin \kappa -\sin \alpha \cdot \sin \omega \cdot \cos \kappa ; \\ a_{22} &= \cos \omega \cdot \cos \kappa ; \\ a_{23} &= -\sin \alpha \cdot \sin \kappa +\cos \alpha \cdot \sin \omega \cdot \cos \kappa ; \\ a_{31} &= -\sin \alpha \cdot \cos \omega ; \\ a_{32} &= -\sin \omega ; \\ a_{33} &= \cos \alpha \cdot \cos \omega . \end{align*}


Отсюда \begin{align*} \alpha &= - \rm {arctg} \left(\frac{a_{31}} {a_{33}} \right); \\ \omega &= -\arcsin a_{32} ; \\ \kappa &= \rm {arctg}\left(\frac {a_{12}} {a_{22}} \right). \end{align*}

При решении фотограмметрических задач используются условия коллинеарности (нахождения на одной прямой) для точки съемки, точки объекта и точки снимка следующего вида: $$ e_x =d_x +\frac{d_z x}{f}, $$ $$ e_y =d_y +\frac{d_z y}{f}, $$ где $$ \left( {{\begin{array}{*{20}c} {d_x } \\ {d_y } \\ {d_z } \\ \end{array} }} \right)=\textbf{A}_f (\textbf{x}-\textbf{x}_{0f} ). $$ В приведенных условиях невязки $e_{x}$ и $e_{y}$ измеряются в предметном пространстве в плоскости, параллельной плоскости снимка.

Калибровка видеокамер.

Рассмотрим удобный с практической точки зрения метод калибровки, который заключается в следующем:


  1. изготавливается специальное калибровочное поле (плоский стенд) со специально помеченными точками, координаты которых заранее известны с высокой степенью точности;
  2. производится съемка большого числа разноракурсных снимков калибровочного поля;
  3. на каждом снимке измеряются координаты всех видимых точек калибровочного поля;
  4. для каждой точки каждого снимка записываются условия коллинеарности центра проектирования, точки снимка с учетом искажений и точки калибровочного поля;
  5. по методу наименьших квадратов находятся значения оцениваемых параметров

(в которые включаются и параметры камеры), соответствующих минимуму суммы квадратов невязок условий коллинеарности.


При проведении калибровки в вектор оцениваемых параметров включаются плановые координаты определяемых точек калибровочного поля, элементы внешнего ориентирования всех снимков, а также элементы внутреннего ориентирования и параметры нелинейных искажений всех камер комплекса.

Наиболее трудоемкой ручной операцией при использовании данного подхода к калибровке является измерение большого количества координат опорных точек калибровочного поля на множестве разноракурсных изображений. Пусть калибровочное поле содержит $49$ точек, видимых с двух камер на $15$ снимках, полученных каждой камерой, тогда для проведения калибровки необходимо с высокой точностью определить координаты $1470$ точек. Поэтому в задачах ближней фотограмметрии для применения подобного метода калибровки необходимо решить вопрос автоматической идентификации точек снимков, что достигается применением в качестве опорных точек специальных кодированных меток, подлежащих автоматическому распознаванию (декодированию). При этом к алгоритму распознавания и структуре меток предъявляются два следующих основных требования:


  1. возможность определения координат центров меток с субпиксельной точностью;
  2. высокая надежность декодирования номера метки.


Внешнее ориентирование камер.

Необходимым этапом при построении фотограмметрического измерительного комплекса является определение элементов внешнего ориентирования камер. В результате выполнения процедуры внешнего ориентирования не только определяется взаимное расположение камер, но и фиксируется фотограмметрическая система координат комплекса.

Для проведения внешнего ориентирования используется то же калибровочное поле, что и в операции калибровки.

Процедура внешнего ориентирования состоит из следующих этапов:


  1. установка калибровочного поля в исходное положение, определяющее фотограмметрическую

систему координат (в дальнейшем элементы внешнего ориентирования снимков будут определяться относительно именно этой системы);

  1. получение снимков калибровочного поля в этом положении всеми камерами комплекса;
  2. установка калибровочного поля в несколько дополнительных положений (при проведении

ориентирования измерительного комплекса калибровочное поле устанавливается в два дополнительных положения вблизи ближней и дальней границы рабочей области комплекса соответственно);

  1. получение снимков калибровочного поля в дополнительных положениях всеми камерами комплекса;
  2. распознавание кодированных меток на всех полученных снимках;
  3. вычисление элементов внешнего ориентирования по методу наименьших квадратов при условии

минимума невязок условий коллинеарности вида


$$ e_x =d_x +\frac{d_z x}{f}; $$ $$ e_y =d_y +\frac{d_z y}{f}, $$ где $$ \left( {{\begin{array}{*{20}c} {d_x } \\ {d_y } \\ {d_z } \\ \end{array} }} \right)=\textbf{A}_f (\textbf{A}_m (\textbf{x} + \textbf{x}_{0m} )-\textbf{x}_{0f} ), $$ где $\textbf{A}_m (\alpha _m ,\omega _m ,\kappa _m )$ и $\textbf{x}_{0m} $ - соответственно матрица вращения и вектор сдвига калибровочного поля в дополнительных положениях.

При проведении внешнего ориентирования в вектор оцениваемых параметров входят элементы внешнего ориентирования всех камер комплекса и параметры, определяющие положение калибровочного поля в дополнительных положениях.

Решение задачи стереосоответствия. Структурированный подсвет.

После того как в результате проведенных операций калибровки и ориентирования геометрическая модель стереосъемки стала известна нам со всеми своими параметрами, мы в принципе готовы к решению задачи реконструкции трехмерных координат точек снимаемой поверхности. При этом, для того чтобы вычислить трехмерные координаты любой точки поверхности, необходимо лишь определить положение ее проекции на снимках всех камер, используемых в измерительном комплексе. Иными словами, нам необходимо установить соответствие каждой интересующей нас точки на изображении, полученном от одной камеры системы, ее же изображениям на снимках, полученных от других камер системы. Конечно, в лабораторных условиях оператор измерительного комплекса в состоянии указать такие соответствующие точки разных снимков вручную, но в современных измерительных системах, используемых для реконструкции трехмерной формы объекта, необходимо измерять за короткие промежутки времени тысячи и даже сотни тысяч точек. Поэтому возникает задача автоматического определения соответствующих точек на изображениях от нескольких камер, называемая также $\textit{задачей установления стереосоответствия}$.

Как было описано выше, в случае калибровочного поля в решении этой задачи нам помогает обнаружение специальных меток, имеющих уникальные номера. После распознавания меток точки с номером 1 считаются соответствующими на всех снимках, также точки с номерами 2, 3 и так далее. Однако на реальных изображениях, например, земной поверхности, получаемых при аэрофотосъемке, никаких специальных меток нет. Задача установления стереосоответствия в таком случае может решаться только путем математического (например, корреляционного) сопоставления окрестностей соответствующих точек, которые должны выглядеть достаточно "похожими" с учетом разницы в ракурсе съемки. Поэтому в приложениях так называемой "дальней" фотограмметрии задача определения стереосоответствия точек является ключевой задачей стереореконструкции и сопряжена с целым рядом проблем, ошибок и специфических трудностей, связанных с неоднозначностью результатов анализа изображения, особенно в малоинформативных областях, лишенных характерной контрастной текстуры, способствующей надежному отождествлению соответствующих и различению несоответствующих точек поверхности.

К счастью, в приложениях инженерной фотограмметрии, в условиях работы на небольших дальностях с объектами небольшого размера (до единиц метров), мы имеем возможность искусственно создавать такую специальную текстуру на исследуемой поверхности за счет специального $\textit{структурированного подсвета}$. Такой подсвет может осуществляться одной или несколькими линиями, регулярной решеткой, множеством точек или каким-либо еще способом. Важно лишь, чтобы соответствующее программное обеспечение позволяло использовать дифференциацию точек изображения, создаваемую структурированным подсветом, для решения задачи стереоотождествления. В случае если количество подсвеченных на одной стереопаре точек недостаточно для построения полной модели поверхности, используют ряд последовательных стереопар одного и того же объекта, причем от снимка к снимку элементы структурированного подсвета перемещаются по поверхности - за счет движения источника подсвета относительно неподвижного объекта либо за счет движения самого объекта (например, на конвейере или специальном поворотном устройстве). В таком случае говорят о фотограмметрическом "сканировании" поверхности объекта.

Рассмотрим простейший вариант "линейного" структурированного подсвета, при котором исходными данными для построения модели поверхности являются пиксельные координаты подсвеченных одной кодированной вертикальной линией точек снимков всех камер.

В случае двух камер для получения пространственных координат соответствующих точек необходимо решить задачу идентификации точки профиля правой камеры, соответствующей данной точке левой камеры. По координатам соответствующих точек можно найти пространственные координаты точки в фотограмметрической системе координат.

Задача нахождения соответствующей точки на правом профиле может быть решена путем приведения координат точек снимка к нормальному случаю съемки в базисной системе координат (см. ниже). При этом ординаты соответствующих точек будут равны. Поэтому каждой точке левого снимка будет соответствовать точка правого снимка с равной ей ординатой. Абсцисса соответствующей точки находится линейной интерполяцией между ближайшими узлами ломаной.

==Приведение координат точек снимков к нормальному случаю съемки. Определение элементов взаимного ориентирования по внешнему.==

Для решения этой задачи используется базисная система координат, которая вводится, как принято в аэросъемке. Ось $X$ этой системы направлена по базису фотографирования (от левого снимка к правому), а направление остальных осей выбирается таким образом, что угол $\omega $ при переходе от базисной системы координат к системе координат левого снимка в последовательности поворотов $\langle\alpha $, $\omega $, $\kappa \rangle$ равен нулю.

Пусть $$ \textbf{b}_{g}=\textbf{x}_{0f2} - \textbf{x}_{0f1} $$ - вектор координат базиса в фотограмметрической системе координат. Тогда $$ \textbf{b}_{1}=\textbf{A}_{1}\textbf{b}_{g } $$ - вектор координат базиса в системе координат, связанной с левой камерой.

Обозначив координаты вектора $\textbf{b}_{1}$ через $\langle b_{x},b_{y},b_{z}\rangle$, можно записать выражения для углов последовательных поворотов системы координат левого снимка относительно базисной системы, которые могут быть получены следующим образом.

Координаты вектора базиса в системе координат снимка определяются из соотношений: $$ \left( {{\begin{array}{*{20}c} {a_{11} } & {a_{12} } & {a_{13} } \\ {a_{21} } & {a_{22} } & {a_{23} } \\ {a_{31} } & {a_{32} } & {a_{33} } \\ \end{array} }} \right)\left( {{\begin{array}{*{20}c} {|\textbf{b}|} \\ 0 \\ 0 \\ \end{array} }} \right)=\left( {{\begin{array}{*{20}c} {a_{11} } \\ {a_{21} } \\ {a_{31} } \\ \end{array} }} \right) . $$ На основании формул для элементов матрицы через углы последовательных поворотов при $\omega $ = 0 можно записать \begin{align*} a_{11} &= \cos \alpha \cdot \cos \kappa ; \\ a_{21} &= -\cos \alpha \cdot \sin \kappa ; \\ a_{31} &= -\sin \alpha . \end{align*} Тогда \begin{align*} \alpha &= -\arcsin \left(\frac{b_x }{|\textbf{b}|}\right); \\ \omega &= 0; \\ k &= -\textrm{arctg} \left(\frac{b_y }{b_x }\right). \end{align*} По полученным значениям углов может быть вычислена матрица перехода от базисной системы координат к системе координат $\textbf{A}_{b1}$, связанной с левой камерой.

После этого матрица перехода от базисной системы координат к системе, связанной с правой камерой, может быть найдена путем последовательного перехода от базисной к фотограмметрической системе координат с матрицей $\textbf{A}_{gb}^T $ и последующего перехода к системе координат правого снимка с матрицей $\textbf{A}_{g2}$ по формуле $$ \textbf{A}_{b2} =\textbf{A}_{g2} \textbf{A}_{gb}^T , $$ где $\textbf{A}_{gb} =\textbf{A}_{b1}^T \textbf{A}_{g1} $ - матрица перехода от фотограмметрической системы координат к базисной, получаемая последовательными переходами от фотограмметрической системы координат к системе координат левого снимка с матрицей $\textbf{A}_{g1}$ и перехода от системы координат, связанной с левым снимком к базисной с матрицей $\textbf{A}_{b1}^T $.

Пересчет координат точек первого исходного снимка осуществляется по следующим формулам: $$ \left( {{\begin{array}{*{20}c} {d_{x1} } \\ {d_{y1} } \\ {d_{z1} } \\ \end{array} }} \right)=\textbf{A}_{b1}^T \left( {{\begin{array}{*{20}c} {x_1 } \\ {y_1 } \\ {-f_1 } \\ \end{array} }} \right); $$ $$ x_{b1} =-f_1 \frac{d_{x1} }{d_{z1} }; $$ $$ y_{b1} =-f_1 \frac{d_{y1} }{d_{z1} }. $$ Для второго снимка пересчет осуществляется по аналогичным формулам: $$ \left( {{\begin{array}{*{20}c} {d_{x2} } \\ {d_{y2} } \\ {d_{z2} } \\ \end{array} }} \right)=\textbf{A}_{b2}^T \left( {{\begin{array}{*{20}c} {x_2 } \\ {y_2 } \\ {-f_2 } \\ \end{array} }} \right); $$ $$ x_{b2} =-f_1 \frac{d_{x2} }{d_{z2} }; $$ $$ y_{b2} =-f_1 \frac{d_{y2} }{d_{z2} }. $$ Преобразование координат точек снимков в базисную систему можно выполнить для любого значения фокусного расстояния преобразованных координат. В данном случае оба снимка приводятся к фокусному расстоянию левого снимка. Равенство фокусных расстояний приведенных снимков необходимо для выполнения искомого условия равенства ординат соответствующих точек.

Вычисление пространственных координат точек поверхности.

После решения задачи стереосоответствия путем приведения координат точек к нормальному случаю съемки пространственные координаты каждой интересующей нас точки трехмерной поверхности объекта вычисляются по формулам $$ \left( {{\begin{array}{*{20}c} X \\ Y \\ Z \\ \end{array} }} \right)=\frac{\left| \textbf{b} \right|}{x_{b1} -x_{b2} }\left( {{\begin{array}{*{20}c} {x_{b1} } \\ {y_{b1} } \\ {-f_1 } \\ \end{array} }} \right); $$ $$ \textbf{x}_g =\textbf{x}_{0f1} +\textbf{A}_{gb}^T \left( {{\begin{array}{*{20}c} X \\ Y \\ Z \\ \end{array} }} \right). $$ Таким образом, задача стереореконструкции трехмерной поверхности объекта, сканируемой линейным структурированным подсветом, с математической точки зрения оказывается полностью решена.

Полезные ссылки

  1. ☝ К началу
  2. ☜ Технологии и приложения машинного зрения
Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты