2014 dxdy logo

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

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


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

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

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

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



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Построение трёхмерной проекции по двумерной.
Сообщение13.10.2008, 11:05 


01/05/07
13
Доброго времени суток, господа хорошие. Такая возникла проблема - необходимо по двумерной

проекции квадрата (квадрат вращается и ПЕРЕМЕЩАЕТСЯ в трёх плоскостях) найти реальные размеры

всех его сторон, то есть как выглядел бы квадрат, если бы мы решили его развернуть паралельно

плоскости нашего видения.

Допустим дан квадрат с вершинами ABCD и его двумерная проекция A'B'C'D'

Ход моих мыслей:
1. Самая близкая вершина будет находится между двумя наибольшими сторонами. Эту вершину примим за

исходную (допустим D').
2. Углы образованные сторонами проекции назовём альфа (а), а углы образованные сторонами проекции

с вертелкаью до вершины самого квадрата, назавем тетта (Q).
3. Теперь разворачиваем квадрат от этой вершины (от нас), что бы он стал в нашей плоскости (что

бы стороны квадрата стили без искожений.
4. Теперь необходимо найти длинну этих проекций.
D'C'=DC*sin(Qc);
D'A'=DA*sin(Qa);
D'B'=sqrt(2)*DB*sin(Qb);

Теперь такой вопрос, наверняка есть какое-нибудь отношение D'C'/D'А'=sin(Qc)/sin(Qa)

Я сам начинающий математик, поэтому найти решение самому (пока) трудно, просто из-за не знания

определенных теорем из планометрии. Напишите, хотя бы какую теорему можно использовать. Будо

очень благодарен.

Добавлено спустя 3 минуты 31 секунду:

1.JPG.html

 Профиль  
                  
 
 
Сообщение13.10.2008, 17:12 
Заслуженный участник
Аватара пользователя


22/11/06
1096
Одесса, ОНУ ИМЭМ
Какая у вас проекция - параллельная или проективная? Если параллельная, то параллельно какой плоскости?

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

 Профиль  
                  
 
 
Сообщение13.10.2008, 18:55 


01/05/07
13
Бодигрим писал(а):
Какая у вас проекция - параллельная или проективная? Если параллельная, то параллельно какой плоскости?

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

Паралельная плоскости наблюдения.
Я вас понял, но дело в том что "оператор ортоганального проектирвоания" для меня тёмный лес.
Неужели нет никогого соотношения сторон, для определения углов между сторонами и вертикалями к плоскости наблюдения.

 Профиль  
                  
 
 
Сообщение13.10.2008, 19:10 
Заслуженный участник
Аватара пользователя


22/11/06
1096
Одесса, ОНУ ИМЭМ
Swordman в сообщении #150477 писал(а):
Неужели нет никогого соотношения сторон, для определения углов между сторонами и вертикалями к плоскости наблюдения.

Говорю же: лично мне шаманить лениво. Может кому-то будет не лениво.

Вот имеем четыре вершины квадрата: $(0,0,0)$, $(0,a,0)$, $(a,a,0)$ и $(a,0,0)$. Вот применяем к ним оператор поворота в трехмерном пространстве. Вот применяем оператор ортогонального проектирования. По получившимся выражениям (это и будет искомые вами "соотношения сторон, для определения углов между сторонами и вертикалями к плоскости наблюдения") пытаемся восстановить $a$. Это только слова страшные, а вообще-то все просто.

 Профиль  
                  
 
 
Сообщение13.10.2008, 23:05 


29/09/06
4552
Бодигрим прав, действительно лень. Может, от нахлынувшей занятости. Потому и не стал отвечать после первого прочтения. Устыдился признаваться. Хотя узнать ответ интересно.
Матрицу поворота можно найти здесь, в Википедии. То, что Бодигрим высокопарно назвал оператором проектирования, можно перефразировать как "сосчитайте координаты вершин после поворота, а потом везде обнулите $z$-координату". Ну и...

Где Вы, толпой появившиеся в последнее время молодые, умные, неленивые участники???

 Профиль  
                  
 
 
Сообщение14.10.2008, 01:24 
Заблокирован


16/03/06

932
По теме: достаточно знать натуральную длину диагонали, чтобы узнать длину сторон квадрата. Диагональ квадрата в трехмерном пространстве задается тройкой координат. Если один ее конец расположен в начале координат (0,0,0), то второй конец задается числами $(x,y,z)$. В частных случаях можно восстановить квадрат по его двумерной проекции:
1. Проекция - прямоугольник (длинная сторона - натуральная сторона квадрата).
2, Проекция - ромб (длинная диагональ - натуральная диагональ квадрата).
В остальных случаях проекция квадрата - параллелограмм. Без задания $x,y,z$.восстановить квадрат не удастся, если не ошибаюсь.
В начертательной геометрии восстанавливают натуральные размеры отрезков по двум проекциям: горизонтальной $(x,y)$ и вертикальной.$(z)$.

 Профиль  
                  
 
 
Сообщение14.10.2008, 03:31 
Заслуженный участник


11/05/08
32166
Архипов писал(а):
Без задания $x,y,z$.восстановить квадрат не удастся, если не ошибаюсь.

Тоже лень думать, но боюсь, что ошибаетесь. Наклон плоскости задаётся единичным вектором нормали, который определяется двумя независимыми параметрами. У деформированного квадрата независимых безразмерных параметров тоже два -- угол и соотношение сторон.

----------------------------------------------------------------------------------------------
Вот родственная задачка (хотя и для другого типа проекции), которой я в своё время озадачился и даже собирался накатать программку, но руки так и не дошли.

Требуется в "полуавтоматическом" режиме устранить перспективные искажения снимка. Предполагаемый интерфейс: находим на снимке прямоугольник (т.е. то, что должно бы быть прямоугольником), проводим через его стороны четыре прямые и просим компьютер всё выпрямить.

Вот эта задачка действительно не имеет однозначного решения, но лишь по той причине, что в ней есть дополнительный параметр -- фокусное расстояние (относительное, т.е. фактически угол зрения). Если оно задано неверно, то прямоугольник-то мы получим, но соотношение сторон будет неправильным.

Но, с другой стороны: если соотношение сторон заранее известно (скажем, фотографировался квадрат, или лист А4, или на картинке откровенный круг присутствует), то это позволяет откалибровать фокусное расстояние!

 Профиль  
                  
 
 
Сообщение14.10.2008, 13:48 


12/09/08

2262
Что-то это надолго затянулось, всем лениво :)

Расположим начало координат в одной из вершин квадрата. $x_i, y_i, z_i \quad i \in \{1,2\}$ — координаты соседних вершин. Сторона квадрата (неизвестная) — $a$. Тогда:
$$ \left\{ \begin{array}{l} x_1^2 + y_1^2 + z_1^2 = a^2\\  x_2^2 + y_2^2 + z_2^2 = a^2\\ x_1x_2 + y_1y_2 + z_1z_2 = 0 \end{array} \right. $$
Если $a_i$ — стороны параллелограмма в проекции, а $\varphi$ — угол между ними, то $x_i^2 + y_i^2 = a_i^2, \quad x_1x_2 + y_1y_2 = a_1a_2\cos\varphi$. Итого:
$$ \left\{ \begin{array}{l} a_1^2 + z_1^2 = a^2\\  a_2^2 + z_2^2 = a^2\\  a_1a_2\cos\varphi + z_1z_2 = 0 \end{array} \right. $$
Три уравнения с тремя неизвестными. Дальше все просто.

 Профиль  
                  
 
 От лентяя
Сообщение14.10.2008, 16:05 


29/09/06
4552
вздымщик Цыпа в сообщении #150635 писал(а):
Три уравнения с тремя неизвестными. Дальше все просто

Спасибо! :D

 Профиль  
                  
 
 
Сообщение15.10.2008, 09:12 


01/05/07
13
Для начала БОЛЬШОЕ спасибо :)
вздымщик Цыпа писал(а):
Что-то это надолго затянулось, всем лениво :)

Расположим начало координат в одной из вершин квадрата. $x_i, y_i, z_i \quad i \in \{1,2\}$ — координаты соседних вершин. Сторона квадрата (неизвестная) — $a$. Тогда:
$$ \left\{ \begin{array}{l} x_1^2 + y_1^2 + z_1^2 = a^2\\  x_2^2 + y_2^2 + z_2^2 = a^2\\ x_1x_2 + y_1y_2 + z_1z_2 = 0 \end{array} \right. $$
Если $a_i$ — стороны параллелограмма в проекции, а $\varphi$ — угол между ними, то $x_i^2 + y_i^2 = a_i^2, \quad x_1x_2 + y_1y_2 = a_1a_2\cos\varphi$. Итого:
$$ \left\{ \begin{array}{l} a_1^2 + z_1^2 = a^2\\  a_2^2 + z_2^2 = a^2\\  a_1a_2\cos\varphi + z_1z_2 = 0 \end{array} \right. $$
Три уравнения с тремя неизвестными. Дальше все просто.

Возник такой вопрос. когда вычисляешь z_1 и z_2, то одно из них получается отрицательным (либо оба положительные, и оба отрицательные), и нельзя точно определить, какое именно дальше, или ближе от нас. Я так полагаю, в перспективе ближней будет та вершина у которой стороны её образующие максимальные? так?

 Профиль  
                  
 
 
Сообщение15.10.2008, 09:31 
Заслуженный участник
Аватара пользователя


13/08/08
14452
Проекция квадрата - параллелограмм. У каждой вершины стороны попарно равны. Может быть, по углу можно определить относительное положение вершин?
Для решения одна из вершин была помещена в начало системы координат, а после нахождения квадрата его можно произвольно перемещать параллельно оси Z; от этого проекция не изменится. Одна из вершин квадрата (или две) будет "выше" остальных, а одна - "ниже". Может быть это имеется в виду? Тогда надо найти z всех четырех вершин квадрата.

 Профиль  
                  
 
 
Сообщение15.10.2008, 11:14 


12/09/08

2262
Swordman в сообщении #150828 писал(а):
Возник такой вопрос. когда вычисляешь z_1 и z_2, то одно из них получается отрицательным (либо оба положительные, и оба отрицательные), и нельзя точно определить, какое именно дальше, или ближе от нас. Я так полагаю, в перспективе ближней будет та вершина у которой стороны её образующие максимальные? так?
Положение квадрата неоднозначное. Есть два решения: $z_1, z_2$ и $z_1',z_2'$. Они связаны соотношением $z_1' = -z_1,\quad z_2' = -z_2$. Т.е. два положения квадрата дают одну и ту же проекцию и они неотличимы только по проекции. Это при параллельном проектировании (вроде как его заказывали). Как оно при перспективном, я не знаю, эту задачу не рассматривал.

 Профиль  
                  
 
 
Сообщение16.10.2008, 08:23 


01/05/07
13
вздымщик Цыпа писал(а):
Swordman в сообщении #150828 писал(а):
Возник такой вопрос. когда вычисляешь z_1 и z_2, то одно из них получается отрицательным (либо оба положительные, и оба отрицательные), и нельзя точно определить, какое именно дальше, или ближе от нас. Я так полагаю, в перспективе ближней будет та вершина у которой стороны её образующие максимальные? так?
Положение квадрата неоднозначное. Есть два решения: $z_1, z_2$ и $z_1',z_2'$. Они связаны соотношением $z_1' = -z_1,\quad z_2' = -z_2$. Т.е. два положения квадрата дают одну и ту же проекцию и они неотличимы только по проекции. Это при параллельном проектировании (вроде как его заказывали). Как оно при перспективном, я не знаю, эту задачу не рассматривал.

Очень любопытно узнать, как оно будет при перспективе. На самом деле, задача стояла обноржуть в проанализировать изображение в перспективе, это я немного на ошибся :roll:

 Профиль  
                  
 
 
Сообщение16.10.2008, 09:54 


02/09/08
143
Ну тогда тем более нельзя размер определить. Вы думаете зачем линейку при фотографировании кладут?

 Профиль  
                  
 
 
Сообщение16.10.2008, 11:38 


01/05/07
13
ha писал(а):
Ну тогда тем более нельзя размер определить. Вы думаете зачем линейку при фотографировании кладут?

Мне надо определить не РАЗМЕР, а воостановить трёхмерное изображение по двумерному. Как раз таки размеры квадрата ИЗВЕСТНЫ, а ленейку кладут, для того что бы можно было востановить истинные размеры фотографируемого объекта. :wink:

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group