Luận văn tốt nghiệp “ xử lý và chọn mẫu màu cho công đoạn in thử một mẫu in hoa tại nhà máy dệt Tân Tiến
Trong phạm vi đề tài này, với những mục đích nêu trên, chúng ta nghiên cứu cơ sở lý thuyết về Kỹ thuật đồ họa cũng như cơ sở lý thuyết về CSDL để có thể áp dụng giải quyết vấn đề một cách hiệu quả. Trong phạm vi đề tài này, chúng ta nghiên cứu những cơ sở lý thuyết về kỹ thuật đồ họa cũng như cơ sở lý thuyết về cơ sở dữ liệu.
z
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Luận văn
“ XỬ LÝ VÀ CHỌN MẪU MÀU CHO CÔNG ĐOẠN IN THỬ MỘT MẪU
IN HOA TẠI NHÀ MÁY DỆT TÂN TIẾN”
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 2
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
LỜI NÓI ĐẦU
Trong những năm gần đây, ngành Công nghệ thông tin đã và đang được
ứng dụng rộng rãi trong nghiên cứu khoa học cũng như trong thực tế sản xuất
tại các nhà máy, xí nghiệp tại Việt Nam. Qua thực t ế làm vi ệc t ại Nhà máy d ệt
Tân Tiến, tôi nhận thấy tại dây chuyền in hoa có thể áp dụng công nghệ thông
tin để tiết kiệm thời gian sản xuất thử sản phẩm cũng như giúp việc định
hướng cho việc chọn màu sắc cho sản phẩm vải in hoa.
Đề tài :
“ XỬ LÝ VÀ CHỌN MẪU MÀU CHO CÔNG ĐOẠN IN THỬ MỘT MẪU
IN HOA TẠI NHÀ MÁY DỆT TÂN TIẾN”
Trong phạm vi đề tài này, với những mục đích nêu trên, chúng ta nghiên
cứu cơ sở lý thuyết về Kỹ thuật đồ họa cũng như cơ sở lý thuyết về CSDL để
có thể áp dụng giải quyết vấn đề một cách hiệu quả. Bố cục của đề tài bao
gồm :
Phần I : Giới thiệu về Công nghệ sản xuất vải In hoa.
Phần II : Các phép biến đổi để các lớp phim trùng khớp lên nhau.
Phần III : Tìm hiểu một số dạng File ảnh và hệ màu.
Phần IV : Tìm hiểu về CSDL của bài toán
Phần V : Thiết kế, cài đặt chương trình thực hiện
Phần VI : Nhận xét
Vì thời gian và kiến thức còn hạn chế nên không thể tránh khỏi nh ững sai
sót, rất mong sự đóng góp ý kiến giúp đỡ của thầy cô giáo, các b ạn cùng l ớp và
các đồng nghiệp tại nhà máy dệt Tân Tiến để có thể hoàn thiện đề tài một cách
tốt hơn.
Nha Trang, ngày 20 tháng 07 năm 2003
Người thực hiện
Nguyễn Hồng Hải
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 3
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Ý kiến của Nhà máy dệt Tân Tiến :
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 4
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Ý kiến của giáo viên hướng dẫn :
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 5
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
PHẦN I : GIỚI THIỆU CÔNG NGHỆ SẢN XUẤT VẢI IN HOA
1. Công nghệ in hoa :
Nhà máy dệt Tân Tiến được thành lập vào tháng 10 năm 1996 v ới s ố v ốn
đầu tư gần 300 tỉ đồng, trong đó nhà máy chú trọng đến vi ệc nh ập kh ẩu thi ết b ị
máy móc tiên tiến của châu Âu cho dây chuy ền sản xuất v ải in hoa bao g ồm các
thiết bị làm phim, chế bản ,máy in lưới quay 10 màu và máy h ấp liên t ục c ủa
hãng STORK BRABANT – HÀ LAN.
Dây chuyền sản xuất vải in hoa bao gồm các công đoạn sau :
- Thiết kế mẫu.
- Tách màu. (Layer slide)
- Chế bản lưới phẳng (Lưới lụa)
- In thử
- Step Film (Chụp thành tấm Film lớn)
- Chế bản lưới quay (Chụp từ Film lớn ra lưới quay)
- Pha màu in.
- In trên máy.
- Hấp gắn màu.
- Giặt sau hấp gắn màu.
- Định hình hoàn tất.
1 2 3
Thiết kế Tách màu Chế bản
In thử
mẫu hoa Slide lưới phẳng
5
Không
Step Film 4
Chọn
6
Chế bản KHÁCH
lưới quay HÀNG
7
In trên
máy 11
8
9 10
Hấp gắn Giặt sau hấp Định hình
màu hoàn tất
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 6
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
2. Giới thiệu bài toán :
Từ một mẫu hoa cần sản xuất thử (Ví dụ mẫu hoa 6 màu nh ư d ưới đây),
nhân viên Phòng thiết kế mẫu tiến hành tách màu thành 6 màu trên 6 lớp phim
trong suốt (Layer Slide) được đánh số từ 1 đến 6, các bản tách màu này ở d ạng
trắng đen.
La y e r 1 La y e r 2 La y e r 3 La y e r 4 La y e r 5 La y e r 6
Sau khi
tách
màu
La y e r 1 La y e r 2 La y e r 3 La y e r 4 La y e r 5 La y e r 6
Sau khi hoàn tất công đoạn tách bản này phim được chuy ển cho nhân viên
phòng chế bản chụp các phim lên lưới phẳng sản xuất th ử (Khuôn l ưới l ụa)
cũng được đánh số từ 1 đến 6 tương ứng với từng lớp phim.
Các lớp Film Slide này là phim trắng đen (Nền Film trong su ốt và h ọa ti ết
màu đen), sau đó chụp (Cho chùm ánh sáng tập trung chiếu vào tấm Film slide
được áp sát với lưới phẳng đã được phủ một lớp hóa chất nhạy sáng) theo
nguyên tắc vùng họa tiết màu đen sẽ không cho ánh sáng đi qua (Lớp keo nhạy
sáng tại vùg đó vẫn giữ nguyên tính chất ban đầu), còn vùng trong suốt sẽ cho
ánh sáng đi qua và lớp keo vùng ánh sáng đi qua sẽ hóa c ứng bám ch ặt vào l ưới
phẳng. Sau đó rửa lưới phẳng qua nước vùng keo chưa hóa c ứng s ẽ trôi đi, nh ư
vập tấm khung lưới phẳng sẽ trở thành một âm bản của Film slide.
Khuôn lưới phẳng sau đó được chuyển cho Nhân viên phòng thí nghiệm
tiến hành chọn màu cho mẫu hoa (công việc này mất rất nhiều thời gian, đòi hỏi
sự nhạy cảm màu sắc của người thực hiện chọn màu in thử và tiêu tốn lượng
vải in thử không nhỏ). Một tổ hợp 6 màu trên tạo thành một Mẫu in gọi là
Colorway, mỗi mẫu hoa có thể làm thành nhiều Colorway cho khách hàng lựa
chọn. (Tất cả các công đoạn in thử phải đảm bảo quy trình công ngh ệ nh ư in
chính thức – bao gồm : in, hấp, giặt tẩy để đảm bảo sự đ ồng đ ều màu s ắc gi ữa
in thử và in chính thức sau này).
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 7
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Sau khi chọn màu và in thử xong mẫu hoa trên, mẫu hoa được gởi cho
khách hàng lựa chọn, nếu khách hàng đồng ý thì nhà máy cho ti ến hành s ản xu ất
hàng loạt, nếu không có thể phải tiến hành chọn lại màu.
Trên đây tôi xin giới thiệu sơ về bài toán và vấn đ ề c ần gi ải quy ết ở đây
là việc đưa các lớp phim (Layer slide) vào máy tính sao cho các bản layer trùng
khít lên nhau và tiến hành chọn màu trên từng l ớp đ ể ch ọn màu ưng ý nh ất. T ừ
các màu đã được chọn máy tính tìm trong cơ sở dữ liệu về màu sắc và đưa ra
các thành phần thuốc nhuộm cần thiết tạo nên màu đã ch ọn. (trong th ực t ế, nhà
máy đã tìm hiểu dây chuyền công nghệ được tin học hóa của Hãng Stock
Brabant - Hà Lan tuy nhiên do giá thành quá đắt nên ch ưa th ể nh ập đ ược dây
chuyền trên) vì vậy tôi chỉ mong muốn góp một phần nhỏ trong vi ệc h ợp lý hóa
quá trình sản xuất của nhà máy.
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 8
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
PHẦN II : CÁC PHÉP BIẾN ĐỔI ĐỂ CÁC LỚP FILM TRÙNG KHÍT NHAU
I. Các khái niệm tổng quan của kỹ thuật đồ hoạ máy tính (Computer Graphics):
1. Kỹ thuật đồ hoạ máy tính :
Kỹ thuật đồ hoạ máy tính có thể định nghĩa như một lĩnh vực của công
nghệ thông tin mà ở đó 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 (model) và hình ảnh (image) của đối tượng, sự vật hiện tượng khác nhau
trong cuộc 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, thiên văn học v..v) và bao trùm rất nhiều th ể lo ại và d ạng
phong phú .
2. Các kỹ thuật đồ hoạ :
Ngày nay số lượng các hệ thống sử dụng kỹ thuật đồ hoạ 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 ệ th ống mà ng ười ta
phân biệt ra hai hệ thống đồ hoạ : Kỹ thuật đồ hoạ điểm (Sampled – Based
Graphics) và Kỹ thuật đồ hoạ vectơ (Geometry – Based Graphics).
• Kỹ thuật đồ hoạ điểm :
Nguyên lý xây dựng các mô hình và hình ảnh trong k ỹ thu ật đ ồ ho ạ đi ểm
như sau : 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 chúng ta có th ể tạo ra, thay đ ổi
thuộc tính, xoá đ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ị ví dụ như màu sắc hoặc độ sáng. Tập h ợp t ất c ả các pixel c ủa
grid cho chúng ta mô hình, hình ảnh đối tượng mà chúng ta mu ốn hi ển th ị đ ể
nghiên cứu hoặc xây dựng nên.
Có hai phương pháp để tạo ra các pixel này :
- Phương pháp thứ nhất là 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 các đối tượng
hoặc hình ảnh thực của sự vật.
- Phương pháp thứ hai là rời rạc hoá (số hoá ) hình ảnh th ực c ủa đ ối
tượng sau đó ta có thể sửa đổi (image editing) hoặc x ử lý (image
processing) mảng các pixel thu được theo phương pháp khác nhau để
thu được hình ảnh đặc trưng của đối tượng.
• Kỹ thuật đồ hoạ vectơ :
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 9
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Nguyên lý xây dựng các mô hình và hình ảnh trong kỹ thu ật đ ồ hoạ vector
như sau : trước hết người ta 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 thuộc tính c ủa mô hình hình
học này, sau đó dựa trên mô hình hình h ọc này s ẽ th ực hi ện qua 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. Ở
kỹ thuật đồ hoạ này chúng ta 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ộ pixel của hình ảnh tô trát (rendering) được .
Các thành phần này được mô tả trong mô hình hình h ọc c ủa đối t ượng
được gọi là thực thể cơ sở hình học của mô hình hình h ọc. Sau đó hình ảnh s ẽ
được xây dựng từ các thành phần của mô hình hình h ọc, t ức là chúng ta s ẽ th ực
hiện quá trình tô trát theo điểm nhưng những pixel này không được lưu giữ lại
như một phần của mô hình. Như thế hình ảnh có thể được tô trát (rndering) từ
nhiều điểm nhìn và góc nhìn khác nhau dựa trên cùng một mô hình mẫu.
• So sánh kỹ thuật đồ hoạ điểm và kỹ thuật đồ hoạ vectơ :
Trong kỹ thuật đồ hoạ điểm, hình ảnh và mô hình của các vật th ể được
định nghĩa bởi các điểm của grid, khi đó chúng ta có th ể d ễ dàng thay đ ổi thu ộc
tính của các điểm để thay đổi từng phần hoạc từng vùng của hình ảnh.
Trong kỹ thuật đồ hoạ điểm chúng ta có thể dễ dàng copy đ ược các pixel
từ một hình ảnh này sang hình ảnh khác.
Trong kỹ thuật đồ hoạ vector chúng ta không thay đổi thu ộc tính của t ừng
điểm trực tiếp mà ta có thể xử lý với từng thành phần hình h ộc cơ sở c ủa nó,
sau đó lại thực hiện quá trình tô trát và hiển thị.
Trong kỹ thuật đồ hoạ vector chúng ta có th ể 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 một cách dễ dàng bằng
cách thay đổi điểm nhìn và góc nhìn.
II. Phép biến đổi để các lớp Film trùng khít :
1. Tạo lớp phim (Layer slide) :
Như giới thiệu trên, từ mẫu hoa được thiết kế cần phải tách thành các lớp
phim theo từng màu của mẫu thiết kế
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 10
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Ví dụ :
La y e r 1 La y e r 2 La y e r 3 La y e r 4 La y e r 5 La y e r 6
Film Slide
La y e r 1 La y e r 2 La y e r 3 La y e r 4 La y e r 5 La y e r 6
Để đưa được tấm Film Slide vào máy tính ta s ử dụng máy quét (Scan)
quét film vào máy dưới dạng file trắng đen (.Wmf, .BMP, JPEG,…) sau đó đưa
vào chương trình xử lý . Ở đây để tạo thành từng lớp Slide trong ch ương trình,
mỗi một Slide được quét vào ta viết thủ tục quét điểm ảnh, n ếu đi ểm ảnh màu
đen lưu tọa độ vào mảng 2 chiều . Cấu trúc mảng 2 chiều như sau :
Dim A() as Integer (mảng động)
Số phần tử Rap1 X Rap2 X X1 X2 ……… Xn-1 Xn
Lớp Rap1 Y Rap2 Y Y1 Y2 ……… Yn-1 Yn
Trong đó :
- Số phần tử : Là tổng số phần tử (n+3) cần lưu của mảng.
- Lớp : Lớp Slide.
- Rap1 X, Rap1 Y : Điểm Rappo thứ 1 trên tấm Slide (Người sử dụng
chương trình chọn)
- Rap2 X, Rap2 Y : Điểm Rappo thứ 2 trên tấm Slide (Người sử dụng
chương trình chọn)
- (X1,Y1), (X2,Y2) … (Xn,Yn) : Tọa độ điểm ảnh Slide.
Điểm Rappo1 và Rappo2 dùng để làm chuẩn điều chỉnh để các lớp trùng
khít họa tiết với nhau.
2. Các phép toán điều chỉnh trùng khít các lớp Slide :
Các đối tượng phẳng trong tọa độ 2 chiều được mô tả nh ư tập các đi ểm
phẳng. Các điểm được biểu diễn thông qua tọa độ của chúng viết dưới dạng
ma trận hay còn gọi là các vector vị trí. Có 2 phương pháp bi ểu di ễn các ma tr ận
mà phép biến đổi đồ hoạ trên đó là như nhau bao gồm phương pháp biểu diễn
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 11
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
tọa độ theo ma trận 1 hàng 2 cột và ma trận 2 hàng 1 c ột. Trong ph ần này chúng
ta sẽ biểu diễn toạ độ theo ma trận hàng để mô tả tọa độ các điểm.
x
y và [x y]
Tập các điểm được lưu trữ trong máy tính dưới dạng các ma trận hay chuỗi
điểm mà vị trí của chúng quyết định hình dạng của đường th ẳng, đường cong
hay ảnh sẽ dễ dàng kiểm soát thông qua các phép biến đổi. Phép biến đổi đ ồ
hoạ được mô tả dưới dạng các ma trận tương ứng cho phép thể hiện các s ự
biến đổi toạ độ của các điểm qua các phép toán nhân ma trận. Điều đó tạo
thuận lợi cho người sử dụng hình dung cũng như thao tác với các đối tượng hình
học một cách dễ dàng và đó cũng là một trong những tính năng m ạnh c ủa đồ
hoạ máy tính.
Phép biến đổi vị trí điểm :
Giả sử ta có điểm P(x,y) trong mặt phẳng với [ x y ] là vecto v ị trí đ ược
ký hiệu bằng [X] và ma trận 2x2 [T] là ma trận biến đổi với
a b
T =
c d
Điểm P’ qua phép biến đổi có giá trị { x’ y’ ] với phương trình sau :
a b
[ X ] * [T ] =[ x y] * =[( ax +cy ) (bx +dy )] =[ x' y ']
c d
Theo phương trình trên giá trị tương ứng của x’ = ax + cy và y’ = bx + dy,
khảo sát ma trận biến đổi [T] với các tham số ta có :
• Phép biến đổi bất biến :
Với phép biến đổi tịnh tiến thì a = d = 1 và b = c = 0 khi đó ma tr ận bi ến
đổi
có dạng : 1 0
T =
0 1
Khi đó điểm P’ qua phép biến đổi tịnh tiến có giá trị [ x’ y’ ] v ới ph ương
trình sau :
1 0
[ ] [ ] [
Sinh vieân : X * T + dx Haûi
Nguyeãn Hoàng dy ] = [x y] * + [ dx dy ] = [ x' Trang : 12
y ']
0 1
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Với phép biến đổi trên ta có :
x’ = x + dx
y’ = y + dy
Trong đó : - dx hệ số tịnh tiến theo x
- dy hệ số tịnh tiến theo y
• Phép biến đổi tỷ lệ :
Xét trường hợp d = 1 và b = c = 0 phương trình được viết lại :
Với kết quả thu được x’= ax và ý = y, điểm P’ dịch chuyển theo trục x với
[ X ] * [Y ] = [ X * Y ] *
a 0
= [ ax y ] = [ x' y ']
0 1
tỷ lệ a xác định.
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 13
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
P P’
P’
P
0 1 2 3 0 1 2 3 x,x’
Với trường hợp b = c = 0 và a, d là các giá trị b ất kỳ thì ph ương trình s ẽ
mở rộng và thu được
[ X ] * [Y ] = [ X * Y ] *
a 0
= [a x dy ] = [ x' y ']
0 d
Phép biến đổi tỉ lệ được thực hiện trên cả hai trục tọa độ x và y. N ếu x #
y thì tỷ lệ trên hai trục không bằng nhau. Nếu a = d > 1 thì phép bi ến đ ổi thu
được là phép phóng to và ngược lại với 0 < a = d < 1 thì phép bi ến đ ổi t ương
ứng là thu nhỏ.
Nếu một trong hai giá trị a hoặc d = 1 ta s ẽ có phép l ấy đ ối x ứng trên các
trục tương ứng, và khi cả hai a và d đếu bằng –1 thì phép bi ến đ ổi thu đ ược s ẽ
là phép lấy đối xứng qua gốc tọa độ.
• Phép biến dạng :
Khi a và d = 1 bất biến thì tọa độ của P’ ph ụ thu ộc vào s ự thay đ ổi c ủa b
và c, Giả sử với c = 0.
Ta có :
[ X ] * [Y ] = [ X * Y ] *
1 b
= [ bx dy ] = [ x' y ']
0 1
Điểm P’ thu được sẽ không thay đổi giá trị tọa độ x còn giá tr ị ý bi ến đ ổi
không chỉ theo b mà còn phụ thuộc vào cả x. Và đi ều đó ng ược l ại khi chúng ta
thay đổi với a = d = 1; b= 0; hiệu ứng biến dạng sẽ xảy ra theo trục y.
Điểm gốc tọa độ sẽ bất biến qua mọi phép biến đổi. Điều đó được
chứng minh qua phương trình sau với điểm P = [0 0] trùng với gốc tọa độ.
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 14
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
P’ x’ = cy + x
Cy
Y=bx+y P P’
P
bx
0 1 2 3 0 1 2 3
Phép biến dạng theo trục y Phép biến dạng theo trục x
[ X ] * [ Y ] = [ 0 * 0] *
a b
= [0 0] = [ x ' y ']
c d
• Phép biến đổi tổng hợp :
Phương pháp biến đổi sử dụng phép nhân ma trận với t ọa độ đi ểm thông
qua các vectơ vị trí thật sự hiệu quả và đem lại công cụ và đem lại công c ụ
mạnh về đồ họa cho người sử dụng. Tuy nhiên những thao tác thường cần
không chỉ một mà rất nhiều các phép biến đổi khác nhau. Phép hoán v ị khi nhân
ma trận không được cho phép thực hiện nhưng khả năng tổ hợp các phép nhân
lại cho phép tạo ra một ma trận biến đổi duy nh ất. Đi ều đó làm gi ảm b ớt đ ược
khối lượng đáng kể các phép tính toán trong quá trình bi ến đổi, làm tăng t ốc
đáng kể các chương trình ứng dụng và tạo điều kiện cho vi ệc qu ản lý các bi ến
đổi trong ứng dụng.
Giả sử ta có điểm P với tọa độ [X] = [x y] và 2 phép biến đổi là [T1],
[T2] với
Quay điểm P quanh gốc tọa độ một góc 900 và
[T1] =
0 1
− 1 0
0 − 1
[ T 2] =
− 1 0
Lấy đối xứng qua gốc tọa độ
Ta có :
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 15
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
0 1
[ X '] = [ X ] * [T1] = [ x y] * = [− y x]
− 1 0
Là tọa độ [X’] của P’ qua phép biến đổi [T1] và
0 − 1
[ X ' '] = [ X ] * [T 2] = [ − y x] * = [− x y]
−1 0
Là tọa độ của P’ qua [T2]
Giả sử ta có [T3] là ma trận biến đổi tổng h ợp c ủa hai ma tr ận [T1] và [T2],
giá trị sau khi biến đổi [x y] qua [T3] thu được có dạng :
− 1 0
[ X *] = [ X ] * [T 3] = [ x y] * = [− x y]
0 1
Điều đó đúng với mọi phép biến đổi [T1] và [T2] chúng ta có th ể nói vi ệc
biến đổi qua nhiều ma trận thành phần sẽ tương đương với phép biến đổi qua
ma trận tổng hợp từ các phép biến đổi đó.
Phép Quay :
Giả sử ta có điểm P với tọa độ ban đầu là (x, y) hay t ương ứng v ới ma tr ận
[ x y ] qua phương pháp biểu diễn vector ( hình dưới ) làm thành với trục X một
góc α. Cho P quay quanh gốc tọa độ O một góc β có bán kính tương ứng là r thu
được điểm P’. Qua hình vẽ giá trị P và P’ có dạng :
P = [ x y ] = [ r.cosα r.sinα] (1)
P’ = [ x’ y’ ] = [ r.cos(α+β) r.sin(α+β)] (2)
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 16
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Y
P’
Y’
P
Y
X
X
X’
Phương trình (2) qua phép biến đổi lượng giác được đưa về dạng :
P’ = [ x’ y’ ] = [ r(cosα. cosβ - sinα.sinβ) r(cosα. sinβ + sinα.cosβ)] (3)
Từ (1) và (3) ta có :
P’ = [ x’ y’ ] = [x. cosβ - y.sinβ x.sinβ + y.cosβ]
Hay tương đương với :
X’ = x. cosβ - y.sinβ
Y’ = x.sinβ + y.cosβ
Phép biến đổi thông qua cách viết ma trận có dạng sau :
[X’] = [X].[T] = [x’ y’]
= [x y].[x. cosβ - y.sinβ x.sinβ + y.cosβ]
Như vậy ma trận biến đổi tổng quát [T] khi quay một điểm quanh gốc tọa
độ dưới một góc α bật kỳ có dạng :
cos α sin α
[T ] =
−sin α cos α
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 17
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Giá trị dương thu được khi góc quay ngược chiều kim đồng hồ. Giả sử
khi quay P một góc -α thì ma trận [T] có thể tính được như sau :
cos(− )
α sin (− )
α cos α −sin α
[T ] =
=
sin (− ) cos(− )
− α α sin α cos α
Từ các phép biến đổi trên đưa vào bài toán đang xây dựng ta cần chọn trên
mỗi tấm Film Slide hai điểm chuẩn (Rappo1 và Rappo2), sau đó ta ch ọn t ấm
Film Slide đầu tiên (Gọi là lớp 0) hai điểm chuẩn đánh dấu “ +” sau đó tất cả
các tấm Film Slide sau cũng đều đánh dấu “+” trùng với tấm đầu tiên.
Như vậy sau khi quét vào máy nhiệm vụ của ta là phải dùng 2 phép bi ến
đổi trên để đưa các điểm Rappo của các tấm Film Slide sau (Từ lớp 1 trở đi)
trùng với 2 điểm Rappo của lớp 0 : bằng cách dịch điểm Rappo1 của các l ớp
1,2, … trùng với điểm rappo1 của lớp 0, sau đó xoay đi ểm Rappo2 quanh đi ểm
Rappo1 để trùng với điểm Rappo2 của lớp 0 nh ư vậy ta được các t ấm Film
Slide trùng khít lên nhau.
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 18
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
PHẦN III : TÌM HIỂU MỘT SỐ FILE ẢNH VÀ HỆ MÀU
I. Tìm hiểu một số File ảnh :
1. File ảnh PCX :
a. Cấu trúc của PCX Header :
Có chiều dài là 128 bytes.
Header được chia làm 3 vùng :
- Vùng 1 : các thông tin chính bao gồm password, version, kiểu nén, số
bits lưu trữ mỗi pixel, kích thước ảnh, độ phân giải ngang, dọc.
- Vùng 2 : Các thông tin về Palette.
- Vùng 3 : Các thông tin phụ trợ bao gồm : video mode, số planes màu,
số bytes mỗi dòng quét, kiểu Palette…
Nội dung Header được mô tả chi tiết sau :
Byte# Kích thước Data
0 1 Password
1 1 Version
2 1 Encode
3 1 Bits per pixel
4 8 Window
12 2 Hres
14 2 Vres
16 48 Palette
64 1 Video mode
65 1 Num of planes
66 2 Bytes per line
68 2 Palette info
70 58 Unuser
• Các thông tin chính :
- Password = A0h : dạng tập tin PCX.
- Version : có các giá trị :
0 : version 2.5
2 : version 2.8 ( có Palette)
3 : Version 2.8 ( không có Palette)
4 : PC Paintbrush for Windows
5 : version 3.0 hay lớn hơn.
- Encode = 1 (run – length) : mã dạng tập tin PCX thông thường.
- Bits per pixel : số bit dành cho một pixel trên một plane.
Đối với ảnh VGA 16 màu, 4 planes, một pixel ảnh cần 4 bit và m ột bit
trên một plane thì bits per pixel = 4.
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 19
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Đối với ảnh VGA 256 màu, 1 planes, một pixel cần 8 bit thì bits per pixel
= 8. Windows là một bộ bốn (x1, y1, x2, y2) xác định t ọa đ ộ góc trái bên trên và
góc phải bên dưới của cửa sổ hình chữ nhật trên màn hình mà ảnh hiện lên,
Window xác định kích thước của ảnh. Đối với tập tin PCX, (x1, y1) là góc trái
bên trên màn hình (x1 = y1 = 0) và (x2 = xmax, y2 = ymax) là góc ph ải bên d ưới
tùy theo mode màn hình.
- Hres, Vres : độ phân giải ngang, dọc của màn hình.
Các thông tin phụ trợ :
- Video mode : vùng này thường được bỏ qua và có giá trị 0.
- Num of planes : là số planes cần thiết để lưu trữ 1 pixel. Th ường số
planes bằng số bit cần thiết để lưu trữ 1 pixel.
Để biết giá trị của một pixel thì phải đọc đồng thời trên tất cả các planes, do
đó tốc độ bung ảnh sẽ chậm. Giá trị của num of planes liên quan đ ến giá tr ị
lưu tại bits per pixel.
- Bytes per line : là số byte cần thiết cho một dòng quét trên màn hình
cho 1 plane.
Với PCX, BytesPerLine = (Hres * BitsPerPixel) / 8.
Với độ phân giải 640 * 480 : BitsPerPixel = 1, BytesPerLine = 80.
- Palette info : cho biết ảnh thuộc loại màu (color / mono)
- Unused : là vùng không dùng đến.
b. Vùng dữ liệu :
Dữ liệu ảnh được sắp xếp thứ tự từ trái qua phải và từ trên xuống d ưới.
Mỗi dòng quét ảnh được mã hóa riêng theo giải thuật run-length. Dữ liệu ảnh
mono được hưu như bitmaps.
c. Bảng màu :
Bảng màu có kích thước 769 bytes. Bảng màu là nơi l ưu trữ các ph ần c ơ b ản
tạo nên màu của các pixel được lưu trữ trong vùng sự liện. Tỷ lệ các thành phần
cơ bản (red, green, blue) khác nhau sex tạo nên màu khác nhau. Do đó, t ỷ l ệ này
cần lưu trữ trong header đồng thời với việc lưu trữ để hình ảnh được trung thực
khi hiện lên màn hình máy tính.
Thường với mode EGA / VGA có 16 thanh ghi Palette nên vùng l ưu tr ữ thông
tin về bảng màu ở header gồm 16 * 3 = 48 bytes.
Mỗi thanh ghi Palette tương ứng với một bộ phận 3 thành phần màu c ơ bản
tương ứng với màu chỉ ra bởi Palette ở hình dưới :
…
Red
Green
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 20
Baùo caùo toát nghieäp Giaùo vieân höôùng daãn : Nguyeãn
Ñình Thuaân
Blue
…
Bảng màu
Do đó, trước khi hiển thị, thông tin về bảng màu cần được nạp trở l ại các
thanh ghi Palette trong adaptor màn hình.
2. File ảnh TIFF :
File ảnh Tiff được thiết kế làm giảm nhẹ bớt các vấn đề liên quan đ ến vi ệc
mở rộng file ảnh cố định, về cấu trúc nó cũng gồm ba phần chính :
• Phần Header (IFH) : có trong tất cả các file Tiff :
- 1 word : chỉ ra kiểu sử dụng để tạo file do máy PC hay Macintosh, hai
loại này rất khác nhau ở thứ tự các bytes lưu trữ trong các số dài 2 hay
4 bytes.
- 2 word : version. Từ luôn có giá trị là 42. Có thể coi là đặc trưng c ủa
file Tiff vì nó không thay đổi.
- 3 word : giá trị Offset tính theo byte tính từ đầu file t ới c ấu trúc IFD
(Image File Directory) là cấu trúc thứ hai của file. Thứ tự các bytes ở
đây phụ thuộc vào dấu hiệu trường đầu tiên.
• Phần thứ 2 (IFD) : nó không ở ngay sau IFH mà v ị trí nó đ ược xác đ ịnh
bởi trường Offset trong đầu file. Có thể có một hay nhiều IFH cùng tồn
tại trong file (nếu file có nhiều hơn một ảnh). Phần này bao gồm :
- 2 bytes : chứa các DE (Directory Entry)
- 12 bytes : là các DE xếp liên tiếp. Mỗi DE chiếm 12 bytes.
- 4 bytes : Offset trỏ tới IFD tiếp theo. Nếu đây là IFD cuối cùng thì
trường này bằng 0.
Sinh vieân : Nguyeãn Hoàng Haûi Trang : 21