2014 dxdy logo

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

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




На страницу Пред.  1, 2, 3, 4  След.
 
 Re: матричное уравнение
Сообщение30.07.2012, 21:51 
В справке писалось, что Solve не выдаёт нетривиальные решения (это не значит, что они не осиливаются). Для подробных Reduce, но там они перемешиваются с условиями, и потому, как правило, подходит и лучше выглядит результат первой.

 
 
 
 Re: матричное уравнение
Сообщение30.07.2012, 22:44 
Аватара пользователя
INGELRII в сообщении #601228 писал(а):
Сказано же, что нетривиальное решение есть только в случае, когда у матриц $A$ и $B$ есть хоть одно общее характеристическое число. Если склероз мне не изменяет, даже для матриц $3 \times 3$ это условие выглядит весьма нетривиально, если его через элементы самих матриц записывать.

Примерно как равенство нулю определителя $6\times 6$, состоящего из определителей, порядка не более $3$. Интересно бы записать эту штуку :shock:

 
 
 
 Re: матричное уравнение
Сообщение01.08.2012, 10:26 
Цитата:
Небольшой комментарий вбок: в Mathematica ответ {} на Solve означает, что решений нет, а похожий на него {{}} означает бесконечное количество решений. Если получилось второе, можно попробовать Reduce или что-нибудь похожее, чтобы одни переменные выражались через другие. Или можно попробовать Solve с указанием меньшего количества переменных, чтобы через остальные их можно было выражать.

спасибо, так всё таки можно получить не тривиальные решения?

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

 
 
 
 Re: матричное уравнение
Сообщение01.08.2012, 11:04 
Аватара пользователя
mrgloom_, да, надо бы поставить верно задачу.
Чтобы можно было как-то помочь Вам — Вы можете ещё подробнее рассказать на уровне физической ситуации? (можно в новой теме, если хотите)
Правильно ли я понимаю, что "перспективное искажение" у Вас — это не какой-то там недостаток камеры, а просто стандартное отображение трехмерного пространства на двумерную "плоскость восприятия" (на снимок)? Т.е. прямая линейная перспектива.

 
 
 
 Re: матричное уравнение
Сообщение01.08.2012, 12:39 
я создал новую тему про решение получившегося уравнения topic61225.html

но отвечу и тут, перспективное искажение именно идет от камеры.
я могу взять и поставить 4 точкам(которые образуют например трапецию) на изображении 4 угла "мнимого прямоугольника" и применить обратное перспективное искажение чтобы "развернуть" точки в прямоугольник, но проблема в том, что я не знаю каким точно должен быть этот "мнимый прямоугольник", можно использовать скажем вписанный или описанные прямоугольник вокруг точек или их усреднение, но так мы получим искомый результат только с точностью до масштаба по $X,Y$.
Что я пытаюсь сделать: беру снимаю первую картинку(с неизвестным перспективным искажением $M$), потом поворачиваю плоскость которую снимаю на какой либо известный градус (например на 90) получаю вторую картинку с искажением уже $M[Rot]$, потом я могу поставить в соответсвие 4 пары точек на первой и второй картинке и получить тем самым переход от одной картинки к другой $L$, потом я составляю уравнение
Изображение, которое и пытаюсь тщётно решить.

в общем случае еще накладывается и дисторсия бочка\подушка, какую точно она имеет формулу я не знаю, я брал простейшую.
$$\begin{cases}
u=c_1+x+k_1x(x^2+y^2) \\
v=c_2+y+k_2y(x^2+y^2)
\end{cases}$$
если еще проще, то $c_{1}=c_{2},k_{1}=k_{2}$
описывал проблему тут
topic61037.html
единственное там формула общего преобразования не верная
$$\begin{cases}
u=\frac{m_{11}x+m_{12}y+m_{13}}{m_{31}x+m_{32}y+m_{33}}+c_1+x+k_1x(x^2+y^2) \\
v=\frac{m_{21}x+m_{22}y+m_{23}}{m_{31}x+m_{32}y+m_{33}}+c_2+y+k_2y(x^2+y^2)
\end{cases}$$
(я почему то просто сложил перспективное искажение и искажение типа бочка\подушка, хотя их последовательно надо применять, только непонятно в каком порядке и соответственно от порядка применения зависит порядок убирания дисторсий).

в общем задачу можно поделить на 2.
1. Исправление перспективного искажения
2. Исправление дисторсии подушка бочка

думаю нет смысла решать задачу сразу в целом в виде Dist[Persp[(x,y)]] или Persp[Dist[(x,y)]], т.к. будет только сложнее, а можно решить задачу последовательно устранив искажения сначала перспективное, потом бочку.

 
 
 
 Re: матричное уравнение
Сообщение01.08.2012, 18:38 
Аватара пользователя
Потихоньку начинаю понимать. Пожалуйста, давайте на первом этапе не говорить о дисторсии.
У Вас ось камеры перпендикулярна плоскости, которую снимаете? (вряд ли)
Значит, Вы хотите, сняв какой-то объект на плоскости, преобразовать потом изображение так, чтобы у Вас получился как бы вид этого объекта сверху? Для этого Вы хотите научиться по снимку определять параметры перспективного преобразования, чтобы найти обратное преобразование и применить его. Правильно?

 
 
 
 Re: матричное уравнение
Сообщение02.08.2012, 09:22 
плоскость которую я снимаю параллельна плоскости камеры, ну т.е. если из центра камеры провести отрезок до плоскости которую я снимаю то он будет перпендикулярен плоскости(я думаю вы это имели ввиду).
т.е. перспективные искажения идут именно от внутренних параметров камеры ,а не от того что камера наклонена.
Что я хочу: определить перспективное искажение которое заложено в камере(и которого я не знаю), я могу получить сколько угодно снимков путем вращения плоскости которую снимаю, причем я всегда знаю угол на который поворачиваю(кстати говоря камера закреплена, поворачиваю именно плоскость), и я могу для каждой пары снимков указать 4 точки соответствия ,т.е. я могу получить перспективное преобразование-переход от одного изображения к другому.

 
 
 
 Re: матричное уравнение
Сообщение02.08.2012, 14:50 
Аватара пользователя
Так а в чём тогда состоит собственно перспективное искажение, скажем, для квадрата на плоскости, которую Вы снимаете? Во что он превращается на снимке? Только о дисторсии пока давайте не говорить — чтобы я лучше понял, что Вы понимаете под перспективным искажением в чистом виде.

 
 
 
 Re: матричное уравнение
Сообщение02.08.2012, 15:34 
квадрат может превратится в прямоугольник с одним "оттянутым" углом, это может быть трапеция, это может быть произвольный четырехугольник как например этот
Изображение

 
 
 
 Re: матричное уравнение
Сообщение02.08.2012, 15:45 
Аватара пользователя
Вы называете это "перспективным искажением", потому что оно сходно с явлением перспективы по результату (но не по механизму), так? Просто механизм не очень понятен, вроде снимаете перпендикулярно, и всё должно быть симметрично.

 
 
 
 Re: матричное уравнение
Сообщение03.08.2012, 08:56 
я просто рассматриваю в общем случае, картинка получается из электронного микроскопа, а там может быть не просто трапеция как в обычной оптике вроде как.

-- 03.08.2012, 10:17 --

что то я уже ничего не понимаю, тут мне сказали, что всё таки уравнение можно записать в матричной форме, но в 3д координатах и что в 3д координатах операторы уже будут линейны.
http://math.stackexchange.com/questions ... athematica
но нетривиальное решение есть(т.е. задача решаема) только если для матриц $A,B$ выполняется условие подобия http://en.wikipedia.org/wiki/Similar_matrix
но как проверить это условие? по сути получается опять же такое же уравнение только с неизвестным $ P$
$AP=cPB$
впринципе матрица $A $ может варьироваться, т.е. она зависит от угла поворота, который я могу менять по желанию, а матрица $B$ получается тоже зависит от матрицы поворота, т.к. является матрицей перехода, но её я определяю правда примерно(с погрешностью) по 4-м парам точек.

 
 
 
 Re: матричное уравнение
Сообщение03.08.2012, 10:06 
да и еще может кто нибудь поможет записать это формулой
Изображение

http://ru.wikipedia.org/wiki/%D0%A5%D0% ... 1%86%D1%8B
т.е. чтобы получить характеристический многочлены
я должен решить уравнения
$Det(A-yE)=0$ и $Det(B-yE)=0$ (лямбда что то не вставляется)
потом надо найти корни этих многочленов и проверить есть ли совпадающие корни?
и если есть хоть 1, то значит есть не тривиальное решение.

получается там по 3 корня на уравнение.
и надо проверить все комбинации корней
$y_{a1}=y_{b1}

y_{a1}=y_{b2}

y_{a1}=y_{b3}

y_{a2}=y_{b1}

y_{a2}=y_{b2}

y_{a2}=y_{b3}

y_{a3}=y_{b1}

y_{a3}=y_{b2}

y_{a3}=y_{b3}$

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

 
 
 
 Re: матричное уравнение
Сообщение03.08.2012, 10:22 
mrgloom_ в сообщении #602626 писал(а):
потом надо найти корни этих многочленов и проверить есть ли совпадающие корни?

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

 
 
 
 Re: матричное уравнение
Сообщение03.08.2012, 10:42 
Цитата:
Для того, чтобы узнать, есть ли совпадающие корни у многочленов, вовсе не обязательно их находить.


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

-- 03.08.2012, 12:38 --

попробовал найти собственные значения, получилось
Код:
A matrix
(0 -1 300
1 0 0
0 0 1)
B matrix
(-0.4009 -1.0787 446.1463
1.6180 0.8875 -159.2272
0.0003 0.0029 1)

матрица $B$ содержит ошибку.

для матрицы $A$
Код:
-i;i;1

для матрицы $B$
Код:
0.00484251-1.4788i;0.00484251-1.4788i;1.4769

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

попробовал матрицу поворота определить теоретически и по точкам, посмотреть какая погрешность.
поворот на 90 против часовой
получилось:
теоретическое
Код:
0 1 0
-1 0 300
0 0 1

с погрешностью
Код:
0.0040 1.0100 -0.8991
-1.0006 0.0090 301.1152
5.2616е-5 3.0549е-5 1

 
 
 
 Re: матричное уравнение
Сообщение03.08.2012, 12:20 
Аватара пользователя
mrgloom_ в сообщении #602610 писал(а):
я просто рассматриваю в общем случае, картинка получается из электронного микроскопа, а там может быть не просто трапеция как в обычной оптике вроде как.

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

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

 
 
 [ Сообщений: 53 ]  На страницу Пред.  1, 2, 3, 4  След.


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