我試圖創建一個平鋪圖像數據集中的平鋪/像素位置到不同數據集(大致覆蓋相同圖像區域)的平鋪/像素位置的映射。由於成像區域的旋轉,平移軸,平移和縮放變化,在該映射中有很多未知因素需要考慮。這種情況如下所示,其中該矩形表示用於每個圖塊的成像區域,和瓦片的佈局由平移軸線(黑線)和相機軸之間的關係決定:圖像平鋪註冊
該問題減少到下面的線性系統,其考慮了兩個數據集中掃描軸相對於相機軸旋轉的不同,以及兩個數據集中成像區域之間的旋轉,縮放和平移。不幸的是我不知道如何去求解未知數:在本系統中
|tx ty|X|a b|+|px py|X|e f|+|i j|=|tx* ty*|X|k l|+|px* py*|
|c d| |g h| |m n|
的未知數是(A,B,C,d,E,F,G,H,I,J,K (tx,ty,px,py)中的瓦片和像素位置到數據集2中的瓦片和像素位置(tx *,ty *,px *,py *)的映射。對於我來說,創建14個(或更多)這種對應關係對我來說並不算什麼大問題,因爲我有一個對數極座標圖像配準,如果它們包含足夠的圖像,它就可以很好地將數據集1中的圖塊映射到數據集2中的圖塊交疊。問題是我寧願讓上面的映射確定,而不是在數據集1中的每個單獨的tile之間進行這種註冊,而2將永遠使用!!
任何幫助非常感謝! -Craig
編輯:
我想通了,我可以重新排列問題,像這樣(我認爲):
|tx ty px py 1|X|a b|=|tx* ty* px* py* 1|X|k l|
|c d| |m n|
|e f| |1 0|
|g h| |0 1|
|i j| |1 1|
這看起來更接近我所需要的,但我仍然需要試圖弄清楚如何將答案轉換成我可以使用的表單(最重要的是,我想我需要明確知道(k,l,m,n)將映射的座標轉換回瓷磚和像素位置在目標....沒有?
編輯2:將符號更改爲矩陣乘法正確 Edit3:添加插圖圖像,因爲我現在可以!