Biểu diễn bề mặt dùng kỹ thuật Morphing

Một phần của tài liệu Nghiên cứu một số phương pháp biểu diễn bề mặt trong không gian 3 chiều (Trang 72)

b) Xâc định điểm trín mặt phẳng

3.1. Biểu diễn bề mặt dùng kỹ thuật Morphing

3.1.1. Câc phĩp nội suy

Đ ế biến đổi đối tư ợ n g năy thănh hình d ạn g g iố n g v ớ i hình d ạ n g của m ột đổi tư ợ n g khâc, c ó nh ữ ng thuật toân sử d ụng ph ư ơ n g thức c h ia n h ỏ câc đối tư ợ n g thănh câ c phần n h ỏ hơn vă nội su y câ c phần năy ch o nhau. C ó ba p h ư ơ n g thức nội suy đ ối v ớ i câc thực thể hình h ọ c đơn giản.

. . . . 3 .1 .1.1, A f f in e ...G iả sử ch ú n g ta c ó hai tam g iâ c vă m u ốn nội suy hai tam g iâ c năy ch o G iả sử ch ú n g ta c ó hai tam g iâ c vă m u ốn nội suy hai tam g iâ c năy ch o nhau. M ộ t câ ch đơn giả n nhất lă sử dụng kỹ thuật ânh x ạ dựa trín h ệ toạ đ ộ B arycentric đ ư ợ c m in h h o ạ như hình 3.1

c p

E B

Hình 3.1. P h ĩ p nội suy Affine

Nghiín círu một sổ phương phủp biếu diễn bề mật trong không gian ba chiều 72

Trước tiín chủng ta định nghĩa một ânh xạ T cho câc đỉnh của tam giâc: T(A)=D, T(B)=E, T(C)=F. Với câc điếm còn lại chúng ta sí ânh xạ chúng theo toạ độ Barycentric ( d | , a 2, (X3) nghĩa lă:

p = 0C|*A + a 2*B + a 3* c (3 .1 ) T ron g đó: a i > 0 v ă a i + a 2+ ( X3 =1

Một điểm Ọ lă ânh xạ của p qua phĩp ânh xạ T được tính toân như sau:

Q = T(P) = T(oc,*A + <X2*B + a3*C) (3.2)

= Oi,* T (A) + a2*T(B) + a3*T(C) = CC1* D + a2*E + a 3*F

3.1.1.2. Bilinear Interpolation

Đđy lă kỹ thuật xâc định một hăm biến đổi từ một hình vuông kích thước [0 , 1 ]x[0 , 1 ] tới một tứ giâc trong không gian ( tứ giâc năy không nhất thiết p h ả i đồng phẳng). Nếu chúng ta giả sử toạ đ ộ của kJhối hình vuông lă u vă V

thì phĩp biến đổi B được thực hiện như sau:

(3.3) í A D 1 " 1-v "

l; BC J L' V J

Phĩp biến đổi được thực hiện tương đương với hai việc. Việc thứ nhất lă nội suy trín câc cạnh AD vă BC thu được điểm p vă Q.

P = (l-v )A + vD Ọ = (l-v )B + vC

Việc tiếp theo lă nội suy trín đoạn p ọ sử dụng thông sổ w:

(3.4)

B(m,v) = (1-h)P + mQ (3.5)

Nghiín cứu một số phirơng phâp biếu diễn bể mặt trong không gian bu chiều 73

Hình 3.2 Phĩp nội suy Bilinear Interpolation

3.1.1.3. Projective Interpolation

C h o hai tứ g iâ c A B C D vă E FG H trín cù n g m ột m ặt ph ẳng, tồn tại duy nhất m ộ t phĩp c h iếu T th ỏa m ên T (A ) = E, T (B ) = F, T (C ) = G , T (D ) = H.

M a trận của phĩp biến đổi dù ng phĩp ch iếu năy c ó thể thu đ ư ợ c từ bốn b iếu th ứ c ở trín vă p hĩp biến đổi năy được g ọ i lă P rojective Interpolation. H ình 3 .3 dưới đđy m inh hoạ c h o câc phĩp biến đổi năy.

Hình 3.3. Ket quả câc phĩp nội suy -Bilinear Interpolation -Project Interpolation

Nghiín cínt một số phương phâp biíu diền bẻ mặt trong không gịcm bơ chiều 74

3.1.2. Kỹ thuật biến đổi dựa trín khung lưới

Thực ra, việc xđy dựng câc thuật toân biến đổi dựa trín tập đặc trưng lă câc khung lưới lă một kỳ thuật chung. Câc khung lưới năy có thế lă câc lưới đa giâc như lưới câc tam giâc hay lưới câc tứ giâc v.v...Tuy nhiín ở đđy chúng ta sẽ trình băy việc xđy dựng thuật toân biến đổi với câc đặc trưng lă câc đường cong B-Spline. Đđy cũng lă thuật toân biến đổi có chất lượng đầu tiín.

3.1.2.1. Xâc định tập đặc trưng

Tập đặc trưng được xđy dựng lă một khung lưới B-Spline cho cả ảnh gốc vă ảnh đích.

3.1.2.2. Xđy dựng hăm biến đối

. Hăm biến đối được trình băy sau đđy sẽ chỉ ra câch thức xâc định tất cả câc điểm tương ứng với từng điểm ảnh thuộc ảnh A có khung lưới lă M a, ma trận trong ảnh B có khung lưới ỉă Mb.

C ông việc năy được tiến hănh qua hai giai đoạn: quĩt ngang vă quĩt dọc. Do hai giai đoạn năy được thực hiện tương tự nhau nín chúng ta chỉ trình băy đại diện một giai đoạn lă giai đoạn quĩt ngang.

G iả sử khung lưới Ma vă Mb của hai ảnh A vă B như hình vẽ:

Hình 3.4. Khung lưới B-Spline của hai ảnh

Nghiín củĩi một sổ phương phâp biểu diễn bề mặt trong không gian ba chiều 75

Ớ giai đoạn quĩt ngang chúng ta sẽ chỉ quan tđm đến câc đường B- Spline dọc trín cả hai ảnh vă xếp chồng chúng với nhau. Chủ ý rằng có một sự tham chiíu một- một giữa câc đường B-Spline dọc năy.

Chúng ta sẽ quĩt từng dòng ngang từ trín xuống dưới, với mỗi dòng quĩt ngang chúng ta sẽ xâc định giao của nó với câc đường B-Spline.

Câc bước cần lăm đối với đường quĩt ngang có phương trình y = a được xâc định như sau (xem minh hoạ ở hình 3.5):

Xđy dựng một hệ trục toạ độ hai chiều.

Xđy dựng câc điím, mỗi điểm năy nhận giâ trị hoănh độ giao điím của đường quĩt ngang với câc đường B -Spline của ảnh A lăm hoănh độ vă hoănh độ giao điếm với đường B-Spline tương ứng với nó trín ảnh B lăm tung độ.

Xđy dựng một đường cong đi qua tất cả câc điếm năy.

Đ ường cong năy lă ânh xạ hoănh độ của câc điểm có tung độ lă a của hai ảnh A vă B.

Nghiín círu một số phương phâp biếu diễn bẻ mặt trong không gian ba chiều 76

3.1.2.3. Nhận xĩt kết quả

♦ Đđy lă thuật toân có kết quả khâ chất lượng, tuy nhiín nó cũng chưa thật tốt.

♦ Thời gian chạy tương đối lđu do phải lăm việc với câc đường cong phức tạp lă B-Spline.

♦ Cần nhiều tương tâc của người sử dụng trong việc xđy dựng khung lưới. ♦ Trong nhiều trường họp, mô hình khung lưới không phù hợp.

3.1.3. Kỹ thuật biến đổi trín cơ sở câc vector

Thuật toân năy có ưu điểm giảm nhẹ tương tâc của người sử dụng trong việc xâc định tập câc điểm đặc trưng.

3.1.3.1. Xâc định tập câc đặc trưng

Tập câc đặc trưng được xđy dựng dưới dạng câc vector vă có sự tham chiểu một-một trín ảnh gốc vă ảnh đích.

3.1.3.2. Xđy dựng hăm biến đổi

• Trước hết chúng ta xĩt' trường hợp’tập- câc đặc trưng chỉ eớ một vector; •

a) Chuyển đối với một cặp vector

C húng ta sẽ dùng một cặp vector đế định nghĩa một ânh xạ từ một ảnh đến một ảnh khâc.

Giả sử cặp hai vector tương đương giừa ảnh nguồn vă đích định nghĩa một ânh xạ toạ độ từ toạ độ điểm ảnh đích X đến toạ độ điểm ảnh nguồn X lă p ọ trín ảnh đích vă p Q trín ảnh nguồn.

Nghiín ânt một sổ phương phâp biếu diễn bề mặt trong không gian ba chiều 77

Khi đó X được tính theo X bằng câch sau:

( X - P ) x ( Q - P ) WQ - P W2 (X - P) X perpendicuỉàiQ - P) II = > (3.6) \ \ Q - P \ X’ = P’ + m x (Q ’ - P ’) + VX perpendiculaiịQ ’ - p ’) \\Q’-P '\\

Trong đó : hăm Perpendicular( ) trả lại vector vuông góc, cùng chiều dăi với vector văo.

G iâ trị u thí hiện chiều đăi của đoạn thẳng vă V lă khoảng câch tới đường thẳng. G iâ trị của u tăng từ 0 đến 1 khi điểm ảnh tiến từ p đến Q vă nhỏ hom 0 hoặc lớn hơn 1 thì sẽ vượt qua vùng giới hạn. Giâ trị của V lă khoảng câch từ điểm ảnh đến đoạn thẳng. Nếu có một cặp vector thì thuật toân biến đổi được cho như sau:

Đầu văo:

ImgSource : Image?

Đầu ra:

ImgDestination :Image; Giải thuật:

For mồi điểm ảnh trín ânh đích

Tìm cặp điểm tương đương (u,v)

Tìm điểm X trín ảnh nguồn cho mỗi (w,v) ImgDestination.X = ImgSource.X \ e ổ ' \ Ịa l

Destination Image IP'Source Image

Hình 3.6. Cặp đoạn thắng đơn

Nghiín cứu một số phiỉơỉỉg phâp biếu diễn bề mặt trong không gian ba chiều 78

Hình 3.6 minh hoạ cho thuật toân, câch tìm điểm X khi biết PQ, p Q vă điểm ảnh X.

Sau đđy lă một số kết quả minh hoạ của thuật toân:

H ìn h 3.7. Một ví dụ minh hoạ

Trong đó ảnh phía trín bín trâi lă ảnh gốc, câc ảnh còn lại lă câc ảnh kết quả với đoạn thắng được xâc định tương ứng.

b) Chuyến đỗi với nhiều cặp vector

Biến đổi với nhiều cặp vector sẽ phức tạp hơn so với một cặp vector. T rong thuật toân năy chúng ta sẽ tính toân thím câc giâ trị weight cho sự biến đối của từng vector. Mỗi điểm X sẽ được tính toân cho từng cặp vector.

Độ dịch chuyến Dị = Xj -Xi lă khâc nhau giữa vị trí của điểm ảnh nguồn vă đích. M ột trọng số dựa trín những độ dịch chuyển năy sẽ được tính toân. T rọng số năy sẽ được xâc định bởi khoảng câch từ X đến vector. G iâ trị trọng số năy được thím với X để xâc định điểm X ’ cần lấy trín ảnh nguồn. Trường hợp vector đơn sẽ lă một trường hợp đặc biệt của trường hợp nhiều vector nếu như giâ trị weight không bao giờ lă 0 tại mọi điểm trín ảnh. Giâ trị w eight lă lớn nhất nếu điểm ảnh nằm đủng trín vector vă sẽ lă bĩ nhất nếu nó nằm xa vector nhất. Công thức (3.7) tính giâ trị weight được cho như sau:

Nghiín cứu một số phươììg phâp biếu diễn bề mặt trong không gian ba chiều 79

w = lengthp

(a+dist) (3.7)

Trong đó:

- Length lă chiều dăi của vector;

- dist lă khoảng câch từ điểm ảnh đến vector;

- a, b, p lă câc hăng số dùng để thay đổi quan hệ giữa câc vector.

Nếu a tiến tới 0 vă dist đúng bằng 0 thì W (weight) tiến tới vô cực. Với mồi giâ trị a đê cho, chúng ta có thể biết rõ điểm ảnh nằm trín vector chúng ta muốn. M ột giâ trị lớn sẽ lăm cho bề cong nhẵn hơn. Giâ trị b xâc định quan hệ giữa câc vector vă khoảng câch của nó như thế năo. Neu b lớn thì điểm ảnh chi bị tâc động bởi một vector có khoảng câch gần nó nhất. Nếu b=0 thì điểm ânh sẽ bị tâc động bởi mọi vector. Giâ trị hay sử dụng của b lă [0.5;2]. Giâ trị của p lă [0; 1 ]. Nếu p = 0 thì tất cả câc weight đều có cùng giâ trị.

Thuật toân được cho như sau: For mồi điểm X trín ảnh đích

DSUM =(0,0) W eightsum =0 For mỗi vector PiQi

Tính u,V dựa trín Pi,Qi Tính X i dựa trín u,v vă Pi Qi Di = Xi -Xi

dist = khoảng câch từ X tới PiQi weight= ((lengthp)/(a+dist))b DSUM =DSƯM + Di*weight

Nghiín ciru một số phirơng phâp biếu diễn bề mật trong không gian ba chiều 80

weightsum = weightsum + weight X = X + DSUM/vveightsum ImgDestination.X = ImgSource.X

Hình 3.8. Nhiều cặp vector

Hình 3.8 lă một minh hoạ cho việc tính toân điếm X trín cơ sở biết X vă câc cặp vector tương ứng.

Sau đđy lă kết quả thử nghiệm thuật toân:

Hình 3.9. Kết quả của thuật toân

3.2. Thuật toân biến đổi trín cơ sở phđn hình tam giâc

3.2.1. Ý tưởng cơ bản

Ở giai đoạn xâc định câc điểm đặc trưng chúng ta tạo ra xđy dựng một lưới câc tam giâc cho ảnh gốc vă ảnh đích thoả mên điều kiện:

/"

(3.8)

u T ị = s

< i

T j n T j = 0

Nghiín ciru một số phương phâp biếu diễn bẻ mặt trong không gian ba chiều____________ 8 1

Trong đó : Tj lă diện tích của tam giâc thứ i s lă diện tích của ảnh.

Đ ồng thời 3 đỉnh của tam giâc lă 3 điểm đặc trưng được xâc định trín đối tượng ảnh vă có sự tham chiếu một - một giữa câc điểm năy.

Dựa trín lưới câc đặc trưng vừa xđy dựng được, ứng với mỗi điểm ảnh cần nội suy, hăm biến đổi sẽ xâc định toạ độ của Ĩ1Ó rồi xâc định hai điểm có cùng toạ độ trín ảnh đích vă ảnh gốc. Sau đó gân giâ trị mău của điếm ảnh đích bằng giâ trị mău của điểm gốc tương ứng.

3.2.2. Cơ sở lý thuyết

3.2.2.1. Khâi niệm về toạ độ Barycentrỉc

Với mỗi điểm M (xm, ym) nằm trong tam giâc ABC thì chúng ta đều có thí biíu diễn toạ độ của nó theo toạ độ câc đỉnh của tam giâc như sau:

c xm = u X xa + V X xb + w X xc ym = u x y a + v x y b + w x y c u + v + w = 1 l u,v, vv > 0 (3.9)

Giải hệ phương trình năy ta được một nghiệm duy nhất:

V =

w =

(ya-yc) X (xa-xm)-(xa-xc) X (y.,-ym) (ya-yc) X (xa-xb)-(xa-xc) X (yH-yb)

(y a -y m ) X (xa-xb)-(xa-xm) X (ya-yb)

(ya-yc) X (xa-xb)-(xa-xc) X (ya-yb) > (3.10)

u = 1- V - w J

Chúng ta nói rằng điểm M có toạ độ lă (u, V, w) đối với tam giâc ABC.

Nghiín cicu một số phương phâp biểu diẽn bề mặt trong không gian ba chiểu 82

3.2.2.2. Một số đặc điếm cần chú ý của toạ độ Barycentric ♦ Đổi với mỗi điểm, toạ độ của nó lă duy nhất.

♦ Toạ độ của một điểm phụ thuộc văo tỉ lệ câc khoảng câch từ nó đến câc đỉnh của tam giâc chứ không phải lă khoảng câch tuyệt đối giữa chúng.

♦ Nếu khoảng câch tương đối của điểm cần biểu diễn đến điểm cơ sở nhỏ thì hệ so tương ứng với nó sẽ lớn.

(0 ,1 ,0 )

Hình 3.10. Minh hoạ cho khâi niệm hệ toạ độ Barycentric.

3.2.3. Xđy dựng thuật toân

Đến đđy thuật toân đê hoăn toăn rõ răng. Vậy câc bước phải thực hiện đổi với thuật toân năy lă:

♦ Xđy dựng lưới tam giâc cho ảnh gốc vă ảnh đích

♦ Đối với mồi cặp tam giâc tương ứng với ảnh gốc vă ảnh đích ta nội suy tam giâc ở ảnh gốc thănh tam giâc ở ảnh đích.

M ột vấn đề nảy sinh lă lăm sao có thể tìm được tất cả câc điểm thuộc tam giâc ABC một câch hiệu quả ?

Nghiín cúV một sổ phương phúp biíu diễn hể mặt trưng không gian hư chiểu 83

Có nhiều phương ân để giải quyết vấn đề năy, phần sau đđy sẽ giới thiệu một phương phâp khâ hiệu quả.

3.2.4. Phương phâp xâc định tất cả câc điểm thuộc một tam giâcPhương phâp năy gồm có câc bước như sau: Phương phâp năy gồm có câc bước như sau:

Tìm câc giâ trị Xmax, xmin, ymax, ymin đối với câc đỉnh của tam giâc. For a - y min to ymax do

- Tìm giao điểm của đường thẳng y = a với 3 cạnh của tam giâc.

- Chỉ xĩt câc giao điểm có hoănh độ thuộc [xmin, Xmax] vă sắp xếp câc giao điểm theo chiều tăng dần của hoănh độ.

- Câc điểm nằm trín đường thẳng y = a vă có hoănh độ thuộc đoạn [Xmin, Xmax] lă thuộc tam giâc (với X thể hiện hoănh độ giao điểm).

y = y min

Hình 3.11. Tìm tất cả câc điểm thuộc tam giâc theo dòng quĩt

Nghiín cứu một số phương phâp biểu diễn bề mặt trong không gian ba chiều 84

3.3. Thuật toân biến đổi trín cơ sở tập câc điểm đặc trưng3.3.1. L ý do đưa ra thuật toân 3.3.1. L ý do đưa ra thuật toân

Xu hướng hiện nay lă tìm ra câc thuật toân biến đổi đỏi hỏi ít tương tâc của người sử dụng vă thời gian chạy nhanh. Để thực hiện điều năy người ta đưa ra thuật toân trín cấu trúc tập câc đặc trưng lă tập câc điểm với 3 lý do sau:

♦ Thứ nhất, điểm lă phần tử cơ bản nhất, lă tế băo của câc thực thể hình học. Vì vậy, câc thực thể đều có thể hiểu lă tập hợp câc điểm.

♦ Thử hai, tập câc điếm có thể dễ dăng thu được từ việc lấy mẫu đối tượng. ♦ Thứ ba, nếu có sự đòi hòi tương tâc của người sử dụng trong việc xâc định câc điím đặc trưng thì điều năy cũng đơn giản không đòi hỏi người sử dụng phải hiếu sđu về thuật toân hay về nắn chỉnh hình.

3.3.2. Ý tưởng cơ bản

Thuật toân có hướng tiếp cận dựa trín cơ sở câc cặp điểm đặc trưng như đê trình băy ở trín. Do vậy, điều quan trọng lă lăm sao có thể biểu diễn được một điểm bất kỳ theo tập câc đặc trưng khi mă lực lượng của tập lớn. Tuy nhiín, thuật toân lợi dụng tính chất phđn vùng của đối tượng ảnh để

Một phần của tài liệu Nghiên cứu một số phương pháp biểu diễn bề mặt trong không gian 3 chiều (Trang 72)