TS. NGUYỄN THANH HẢI
GIÁO TRÌNH
XỬ LÝ ẢNH
(Giáo trình dành cho sinh viên ngành Điện - Điện tử)
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
--------------------
TS. NGUYỄN THANH HẢI
GIÁO TRÌNH
XỬ LÝ ẢNH
(Ngành Điện - Điện Tử)
NHÀ XUẤT BẢN ĐẠI HỌC QUỐC GIA
THÀNH PHỐ HỒ CHÍ MINH – 2014
GIÁO TRÌNH
XỬ LÝ ẢNH
Nhà xuất bản ĐHQG-HCM và tác giả/đối tác liên kết giữ bản quyền
Copyright
©
©
by VNU-HCM Publishing House and author/co-partnership
All rights reserved
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM
Xuất bản năm 2014
LỜI NÓI ĐẦU
Sự ra đời của xử lý ảnh và những ứng dụng của nó là rất cần thiết
cho cuộc sống. Xử lý ảnh đã có từ rất lâu và đã được vận dụng trong
những lĩnh vực như dân sự, quân sự, y tế và nhiều lĩnh vực khác. Tuy
nhiên, mới chỉ khoảng một thập niên trở lại đây, kiến thức xử lý ảnh mới
được đưa vào để giảng dạy tại một vài trường đại học tại Việt Nam nhưng
cũng chỉ hạn chế ở cấp bậc cao học, còn bậc đại học thì cũng chỉ mới có ở
một vài trường lớn tại Thành phố Hồ Chí Minh và Hà Nội. Tuy nhiên, với
việc phát triển rất nhanh của xã hội, nhu cầu áp dụng công nghệ xử lý ảnh
vào cuộc sống ngày càng lớn, do vậy, những năm gần đây, bậc đại học tại
các trường cũng đưa chương trình xử lý ảnh vào để dạy cho sinh viên.
Hiện nay, có nhiều đề tài liên quan đến xử lý ảnh được các sinh viên đại
học, học viên cao học và các nghiên cứu sinh nghiên cứu và thực hiện.
Nhằm phục vụ cho việc giảng dạy những kiến thức cơ bản cũng
như một số gợi ý về ứng dụng xử lý ảnh, giáo trình Xử lý ảnh được biên
soạn chủ yếu là xử lý ảnh số với những ví dụ được viết bằng Matlab ra
đời. Giáo trình này nhằm mục đích giúp sinh viên đại học và học viên
cao học có những kiến thức cơ bản về xử lý ảnh cũng như áp dụng kết
quả sau khi xử lý ảnh cho những ứng dụng cụ thể nhằm phát triển những
ứng dụng thực tế.
Giáo trình này gồm những phần như sau:
Chương 1: giới thiệu về xử lý ảnh cũng như môi trường Matlab để
xử lý cho ra những kết quả mong muốn.
Chương 2: trình bày những kiến thức cơ bản về ảnh và những toán
tử liên quan cho xử lý ảnh số.
Chương 3: giới thiệu về những phép biến đổi ảnh như biến đổi
Fourier và biến đổi Wavelet.
Chương 4: trình bày kỹ thuật lọc ảnh trong miền tần số và không
gian.
Chương 5: giới thiệu phép tăng cường ảnh vận dụng phép xử lý
điểm và xử lý mặt nạ.
Chương 6: trình bày kỹ thuật phân đoạn ảnh và dò biên.
Chương 7: trình bày một vài thuật toán liên quan đến trích đặc
trưng và nhận dạng.
3
Mặc dù tác giả đã cố gắng viết và chỉnh sửa nhưng chắc không thể
tránh những thiếu sót, rất mong nhận được những đóng góp quý báu từ
người đọc và các chuyên gia trong lĩnh vực xử lý ảnh.
Địa chỉ liên lạc:
Khoa Điện - Điện tử, Đại học Sư phạm Kỹ thuật TP.HCM
Email:
[email protected]
4
MỤC LỤC
MỤC LỤC ................................................................................................. 5
LIỆT KÊ THUẬT NGỮ VIẾT TẮT ......................................................... 8
CHƯƠNG 1: GIỚI THIỆU ..................................................................... 9
1.1. HỆ THỐNG XỬ LÝ ẢNH ................................................................ 9
1.2. XỬ LÝ ẢNH SỐ DÙNG MATLAB ................................................ 13
1.2.1. Môi trường làm việc trong MATLAB ...................................... 13
1.2.2. MATLAB Editor ....................................................................... 14
1.2.3. Trợ giúp trong MATLAB ......................................................... 14
1.2.4. Thực hành xử lý ảnh cơ bản với MATLAB.............................. 15
BÀI TẬP CHƯƠNG 1............................................................................. 23
CHƯƠNG 2: KHÁI NIỆM CƠ BẢN ................................................... 24
2.1. ĐIỂM ẢNH VÀ ẢNH SỐ ................................................................ 24
2.1.1. Điểm ảnh ................................................................................... 24
2.1.2. Phân loại ảnh ............................................................................. 25
2.1.3. Độ phân giải .............................................................................. 28
2.1.4. Điểm ảnh lân cận ...................................................................... 28
2.1.5. Sự liền kề, kết nối, vùng và đường bao ..................................... 29
2.1.6. Đo lường khoảng cách .............................................................. 31
2.2. TOÁN TỬ ẢNH ............................................................................... 32
2.2.1. Biến đổi âm bản ........................................................................ 34
2.2.2. Biến đổi hàm log ....................................................................... 34
2.2.3. Biến đổi dạng lũy thừa .............................................................. 36
BÀI TẬP CHƯƠNG 2............................................................................. 39
CHƯƠNG 3: PHÉP BIẾN ĐỔI ẢNH ...........................................
...
--------------------------------------
... trọng số được
tổng hợp lại và kết nối đến ngõ ra, ngõ ra này lại có thể là ngõ vào của
các nơ-ron khác.
Hình 7.8. Cấu trúc cơ bản của tế bào thần kinh
Perceptron này được mô hình hóa theo dạng
Hình 7.9. Mô hình perceptron một nơ-ron
Trong đó xi, i =1, 2, 3 là các ngõ vào, wi là các trọng số với ngõ
vào tương ứng, hàm hoạt hóa và ngõ ra o = f(a), trong đó a = x1.w1 +
x2.w2 + x3.w3.
Các hàm hoạt hóa thường gặp được tóm tắt trong hình 7.10, 7.11, 7.12:
167
Hình 7.10. Hàm bước
Hình 7.11. Hàm
sigmoid
Hình 7.12. Hàm
double sigmoid
Trong hình 7.10, hàm hoạt hóa là hàm bước
1,
o
0,
a0
a0
(7.36)
Hàm sigmoid và double sigmoid được miêu tả trong hình 7.12 và
7.13 tương ứng với công thức (7.37) và (7.38)
1
1 e a
(7.37)
o = H(a) = 2S(a) -1
(7.38)
o S (a)
Mạng lan truyền ngược được xây dựng dựa trên cấu trúc Perceptron,
trong đó có ít nhất hai lớp, và các hàm hoạt hóa phải là hàm có thể lấy đạo
hàm (ví dụ ở đây là hàm sigmoid, double sigmoid). Hình 7.13 là mô hình
mạng lan truyền ngược ba lớp (một lớp vào, một lớp ẩn, một lớp ra).
Hình 7.13. Mạng lan truyền ngược với ba lớp
Dựa trên giải thuật giảm gradient, mạng lan truyền ngược tìm các
trọng số sao cho trung bình bình phương sai số giữa ngõ ra hiện tại và
ngõ ra mong muốn đạt kết quả tốt nhất.
168
E o p d p
P
2
(7.39)
p 1
Trong đó: P là số lượng mẫu, op là ngõ ra của mạng, dp là ngõ ra
mong muốn.
Giả sử có I nút ở lớp ngõ vào, J nút ở lớp ẩn, K nút ở lớp ngõ ra.
Trọng số w(j1,i,0) là trọng số từ nút thứ i của lớp ngõ vào đến nút thứ j của
lớp ngõ ẩn, và wk( 2, ,j1) là trọng số từ nút thứ j của lớp ẩn đến nút thứ k lớp
ngõ ra.
Giải thuật huấn luyện cho mạng ba lớp được tóm tắt trong bảng 7.1
như sau
Bảng 7.1. Giải thuật cập nhật trọng số cho mạng lan truyền ngược ba
lớp
Chọn ngẫu nhiên giá trị các trọng số
Trong khi điều kiện MSE thỏa mãn hoặc chưa vượt số vòng lặp đặt
trước,
Với mỗi ngõ vào xp, 1≤ p ≤ P, (*)
Tính các ngõ vào nút lớp ẩn net (p1,)j ;
Tính các ngõ ra nút lớp ẩn x (p1,)j ;
Tính các ngõ vào của nút lớp ngõ ra net (p2,k) ;
Tính các ngõ ra của mạng op,k;
Điều chỉnh trọng số lớp ngõ ra
wk( 2, ,j1) (d p, k o p, k )S (net (p2, k) ) x(p1,)j
Điều chỉnh các trọng số giữa nút ẩn và nút ngõ vào
w
(1, 0 )
j ,i
K
(d p , k o p , k )S (net (p2, k) )wk( 2, ,j1) S (net (p1,)j ) x p ,i
k 1
Kết thúc (*)
Kết thúc
Trong đó:S() là hàm hoạt hóa, là hệ số học hay tốc độ học.
169
Trong MATLAB, ta có thể sử dụng hàm newff để khai báo một
mạng truyền thẳng
net = newff(P, T, S);
trong đó P: ma trận các phần tử ngõ vào, T: ma trận các phần tử
ngõ ra, S: kích thước các lớp ẩn.
Tiếp theo, mạng được huấn luyện dùng hàm train
[neto] = train(net,P,T);
Sau khi đã có mạng neto, dùng hàm sim để phân loại
res = sim(neto,dtest);
trong đó dtest là ngõ vào cần phân loại, res là kết quả phân loại.
BÀI TẬP CHƯƠNG 7
7.1. Thu nhận ảnh của 3 người. Thực hiện phân tích thành phần chính
PCA để tìm vector đặc trưng.
7.2. Sử dụng mạng nơ-ron 3 lớp (lớp ngõ vào, lớp ẩn, lớp ngõ ra) thực
hiện huấn luyện và nhận dạng từ kết quả bài 7.1.
7.3. Trình bày hướng phát triển để thực hiện phân loại SVM trong
trường hợp nhiều hơn hai đặc trưng cần phân loại.
170
TÀI LIỆU THAM KHẢO
1.
Nguyễn Quang Hoan, Xử lý ảnh, lưu hành nội bộ, Học viện Công
nghệ Bưu chính Viễn thông, 2006.
2.
Đỗ Năng Tòan, Phạm Việt Bình, Xử lý ảnh, Giáo trình môn học, Đại
học Thái Nguyên, Khoa Công nghệ thông tin, 2007.
3.
Maria Petrou, Panagiota Bosdogianni, Image Processing: The
Fundamentals, John Wiley & Sons Ltd, 1999.
4.
William K. Pratt, Digital Image Processing, John Wiley & Sons,
Inc., 2001.
5.
Rafael C. Gonzalez, Richard E. Woods, Digital Image Processing,
The Third Edition,Prentice Hall, 2008.
6.
Rafael C. Gonzalez, Richard E. Woods, Digital Image Processing
Using Matlab, Prentice Hall, 2004.
7.
Kayvan N., Robert S., Biomedical Signal and Image Processing,
Taylor and Francis Group, 2006.
171
GIÁO TRÌNH
XỬ LÝ ẢNH
TS. NGUYỄN THANH HẢI
NHÀ XUẤT BẢN
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
Khu Phố 6, Phường Linh Trung, Quận Thủ Đức, TPHCM
Số 3, Công trường Quốc tế, Quận 3, TP Hồ Chí Minh
ĐT: 38239171 – 38225227 - 38239172
Fax: 38239172 - Email:
[email protected]
*****
PHÒNG PHÁT HÀNH NHÀ XUẤT BẢN
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
Số 3 Công trường Quốc tế - Quận 3 – TPHCM
ĐT: 38239170 – 0982920509 – 0913943466
Fax: 38239172 – Website: www.nxbdhqghcm.edu.vn
*****
Chịu trách nhiệm xuất bản:
NGUYỄN HOÀNG DŨNG
Chịu trách nhiệm nội dung:
NGUYỄN HOÀNG DŨNG
Tổ chức bản thảo và chịu trách nhiệm về tác quyền
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM
Biên tập:
PHẠM ANH TÚ
Sửa bản in:
THÙY DƯƠNG
Trình bày bìa
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TPHCM
Mã số ISBN: 978-604-73-2582-5
Số lượng 300 cuốn; khổ 16 x 24cm.
Số đăng ký kế hoạch xuất bản: 1007-2014/CXB/05-13/ĐHQGTPHCM.
Quyết định xuất bản số: 107 ngày 28/05/2014 của NXB ĐHQGTPHCM.
In tại Công ty TNHH In và Bao bì Hưng Phú.
Nộp lưu chiểu quý III năm 2014.
ISBN: 978-604-73-2582-5
9 786047 325825