< HomePage
!!! Понеже знам, че много от вас попадат тук търсейки за съвет свързан с хард- и софтуер вижте Компютърни Хитринки за именно тези постове в блога !!!
<- Предишен запис (2008-02-12) | Дневника | Следващ запис (2008-02-14) ->

Архив

Сряда, 13 Февруари 2008

Обикновено ви тормозя с разни компютърни залъгалки, този път мисля да си излея мъката по един "прост" математически проблем. Принципно проблема е прост наистина, но не мога да разбера къде е грешката. Сега без много форматиране в псевдо LaTeX стилще опиша математическата задача.

Хомография се нарича линейна трансформация, която дава проекцията на една равнина в друга. Пример имаме лист хартия заснет под някакъв ъгъл от камера. Естествено на картината листа няма да е правилен правоъгълник, а ще е перспективно изкривен в зависимост от позицията на камерата релативна към него. И все пак точките принадлежащи на листа и на неговата проекция на снимката ще са в линейна зависимост изразена с 3х3 матрица, която се нарича хомография (homography). Проблема с който се боя сега е, ако приемем, че две камери наблюдават от различни точки една и съща равнина, чиято нормала ние знаем, а също така занем и отиентацията и параметрите на камерата (практиески това дефинира проективните равнини на камерите), каква е зависимостта, която по дадени координати в проективната равнина на първата камера - дава проекцията във втората на точки принадлежащи на равнината наблюдавана от двете камери. Ето малко аски графика по въпроса :

            +----------+
            |          | Plane
            |   *P     |
            |          |
            +----------+  _
                        \ n
    |\                   \        /|
    | \                          / |
    |  \                        /  |
    |   \                      /   |
    |    \                    /    |
    | *p1 \  ----------->    / p2* |
    |      \                /      |
    \      |                |     /
     \     |                |    /
      \    |                |   /
       \   |                |  /
  Cam1  \  |                | / Cam2
         \ |                |/

Във всички буквари има една проста формула, че p2 = K(R + (t.n^T) / d)K^-1 * p1 - където n е нормалата на равнината d е разтоянието от равнината до едната* камера и R и t са релативната транспозиция и ротация на едната камера спрямо другата, а K са проективните параметри на камерата (за непросветените безинтересни - те са си известни) - въпроса е мястото означено със * не е ясно дали е първата или втората камера а и релативната трансформация в коя посока е. И независимо, че мъча цяла седмица в octave да нацеля тия въпроси, нещо не се получава, а опита ми да изведа това уравнение все удря на камък - векторно го имам разписано, но в матрична форма не виждам как може да се изтика. Някакви идеи?

Поне за мое успокоение днес вечерта се научих да карам прилично добре на един крак кънките :-P.

[ Добави коментар ]
Valid XHTML 1.0! Valid CSS!