Nguyên lý về 3D và Phép chiếu - Projection

Nguyên lý về 3D 􀂄 Ðồ họa 3 chiều - 3D computer graphics bao gồm việc bổ xung kích thước về chiều sâu của đối tượng, cho phép ta biểu diễn chúng trong thế giới thực một cách chính xác và sinh động hơn. 􀂄 Tuy nhiên các thiết bị truy xuất hiện tại đều là 2 chiều, Do vậy việc biểu diễn được thực thi thông qua phép tô chát – render để gây ảo giác illusion về độ sâu 􀂄 3D Graphics là việc chyển thế giới tự nhiên dưới dạng các mô hình biểu diễn trên các thiết bị hiển thị thông qua kỹ thuật tô chát (rendering).

pdf8 trang | Chia sẻ: tlsuongmuoi | Lượt xem: 2381 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Nguyên lý về 3D và Phép chiếu - Projection, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 1 (c) SE/FIT/HUT 2002 1 Bài 5 Nguyên lý về 3D và Phép chiếu-Projection Lê Tấn Hùng 0913030731 hunglt@it-hut.edu.vn (c) SE/FIT/HUT 2002 2 Nguyên lý về 3D „ Ðồ họa 3 chiều - 3D computer graphics bao gồm việc bổ xung kích thước về chiều sâu của đối tượng, cho phép ta biểu diễn chúng trong thế giới thực một cách chính xác và sinh động hơn. „ Tuy nhiên các thiết bị truy xuất hiện tại đều là 2 chiều, Do vậy việc biểu diễn được thực thi thông qua phép tô chát – render để gây ảo giác illusion về độ sâu „ 3D Graphics là việc chyển thế giới tự nhiên dưới dạng các mô hình biểu diễn trên các thiết bị hiển thị thông qua kỹ thuật tô chát (rendering). (c) SE/FIT/HUT 2002 3 Ðặc điểm của kỹ thuật đồ hoạ 3D Có các đối tượng phức tapj hơn các đối tượng trong không gian 2D „ Bao bởi các mặt phẳng hay các bề mặt „ Có các thành phần trong và ngoài „ Các phép biến đổi hình học phức tạp „ Các phép biến đổi hệ toạ độ phức tạp hơn „ Thường xuyên phải bổ xung thêm phép chiếu từ không gian 3D vào không gian 2D „ Luôn phải xác định các bề mặt hiển thị (c) SE/FIT/HUT 2002 4 Các phương pháp hiển thị 3D „ Với các thiết bị hiển thị 2D: „ 3D viewing positions „ Kỹ thuật chiếu - projection: orthographic/perspective „ Kỹ thuật đánh dấu độ sâu - depth cueing „ Nét khuất - visible line/surface identification „ Tô chát bề mặt-surface rendering „ Cắt lát - exploded/cutaway scenes, cross-sections „ Thiết bị hiển thị 3D: „ Kính stereo - Stereoscopic displays* „ Màn hình 3D - Holograms (c) SE/FIT/HUT 2002 5 Different views of a 3D model Shadows as depth cues Perspective and Depth of Field Exploded/cutaway scenes (c) SE/FIT/HUT 2002 6 3D GRAPHICS PIPELINE WORLD SCENE/OBJECT 3D MODELLING 3D CLIPPING PROJECTION RASTERIZATION 2D PIXELMAP DISPLAY Modelling coordinates: - world coordinate system, - object coordinate system Camera coordinates Screen/Window coordinates Device coordinates VIEWING Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 2 (c) SE/FIT/HUT 2002 7 3D - Modelling 3D Modelling Parametric Polygonal Particles Implicit 2222 rzyx =++ θ θ 2 4 cos sin = = y x (c) SE/FIT/HUT 2002 8 Clipping 3D view frustrum outside view so must be clipped (c) SE/FIT/HUT 2002 9 Viewing and Projection viewport 3d models camera setup (c) SE/FIT/HUT 2002 10 Rasterization (c) SE/FIT/HUT 2002 11 Phép chiếu Định nghĩa về phép chiếu Một cách tổng quát, phép chiếu là phép chuyển đổi những điểm của đối tượng trong hệ thống tọa độ n chiều thành những điểm trong hệ thống tọa độ có số chiều nhỏ hơn n. Định nghĩa về hình chiếu Ảnh của đối tượng trên mặt phẳng chiếu được hình thành từ phép chiếu bởi các đường thẳng gọi là tia chiếu (projector) xuất phát từ một điểm gọi là tâm chiếu (center of projection) đi qua các điểm của đối tượng giao với mặt chiếu (projection plan). (c) SE/FIT/HUT 2002 12 Các bước xây dựng hình chiếu „ 1. đối tượng trong không gian 3D với tọa độ thực được cắt theo một không gian xác định gọi là view volume. „ 2. view volume được chiếu lên mặt phẳng chiếu. Diện tích choán bởi view volume trên mặt phẳng chiếu đó sẽ cho chúng ta khung nhìn. „ 3. là việc ánh xạ khung nhìn vào trong một cổng nhìn bất kỳ cho trước trên màn hình để hiển thị hình ảnh C¾t theo view volum PhÐp chiÕu trªn mÆt ph¼ng chiÕu PhÐp biÕn ®æi vμo cæng nh×n cña täa ®é thiÕt bÞ täa ®é thùc 3D täa ®é theo vïng c¾t khung nh×n täa ®é thiÕt bÞ Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 3 (c) SE/FIT/HUT 2002 13 (c) SE/FIT/HUT 2002 14 Phép chiếu song song Parallel Projections ƒ Phép chiếu song song - Parallel Projections là phép chiếu mà ở đó các tia chiếu song song với nhau hay xuất phát từ điểm vô cùng ƒ Phân loại phép chiếu song song dựa trên hướng của tia chiếu Direction Of Projection và mặt phẳng chiếu - projection plane ƒ Phép chiếu trực giao (Orthographic projection) là phép chiếu song song và tia chiếu vuông góc với mặt phẳng chiếu thường dùng mặt phẳng z=0 ƒ Ứng với mỗi mặt phẳng chiếu ta có 1 ma trận chiếu tương ứng ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 0000 0010 0001 ][ zT ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 0100 0000 0001 ][ yT ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 0100 0010 0000 ][ xT (c) SE/FIT/HUT 2002 15 Phép chiếu trục lượng (Axonometric) „ Phép chiếu trục lượng là phép chiếu mà hình chiếu thu được „ Phép chiếu Trimetric „ Là phép chiếu hình thành từ việc quay tự do đối tượng trên một trục hay tất cả các trục của hệ tọa độ và chiếu đối tượng đó bằng phép chiếu song song lên mặt phẳng chiếu (thường là mặt phẳng z = 0) vuông góc với tia chiếu „ trên cơ sở tỉ lệ co - SF của ảnh đối tượng trên mỗi trục là khác nhau. ⎥⎥ ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢ ⎣ ⎡ = ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = 1000 10 10 10 ][ 1100 1010 1001 ][ '' '' '' zz yy xx yx yx yx TU (c) SE/FIT/HUT 2002 16 Trimetric [ U ] :là ma trận vector đơn vị của các trục x, y, z bất biến [ T ] : là ma trận chiếu tổng hợp tương ứng SF- tỉ lệ co theo các trục là: 2 x 2 xx 'y'xf += 2 y 2 yy 'y'xf += 2 z 2 zz 'y'xf += (c) SE/FIT/HUT 2002 17 Phép chiếu Dimetric ]][][[][ PzRxRyT = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ − = 1000 0000 0010 0001 1000 00 00 0001 1000 00 0010 00 . cossin sincos . cossin sincos ϕϕ ϕϕ φφ φφ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −= 1000 00sincossin 00cos0 00sinsincos ][ ϕφφ ϕ ϕφφ T Là phép chiếu Trimetric với 2 hệ số tỉ lệ co bằng nhau, giá trị thứ 3 còn lại là tuỳ ý. •Quay đối tượng quanh trục y theo một góc φ, •Quay quanh x theo một góc ψ •Chiếu trên mặt phẳng z = 0 với tâm chiếu tại điểm vô hạn (c) SE/FIT/HUT 2002 18 ϕ2222 cos)( '' =+= yyy yxf ϕφφ 222222 sincossin)( '' +=+= zzz yxf )(sin 2 1 zf±= −ϕ )(sin 2 1 2 z z f f − ±= −φ Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 4 (c) SE/FIT/HUT 2002 19 Phép chiếu Isometric „ Là phép chiếu trục lượng mà ở đó hệ số co cạnh trên 3 trục là bằng nhau „ Góc quay tương ứng là 35.26 và 45 „ Ðược ứng dụng nhiều trong việc xây dựng các góc quan sát chuẩn cho đối tượng trong các hệ soạn thảo đồ họa ϕ ϕφ 2 2 2 1 sin sinsin −= ϕ ϕφ 2 2 2 1 21 sin sinsin − −= 3 1±=ϕsin 045 026.35 ±= ±= φ ϕ 21 311 31 1 2 2 2 / / / sin sinsin =−=−= ϕ ϕφ 8165.03/2cos2 === ϕf (c) SE/FIT/HUT 2002 20 . (c) SE/FIT/HUT 2002 21 Parallel Projections axonometric orthographic oblique isometric (c) SE/FIT/HUT 2002 22 Phép chiếu xiên - Oblique „ Phép chiếu Cavalier „ Phép chiếu Cabinet (c) SE/FIT/HUT 2002 23 Phép chiếu Cavalier ` Phép chiếu cavalier là phép chiếu xiên được tạo thành khi các tia chiếu làm thành với mặt phẳng chiếu một góc 450 ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −−= 1000 00 0010 0001 ]''[ ba T α α sinfb f = = cos a ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −−= 1000 00sincos 0010 0001 ][ αα ffT (c) SE/FIT/HUT 2002 24 „ f = 0, β = 900 phép chiếu sẽ trở thành phép chiếu trực giao. „ Còn với f = 1 kích thước của hình chiếu bằng kích thước của đối tượng => cavalier „ Phép chiếu Cavalier cho phép giá trị của α biến đổi một cách tự do α = 300 và 450 Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 5 (c) SE/FIT/HUT 2002 25 Phép chiếu Cabinet „ Phép chiếu xiên với hệ số co tỉ lệ f = 1/2 0 22 1 22 1 435.63) )21(1 2 1 (cos ) 1 (cos = + = + = − − f fβ (c) SE/FIT/HUT 2002 26 Oblique Projections D/2 D D D Cavalier ProjectCabinet Projection (c) SE/FIT/HUT 2002 27 Phép chiếu phối cảnh Perspective Projection „ Phép chiếu phối cảnh là phép chiếu mà các tia chiếu không song song với nhau mà xuất phát từ 1 điểm gọi là tâm chiếu.Phép chiếu phối cảnh tạo ra hiệu ứng về luật xa gần tạo cảm giác về độ sâu của đối tượng trong thế giới thật mà phép chiếu song song không lột tả được. „ Các đoạn thẳng song song của mô hình 3D sau phép chiếu hội tụ tại 1 điểm gọi là điểm triệt tiêu - vanishing point „ Phân loại phép chiếu phối cảnh dựa vào tâm chiếu - Centre Of Projection (COP) và mặt phẳng chiếu projection plane (c) SE/FIT/HUT 2002 28 Vanishing points „ Each set of parallel lines (=direction) meets at a different point: The vanishing point for this direction „ Sets of parallel lines on the same plane lead to collinear vanishing points: the horizon for that plane „ Easy examples „ corridor „ higher = further away „ Good way to spot faked images (c) SE/FIT/HUT 2002 29 Điểm triệt tiêu Vanishing point „ Nếu điểm triệt tiêu nằm trên trục tọa độ thì điểm đó được gọi là điểm triệt tiêu quy tắc - principle vanishing point „ The number of principal vanishing points is determined by the number of principal axes cut by the projection plane. „ If the plane only cut the z axis (most common), there is only 1 vanishing point. „ 2-points sometimes used in architecture and engineering. 3- points seldom used … add little extra realism (c) SE/FIT/HUT 2002 30 Perspective Projections 3-point perspective 2-point perspective 1-point perspective Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 6 (c) SE/FIT/HUT 2002 31 Phép chiếu phối cảnh (c) SE/FIT/HUT 2002 32 Phép biến đổi phối cảnh „ Phép chiếu phối ca?nh của các điểm trên đối tượng lên trên mặt phẳng 2D thu được từ phép chiếu trực giao và phép biến đổi phối cảnh ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 100 0010 0001 ][ r Tr ⎥⎦ ⎤⎢⎣ ⎡ +++= 1111]1'''[ rz z rz y rz xzyx (c) SE/FIT/HUT 2002 33 Perspective Projections „ Tham số: „ centre of projection (COP) „ field of view (θ, φ) „ projection direction „ up direction (c) SE/FIT/HUT 2002 34 Perspective Projections Consider a perspective projection with the viewpoint at the origin and a viewing direction oriented along the positive -z axis and the view-plane located at z = -d y yp dz yy d y z y P P =⇒= -z d ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −=⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −↔ ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ − = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ 10100 0100 0010 0001 1 1 z y x ddz z y x d dz y dz x z y x P P P divide by homogenous ordinate to map back to 3D space a similar construction for xp⇒ (c) SE/FIT/HUT 2002 35 Perspective Projection Details ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −↔ ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ − = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ dz z y x d dz y dz x z y x P P P 1 1 ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ −=⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ − 10000 0100 0010 0001 1 z y x z y x Flip z to transform to a left handed co-ordinate system ⇒ increasing z values mean increasing distance from the viewer. PROJECTION matrix perspective division (c) SE/FIT/HUT 2002 36 Phép chiếu phối cảnh 1 tâm Giả sử khi mặt phẳng được đặt tại z = 0 và tâm phép chiếu nằm trên trục z , cách trục z một khoảng zc = -1/r. Nếu đối tượng cũng nằm trên mặt phẳng z = 0 thì đối tượng sẽ cho hình ảnh thật. Phương trình biến đổi: [ x y z 1 ][ Tr ] = [ x y z rz+1 ] ma trận biến đổi một điểm phối cảnh [ Tr ] có dạng: ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 100 0010 0001 ][ r Tr Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 7 (c) SE/FIT/HUT 2002 37 y H G D C E F x A B z y’ D’ C’ H’ G’ A’ E’ F’ B x phép chiếu phối cảnh 1 tâm ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 000 0010 0001 1000 0000 0010 0001 1000 100 0010 0001 rr [ ] [ ]10 1000 000 0010 0001 1 += ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ rzyx r zyx [ ] ⎥⎦ ⎤⎢⎣ ⎡ ++= 10111''' rz y rz xzyx (c) SE/FIT/HUT 2002 38 Phép chiếu phối cảnh 2 tâm ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 0100 010 001 ][ q p Tpq [ ] [ ])1( 1000 0100 010 001 1 ++= ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ qypxzyx q p zyx Y’ VP ≡ y = 10 D’ H’ C’,G’ VP X=10 A’, E’B’, F’x’ VP (y=10) D’, H’C’, G’ VP( x = 10) A’, E’B’, F’ (c) SE/FIT/HUT 2002 39 „ [ Tc ] = [ Tpq ][ Tz ] „ 2 tâm chiếu: „ [ -1/p 0 0 1 ] „ [ 0 -1/q 0 1 ] „ VP (Vanishing point) tương ứng trên 2 trục x và y là điểm: [ 1/p 0 0 1 ] và [ 0 1/q 0 1 ]. [ ] ⎥⎦ ⎤⎢⎣ ⎡ ++++++= 1)1()1()1(1''' qypx z qypx y qypx xzyx ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 0000 010 001 1000 0000 0010 0001 1000 0100 010 001 q p q p (c) SE/FIT/HUT 2002 40 Phép chiếu phối cảnh 3 tâm chiếu „ [ Tpqr ] = [Tp ][Tq ][Tr ] ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 100 010 001 1000 100 0010 0001 1000 0100 010 0001 1000 0100 0010 001 r q p r q p [ ] [ ])1( 1000 100 010 001 1 +++= ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ rzqypxzyx r q p zyx (c) SE/FIT/HUT 2002 41 [ ] ⎥⎦ ⎤⎢⎣ ⎡ +++++++++= 1)1()1()1(1''' rzqypx z rzqypx y rzqypx xzyx y' x' D' H' C' G' A', E' F' B' VP ( y = 10) VP ( x = 10 ) VP ( z = 10 ) y' x'z' A' B' C' D' H' G' F' E' (c) SE/FIT/HUT 2002 42 „ 3 tâm chiếu: „ trên trục x tại điểm [ -1/p 0 0 1 ], „ y tại điểm [ 0 -1/q 0 1 ] „ z tại điểm [ 0 0 -1/r 1 ]. „ VP sẽ tương ứng với các giá trị : „ [ 1/p 0 0 1 ], [ 0 1/q 0 1 ] [ 0 0 1/r 1 ] „ [ Tc ] = [ Tpqr ][ Tz ] ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 1000 000 010 001 1000 0000 0010 0001 . 1000 100 010 001 r q p r q p Khoa CNTT – DHBK Hanoi hunglt@it-hut.edu.vn 8682595 8 (c) SE/FIT/HUT 2002 43 Phân loại các phép chiếu PhÐp chiÕu h×nh häc ph¼ng PhÐp chiÕu song song PhÐp chiÕu phèi c¶nh Mét ®iÓm Ba ®iÓm Hai ®iÓm Trùc giao PhÐp chiÕu Xiªn Cavalier Cabinet PhÐp chiÕu kh¸c ChiÕu ®øng ChiÕu c¹nh Axonometric Trimetric Dimetric Isometric ChiÕu b»ng

Các file đính kèm theo tài liệu này:

  • pdfgiao_trinh_do_hoa_5__0416.pdf
Tài liệu liên quan