2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Перспективное преобразование
Сообщение27.08.2007, 13:31 
Аватара пользователя
Доброго времени суток!

Сижу тут и думаю над одной задачкой, но на определенном моменте зависаю((

Итак задача: имеются координаты 4х точек на одной плоскости и соответственные им на другой. Получены они перспективным преобразованием плоскости. Надо вычислить угол между плоскостями.

Иду я таким путем: преобразование в общем описывается в однородных координатах так
\left( \begin{array}{ccc} X\\Y\\W\end{array} \right)$=\left( \begin{array}{ccc} a_1&b_1&c_1\\a_2&b_2&c_2\\a_3&b_3&1\end{array} \right)$\left( \begin{array}{ccc} x\\ 
y\\w\end{array} \right)$
А если еще и две соответственные точки совместить, то с1=с2=0

Тогда в простых координатах:
$X=\frac{a_1*x+b_1*y}{a_3*x+b_3*y+1}   Y=\frac{a_2*x+b_2*y}{a_3*x+b_3*y+1}$

Соответственно имеем систему уравнений, из которой несложным решением получаем значения коэффициенов матрицы преобразования.

Также можно получить коэффициенты обратной матрицы
$A_1=\frac{b_2}{a_1*b_2-b_1*a_2}$ и т.д.

Дальше у меня начинают возникать вопросы. В книге, в которой описывается этот процесс (Лобанов. Фотограмметия. 1975г) следующий текст:
"Равенства $a_3x+b_3y+1=0$ и $A_3x+B_3y+1=0$ представляют собой уравнения прямых линий (горизонталей) в картинно плоскости Р и основания Р', угол разворота которых, относительно соответствующих систем координат трансформируемого и трансформированного снимка определяется по формулам $tg(\chi)=-\frac{a_3}{b_3}$ и $tg(\chi')=-\frac{A_3}{B_3}$

Тогда с учетом углов $\chi$ и $\chi'$ значения координат будут равны $x_A=x_Acos(\chi)+y_Asin(\chi);X_A=X_Acos(\chi')+Y_Asin(\chi')$ и т.д.

Это изменение влечет за собой изменение матриц преобразований a1,a2,...
Теперь можно их пересчитать, тогда уравнения $a_3x+b_3y+1=0$ и $A_3x+B_3y+1=0$ примут вид $b_3y+1=0$ и $B_3y+1=0$

Отсюда можно выразить ординаты главной точки схода I и точки нулевых искажений С $y_I=\frac{B'_2}{B'_3}$ и $y_C=\frac{B'_2-A'_1}{B'_3}$

Тогда, зная фокусное расстояние фототрансформатора F можно вычислить углы наклона экрана и кассеты
$sin(\phi_E)=\frac{F*B'_3}{A'_1}$ $sin(\phi_P)=\frac{F*b'_3}{a'_1}$"

К сожалению, у меня есть только этот кусок книги в отксереном варианте а найти ее в электронном виде у меня не получилось, поэтому и возникли вопросы.

Во-первых, мне кажется что для задачи нахождения угла между плоскостями здесь много лишней информации.
Та часть, что относится в определению элементов первой матрицы мне понятна, но вот дальше я не очень улавливаю, что за прямые $a_3x+b_3y+1=0$ и $A_3x+B_3y+1=0$ и углы $\chi$ и $\chi'$. Точнее так, почему тут два угла? По идее же нужен один угол повора одного множества точек по отношению к другому... Ну а дальше вообще непонятно, нужны ли дальнейшие вычисления, или угол между плоскостями можно определить по уже полученным данным?

Заранее спасибо помощь.

 
 
 
 
Сообщение27.08.2007, 18:23 
Аватара пользователя
Так, попробую по-другому: Есть одна плоскость, есть другая плоскость под углом к первой. Есть центральная проекция из первой плоскости на вторую. Даны координаты четырех точек в первой плоскости и координаты их проекций во второй.

Вопрос: как определить угол между плоскостями?

 
 
 
 
Сообщение28.08.2007, 21:47 
Аватара пользователя
a239 писал(а):
Даны координаты четырех точек в первой плоскости и координаты их проекций во второй.

Вопрос: как определить угол между плоскостями?

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

 
 
 
 
Сообщение28.08.2007, 22:38 
Аватара пользователя
Есть одно НО - координаты точек для плоскости, в которой они лежат, если бы были даны трехмерные координаты, то, конечно, никаких проблем бы не было.

 
 
 [ Сообщений: 4 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group