Re: [幾何] 圖像變形算法

看板Math作者 (希望願望成真)時間11年前 (2015/01/27 20:55), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《KanoLoa (卡)》之銘言: : 各位大大好,我在網路上自學圖像變形算法,但照著資料推演時卻卡住了, : 還望有大大能幫忙求解。 : 原題敘述: : a b aa bb : / ̄ ̄\ | ̄ ̄| : / \ → | | : / \ |__| : d  ̄ ̄ ̄ ̄ ̄ ̄ c dd cc : 圖: http://i.imgur.com/PNZGi5v.png
: 假設 (a,b,c,d) 是目標四邊形, : 求出 (a,b,c,d) 中所有的點 P(x,y) 在 (aa,bb,cc,dd) 中的對應點 P′(xx,yy) : 我們知道,直線ab上的任一點A可表示為 a ×(1 - A) + (b ×A) , 0 ≦ A ≦ 1 ; : 即: Ax = ax ×(1 - A) + bx ×A , : Ay = ay ×(1 - A) + by ×A . : Ax表示A點的橫坐標,Ay表示A點的縱坐標.ax表示a點的橫坐標,ay表示a點的縱坐標,下同。 : 同理,直線bc上的任一點B可以表示為: : Bx = bx ×(1 - B) + cx ×B , : By = by ×(1 - B) + cy ×B . : ---------------------------------------------------------- : 問題是原文的下句話: : 由此得到啟發:四邊形(a,b,c,d)中的任一點P(x,y)可以表示為: : x = (1-B) ×(1-A) ×ax + (1-B) ×A ×dx : + (1-A) × B ×bx + A ×B ×cx ----(第一式) : y = (1-B) ×(1-A) ×ay + (1-B) ×A ×dy : + (1-A) × B ×by + A ×B ×cy ----(第二式) : 我最大的問題就是,我沒有被啟發到.....不知道他是怎麼推出這兩式的。 : 底子不好,還望有大大能夠幫忙解惑,感激不盡 m(_ _)m 文章上的符號選得很爛 迫於無奈 只好沿用下去 兩式的理由如下 假設Q點在ab之間 R點在dc之間 只要Q, R滿足 aR : Qb = dR : Rc = k: 0 ~ 1 則abcd內任一點P必然會落在特定k的QR上 P = AR + (1 - A)Q Q = (1 - B)a + Bb R = (1 - B)d + Bc => P = AR + (1 - A)Q = A(1 - B)d + ABc + (1 - A)(1 - B)a + (1 - A)Bb 所以 x = (1-B) ×(1-A) ×ax + (1-B) ×A ×dx + (1-A) × B ×bx + A ×B ×cx ----(第一式) y = (1-B) ×(1-A) ×ay + (1-B) ×A ×dy + (1-A) × B ×by + A ×B ×cy ----(第二式) : ---- : 敘述完整圖片(有簡字): : http://i.imgur.com/HaY6TG1.png
: 原出處:百度文庫 (簡字) : http://wenku.baidu.com/view/7a433c80d4d8d15abe234e47 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.44.192.105 ※ 文章網址: https://www.ptt.cc/bbs/Math/M.1422363340.A.407.html

01/27 21:31, , 1F
大感謝阿!真的是很清楚簡單的講解!
01/27 21:31, 1F
文章代碼(AID): #1KnuhCG7 (Math)
討論串 (同標題文章)
文章代碼(AID): #1KnuhCG7 (Math)