Giới thiệu đồ họa máy tính | Đại học Kinh tế Kỹ thuật Công nghiệp

Sử dụng phần mềm và thư viện đồ họa (OpenGL, Unity, hoặc các phần mềm đồ họa khác) để tạo hình ảnh và dựng hình. Hiểu các khái niệm cơ bản về đồ họa máy tính, bao gồm hệ tọa độ, không gian màu, và nguyên lý hiển thị. Nắm được các thuật toán cơ bản trong đồ họa như tạo điểm, đường thẳng, tô màu, và biến đổi hình học.

Thông tin:
107 trang 1 tháng trước

Bình luận

Vui lòng đăng nhập hoặc đăng ký để gửi bình luận.

Giới thiệu đồ họa máy tính | Đại học Kinh tế Kỹ thuật Công nghiệp

Sử dụng phần mềm và thư viện đồ họa (OpenGL, Unity, hoặc các phần mềm đồ họa khác) để tạo hình ảnh và dựng hình. Hiểu các khái niệm cơ bản về đồ họa máy tính, bao gồm hệ tọa độ, không gian màu, và nguyên lý hiển thị. Nắm được các thuật toán cơ bản trong đồ họa như tạo điểm, đường thẳng, tô màu, và biến đổi hình học.

35 18 lượt tải Tải xuống
BG K Tdhmt - may tinh
1
LỜI GIỚI THIỆU
Ngày nay, hình ảnh được tạo ra từ máy tính có mặt ở khắp mọi nơi. Các sản phẩm
đồ họa tràn ngập cuộc sống của chúng ta đạt được đến kthuật đôi khi chúng ta
không thể nhận ra đó là một hình ảnh nhân tạo.
Các chương trình máy tính thường hiển thị kết quả bằng đồ họa. hương trình Các c
truyền hình và quảng cáo sử dụng hình ảnh từ đồ họa mang lại hiệu quả rõ rệt về tính thẩm
m . ĩ Nhiều chương trình truyền hình điện ảnh gần đây pha trộn các diễn viên thực
hình ảnh nhân tạo đến mức người xem có thể nhân vật hoặc cảnh rất khó để phân biệt một
thật với hình ảnh do máy tính tạo ra. Ngày càng nhiều máy ảnh kỹ thuật số, thiết bị điện tử
sử dụng input là màn hình cảm ứng thay vì bàn phím. Do v y, k thut đồ h a máy tính tr
thành m c lý thú và có nhi u ng d ng trong tht lĩnh vự c tế.
K h n tin h c và toán h c h u h t các gi i t v , thuật đồ ọa liên quan đế ế thu
màu cùng các phép bi c xây d ng d a trên n n t ng c a hình h c không ến hình đều đượ
gian hai chi u và ba chi u.
n nay, K thu h máy tính là m t môn h c gi ng d y cho sinh viên Hi t đồ a ọc đượ
chuyên ngành công ngh thông tin h c v 30 t lý thuy i tiế ết. Bài gi c biên so n theo ảng đượ
đúng chương trình đào t ủa Nhà trườ ấn đềo c ng. Ni dung bài ging tp trung vào vcác
chính trong 5 chương như sau:
Chương 1: Tổng quan v đồ h a máy tính, gi i thi u các khái ni m và cái nhìn t ng
quan v h a máy tính. đồ
Chương 2: Đồ ha 2 chiu, trình bày các thu t toán v và tô các đường cơ bản như
đường thẳng, đường tròn, các phép biến đổi trên đối tượng đồ h a 2D và các thu t toán xén
đoạn thng.
Chương 3: Đồ ha 3 chiu, Gi i thi u t ng quan v h a 3 chi u, các phép bi n đồ ế
đổ i và các phép chiếu, m t s cách biu di hễn đối ợng đồ a 3 chiu t các đối tượng
đơn giản như các hình khối, các đa diện ...
Chương 4: Các h màu, trình bày v các h n cùng các qui t c ph i màu màu cơ bả
cơ bản trong đồ ha máy tính.
Chươn g 5: Các k thuật đ h a trong b Công c Adobe After Effect
1. M c tiêu môn h c:
V i các n au khi h c xong môn này, sinh viên c c các ội dung như trên, s ần đạt đượ
yêu c u sau:
- u th h a trên máy tính. Hi ế nào là đồ
- t k c các thu t toán v ng th ng, Thiế ế cài đặt đượ các đường bản như đườ
đường tròn, ...
- t toán tô . Thiết kế và cài đặt được thu màu
2
- S d c các phép bi n hình trong không gian 2 chi u, 3 chi làm thay ụng đượ ế ều để
đổ i m t hình n. ảnh đã có sẵ
- t c - dán m t hình. Có th o mt ca s để t
- u di n c a m ng 3 chi u và các phép chi n. Hiểu được cách bi t s đối tượ ếu cơ bả
2. Đối tượng s dng
Môn Đồ h a máy tính c gi ng d c khoa Công đượ ạy cho sinh viên năm thứ ba a
ngh thông tin c Kinh t k thu p. Trường Đại h ế t công nghi
3. Phương pháp nghiên cứu:
Sinh viên nghe đầy đủ các tiết hc lý thuyết trên lp, kết hp vi các ngôn ng lp
trình đã đượ c h c để thc hiện cài đặt các thut toán trong n i dung môn h c.
Hình thức đánh giá kết qu:
- Điểm quá trình: Ki m tra lý thuy t k p bài t ế ết h ập cài đặt chương trình
- Thi hết hc ph n: Thi tr c nghim.
3
MC LC
LI GII THIU ................................................................................................................ 1
CHƯƠNG 1: TỔNG QUAN V ĐỒ HA MÁY TÍNH ................................................... 9
1.1. u v h a máy tính ................................................................................ 9 Gii thi đồ
1.1.1. M u ......................................................................................................... 9 đầ
1.1.2. phát tri n ....................................................................................... 10 Lch s
1.1.3. M ng d ng ........................................................................................ 11 t s
1.1.4 Phân loại các lĩnh vực ca k ho máy tính ....................................... 13thuật đồ
1.2. ng quan v m t h h a ................................................................................ 14 T đồ
1.2.1. n c h a ....................................................................................... 15 Ph ứng đồ
1.2.2. n m h a ....................................................................................... 15 Ph m đồ
1.3 Các k t h a ................................................................................................. 15 thu đồ
1.3.1 Kỹ thuật đồ hoạ điểm ....................................................................................... 16
1.3.2 K thu h a vector ..................................................................................... 16 ật đồ
CHƯƠNG 2: ĐỒ HA 2 CHIU ..................................................................................... 19
2.1. Giới thiệu về các đối tượng đồ họa cơ sở ............................................................... 19
2.1.1 Mở đầu .............................................................................................................. 19
2.1.2 Các hệ tọa độ .................................................................................................... 20
2.1.3 Các đối tượng đồ họa cơ sở .............................................................................. 20
2.2. Các thu t toán v ng th ng ............................................................................... 22 đườ
2.2.1 M u .............................................................................................................. 22 đầ
2.2.2 Thu t toán DDA ( ) ............................................ 23 Digital Differential Analyzer
2.2.3 Thu t toán Bresenham ...................................................................................... 25
2.2.4 Thu t toán Midpoint v ng th ng ............................................................... 27 đườ
2.3. Thu t toán Midpoint v ng tròn ....................................................................... 29 đườ
2.4 Các phép bi c ng 2 chi u ....................................................... 31ến đổi cơ sở ủa đối tượ
2.4.1 M u .............................................................................................................. 31 đầ
2.4.2 Phép t nh ti n .................................................................................................... 32 ế
2.4.3 Phép bi l tâm O(0,0) ......................................................................... 33ến đổi t
2.4.4 Phép quay tâm O(0,0) ....................................................................................... 34
4
2.4.5. K t h p các phép bi .............................................................................. 35ế ến đổi.
2.5. M tính ch i affine. ............................................................. 37t s t ca phép biến đổ
2.5.1. B ng th ng: .................................................................................... 37ảo toàn đườ
2.5.2 B o toàn tính song song ................................................................................... 38
2.5.3 B o toàn tính t l ............................................................................................. 38
2.6 M phép bi ...................................................................................... 38t s ến đổi khác.
2.6.1 Phép bi l tâm b .......................................................................... 38ến đổi t t k
2.6.2 Phép quay có tâm quay b .......................................................................... 39t k
2.6.3 Phép đối xng ................................................................................................... 40
2.6.4 Phép bi c ......................................................................................... 40ến đổi ngượ
2.7 Các thu n th ng. ................................................................................ 40ật toán xén đoạ
2.7.1 Thu t toán Cohen-Sutherland ........................................................................... 42
2.7.2 Thu t toán Liang Barsky .................................................................................. 45
CHƯƠNG 3: ĐỒ HA 3 CHIU ..................................................................................... 54
3.1. T ng quan v h u ................................................................................ 54 đồ a ba chi
3.2. u di ng ba chi u ........................................................................... 54Bi ển các đối tượ
3.2.1. Bi u di n m ...................................................................................... 55 ặt đa giác
3.2.2. Lưới đa giác (polygon meshes) ....................................................................... 58
3. ng cong và m .......................................................................... 592.3. Các đườ t cong
3.3. Các phép bi i hình h c ba chi u ...................................................................... 59ến đổ
3.3.1 Các phép bi n ................................................................................. 60ến đổi cơ bả
3.3.2 Các phép đối xng ............................................................................................ 63
3.3.3 Phép bi l tâm b .......................................................................... 64ến đổi t t k
3.4. Các phép chi u........................................................................................................ 6ế
3.4.1 Phép chi u song song ....................................................................................... 6ế
3.4.2 Phép chi u ph nh ........................................................................................ 67ế i c
CHƯƠNG 4: CÁC H ............................................................................................ 73MÀU
4.1 Ánh sáng và s c m nh n màu s t ............................................................ 73 c ca m
4.2 Bi u di h a ....................................................................... 74 ễn màu trên màn hình đồ
4.2.1 Ch hi n th .............................................................................. 74ế độ màu RGBA
5
4.2.2. Ch hi n th màu ch m c ........................................................................... 76ế độ
4.3. H RGB (Red Green Blue): .............................................................................. 77
4.4. H CMY và CMYK (Cyan - - Yellow): .................................................. 79 Magenta
4.4.1 Hệ màu CMY: .................................................................................................. 79
4.4.2 Hệ màu CMYK: ............................................................................................... 80
4.5 M h màu khác ................................................................................................. 81t s
4.5.1. Hệ màu HSV (Hue - Saturation - Value): ....................................................... 81
4.5.2. Hệ màu HSI ( Hue - Saturation - Intensity): ................................................... 82
CHƯƠNG 5: CÁC KỸ THU T Đ HA TRONG B CÔNG C ADOBE AFTER
EFFECT ............................................................................................................................. 9
5.1 Giới thiệu về After Effect ........................................................................................ 90
5.2. Giao di n................................................................................................................. 9
5.3. Th n m t Proje ............................................................................................ 95c hi ct
5.4. Kỹ thuật Storyboard ............................................................................................... 98
5.5. Tạo hình đồ họa nhân vật: gắn xương, các chuyển động cơ bản ......................... 100
5.6. Kỹ thuật tạo bối cảnh đồ họa ................................................................................ 103
TÀI LIU THAM KH O ............................................................................................... 107
6
DANH MỤC HÌNH VẼ
Hình 2.1: Các điểm lân cn c xi, yi ............................................................................. 22 a ( )
Hình 2.2: Đườ ng thng có h s góc 0 m 1 ................................................................ 23
Hình 2.3: Minh ha thuật toán DDA trường h p 0 <m <1 ............................................... 23
Hình 2.4: Lưu đồ đườ thut toán v ng thng DDA ........................................................... 24
Hình 2.5: Minh ha thut toán Bresenham, 0<m<1 .......................................................... 25
Hình 2.6: Lưu đồ đườ thut toán v ng thng Bresenham ................................................. 26
Hình 2.7: Minh ha thut toán Midpoint v ng thđư ng ................................................. 28
Hình 2.8: Các v i x ng c ng tròn ................................................................... 29 trí đố a đư
Hình 2.9: Minh ha thut toán Midpoint v ng tròn ................................................... 29 đườ
Hình 2.10: Lưu đồ gii thut Midpoint v đường tròn ...................................................... 30
Hình 2.11: Minh ha phép t nh ti n................................................................................... 32 ế
Hình 2.12: Minh ha phép biến đổi t l ........................................................................... 33
Hình 2.13: Minh ha phép quay tâm O ............................................................................. 34
Hình 2.14: Minh ha phép quay có tâm quay b ........................................................ 39t k
Hình 2.15: (a)Trước khi thc hiện xén đoạn thng, (b) sau khi thc hin ........................ 41
Hình 2.16: Cách đánh mã vùng – thut toán Cohen-Sutherland ....................................... 42
Hình 2.17: Minh ha thu - Sutherland ........................................................ 43t toán Cohen
Hình 2.18: Gii thu n th ng Cohen-Sutherland ................................................. 44 ật xén đoạ
Hình 2.19: Minh ha thu .................................................................. 46t toán Liang Barsky
Hình 3.1: Mô hình wireframe ca m t hình tr ................................................................ 55
Hình 3.2: Minh ha mô hình khung k i ...................................................................... 56 ết n
Hình 3.3: Vector pháp tuyến c a m ..................................................................... 58 t phng
Hình 3.4: Triangle strip và quadrilateral mesh .................................................................. 59
Hình 3.5: Minh ha phép t nh ti n .................................................................................... 60 ế
Hình 3.6: Minh ha phép bi i t l ............................................................................. 61 ến đổ
Hình 3.7: Phép quay, (a) quay quanh trc z, (b) quanh tr c y ............... 62c x, (c) quanh tr
Hình 3.8: Phép chiếu tr u 6 m u 3 m t .................... 65c giao, (a) phép chiế t, (b) phép chiế
Hình 3.9: Minh ha phép chi u tr ng ....................................................................... 66 ế ục lượ
Hình 3.10: Phép chiếu Cavalier, (a) góc ф=45
0
............................................. 67 , (b) ф=30
0
7
Hình 3.11: Phép chiếu Cabinet, (a) góc ф=450 , (b) ф=300 ............................................. 67
Hình 3.12: Minh ha phép chi u ph nh ...................................................................... 68ế i c
Hình 3.13: (a) Mt tâm chi u, (b) hai tâm chi u, (c) ba tâm chi u ................................... 68 ế ế ế
Hình 3.14: Phép chiếu ph nh tâm u I(0,0,d) ......................................................... 69i c chiế
Hình 4.1: Minh ha phi màu ............................................................................................ 75
Hình 4.2: Ánh x màu lên pixel ......................................................................................... 76
Hình 4.3: Minh ha s d ng b v ................................................................. 76 ản đồ màu để
Hình 4.4: H màu RGB ..................................................................................................... 77
Hình 4.5: H màu CMY .................................................................................................... 80
Hình 4.6: H màu HSV ..................................................................................................... 81
Hình 4.7: H màu HSI ....................................................................................................... 82
Hình 4.8: Màu đơn sắc (Monochromatic) ......................................................................... 83
Hình 4.9: Kết hp màu ki u b sung ................................................................................. 83
Hình 4.9: K p màu ki u b sung ................................................................................. 84ết h
Hình 4.10: Kết hp màu ki u b ................................................................................... 84 ba
Hình 4.11: Kết hp màu ki u hình ch nh t ..................................................................... 85
Hình 4.12: Kết hp màu ki u hình vuông ......................................................................... 85
Hình 5.1: Giao din After Effect ....................................................................................... 91
Hình 5.2: M workspace c a After Effect ....................................................................... 92
Hình 5.3: Panel trong After Effect .................................................................................... 92
Hình 5.4: Các thao tác vi Panel trong After Effect ......................................................... 93
Hình 5.5: Các icon Panel trong After Effect ..................................................................... 94
Hình 5.6: Vùng an toàn trong After Effect ........................................................................ 94
Hình 5.7: Toolbar trong After Effect ................................................................................. 95
Hình 5.8: Chức năng New Project trong After Effect ....................................................... 95
Hình 5.9: Hiu ch nh Preferences trong After Effect ........................................................ 96
Hình 5.10: Hiu ch nh Preferences trong After Effect ...................................................... 96
Hình 5.11: Import File trong After Effect ......................................................................... 97
Hình 5.12: Hiu ch nh thông s Import File trong After Effect ........................................ 98
Hình 5.13: Minh ha Storyboard trong After Effect ....................................................... 100
8
Hình 5.14: File PSD nhân vt .......................................................................................... 10
Hình 5.15: Import File PSD nhân vt .............................................................................. 101
Hình 5.16: Mô t Import File PSD nhân v t ................................................................... 102
Hình 5.17: Layer nhân vt ............................................................................................... 102
Hình 5.18: Hiu ch m neo nhân v t ................................................................ 103 ỉnh các điể
Hình 5.19: To mô t chuy ng nhân v t .................................................................. 103 ển độ
Hình 5.20: Bi cnh trong After Effect ........................................................................... 104
Hình 5.21a: Công c Roto Brush .................................................................................... 104
Hình 5.21b: Công c Roto Brush .................................................................................... 105
9
CHƯƠNG 1: TỔNG QUAN VỀ ĐỒ HỌA MÁY TÍNH
M c tiêu c : Sinh viên n c v l ch s i và m t s các c t m ủa chương m đượ ra đờ c
phát tri n c h a máy tính, nh n th vai trò, ng d ng và các thành t u c a đ ức được các a
đồ h a máy tính c, y ttrong các lĩnh vực như giáo d ế, gii trí, ngh thut, khoa h c, k
thu t. .
S n n c t ng quan v m t h h a máy tính, phân loinh vên c ắm đượ đ ại được các
lĩnh v m đưc của đồ h a máy tính, n c mt s n c hchu ủa đồ a và cn phân bit, so
sánh được gia k thuật đồ h h a điểm và đ a vector.
1.1. Gii thiu v h a máy tính đồ
1.1.1. u M đầ
Đồ h a máy tính là m ột lĩnh vực c a công ngh thông tin, liên quan đến vi c nghiên
cu, xây d ng và t p h p các công c ( mô hình lý thuy t và ph n m ế ềm) khác nhau để kiến
t o, xây d x các mô hình và hình nh c ng, s v t hi ng ựng lưu trữ ủa đối tượ ện tượ
khác nhau trong i s ng, s n xu t và nghiên c u. Các mô hình và hình nh này có th đờ
các k t qu c t nh c khác nhau c a r t nhi u ngành khoa h c ( v t lý, ế thu đượ ững lĩnh vự
toán hc, .. )
Đồ h a y tính n vi c thi t k , ch t o ph n c n ng lĩnh vực liên quan đế ế ế ế g
như: các thiế đầu vào như bàn phím ột, bút quang … các thuật b hin th, các thiết b , chu t
toán c t bn thi phát sinh hình ết để nh trên các thiế y, các ph n m d ng cho ềm được s
c người lp trình h thng và ng i lườ p trình ng d h a. ụng đồ
Đồ h máy tính t t trong nh ng ph n mang l i thêm nhi u s a ương tác là mộ ương tiệ
thun l i cho ng i dùng trong vi c phát sinh hình nh. Chúng ta có th t o các hình nh ườ
không c i t ng c , th c t , còn c i t ng tr u t ng, nhân ch ủa các đố ượ th ế ủa các đố ượ ượ
t o; bi u di n d liu mà không có tính k ế tha v m t hình h c nh k t qu u tra, kh o ư ế điề
sát..
Hơn nữ ới đồa, v ha y tính chúng ta không b gi i h n trong các ảnh tĩnh. Các
ảnh độ hơn so vớ ảnh tĩnh, đặng thông thường mang li nhiu hiu qu i c bit vi các
hi n t ng bi i theo th i gian, c c t s i h ng c a cánh máy bay siêu ượ ến đổ th ế (như đổ ướ
âm, hay s phát tri n c a khuôn m t ng i t lúc tr t i lúc già) và tr u t ng (nh là xu ườ ượ ư
h ng phát tri n c a vi d ng, s ướ c s ụng năng lượ gia tăng dân số, …).
Có nhi u cách ti p c n trong vi c h ế ọc môn đồ ha, tr i r ng t vi c nghiên c u ph n
cng, nghiên c u các k thu hi n th t đ các đ ối tượng đồ họa… ti vi c h bi t cách ọc để ế
s d ng m ng d ng h t đồ a. đây chúng ta tiế góc độp cn môn hc t ca người lp
trình ng d ng, s d ng t t c các h tr c a ph n c ng, các công c ph n m y ềm để
d ng nên các ng d ng.
10
Tuy nhiên đểth thiết kế và cài đặ ương trình ụng đồ ọa đượt các ch ng d h c tt,
ngoài vi c tìm hi u các kh a công c l p trình, chúng t n ph i n m v ng năng củ a cũng cầ
các khái ni m v n c ng; các v n cài t ph n m m, ph ấn đề, các nguyên lí liên quan đế đặ
các thut toán, các ng d ụng, …
1.1.2. L ch s phát tri n
Năm 1955, hệ thống phòng không SAGE (Môi trường mặt đất bán tự động) bắt
đầu hoạt động sử dụng màn hình quét vector làm đầu ra chính và , Light pen là thiết bị đầu
vào và được sử dụng rộng rãi vào năm 1958.
Tập đoàn thiết bị kỹ thuật số DEC được thành lập vào năm 1957, bắt đầu chế tạo
minicomputers áy tính. mà sau này được sử dụng phát triển đồ họa m
Năm 1960, nhà khoa học người M, William Fette nghiên c u, xây d ng mô hình
bu ng lái máy bay cho hãng Boeing c a M a trên hình nh 3 chi u c a mô ỹ. Ông đã dự
hình người phi công trong bu ng lái c ủa máy bay để xây d ng nên m t mô hình t ối ưu cho
bu ng lái m t k quan sát m t cách tr áy bay. Phương pháp này cho phép các nhà thiế ế c
quan v trí c ho máy ủa người lái trong khoang. Ông đặt tên cho phương pháp này là đồ
tính (Computer Graphics). Màn hình là thi thông d ng nh t trong h , các thao ết b đồ ho
tác ca h u h ết các màn hình đều da trên thi t k ế ế ng tia âm c c CRT (Cathode ray tube).
Khi đó máy tính xử ậm, đắ ắn (không đáng tin cậ lý ch t và không chc ch y).
Vào những năm 1960, lĩnh vực này đã có những phát triển đầu tiên. Năm 1961,
Ivan Sutherland phát tr iển dự án tại MIT. Bảng vẽ được sử dụng và một thiết bị Sketchpad
light pen , làm thiết bị đầu vào chính một máy hiện sóng thiết bị đầu ra. Phiên bản đầu
tiên chỉ xử lý các số liệu hai chiều và sau đó được phát triển để vẽ, biến đổi và hiển thị các
đối tượng 3 chiều dưới dạng hình chiếu xuống mặt phẳng 2 chiều.
K thu h a liên t c phát tri n vào nh ật đồ ục đượ ững năm 1960 và 1970 kéo theo sự
ra đờ ẩn đồ ọa, làm tăng khả năng giao tiếi ca các chu h p tái s dng ca phn mm
cũng như các thư viện đồ ha.
Sự phát triển đột phá của công nghệ điện tử máy tính vào thập niên 1980 làm xuấ t
hiện một loạt các vi mạch hỗ trợ cho việc truy xuất đồ họa, làm giảm giá thành của máy
tính cá nhân. Vào cuối những năm 1980, các máy tính đồ họa SGI (Silicon Graphics Inc.)
đã tạo ra một số phim hoạt hình ngắn đầu tiên tại Pixar.
Hệ điều hành Microsoft Windows 3.0 được xuất xưởng lần đầu tiên vào m 1990
thúc đẩy to lớn cho khái niệm GUI (G raphical User Interface).
Ngày càng nhiều ứng dụng được phát triển chạy trên MS Windows. OpenGL (Thư
viện đồ họa mở) được SGI đưa ra năm 1992. Những năm 1990 cũng chứng kiến sự phát
triển nhanh chóng trong đồ họa ba chiều, đặc biệt là trong phát triển game, đa phương tiện
và hoạt hình. Quake, một trong những game 3D hoàn chỉnh đầu tiên, đã được phát hành
vào năm 1996.
11
Ngày nay, đồ họa những tác động to lớn đến ngành công nghiệp giải trí, các
lĩnh vực khoa học, kỹ thuật, y học, thiết kế trang web, truyền thông, xử lý thông tin thiết
lập các tương tác mới từ lớn đến nhỏ các yếu tố thực tế ảo, màn hình cỡ lớn, màn hình thực
tế ảo, thiết bị cảm ứng đa điểm và điện thoại thông minh…[1][5]
Nếu nhìn lịch sử đồ họa theo góc độ phát triển của kỹ thuật hiển thị ta sẽ thấy các
kỹ thuật hiển thị phát triển theo những giai đoạn sau:
Kỹ thuật hiển thị bằng ký tự:
Kỹ thuật này chỉ cho phép hiển thị text và các hình ảnh đồ họa đơn giản. Giao tiếp
với người sử dụng thông qua các lệnh dưới dạng text. Có thể sử dụng những ký tự mã hóa
đặc biệt để hiển thị đối tượng. Tất cả các chương trình và phần mềm được thực hiện đều là
đơn nhiệm.
Ví dụ:
- Hệ điều hành MS_DOS. Hệ điều hành tiêu biểu của giai đoạn 80, đầu những năm
90 của Microsoft.
- Phần mềm soạn thảo văn bản BKED chạy trên môi trường MS_DOS.
Kỹ thuật hiển thị vector:
Kỹ thuật này phát triển từ năm 1963 đến năm 1980, cho phép hiển thị text, các
đường thẳng, các hình đơn giản. Giao tiếp với người sử dụng được thực hiện thông qua các
dòng lệnh, các phím “nóng” và menu chọn.
Kỹ thuật ảnh 2 chiều:
Kỹ thuật này cho phép hiển thị các cửa sổ (window), các biểu tượng (icon), và
các dòng văn bản (text). Trong giao tiếp với người sử dụng đã hạn chế việc gõ lệnh, thay
vào đó người sử dụng thể thực hiện thông qua giao diện đồ họa ( Graphical User các
Interface )
Trạm làm việc đồ họa ( 3D Graphics Workstation)
Công nghệ này được phát triển bởi công ty Silicon Graphics, một trong những
công ty phát triển đồ họa hàng đầu của Mỹ. Công nghệ này cho phép hiển thị các hình ảnh
thực và hình ảnh thời gian thực 3 chiều của hình ảnh và sự vật dựa trên các cảnh 3 chiều.
Môi trường giao tiếp với người sử dụng được xây dựng trên cơ sở các hình ảnh 2
chiều, 3 chiều và mô phỏng thế giới thực. [4]
1.1.3. Một số ứng dụng
Như đã nói ở trên, đồ h a máy tính không còn là nh ng gì m , xa l n a mà nó i m
tr nên gần gũi cần thiết trên hu h t các thi t b chúng ta s d ng hàng ngàyế ế . Dưới đây
là m các ng d n c h a máy tính. t s ụng cơ bả ủa đồ
a, H thi tr ết kế
M t trong nh ng ng d ng l n nh t c a máy tính là h thi t k (CAD ủa đồ h tr ế ế
computer-aided design). Ngày nay c s d ng h u h t trong vi c thi t kCAD đã đư ế ế ế các
12
cao c, ô tô, máy bay, tàu th , máy tính, trang trí m u v i, r t nhi u sủy, tàu trụ n
ph m khác.
Người ta có th c thi t k qua mô t trên máy tính theo quan sát các đối tượng đượ ế ế
b t k ng nào. Nh c c p nh c th hướ ững thay đổi trên đối tượng đượ ật nhanh chóng, đượ
hi n th nghi i ngay. m l
b, Bi n thông tin u di
Các công c đồ h a trong các ng d ng có th phát sinh các bi u đồ, đồ thị, … thun
tin cho vi minh h a m i quan h c gia nhiều đối tượng v i nhau. Các bi ểu đồ có th dưới
d ng 2 chi u, 3 chi ều, được bi u di n tr ực quan. Trong đó, các ng dụng thường được dùng
để tóm lược các d liu v tài chính, th ng kê, kinh tế, khoa h c, toán học, giúp cho
vi u, qu t cách có hi u qu . c nghiên c ản lí, … mộ
c, Lĩnh vực gii trí, ngh thut
Trong lĩnh vự ật, các chương trình máy tính như Paint Shop Pro,c ngh thu Adobe
Photoshop, 3D Studio, … hỗ tr rất đắc lc cho các họa sĩ, các nhà tạo m u trong vi c thi ết
k các hình nh s ng, và r t th c. V i h c máy ế ống độ ới các chương trình này, ngườ ọa sĩ đượ
tính t o cho c i th c b ng cách cung c p các công c ảm giác y như đang làm việc ngoài đờ
như khung vẽ … làm cho họ, giá v, bng pha màu, các hiu ng ba chiu, cm thy rt
tho i.i mái và ti n l
Ngoài ra đ ạo ra các chương trình trò chơi, giả ha máy tính còn giúp t i trí; h tr
cho các kĩ x ếảo điện nh, cho các nhà làm phim. Có nhiu b phim r t ni ti ng nh vào kĩ
x n ng long k Jura (Jurassic Park), Titanic, Th giảo điệ ảnh như : Công viên Kh ế ới nước
(Water World), …
d, Giáo d o ục và đào tạ
Hiện nay các chương trình phỏng cu trúc ca các vt th, tiến trình ca các
ph n ng hóa h c, ho ng c a các gói tin trên m c dùng r t nhi ạt độ ạng máy tính, … đượ u
trong vic h tr ng d gi y.
Trong đào tạ ỏng được dùng để ểm tra trình độo, các ng dng mô ph ki người lái,
hu n luy u khi n giao ện phi công, điề thông, …
e, Giao tiếp gi i dùng ữa máy tính và ngườ
M ng d u ph i giao di n giao ti p v i ng i dùng. Giao di hi ụng đề ế ườ ện đồ a
th thuc s m t cu c cách m ng mang l i s n ti n và tho i mái cho ng i dùng ng ườ
d ng. Các ng d ng d a trên h u hành MS Windows là m t minh h a r t tr c quan c điề a
giao di h a. Các ch a các ng d c thi cho ng i dùng làm ện đồ ức năng c ụng này đư ết kế ườ
vi u t ng mô t c thông qua các bi ượ chức năng đó.
Ví d : u t c hi u thông qua bi u t m, ch chức năng ập tin đượ ượng đĩa mề ức năng
in ấn đượ ượng máy in, … Đc hiu thông qua biu t chn các ch c i dùng s năng, ngườ
d ng chu n và nh n vào các bi u t ng t m thu n l i chính khi dùng t tr đế ượ ương ứng. Điể
13
bi u t ng là kích th u so v ượ ước không gian mà nó chiếm ít hơn nhiề ới dùng văn bản để
t m t ch c n m b g qua các bi u t ng s d cho cùng ức năng, ngoài ra việ t các chức năn ượ
dàng hơn rất nhiu khi người dùng gp tr ngi v mt ngôn ng.
Các ng d ng có giao di h a còn cho phép ng i dùng kh c d ện đồ ườ năng làm việ
dàng v i nhi u c v u d ng tài li u khác nhau cùng m t lúc. a s i nhi
1.1.4 Phân lo a k thu t máy tính i các lĩnh vực c đồ ho
Có nhiều phương pháp để phân loi các lĩnh vực của đồ ho máy tính.
a, lý d Phân loi theo tiêu chí là mục đích xử liệu trong các lĩnh vc:
- (Computer Aided Design/Computer Aided Manufacture Các h CAD/CAM
System): k thuật đồ ho t p h p các công c , các k thut tr giúp cho thi t k các chi ti ế ế ết
và các h ng khác nhau: h n, h n t th thống cơ, hệ thống điệ thống điệ ử…
- Đồ ho ho t hình và ngh thut: bao g m các công c giúp cho các ho sĩ, các nhà
thiết k t hình, vế phim ho t hình chuyên nghi p làm các k x o ho tranh...
Ví d: phn m m 3D Studio, 3D Animation, 3D Studio Max
- : g m các công c giúp hi n th các s Đồ ho minh ho (Presentation Graphics)
liu thí nghi m m t cách tr a trên các m ho c các thu n. c quan, d ẫu đồ th t toán có s
- K t x thu nh (Computer Imaging): sau quá trình x nh cho ta nh s c a
đối tượng. Trong quá trình x nh s d ng r t nhi u các k thut ph c t p: k thu t khôi
ph nh, k t làm n nh, k nh biên nh. c thu i thuật xác đị
- K thut phân tích và t o nh Image Synthesis ( ): là lĩnh vực xây d ng mô hình và
hình nh c a t th d ng và m i quan h các v ựa trên các đối tượ gia chúng.
- nh ng nh m u có s n ta phân loK t nh n d ng ( thu Pattern Recognition): t i
theo c u trúc, ho c theo các tiêu nh t c và b ng các thu t toán ch chí được xác đị trướ n
l th phân tích hay t ng h p t t p h p các nh g c, các nh ọc để ảnh đã cho thành mộ
K thu h a ật đồ
X h a lý đồ
Kiến t h a ạo đồ
CAD/CAM
Đồ h a hot hình
và ngh thu t
h a minh hĐồ a
X nh
K thut phân tích
và t o nh
K thut nh n d ng
14
gốc này được lưu trong một thư viện và căn cứ vào thư viện này ta y dựng được các thut
gi h nh. i phân tích và t p
b, i theo h dùng trong thu h a: Phân lo to độ ật đồ
- K thuật đồ ho hai chi u : là k thu ật đồ ho y tính s d ng h to hai chi u độ
(h ng), s d ng r nhi u trong k thu . to độ ph t t x lý bản đồ, đồ th
- : là k thu ho máy tính s d ng h ba chi u, K thu ho ba chi u ật đồ ật đồ to độ
đòi hỏ ạp hơn nhiề ật đồi rt nhiu tính toán và phc t u so vi k thu ho hai chiu.[1]
1.2. T ng quan v m h a t h đồ
M trong các yêu c u chính c a m t h h a là các ng d ng có tht thống đồ thc
thi trên nhi u h thiết bị, được phát tri n không ph thuc vào ph n c ứng. Để có được điều
đó, phả hóa cho môi trường đồ ức năng, bi có tiêu chun ha mc ch ng vic cung cp
s p thi t b và ngôn ng l p trình. độc l ế
S c l p v i thi t b độ ế cho phép các chương trình ng dng đồ h a ch y trên các h
thng phn cng khác nhau. Điều này c th c hi n thông qua thi t b nh p xu t logic đượ ế
ca thư viện đồ ha ánh x thiết b c th. Cho t i nay, có nh ng tiêu chu ẩn đồ họa đã được
phát n trong nhi tri ều năm, bao gồm:
- GKS(Graphics Kernel System - 1985), phát tri n riêng cho các thi t b nh p xu ế t
2 chi u.
- GKS-3D b sung thêm kh p trình 3 chi u. năng l
- CGI ( Computer Graphics Interface System): H chuẩn cho các phương pháp
giao ti p v ngo ế i các th t bế i vi.
- CGM ( Computer Graphics Metafile): Xác đị ệc lưu trữnh các chun cho vi
chuy i hình nh. ển đổ
- VRML ( Virtual Reality Modeling Language): Ngôn ng thc ti o, một hướng
phát tri n trong công ngh hi n th xu t b i công ty Silicon Graphics, được đề
sau đó được chuẩn hóa như một chun công nghip.
- Interactive tandar) nh PHIGS (Programmer’s Hierarchical Graphics S : Xác đị
các phương pháp chuẩn cho mô hình th i gian th c và l ập trình hướng đối tượng.
- PHIGS+ bao g m kh p trình không gian, t o thành thao tác d năng lậ liệu đồ
h a ph c t ạp …
K thu h a t đ
15
- OPENGL: Thư viện đồ h a c ủa hãng Silicon Graphics, được y dựng theo đúng
chun c a m t h h đồ a năm 1993.
- DIRECTX: Thư vện đ ha ca hãng Microsoft.
Các tiêu chuẩn đồ ha th c t là k t qu c a vi c ch p nh n trong công nghi p ế ế thiết
k xu t b i nhi u công ế các giao diện đặc trưng, được đề ty.
m b o s h p cho cĐể đả linh ho t, các tiêu chu ẩn đồ a thiết l ác thay đổi ti thiu,
cho phép đ ởi đầu, ngưnh địa ch các thiết b nhp xut khác nhau. Kh i lp trình to ra
m t h th ng t mô hình, mô tọa độ ng gđối tượ i là h thng t ọa độ thc. Tiếp theo, là h
t tiêu chu n và h t thi t b . nh ng d ng s giao ti p v i h t ọa độ ọa độ ế Chương trì ế ọa độ
chun theo cách th c phù h n thi ợp, không quan tâm đế ết b xu o ra ất được dùng. Do đó, tạ
s p v i thi trong vi o ra hình nh c ng độc l ết b c t a đ i tượ
1.2.1. Phần cứng đồ họa
Phn c h a bao g m các thành ph ứng đồ n:
CPU: Th n các ng d ng. c hi chương trình
B x hi n th (Display Processor): Th c hi n công vi c hi n th d ho . liệu đồ
B nh h thng (System Memory): Ch a các chương trình và d liệu đang thực hi n.
B m ( Frame buffer): Ch ình nh hi n th . đệ a các h
B điều khi n màn nh (Video Controller): Điu khi n màn hình, chuy n d liu d ng
s frame buffer thành m sáng trên màn hình. các điể
1.2.2. Phần mềm đồ họa
Phn m h a bao g m các công c l p trình cung c p m t tềm đồ ập các hàm đồ ha
có th c dùng trong các ngôn ng l p trình c p cao. c a bao g m đư Các hàm cơ sở
vi c t c ình ạo các đối tượng cơ sở a h ảnh như đoạ ẳng, đa giác, ờng tròn,… thay đổn th đư i
màu s n khung nhìn, áp d ng các phép bi c, ch ến đổi.
Các ng d h c thi t k cho nh i dùng không ph i là l p trình ụng đồ ọa đượ ế ế ững ngườ
viên, cho phép người dùng tạo các đối tượng, hình ảnh, … mà không cần quan tâm t i vi c
chúng đượ c t nào. Ví dạo ra như thế như là Photoshop, AutoCAD,
Khi các ng d ng c thi t k v h a n, nó có th đượ ế ế ới các hàm đồ chu thực thi được
trên nhi tái su h thng khác nhau và được d ng trong nhi u ng d ng khác nhau.
1.3 thu h a Các k ật đồ
Ngày nay, s ng các h ng s d ng k thu h nên r lượ th ật đồ ọa tương tác đã trở t
l n, ngày càng nhi u và càng tr hong phú nên đa dạng hơn, p hơn. Tuy vậ căn cứy, vào
phương pháp xử ống mà ngườ ống đồ lý các d liu trong h th i ta phân bit ra hai h th
h (Sample based Graphics) và a: K h thu t đ ọa điểm k h a vectorthuật đồ (
Geometry based Graphics).
16
1.3.1 Kỹ thuật đồ hoạ điểm
Các mô hình, hình nh c c hi n th thông qua t ng pixel (t ng ủa các đối tượng đượ
m u r trong k thu t này ta có th : i rc)
- Tạo ra, thay đổ ộc tính, xóa đi i các thu tng pixel ca mô hình và hình nh các
đố i tư ng.
- Các mô hình hình n th m (grid) các pixel rảnh được hi như một lưới điể i rc.
- Từng pixel đều có v trí xác định, được hi n th v i m t giá tr r i r c (s nguyên)
các thông s c ho hin th (màu s ặc độ sáng)
T p h p t t c các pixel cho chúng ta hình, hình ng chúng ta ảnh đối tượ
mu n hin th . tCó 2 phương pháp để o ra các pixel:
- Phương pháp dùng phần mềm để v trc ti p t ng pixel m t. D a trên các lý thuyế ết
mô ph xây d ng nên hình nh mô ph ng c v ỏng để a s t.
- i r c hoá (s hoá) hình nh th c c ng. th s i Phương pháp rờ ủa đối tượ ửa đổ
(image editing) ho c x lý (image processing) m ảng các pixel thu được theo những phương
pháp khác nhau để thu đượ ảnh đặc trưng củ c hình a đối tượng.
1.3.2 K thu h a vector t đ
Nguyên lý xây d ng các mô hình, hình nh trong k h thuật đồ ọa vector như sau:
- Xây d ng mô hình hình h c (geometrical model) cho mô hình ho c hình nh c a
đố i tư ng.
- nh các thu c tính c a mô hình hình h c này. Xác đị
- Quá trình tô trát (rendering) để hi n th t a mô hình, hình ừng điểm c nh thc ca
đố i ng.
Trong k thu h a vector, ch t toán h c c a các thành ph n trong ật đồ lưu trữ
mô hình hình h c cùng v i các thu ng c i toàn b các ộc tính tương ứ ủa nó mà không lưu lạ
pixel c ủa mô hình tô trát ( rendering) được.
Các thành ph c mô t trong mô hình hình h c c c g i là các ần đượ ủa đối tượng đượ
thc th hình h c , các ng hình nh s cơ sở đối tượ được xây d ng t nh ng th c th cơ sở
này. Hình c tô trát t nhi m nhìn khác nhau. ảnh đượ ều góc nhìn và điể
So sánh gi a 2 k h h a vector: thuật đồ ọa điểm và đồ
Đồ hoạ điểm
- Hình ảnh và hình của các đối tượng
được biểu diễn bởi tập hợp các điểm của
lưới (grid)
- Thay đổi thuộc tính của các pixel dẫn đến
thay đổi từng phần từng vùng của đối
tượng.
Đồ hoạ vector
- Hình ảnh hình của các đối tượng
được biểu diễn bởi tập hợp các thc th
hình h ọc cơ sở
- Xử với từng thành phần hình học
sở của đối tượng và thực hiện quá trình tô
trát, . hiển thị
17
Đồ hoạ điểm
- Copy được các pixel từ một hình ảnh
này sang hình ảnh khác.
Đồ hoạ vector
- Quan sát hình ảnh và mô hình của hình
ảnh và sự vật ở nhiều góc độ khác nhau
bằng óc cách thay đổi điểm nhìn và g
nhìn.[1]
18
Câu hi ôn t p:
1. m phát tri n c h a máy tính Trình bày mt s c lch s ủa đồ
2. Trình bày m t s ng d ng c h a máy tính c: giáo d c, y t , gi ủa đồ trong các lĩnh vự ế i
trí, ngh t, k thu thu ật…
3. T i sao ph d ng các chu h a, nêu m h a? i s ẩn đồ t s chuẩn đồ
4. ày t ng quan v ph n c ng, ph n m h Trình b ềm đồ a.
5. k thu h h a vector. Trình bày v ật đồ ọa điểm và k thuật đồ
6. Phân bi h h a vector. t giữa đồ ọa điểm và đồ
19
CHƯƠNG 2: ĐỒ HỌA 2 CHIỀU
M c tiêu c : Sinh viên c n n c các t toán DDA, Bresenham, ủa chương ắm đượ thu
Midpoint v các đường cơ bản như đườ ẳng, đường th ng tròn, có kh năng cài đt các thut
toán này b ng ngôn ng C, C++ ..
Có th c hi nh c m 2D sau các phép bi i: T l th ện tính toán được ủa các điể ến đổ
tâm O(0,0), tâm b t k , phép t nh ti n, phép quay tâm O(0,0,0), quay tâm b t k , và các ế
phép l ng qua qua tr , g c t . ấy đối x c tọa độ ọa độ
Sinh viên c n n các tính ch t c a các phép bi Affine ng ắm được ến đổi trên đối tượ
đồ h a 2D, hi ểu và cài đặt được các thuật toán xén đoạn th ng: Cohen-Sutherland và Liang-
Barsky.
2.1. Giới thiệu về các đối tượng đồ họa cơ sở
2.1.1 Mở đầu
B t m nh t gi i th c nào bao gi c c u trúc t t p các t thế cũng đượ đối
tượng đơn giản hơn ảnh đồ. Vi các ha phát sinh bng máy tính, hình d ng màu s c
ca m i t ng có thỗi đố ượ c mô t đượ riêng bit bng hai cách:
- B ng ằng dãy các pixel tương
- B ng t ng hình h c n th ng, ập các đối tượ cơ sở như: đoạ vùng tô đa giác, …
Sau đó, các ảnh s được hin th b ng cách n ạp các pixel vào vùng đệm khung. Vi
các ảnh đượ các đối tượ cơ sởc mô t bng ng hình hc , cn phi có mt quá trình chuyn
các đ i tượng này v d ng ma tr ận các pixel trước.
Quá trình này c g i quá trình chuy i b ng dòng quét (scan-còn đượ ển đổ
converting). B t kì công c l p trình h p các hà m nh đồ ọa nào cũng cung cấ m để mô t t
d ng hình h c hay còn g i là h s (output ưới dạng các đối tượ cơ sở các đối tượng đ ọa cơ
primitives) và các hàm cho phép k t h p tế ập các đối t ượng cơ sở để t i t ng có ạo thành đố ượ
cu trúc ph c t M i t h ạp hơn. ỗi đố ượng đồ ọa cơ sở được mô t thông qua d liu v t ọa độ
và các thu c tính c ủa nó, đây chính là thông tin cho ểu cách mà đố biết ki i t c hi n ượng đượ
th.
Đối tượng đồ họa cơ sở đơn giản nhất là điểm và đoạ ẳng, ngoài ra còn có đườn th ng
tròn, và các đườ ặt và đườ , các vùng tô đa giác, chuỗng conics, mt bc hai, các m ng cong i
kí tự, … cũng được xem là các i tđố ượng đồ ọa cơ sở h giúp xây d ng các để nh phc t p.
Chương này sẽ ượng đồ ọa cơ sở kho sát các thu t toán hi n th các đối t h cho các thiết b
hi n th d ạng điểm.
Xét v m t b n ch t, các thu t toán này th c hi n quá trình chuy ển đổi các đối t ng ượ
đồ đượ họa cơ sở c mô t trong h tọa độ thc v dãy các pixel có t nguyên cọa độ a thiết
b hi n th . Có hai yêu c t ra cho các thu : ầu đặ ật toán đó
20
Đố ượ ượi t c tượng đượ trong h t i tọa độ thực đố ng liên t i tục, còn đố ng
trong h t thi t b i t ng r i r n ch t c quá trình chuy ọa độ ế là đố ượ ạc, do đó b a n i này đổ
chính s r i r i t ng sao cho th ạc hóa nguyên hóa các đố ượ xác định các đim
nguyên x p x đối tượng mt cách t t nh t, th c nh t . Nghĩa là đối tượng hi n th b ng l ưới
nguyên trên thi t b hi n th ph i hình d ng t nh i t ng trong l i t ế ương tự ư đố ượ ướ ọa độ
thực và “có vẻ” liên t c, li n nét. S l i nguyên cliên tc trên ướ a thiết b hi n th có được
do m g i không th phân bi c m quá g n nhau. t n ườ ệt đượ hai điể
Do các đối tượng đồ ọa cơ sở ấu trúc các đố h là thành phn chính c i tượng phc tp
nên các thu t toán hi n th chúng c n ph ải được tối ưu hóa về m t t ốc độ, đây chính là điểm
m u ch t cho vi t toán khác nhau. c ra đời các thu
2.1.2 Các hệ tọa độ
a, H t i th c ọa độ thế gi
H t gi i th c (hay h t c) là h t c dùng mô t ọa độ thế ọa độ th ọa độ đượ các đối
t ng th i th c. M t trong các h t c th c dùng nh t ượ ế gi ọa độ th ường đượ ất đó là hệ ọa độ
Descartes. Vi h t ph t này, b t kì m m nào trong mọa độ ột điể ẳng cũng được mô t bng
m p t R. t c ọa độ (x, y) trong đó x, y
Các t i th c cho phép ng i dùng s d ng b t m t th nguyên ọa độ thế gi ườ
(dimension) quy c nh foot, cm, mm, km, inch, ... nào và có th l n nh tùy ý. ướ ư
b, H t t b ọa độ thiế
H t t b h t c dùng b i m t thi t b xu t c ọa độ thiế ọa độ đượ ế th nào đó như
máy in, màn hình m chung c a các h t thi , ... Đặc điể a đ ết b đó là:
- Các tọa độ x, y (x,y N) ca h t ọa độ thi t b ế đều b gi i h n trong m t kho ng
nào đó (do kích thướ c ca thiết b).
- Khong gi i h n các t ọa độ x, y là khác nhau đối v i t ng lo i thi t b khác nhau. ế
c. H t t b chu n ọa độ thiế
Do cách định nghĩa các hệ ọa độ t thiết b khác nhau nên m hình c hi t ảnh đượ n
th trên thi t b ế y là chính xác nhưng có thể không được hi n th chính xác thiết b khác.
Ngườ i ta xây dng m t h tọa độ thiết b chun ( NDCS Normalized Device Coordinate
System) đại din chung cho t t c các thiết b để mô tcó th hình các nh mà không ph
thuc vào bt k thi nào. ết b
Trong h t t b n, các t x, y s c gán các giá tr ọa độ thiế chu ọa đ đượ trong đoạn
[0,1]. Như vậy, vùng không gian c a h t chu n chính là hình có góc ọa độ vuông đơn vị
trái dưới (0,0) và góc phi trên (1,1)
2.1.3 Các đối tượng đồ họa cơ sở
a. Điểm:
Điểm là thành ph t h t i v i h t ần cơ sở được định nghĩa trong mộ ọa độ. Đố ọa độ
hai chi u m nh b i c p t (x, y). i điểm được xác đ ọa độ
| 1/107

Preview text:

BG K Tdhmt - may tinh LỜI GIỚI THIỆU
Ngày nay, hình ảnh được tạo ra từ máy tính có mặt ở khắp mọi nơi. Các sản phẩm
đồ họa tràn ngập cuộc sống của chúng ta và đạt được đến kỹ thuật mà đôi khi chúng ta
không thể nhận ra đó là một hình ảnh nhân tạo.
Các chương trình máy tính thường hiển thị kết quả bằng đồ họa. Các chương trình
truyền hình và quảng cáo sử dụng hình ảnh từ đồ họa mang lại hiệu quả rõ rệt về tính thẩm
mĩ. Nhiều chương trình truyền hình và điện ảnh gần đây pha trộn các diễn viên thực và
hình ảnh nhân tạo đến mức người xem có thể rất khó để phân biệt một nhân vật hoặc cảnh
thật với hình ảnh do máy tính tạo ra. Ngày càng nhiều máy ảnh kỹ thuật số, thiết bị điện tử
sử dụng input là màn hình cảm ứng thay vì bàn phím. Do vậy, kỹ thuật đồ họa máy tính trở
thành một lĩnh vực lý thú và có nhiều ứng dụng trong thực tế.
Kỹ thuật đồ họa liên quan đến tin học và toán học vì hầu hết các giải thuật vẽ, tô
màu cùng các phép biến hình đều được xây dựng dựa trên nền tảng của hình học không
gian hai chiều và ba chiều.
Hiện nay, Kỹ thuật đồ họa máy tính là một môn học được giảng dạy cho sinh viên
chuyên ngành công nghệ thông tin học với 3
0 tiết lý thuyết. Bài giảng được biên soạn theo
đúng chương trình đào tạo của Nhà trường. Nội dung bài giảng tập trung vào các vấn đề
chính trong 5 chương như sau:
Chương 1: Tổng quan v đồ ha máy tính, giới thiệu các khái niệm và cái nhìn tổng
quan về đồ họa máy tính.
Chương 2: Đồ ha 2 chiu, trình bày các thuật toán vẽ và tô các đường cơ bản như
đường thẳng, đường tròn, các phép biến đổi trên đối tượng đồ họa 2D và các thuật toán xén đoạn thẳng.
Chương 3: Đồ ha 3 chiu, Giới thiệu tổng quan về đồ họa 3 chiều, các phép biến
đổi và các phép chiếu, một số cách biểu diễn đối tượng đồ họa 3 chiều từ các đối tượng
đơn giản như các hình khối, các đa diện ...
Chương 4: Các hệ màu, trình bày về các hệ màu cơ bản cùng các qui tắc phối màu
cơ bản trong đồ họa máy tính.
Chương 5: Các k thuật ồ
đ ha trong b Công c Adobe After Effect
1. Mc tiêu môn hc:
Với các nội dung như trên, sau khi học xong môn này, sinh viên cần đạt được các yêu cầu sau:
- Hiểu thế nào là đồ họa trên máy tính.
- Thiết kế và cài đặt được các thuật toán vẽ các đường cơ bản như đường thẳng, đường tròn, ...
- Thiết kế và cài đặt được thuật toán tô mà . u 1
- Sử dụng được các phép biến hình trong không gian 2 chiều, 3 chiều để làm thay
đổi một hình ảnh đã có sẵn.
- Có thể tạo một cửa sổ để cắt - dán một hình.
- Hiểu được cách biểu diễn của một số đối tượng 3 chiều và các phép chiếu cơ bản.
2. Đối tượng s dng
Môn Đồ họa máy tính được giảng dạy cho sinh viên năm thứ ba của khoa Công
nghệ thông tin – Trường Đại học Kinh tế kỹ thuật công nghiệp.
3. Phương pháp nghiên cứu:
Sinh viên nghe đầy đủ các tiết học lý thuyết trên lớp, kết hợp với các ngôn ngữ lập
trình đã được học để thực hiện cài đặt các thuật toán trong nội dung môn học.
Hình thức đánh giá kết quả:
- Điểm quá trình: Kiểm tra lý thuyết kết hợp bài tập cài đặt chương trình
- Thi hết học phần: Thi trắc nghiệm. 2 MC LC
LỜI GIỚI THIỆU ................................................................................................................ 1
CHƯƠNG 1: TỔNG QUAN VỀ ĐỒ HỌA MÁY TÍNH ................................................... 9
1.1. Giới thiệu về đồ họa máy tính ................................................................................ 9 1.1.1.
Mở đầu ......................................................................................................... 9 1.1.2.
Lịch sử phát triển ....................................................................................... 10 1.1.3.
Một số ứng dụng ........................................................................................ 11
1.1.4 Phân loại các lĩnh vực của kỹ thuật đồ hoạ máy tính ....................................... 13
1.2. Tổng quan về một hệ đồ họa ................................................................................ 14 1.2.1.
Phần cứng đồ họa ....................................................................................... 15 1.2.2.
Phần mềm đồ họa ....................................................................................... 15
1.3 Các kỹ thuật đồ họa ................................................................................................. 15
1.3.1 Kỹ thuật đồ hoạ điểm ....................................................................................... 16
1.3.2 Kỹ thuật đồ họa vector ..................................................................................... 16
CHƯƠNG 2: ĐỒ HỌA 2 CHIỀU ..................................................................................... 19
2.1. Giới thiệu về các đối tượng đồ họa cơ sở ............................................................... 19
2.1.1 Mở đầu .............................................................................................................. 19
2.1.2 Các hệ tọa độ .................................................................................................... 20
2.1.3 Các đối tượng đồ họa cơ sở .............................................................................. 20
2.2. Các thuật toán vẽ đường thẳng ............................................................................... 22
2.2.1 Mở đầu .............................................................................................................. 22
2.2.2 Thuật toán DDA (Digital Differential Analyzer ) ............................................ 23
2.2.3 Thuật toán Bresenham ...................................................................................... 25
2.2.4 Thuật toán Midpoint vẽ đường thẳng ............................................................... 27
2.3. Thuật toán Midpoint vẽ đường tròn ....................................................................... 29
2.4 Các phép biến đổi cơ sở của đối tượng 2 chiều ....................................................... 31
2.4.1 Mở đầu .............................................................................................................. 31
2.4.2 Phép tịnh tiến .................................................................................................... 32
2.4.3 Phép biến đổi tỷ lệ tâm O(0,0) ......................................................................... 33
2.4.4 Phép quay tâm O(0,0) ....................................................................................... 34 3
2.4.5. Kết hợp các phép biến đổi ............................................................................... 35
2.5. Một số tính chất của phép biến đổi affine. ............................................................. 37
2.5.1. Bảo toàn đường thẳng: .................................................................................... 37
2.5.2 Bảo toàn tính song song ................................................................................... 38
2.5.3 Bảo toàn tính tỷ lệ ............................................................................................. 38
2.6 Một số phép biến đổi khác ....................................................................................... 38
2.6.1 Phép biến đổi tỷ lệ tâm bất kỳ .......................................................................... 38
2.6.2 Phép quay có tâm quay bất kỳ .......................................................................... 39
2.6.3 Phép đối xứng ................................................................................................... 40
2.6.4 Phép biến đổi ngược ......................................................................................... 40
2.7 Các thuật toán xén đoạn thẳng. ................................................................................ 40
2.7.1 Thuật toán Cohen-Sutherland ........................................................................... 42
2.7.2 Thuật toán Liang Barsky .................................................................................. 45
CHƯƠNG 3: ĐỒ HỌA 3 CHIỀU ..................................................................................... 54
3.1. Tổng quan về đồ họa ba chiều ................................................................................ 54
3.2. Biểu diển các đối tượng ba chiều ........................................................................... 54
3.2.1. Biểu diễn mặt đa giác ...................................................................................... 55
3.2.2. Lưới đa giác (polygon meshes) ....................................................................... 58
3.2.3. Các đường cong và mặt con
g .......................................................................... 59
3.3. Các phép biến đổi hình học ba chiều ...................................................................... 59
3.3.1 Các phép biến đổi cơ bản ................................................................................. 60
3.3.2 Các phép đối xứng ............................................................................................ 63
3.3.3 Phép biến đổi tỷ lệ tâm bất kỳ .......................................................................... 64
3.4. Các phép chiếu........................................................................................................ 6
3.4.1 Phép chiếu song song ....................................................................................... 6
3.4.2 Phép chiếu phối cảnh ........................................................................................ 67
CHƯƠNG 4: CÁC HỆ MÀU ............................................................................................ 73
4.1 Ánh sáng và sự cảm nhận màu sắc của mắt ............................................................ 73
4.2 Biểu diễn màu trên màn hình đồ họa ....................................................................... 74
4.2.1 Chế độ hiển thị màu RGBA.............................................................................. 74 4
4.2.2. Chế độ hiển thị màu chỉ mục ........................................................................... 76
4.3. Hệ RGB (Red – Green – Blue): .............................................................................. 77
4.4. Hệ CMY và CMYK (Cyan - Magenta - Yel ow): .................................................. 79
4.4.1 Hệ màu CMY: .................................................................................................. 79
4.4.2 Hệ màu CMYK: ............................................................................................... 80
4.5 Một số hệ màu khác ................................................................................................. 81
4.5.1. Hệ màu HSV (Hue - Saturation - Value): ....................................................... 81
4.5.2. Hệ màu HSI ( Hue - Saturation - Intensity): ................................................... 82
CHƯƠNG 5: CÁC KỸ THUẬT ĐỒ HỌA TRONG BỘ CÔNG CỤ ADOBE AFTER
EFFECT ............................................................................................................................. 9
5.1 Giới thiệu về After Effect ........................................................................................ 90
5.2. Giao diện................................................................................................................. 9
5.3. Thực hiện một Project ............................................................................................ 95
5.4. Kỹ thuật Storyboard ............................................................................................... 98
5.5. Tạo hình đồ họa nhân vật: gắn xương, các chuyển động cơ bản ......................... 100
5.6. Kỹ thuật tạo bối cảnh đồ họa ................................................................................ 103
TÀI LIỆU THAM KHẢO ............................................................................................... 107 5 DANH MỤC HÌNH VẼ
Hình 2.1: Các điểm lân cận của (xi, yi) ............................................................................. 22
Hình 2.2: Đường thẳng có hệ số góc 0  m  1 ................................................................ 23
Hình 2.3: Minh họa thuật toán DDA trường hợp 0 Hình 2.4: Lưu đồ thuật toán vẽ đường thẳng DDA ........................................................... 24
Hình 2.5: Minh họa thuật toán Bresenham, 0Hình 2.6: Lưu đồ thuật toán vẽ đường thẳng Bresenham ................................................. 26
Hình 2.7: Minh họa thuật toán Midpoint vẽ đường thẳng ................................................. 28
Hình 2.8: Các vị trí đối xứng của đường tròn ................................................................... 29
Hình 2.9: Minh họa thuật toán Midpoint vẽ đường tròn ................................................... 29
Hình 2.10: Lưu đồ giải thuật Midpoint vẽ đường tròn ...................................................... 30
Hình 2.11: Minh họa phép tịnh tiến................................................................................... 32
Hình 2.12: Minh họa phép biến đổi tỷ lệ ........................................................................... 33
Hình 2.13: Minh họa phép quay tâm O ............................................................................. 34
Hình 2.14: Minh họa phép quay có tâm quay bất kỳ ........................................................ 39
Hình 2.15: (a)Trước khi thực hiện xén đoạn thẳng, (b) sau khi thực hiện ........................ 41
Hình 2.16: Cách đánh mã vùng – thuật toán Cohen-Sutherland ....................................... 42
Hình 2.17: Minh họa thuật toán Cohen -
Sutherland ........................................................ 43
Hình 2.18: Giải thuật xén đoạn thẳng Cohen-Sutherland ................................................. 44
Hình 2.19: Minh họa thuật toán Liang Barsky .................................................................. 46
Hình 3.1: Mô hình wireframe của một hình trụ ................................................................ 55
Hình 3.2: Minh họa mô hình khung kết nối ...................................................................... 56
Hình 3.3: Vector pháp tuyến của mặt phẳng ..................................................................... 58
Hình 3.4: Triangle strip và quadrilateral mesh .................................................................. 59
Hình 3.5: Minh họa phép tịnh tiến .................................................................................... 60
Hình 3.6: Minh họa phép biến đổi tỷ lệ ............................................................................. 61
Hình 3.7: Phép quay, (a) quay quanh trục z, (b) quanh trục x, (c) quanh trục y ............... 62
Hình 3.8: Phép chiếu trực giao, (a) phép chiếu 6 mặt, (b) phép chiếu 3 mặt .................... 65
Hình 3.9: Minh họa phép chiếu trục lượng ....................................................................... 66
Hình 3.10: Phép chiếu Cavalier, (a) góc ф=450 , (b) ф=300 ............................................. 67 6
Hình 3.11: Phép chiếu Cabinet, (a) góc ф=450 , (b) ф=300 ............................................. 67
Hình 3.12: Minh họa phép chiếu phối cảnh ...................................................................... 68
Hình 3.13: (a) Một tâm chiếu, (b) hai tâm chiếu, (c) ba tâm chiếu ................................... 68
Hình 3.14: Phép chiếu phối cảnh tâm chiếu I(0,0,d) ......................................................... 69
Hình 4.1: Minh họa phối màu ............................................................................................ 75
Hình 4.2: Ánh xạ màu lên pixel ......................................................................................... 76
Hình 4.3: Minh họa sử dụng bản đồ màu để vẽ................................................................. 76
Hình 4.4: Hệ màu RGB ..................................................................................................... 77
Hình 4.5: Hệ màu CMY .................................................................................................... 80
Hình 4.6: Hệ màu HSV ..................................................................................................... 81
Hình 4.7: Hệ màu HSI ....................................................................................................... 82
Hình 4.8: Màu đơn sắc (Monochromatic) ......................................................................... 83
Hình 4.9: Kết hợp màu kiểu bổ sung ................................................................................. 83
Hình 4.9: Kết hợp màu kiểu bổ sung ................................................................................. 84
Hình 4.10: Kết hợp màu kiểu bộ ba................................................................................... 84
Hình 4.11: Kết hợp màu kiểu hình chữ nhật ..................................................................... 85
Hình 4.12: Kết hợp màu kiểu hình vuông ......................................................................... 85
Hình 5.1: Giao diện After Effect ....................................................................................... 91
Hình 5.2: Mở workspace của After Effect ....................................................................... 92
Hình 5.3: Panel trong After Effect .................................................................................... 92
Hình 5.4: Các thao tác với Panel trong After Effect ......................................................... 93
Hình 5.5: Các icon Panel trong After Effect ..................................................................... 94
Hình 5.6: Vùng an toàn trong After Effect ........................................................................ 94
Hình 5.7: Toolbar trong After Effect ................................................................................. 95
Hình 5.8: Chức năng New Project trong After Effect ....................................................... 95
Hình 5.9: Hiệu chỉnh Preferences trong After Effect ........................................................ 96
Hình 5.10: Hiệu chỉnh Preferences trong After Effect ...................................................... 96
Hình 5.11: Import File trong After Effect ......................................................................... 97
Hình 5.12: Hiệu chỉnh thông số Import File trong After Effect ........................................ 98
Hình 5.13: Minh họa Storyboard trong After Effect ....................................................... 100 7
Hình 5.14: File PSD nhân vật .......................................................................................... 10
Hình 5.15: Import File PSD nhân vật .............................................................................. 101
Hình 5.16: Mô tả Import File PSD nhân vật ................................................................... 102
Hình 5.17: Layer nhân vật ............................................................................................... 102
Hình 5.18: Hiệu chỉnh các điểm neo nhân vật ................................................................ 103
Hình 5.19: Tạo mô tả chuyển động nhân vật .................................................................. 103
Hình 5.20: Bối cảnh trong After Effect ........................................................................... 104
Hình 5.21a: Công cụ Roto Brush .................................................................................... 104
Hình 5.21b: Công cụ Roto Brush .................................................................................... 105 8
CHƯƠNG 1: TỔNG QUAN VỀ ĐỒ HỌA MÁY TÍNH
Mục tiêu của chương: Sinh viên nắm được về lịch sử ra đời và một số các cột mốc
phát triển của đồ họa máy tính, nhận thức được vai trò, các ứng dụng và các thành tựu của
đồ họa máy tính trong các lĩnh vực như giáo dục, y tế, giải trí, nghệ thuật, khoa học, kỹ thuật..
Sinh vên cần nắm được tổng quan về một hệ đồ họa máy tính, phân loại được các
lĩnh vực của đồ họa máy tính, nắm được một số chuẩn của đồ họa và cần phân biệt, so
sánh được giữa kỹ thuật đồ họa điểm và ồ đ họa vector.
1.1. Gii thiu v đồ ha máy tính
1.1.1. M đầu
Đồ họa máy tính là một lĩnh vực của công nghệ thông tin, liên quan đến việc nghiên
cứu, xây dựng và tập hợp các công cụ ( mô hình lý thuyết và phần mềm) khác nhau để kiến
tạo, xây dựng lưu trữ và xử lý các mô hình và hình ảnh của đối tượng, sự vật hiện tượng
khác nhau trong đời sống, sản xuất và nghiên cứu. Các mô hình và hình ảnh này có thể là
các kết quả thu được từ những lĩnh vực khác nhau của rất nhiều ngành khoa học ( vật lý, toán học, .. )
Đồ họa máy tính cũng là lĩnh vực liên quan đến việc thiết kế, chế tạo phần cứng
như: các thiết bị hiển thị, các thiết bị đầu vào như bàn phím, chuột, bút quang … các thuật
toán cần thiết để phát sinh hình ảnh trên các thiết bị này, các phần mềm được sử dụng cho
cả người lập trình hệ thống và người lập trình ứng dụng đồ họa.
Đồ họa máy tính tương tác là một trong những phương tiện mang lại thêm nhiều sự
thuận lợi cho người dùng trong việc phát sinh hình ảnh. Chúng ta có thể tạo các hình ảnh
không chỉ của các đối tượng cụ thể, thực tế, mà còn của các đối tượng trừu tượng, nhân
tạo; biểu diễn dữ liệu mà không có tính kế thừa về mặt hình học như kết quả điều tra, khảo sát..
Hơn nữa, với đồ họa máy tính chúng ta không bị giới hạn trong các ảnh tĩnh. Các
ảnh động thông thường mang lại nhiều hiệu quả hơn so với ảnh tĩnh, đặc biệt là với các
hiện tượng biến đổi theo thời gian, cả thực tế (như sự đổi hướng của cánh máy bay siêu
âm, hay sự phát triển của khuôn mặt người từ lúc trẻ tới lúc già) và trừu tượng (như là xu
hướng phát triển của việc sử dụng năng lượng, sự gia tăng dân số, …).
Có nhiều cách tiếp cận trong việc học môn đồ họa, trải rộng từ việc nghiên cứu phần
cứng, nghiên cứu các kỹ thuật ể
đ hiển thị các đối tượng đồ họa… tới v ệ i c học để biết cách
sử dụng một ứng dụng đồ họa. Ở đây chúng ta tiếp cận môn học từ góc độ của người lập
trình ứng dụng, sử dụng tất cả các hỗ trợ của phần cứng, các công cụ phần mềm để xây
dựng nên các ứng dụng. 9
Tuy nhiên để có thể thiết kế và cài đặt các chương trình ứng dụng đồ họa được tốt,
ngoài việc tìm hiểu các khả năng của công cụ lập trình, chúng ta cũng cần phải nắm vững
các khái niệm về phần cứng; các vấn đề, các nguyên lí liên quan đến cài đặt phần mềm,
các thuật toán, các ứng dụng, …
1.1.2. Lch s phát trin
Năm 1955, hệ thống phòng không SAGE (Môi trường mặt đất bán tự động) bắt
đầu hoạt động, sử dụng màn hình quét vector làm đầu ra chính và Light pen là thiết bị đầu
vào và được sử dụng rộng rãi vào năm 1958.
Tập đoàn thiết bị kỹ thuật số DEC được thành lập vào năm 1957, bắt đầu chế tạo
minicomputers mà sau này được sử dụng phát triển đồ họa máy tính.
Năm 1960, nhà khoa học người Mỹ, Wil iam Fette nghiên cứu, xây dựng mô hình
buồng lái máy bay cho hãng Boeing của Mỹ. Ông đã dựa trên hình ảnh 3 chiều của mô
hình người phi công trong buồng lái của máy bay để xây dựng nên một mô hình tối ưu cho
buồng lái máy bay. Phương pháp này cho phép các nhà thiết kế quan sát một cách trực
quan vị trí của người lái trong khoang. Ông đặt tên cho phương pháp này là đồ hoạ máy
tính (Computer Graphics). Màn hình là thiết bị thông dụng nhất trong hệ đồ hoạ, các thao
tác của hầu hết các màn hình đều dựa trên thiết kế ống tia âm cực CRT (Cathode ray tube).
Khi đó máy tính xử lý chậm, đắt và không chắc chắn (không đáng tin cậy).
Vào những năm 1960, lĩnh vực này đã có những phát triển đầu tiên. Năm 1961,
Ivan Sutherland phát triển dự án Sketchpad tại MIT. Bảng vẽ được sử dụng và một thiết bị
light pen làm thiết bị đầu vào chính, một máy hiện sóng là thiết bị đầu ra. Phiên bản đầu
tiên chỉ xử lý các số liệu hai chiều và sau đó được phát triển để vẽ, biến đổi và hiển thị các
đối tượng 3 chiều dưới dạng hình chiếu xuống mặt phẳng 2 chiều.
Kỹ thuật đồ họa liên tục được phát triển vào những năm 1960 và 1970 kéo theo sự
ra đời của các chuẩn đồ họa, làm tăng khả năng giao tiếp và tái sử dụng của phần mềm
cũng như các thư viện đồ họa.
Sự phát triển đột phá của công nghệ điện tử máy tính vào thập niên 1980 làm xuất
hiện một loạt các vi mạch hỗ trợ cho việc truy xuất đồ họa, làm giảm giá thành của máy
tính cá nhân. Vào cuối những năm 1980, các máy tính đồ họa SGI (Silicon Graphics Inc.)
đã tạo ra một số phim hoạt hình ngắn đầu tiên tại Pixar.
Hệ điều hành Microsoft Windows 3.0 được xuất xưởng lần đầu tiên vào năm 1990
thúc đẩy to lớn cho khái niệm GUI (Graphical User Interface).
Ngày càng nhiều ứng dụng được phát triển chạy trên MS Windows. OpenGL (Thư
viện đồ họa mở) được SGI đưa ra năm 1992. Những năm 1990 cũng chứng kiến sự phát
triển nhanh chóng trong đồ họa ba chiều, đặc biệt là trong phát triển game, đa phương tiện
và hoạt hình. Quake, một trong những game 3D hoàn chỉnh đầu tiên, đã được phát hành vào năm 1996. 10
Ngày nay, đồ họa có những tác động to lớn đến ngành công nghiệp giải trí, các
lĩnh vực khoa học, kỹ thuật, y học, thiết kế trang web, truyền thông, xử lý thông tin thiết
lập các tương tác mới từ lớn đến nhỏ các yếu tố thực tế ảo, màn hình cỡ lớn, màn hình thực
tế ảo, thiết bị cảm ứng đa điểm và điện thoại thông minh…[1][5]
Nếu nhìn lịch sử đồ họa theo góc độ phát triển của kỹ thuật hiển thị ta sẽ thấy các
kỹ thuật hiển thị phát triển theo những giai đoạn sau:
Kỹ thuật hiển thị bằng ký tự:
Kỹ thuật này chỉ cho phép hiển thị text và các hình ảnh đồ họa đơn giản. Giao tiếp
với người sử dụng thông qua các lệnh dưới dạng text. Có thể sử dụng những ký tự mã hóa
đặc biệt để hiển thị đối tượng. Tất cả các chương trình và phần mềm được thực hiện đều là đơn nhiệm. Ví dụ:
- Hệ điều hành MS_DOS. Hệ điều hành tiêu biểu của giai đoạn 80, đầu những năm 90 của Microsoft.
- Phần mềm soạn thảo văn bản BKED chạy trên môi trường MS_DOS.
Kỹ thuật hiển thị vector:
Kỹ thuật này phát triển từ năm 1963 đến năm 1980, cho phép hiển thị text, các
đường thẳng, các hình đơn giản. Giao tiếp với người sử dụng được thực hiện thông qua các
dòng lệnh, các phím “nóng” và menu chọn.
Kỹ thuật ảnh 2 chiều:
Kỹ thuật này cho phép hiển thị các cửa sổ (window), các biểu tượng (icon), và
các dòng văn bản (text). Trong giao tiếp với người sử dụng đã hạn chế việc gõ lệnh, thay
vào đó người sử dụng có thể thực hiện thông qua các giao diện đồ họa ( Graphical User Interface)
Trạm làm việc đồ họa ( 3D Graphics Workstation)
Công nghệ này được phát triển bởi công ty Silicon Graphics, một trong những
công ty phát triển đồ họa hàng đầu của Mỹ. Công nghệ này cho phép hiển thị các hình ảnh
thực và hình ảnh thời gian thực 3 chiều của hình ảnh và sự vật dựa trên các cảnh 3 chiều.
Môi trường giao tiếp với người sử dụng được xây dựng trên cơ sở các hình ảnh 2
chiều, 3 chiều và mô phỏng thế giới thực. [4]
1.1.3. Một số ứng dụng
Như đã nói ở trên, đồ họa máy tính không còn là những gì mới mẻ, xa lạ nữa mà nó
trở nên gần gũi và cần thiết trên hầu hết các thiết bị chúng ta sử dụng hàng ngày. Dưới đây
là một số các ứng dụng cơ bản của đồ họa máy tính.
a, H tr thiết kế
Một trong những ứng dụng lớn nhất của đồ họa máy tính là hỗ trợ thiết kế (CAD –
computer-aided design). Ngày nay CAD đã được sử dụng hầu hết trong việc thiết kế các 11
cao ốc, ô tô, máy bay, tàu thủy, tàu vũ trụ, máy tính, trang trí mẫu vải, và rất nhiều sản phẩm khác.
Người ta có thể quan sát các đối tượng được thiết kế qua mô tả trên máy tính theo
bất kỳ hướng nào. Những thay đổi trên đối tượng được cập nhật nhanh chóng, được thể
hiện thử nghiệm lại ngay.
b, Biu din thông tin
Các công cụ đồ họa trong các ứng dụng có thể phát sinh các biểu đồ, đồ thị, … thuận
tiện cho việc minh họa mối quan hệ giữa nhiều đối tượng với nhau. Các biểu đồ có thể dưới
dạng 2 chiều, 3 chiều, được biểu diễn trực quan. Trong đó, các ứng dụng thường được dùng
để tóm lược các dữ liệu về tài chính, t ố
h ng kê, kinh tế, khoa học, toán học, … giúp cho
việc nghiên cứu, quản lí, … một cách có hiệu quả.
c, Lĩnh vực gii trí, ngh thut
Trong lĩnh vực nghệ thuật, các chương trình máy tính như Paint Shop Pro, Adobe
Photoshop, 3D Studio, … hỗ trợ rất đắc lực cho các họa sĩ, các nhà tạo mẫu trong việc thiết
kế các hình ảnh sống động, và rất thực. Với các chương trình này, người họa sĩ được máy
tính tạo cho cảm giác y như đang làm việc ngoài đời thực bằng cách cung cấp các công cụ
như khung vẽ, giá vẽ, bảng pha màu, các hiệu ứng ba chiều, … làm cho họ cảm thấy rất
thoải mái và tiện lợi.
Ngoài ra đồ họa máy tính còn giúp tạo ra các chương trình trò chơi, giải trí; hỗ trợ
cho các kĩ xảo điện ảnh, cho các nhà làm phim. Có nhiều bộ phim rất nổi t ế i ng nhờ vào kĩ
xảo điện ảnh như : Công viên Khủng long kỉ Jura (Jurassic Park), Titanic, Thế giới nước (Water World), …
d, Giáo dục và đào tạo
Hiện nay các chương trình mô phỏng cấu trúc của các vật thể, tiến trình của các
phản ứng hóa học, hoạt động của các gói tin trên mạng máy tính, … được dùng rất nhiều
trong việc hỗ trợ giảng dạy.
Trong đào tạo, các ứng dụng mô phỏng được dùng để kiểm tra trình độ người lái,
huấn luyện phi công, điều khiển giao thông, …
e, Giao tiếp giữa máy tính và người dùng
Mọi ứng dụng đều phải có giao diện giao tiếp với người dùng. Giao diện đồ họa
thực sự là một cuộc cách mạng mang lại sự thuận tiện và thoải mái cho người dùng ứng
dụng. Các ứng dụng dựa trên hệ điều hành MS Windows là một minh họa rất trực quan của
giao diện đồ họa. Các chức năng của các ứng dụng này được thiết kế cho người dùng làm
việc thông qua các biểu tượng mô tả chức năng đó.
Ví dụ: chức năng lưu tập tin được hiểu thông qua biểu tượng đĩa mềm, chức năng
in ấn được hiểu thông qua biểu tượng máy in, … Để chọn các chức năng, người dùng sử
dụng chuột trỏ đến và nhấn vào các biểu tượng tương ứng. Điểm thuận lợi chính khi dùng 12
biểu tượng là kích thước không gian mà nó chiếm ít hơn nhiều so với dùng văn bản để mô
tả cho cùng một chức năng, ngoài ra việc nắm bắt các chức năng qua các biểu tượng sẽ dễ
dàng hơn rất nhiều khi người dùng gặp trở ngại về mặt ngôn ngữ.
Các ứng dụng có giao diện đồ họa còn cho phép người dùng khả năng làm việc dễ
dàng với nhiều cửa sổ với nhiều dạng tài liệu khác nhau cùng một lúc.
1.1.4 Phân loi các lĩnh vực ca k thut đồ ho máy tính
Có nhiều phương pháp để phân loại các lĩnh vực của đồ hoạ máy tính.
a, Phân loi theo tiêu chí là mục đích xử lý d liệu trong các lĩnh vực: CAD/CAM Kiến tạo đồ họa Đồ họa hoạt hình và nghệ thuật Đồ họa minh họa
K thuật đồ ha Xử lý ảnh Xử lý đồ họa Kỹ thuật phân tích và tạo ảnh Kỹ thuật nhận dạng
- Các h CAD/CAM (Computer Aided Design/Computer Aided Manufacture
System): kỹ thuật đồ hoạ tập hợp các công cụ, các kỹ thuật trợ giúp cho thiết kế các chi tiết
và các hệ thống khác nhau: hệ thống cơ, hệ thống điện, hệ thống điện tử…
- Đồ ho hot hình và ngh thut: bao gồm các công cụ giúp cho các hoạ sĩ, các nhà
thiết kế phim hoạt hình chuyên nghiệp làm các kỹ xảo hoạt hình, vẽ tranh...
Ví dụ: phần mềm 3D Studio, 3D Animation, 3D Studio Max
- Đồ ho minh ho (Presentation Graphics): gồm các công cụ giúp hiển thị các số
liệu thí nghiệm một cách trực quan, dựa trên các mẫu đồ thị hoặc các thuật toán có sẵn.
- K thut xnh (Computer Imaging): sau quá trình xử lý ảnh cho ta ảnh số của
đối tượng. Trong quá trình xử lý ảnh sử dụng rất nhiều các kỹ thuật phức tạp: kỹ thuật khôi
phục ảnh, kỹ thuật làm nổi ảnh, kỹ thuật xác định biên ảnh.
- K thut phân tích và to nh (Image Synthesis): là lĩnh vực xây dựng mô hình và
hình ảnh của các vật thể dựa trên các đối tượng và mối quan hệ giữa chúng.
- K thut nhn dng (Pattern Recognition): từ những ảnh mẫu có sẵn ta phân loại
theo cấu trúc, hoặc theo các tiêu chí được xác định từ trước và bằng các thuật toán chọn
lọc để có thể phân tích hay tổng hợp ảnh đã cho thành một tập hợp các ảnh gốc, các ảnh 13
gốc này được lưu trong một thư viện và căn cứ vào thư viện này ta xây dựng được các thuật
giải phân tích và tổ hợp ảnh.
b, Phân loi theo h to độ dùng trong thuật đồ ha:
Kỹ thuật đồ họa 2 chiều
K thuật đồ ha
Kỹ thuật đồ họa 3 chiều
- K thuật đồ ho hai chiu: là kỹ thuật đồ hoạ máy tính sử dụng hệ toạ độ hai chiều
(hệ toạ độ phẳng), sử dụng rất nhiều trong kỹ thuật xử lý bản đồ, đồ thị.
- K thuật đồ ho ba chiu: là kỹ thuật đồ hoạ máy tính sử dụng hệ toạ độ ba chiều,
đòi hỏi rất nhiều tính toán và phức tạp hơn nhiều so với kỹ th ậ
u t đồ hoạ hai chiều.[1]
1.2. Tng quan v mt h đồ ha
Một trong các yêu cầu chính của một hệ thống đồ họa là các ứng dụng có thể thực
thi trên nhiều hệ thiết bị, được phát triển không phụ thuộc vào phần cứng. Để có được điều
đó, phải có tiêu chuẩn hóa cho môi trường đồ họa ở mức chức năng, bằng việc cung cấp
sự độc lập thiết bị và ngôn ngữ lập trình.
Sự độc lập với thiết bị cho phép các chương trình ứng dụng đồ họa chạy trên các hệ
thống phần cứng khác nhau. Điều này được thực hiện thông qua thiết bị nhập xuất logic
của thư viện đồ họa ánh xạ thiết bị cụ thể. Cho tới nay, có những tiêu chuẩn đồ họa đã được
phát triển trong nhiều năm, bao gồm:
- GKS(Graphics Kernel System - 1985), phát triển riêng cho các thiết bị nhập xuất 2 chiều.
- GKS-3D bổ sung thêm khả năng lập trình 3 chiều.
- CGI ( Computer Graphics Interface System): Hệ chuẩn cho các phương pháp
giao tiếp với các thết bị ngoại vi .
- CGM ( Computer Graphics Metafile): Xác định các chuẩn cho việc lưu trữ và chuyển đổi hình ảnh.
- VRML ( Virtual Reality Modeling Language): Ngôn ngữ thực tại ảo, một hướng
phát triển trong công nghệ hiển thị được đề xuất bởi công ty Silicon Graphics,
sau đó được chuẩn hóa như một chuẩn công nghiệp.
- PHIGS (Programmer’s Hierarchical Interactive Graphics Standar): Xác định
các phương pháp chuẩn cho mô hình thời gian thực và lập trình hướng đối tượng.
- PHIGS+ bao gồm khả năng lập trình không gian, tạo thành thao tác dữ liệu đồ họa phức tạp … 14
- OPENGL: Thư viện đồ họa của hãng Silicon Graphics, được xây dựng theo đúng
chuẩn của một hệ đồ họa – năm 1993.
- DIRECTX: Thư vện đồ họa của hãng Microsoft.
Các tiêu chuẩn đồ họa thực tế là kết quả của việc chấp nhận trong công nghiệp thiết
kế các giao diện đặc trưng, được đề xuất bởi nhiều công ty.
Để đảm bảo sự linh hoạt, các tiêu chuẩn đồ họa thiết lập cho các thay đổi tối thiểu,
cho phép định địa chỉ các thiết bị nhập xuất khác nhau. Khởi đầu, người lập trình tạo ra
một hệ thống tọa độ mô hình, mô tả đối tượng gọi là hệ thống tọa độ thực. Tiếp theo, là hệ
tọa độ tiêu chuẩn và hệ tọa độ thiết bị. Chương trình ứng dụng sẽ giao tiếp với hệ tọa độ
chuẩn theo cách thức phù hợp, không quan tâm đến thiết bị xuất được dùng. Do đó, tạo ra
sự độc lập với thiết bị trong việc tạo ra hình ảnh của đối tượng
1.2.1. Phần cứng đồ họa
Phần cứng đồ họa bao gồm các thành phần:
✓ CPU: Thực hiện các chương trình ứng dụng.
✓ Bộ xử lý hiển thị (Display Processor): Thực hiện công việc hiển thị dữ liệu đồ hoạ.
✓ Bộ nhớ hệ thống (System Memory): Chứa các chương trình và dữ liệu đang thực hiện.
✓ Bộ đệm ( Frame buffer): Chứa các hình ảnh hiển thị.
✓ Bộ điều khiển màn hình (Video Controller): Điều khiển màn hình, chuyển dữ liệu dạng
số ở frame buffer thành các điểm sáng trên màn hình.
1.2.2. Phần mềm đồ họa
Phần mềm đồ họa bao gồm các công cụ lập trình cung cấp một tập các hàm đồ họa
có thể được dùng trong các ngôn ngữ lập trình cấp cao. Các hàm cơ sở của nó bao gồm
việc tạo các đối tượng cơ sở của hình ảnh như đoạn thẳng, đa giác, đường tròn,… thay đổi
màu sắc, chọn khung nhìn, áp dụng các phép biến đổi .
Các ứng dụng đồ họa được thiết kế cho những người dùng không phải là lập trình
viên, cho phép người dùng tạo các đối tượng, hình ảnh, … mà không cần quan tâm tới việc
chúng được tạo ra như thế nào. Ví dụ như là Photoshop, AutoCAD, …
Khi các ứng dụng được thiết kế với các hàm đồ họa chuẩn, nó có thể thực thi được
trên nhiều hệ thống khác nhau và được tái sử dụng trong nhiều ứng dụng khác nhau.
1.3 Các k thuật đồ ha
Ngày nay, số lượng các hệ thống sử dụng kỹ thuật đồ họa tương tác đã trở nên rất
lớn, ngày càng nhiều và càng trở nên đa dạng hơn, phong phú hơn. Tuy vậy, căn cứ vào
phương pháp xử lý các dữ liệu trong hệ t ố
h ng mà người ta phân biệt ra hai hệ t ố h ng đồ
họa: K thuật ồ
đ họa điểm (Sample based – Graphics) và k thuật đồ ha vector ( Geometry based – Graphics). 15
1.3.1 Kỹ thuật đồ hoạ điểm
Các mô hình, hình ảnh của các đối tượng được hiển thị thông qua từng pixel (từng
mẫu rời rạc) trong kỹ thuật này ta có thể:
- Tạo ra, thay đổi các thuộc tính, xóa đi từng pixel của mô hình và hình ảnh các đối tượng.
- Các mô hình hình ảnh được hiển thị như một lưới điểm (grid) các pixel rời rạc.
- Từng pixel đều có vị trí xác định, được hiển thị với một giá trị rời rạc (số nguyên)
các thông số hiển thị (màu sắc hoặc độ sáng)
Tập hợp tất cả các pixel cho chúng ta mô hình, hình ảnh đối tượng mà chúng ta
muốn hiển thị. Có 2 phương pháp để tạo ra các pixel:
- Phương pháp dùng phần mềm để vẽ trực tiếp từng pixel một. Dựa trên các lý thuyết
mô phỏng để xây dựng nên hình ảnh mô phỏng của sự vật.
- Phương pháp rời rạc hoá (số hoá) hình ảnh thực của đối tượng. Có thể sửa đổi
(image editing) hoặc xử lý (image processing) mảng các pixel thu được theo những phương
pháp khác nhau để thu được hình ảnh đặc trưng của đối tượng.
1.3.2 K thuật đồ ha vector
Nguyên lý xây dựng các mô hình, hình ảnh trong kỹ thuật đồ họa vector như sau:
- Xây dựng mô hình hình học (geometrical model) cho mô hình hoặc hình ảnh của đối tượng.
- Xác định các thuộc tính của mô hình hình học này.
- Quá trình tô trát (rendering) để hiển thị từng điểm của mô hình, hình ảnh thực của đối t ợ ư ng.
Trong kỹ thuật đồ họa vector, chỉ lưu trữ mô tả toán học của các thành phần trong
mô hình hình học cùng với các thuộc tính tương ứng của nó mà không lưu lại toàn bộ các
pixel của mô hình tô trát ( rendering) được.
Các thành phần được mô tả trong mô hình hình học của đối tượng được gọi là các
thực thể hình học cơ sở, các đối tượng hình ảnh sẽ được xây dựng từ những thực thể cơ sở
này. Hình ảnh được tô trát từ nhiều góc nhìn và điểm nhìn khác nhau.
So sánh giữa 2 kỹ thuật đồ họa điểm và đồ họa vector: Đồ hoạ điểm Đồ hoạ vector
- Hình ảnh và mô hình của các đối tượng - Hình ảnh và mô hình của các đối tượng
được biểu diễn bởi tập hợp các điểm của được biểu diễn bởi tập hợp các thực thể lưới (grid) hình học cơ sở
- Thay đổi thuộc tính của các pixel dẫn đến - Xử lý với từng thành phần hình học cơ
thay đổi từng phần và từng vùng của đối sở của đối tượng và thực hiện quá trình tô tượng. trát, hiển thị. 16 Đồ hoạ điểm Đồ hoạ vector
- Copy được các pixel từ một hình ảnh
- Quan sát hình ảnh và mô hình của hình này sang hình ảnh khác.
ảnh và sự vật ở nhiều góc độ khác nhau
bằng cách thay đổi điểm nhìn và góc nhìn.[1] 17
Câu hi ôn tp :
1. Trình bày một số mốc lịch sử phát triển của đồ họa máy tính
2. Trình bày một số ứng dụng của đồ họa máy tính trong các lĩnh vực: giáo dục, y tế, giải
trí, nghệ thuật, kỹ thuật…
3. Tại sao phải sử dụng các chuẩn đồ họa, nêu một số chuẩn đồ họa?
4. Trình bày tổng quan về phần cứng, phần mềm đồ họa.
5. Trình bày về kỹ thuật đồ họa điểm và kỹ thuật đồ họa vector.
6. Phân biệt giữa đồ họa điểm và đồ họa vector. 18
CHƯƠNG 2: ĐỒ HỌA 2 CHIỀU
Mục tiêu của chương: Sinh viên cần nắm được các thuật toán DDA, Bresenham,
Midpoint vẽ các đường cơ bản như đường thẳng, đường tròn, có khả năng cài đặt các thuật
toán này bằng ngôn ngữ C, C++ ..
Có thể thực hiện tính toán được ảnh của các điểm 2D sau các phép biến đổi: Tỷ lệ
tâm O(0,0), tâm bất kỳ, phép tịnh tiến, phép quay tâm O(0,0,0), quay tâm bất kỳ, và các
phép lấy đối xứng qua qua trục tọa độ, gốc tọa độ.
Sinh viên cần nắm được các tính chất của các phép biến đổi Affine trên đối tượng
đồ họa 2D, hiểu và cài đặt được các thuật toán xén đoạn thẳng: Cohen-Sutherland và Liang- Barsky.
2.1. Giới thiệu về các đối tượng đồ họa cơ sở 2.1.1 Mở đầu
Bất kì một ảnh mô tả thế giới thực nào bao giờ cũng được cấu trúc từ tập các đối
tượng đơn giản hơn. Với các ảnh đồ họa phát sinh bằng máy tính, hình dạng và màu sắc
của mỗi đối tượng có thể được mô tả riêng biệt bằng hai cách:
- Bằng dãy các pixel tương ứng
- Bằng tập các đối tượng hình học cơ sở như: đoạn thẳng, vùng tô đa giác, …
Sau đó, các ảnh sẽ được hiển thị bằng cách nạp các pixel vào vùng đệm khung. Với
các ảnh được mô tả bằng các đối tượng hình học cơ sở, cần phải có một quá trình chuyển
các đối tượng này về dạng ma trận các pixel trước.
Quá trình này còn được gọi là quá trình chuyển đổi bằng dòng quét (scan-
converting). Bất kì công cụ lập trình đồ họa nào cũng cung cấp các hàm để mô tả một ảnh
dưới dạng các đối tượng hình học cơ sở hay còn gọi là các đối tượng đồ họa cơ sở (output
primitives) và các hàm cho phép kết hợp tập các đối tượng cơ sở để tạo thành đối tượng có
cấu trúc phức tạp hơn. Mỗi đối tượng đồ họa cơ sở được mô tả thông qua dữ liệu về tọa độ
và các thuộc tính của nó, đây chính là thông tin cho biết kiểu cách mà đối tượng được hiển thị.
Đối tượng đồ họa cơ sở đơn giản nhất là điểm và đoạn thẳng, ngoài ra còn có đường
tròn, và các đường conics, mặt bậc hai, các mặt và đường cong, các vùng tô đa giác, chuỗi
kí tự, … cũng được xem là các đối tượng đồ họa cơ sở để giúp xây dựng các ảnh phức tạp.
Chương này sẽ khảo sát các thuật toán h ể i n thị các đối ư
t ợng đồ họa cơ sở cho các thiết bị hiển thị dạng điểm.
Xét về mặt bản chất, các thuật toán này thực hiện quá trình chuyển đổi các đối tượng
đồ họa cơ sở được mô tả trong hệ tọa độ thực về dãy các pixel có tọa độ nguyên của thiết
bị hiển thị. Có hai yêu cầu đặt ra cho các thuật toán đó l : à 19
Đối tượng được mô tả trong hệ tọa độ thực là đối tượng liên tục, còn đối tượng
trong hệ tọa độ thiết bị là đối tượng rời rạc, do đó bản chất của quá trình chuyển đổi này
chính là sự rời rạc hóa và nguyên hóa các đối tượng sao cho có thể xác định các điểm
nguyên xp x đối tượng mt cách tt nht, thc nht. Nghĩa là đối tượng hiển thị bằng lưới
nguyên trên thiết bị hiển thị phải có hình dạng tương tự như đối tượng trong lưới tọa độ
thực và “có vẻ” liên tục, liền nét. Sự liên tục trên lưới nguyên của thiết bị hiển thị có được do mắt g
n ười không thể phân biệt được hai điểm quá gần nhau.
Do các đối tượng đồ họa cơ sở là thành phần chính cấu trúc các đối tượng phức tạp
nên các thuật toán hiển thị chúng cần phải được tối ưu hóa về mt tốc độ, đây chính là điểm
mấu chốt cho việc ra đời các thuật toán khác nhau.
2.1.2 Các hệ tọa độ
a, H tọa độ thế gii thc
Hệ tọa độ thế giới thực (hay hệ tọa độ thực) là hệ tọa độ được dùng mô tả các đối
tượng thế giới thực. Một trong các hệ tọa độ thực thường được dùng nhất đó là hệ tọa độ
Descartes. Với hệ tọa độ này, bất kì một điểm nào trong mặt phẳng cũng được mô tả bằng
một cặp tọa độ (x, y) trong đó x, y  R.
Các tọa độ thế giới thực cho phép người dùng sử dụng bất kì một thứ nguyên
(dimension) quy ước như foot, cm, mm, km, inch, ... nào và có thể lớn nhỏ tùy ý.
b, H tọa độ thiết b
Hệ tọa độ thiết bị là hệ tọa độ được dùng bởi một thiết bị xuất cụ thể nào đó như
máy in, màn hình , ... Đặc điểm chung của các hệ tọa độ thiết bị đó là:
- Các tọa độ x, y (x,y  N) của hệ tọa độ thiết bị đều bị giới hạn trong một khoảng
nào đó (do kích thước của thiết bị).
- Khoảng giới hạn các tọa độ x, y là khác nhau đối với từng loại thiết bị khác nhau.
c. H tọa độ thiết b chun
Do cách định nghĩa các hệ tọa độ thiết bị khác nhau nên một hình ảnh được hiển
thị trên thiết bị này là chính xác nhưng có thể không được hiển thị chính xác ở thiết bị khác.
Người ta xây dựng một hệ tọa độ thiết bị chuẩn ( NDCS – Normalized Device Coordinate
System) đại diện chung cho tất cả các thiết bị để có thề mô tả các hình ảnh mà không phụ
thuộc vào bất kỳ thiết bị nào.
Trong hệ tọa độ thiết bị chuẩn, các tọa độ x, y sẽ được gán các giá trị trong đoạn
[0,1]. Như vậy, vùng không gian của hệ tọa độ chuẩn chính là hình vuông đơn vị có góc
trái dưới (0,0) và góc phải trên (1,1)
2.1.3 Các đối tượng đồ họa cơ sở a. Điểm:
Điểm là thành phần cơ sở được định nghĩa trong một hệ tọa độ. Đối với hệ tọa độ
hai chiều mỗi điểm được xác định bởi cặp tọa độ (x, y). 20