Tải bản đầy đủ (.docx) (45 trang)

Đồ án Lọc nhiễu ảnh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (863.73 KB, 45 trang )

BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ VIỄN THÔNG
====o0o====
BÁO CÁO
ĐỒ ÁN 1
ĐỀ TÀI:
LỌC NHIỄU ẢNH
Giảng viên hướng dẫn: Ths. Dương Tấn Nghĩa
Nhóm sinh viên thực hiện:
ST
T
Họ và Tên MSSV
1 Nguyễn Xuân Trường 20112360
2 Trần Minh tú 20112168
3 Nguyễn Tiến Việt 20112507
4 Trần Thị Minh Tuyến 20112466
2 Mai Văn Trường 20112358
Hà Nội, 5/2014
1
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
LỜI MỞ ĐẦU
Những năm gần đây, sự phát triển của khoa học kỹ thuật đã làm thay đổi cuộc sống
của con người. Máy tính cùng các thiết bị điện tử đã tác động đến thế giới hiện đại, khiến
các công việc của nhân loại được giải quyết nhanh gọn, hiệu quả cao hơn. Song song với
sự phát triển của khoa học kỹ thuật đó là sự phát triển của phần cứng, cũng như phần
mềm máy tính. Máy tính đã đưa con người lên một tầm cao mới và cùng với đó, xử lý
ảnh không còn là một đề tài xa lạ với con người. Khái niệm ảnh số đã trở lên thông dụng
với hầu hết mỗi người trong xã hội và việc thu nhận ảnh số bằng các thiết bị cá nhân hay
chuyên dụng với việc đưa vào máy tính xử lý đã trở lên đơn giản.
Hiện nay, xử lý ảnh là một lĩnh vực đang được quan tâm và đã trở thành môn học


chuyên ngành của sinh viên ngành công nghệ trong nhiều trường đại học trên cả nước.
Với mong muốn tìm hiểu thêm những kiến thức về lĩnh vực này, nhóm chúng em đã lấy
đề tài xử lý ảnh để thực hiện học phần đồ án 1, đặc biệt là các thuật toán xử lý ảnh trong
không gian, các bộ lọc phi tuyến. Lọc phi tuyến là khâu quan trọng trong giai đoạn tiền
xử lý ảnh, đa dạng về phương thức lọc tùy theo việc lựa chọn bộ lọc. Có thể kể tên một
số bộ lọc phi tuyến từ đơn giản đến phức tạp như bộ lọc trung vị, bộ lọc trung vị trọng số,
bộ lọc ngăn xếp, bộ lọc SDROM…
Đối với sinh viên ngành Điện tử Viễn thông chúng em, xử lý ảnh dành được sự quan
tâm đặc biệt. Nó là nền tảng cung cấp chúng em kiến thức cơ bản về chuyên ngành. Vì
vậy, việc thực hiện học phần đồ án 1: “lọc nhiễu ảnh” là một cơ hội rất tốt cho chúng em
tìm hiểu và vận dụng những kiến thức vào trong thực tế, được rèn luyện bản than, tích lũy
kiến thức.

2
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
MỤC LỤC
Contents
3
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
DANH SÁCH HÌNH VẼ
DANH SÁCH BẢNG BIỂU
Bảng 4.1: Tỉ số PSNR với nhiễu muối tiêu 5% 36
Bảng 4.2: Tỉ số PSNR với nhiễu muối tiêu 20% 36
4
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
CHƯƠNG I. MỞ ĐẦU
1.1. Đặt vấn đề
Hình ảnh đóng vai trò quan trọng trong việc trao đổi thông tin. Tính trực quan của
hình ảnh giúp hiểu rõ và sâu sắc hơn về thông tin. Nhưng vì một lý do nào đó, hình ảnh bị
ảnh hưởng bởi một số yếu tố gián tiếp hay trực tiếp, khi đó chúng ta phải cần đến xử lý

ảnh. Khi hình ảnh bị nhiễu, xử lý ảnh phi tuyến là phép toán hữu hiệu nhất để giải quyết
bài toán này.
1.2. Mục đích đề tài
Với khả năng hạn chế và thời gian có hạn, chúng em không quá tham vọng để bao
quát toàn bộ nội dung xử lý ảnh phi tuyến, mà chỉ đề cập đến một số nội dung cơ bản
nhưng phù hợp với yêu cầu của đề tài:
• Tìm hiểu về các phương pháp xử lý ảnh phi tuyến như lọc nhiễu ảnh bằng các bộ
lọc ngăn xếp, trung vị và trung vị trọng số.
• Đánh giá chất lượng ảnh sau lọc qua các tham số PSNR & MAE như đó đưa ra
được kết luận về sự tối ưu của các bộ lọc này.
1.3. Phạm vi đề tài
• Là một phạm vi hẹp trong xử lý ảnh, tìm hiểu và mô phỏng các phương pháp lọc
ảnh phi tuyến bằng các bộ lọc cơ bản như bộ lọc ngăn xếp, trung vị và trung vị
trọng số
• Các phương pháp lọc ảnh đơn thuần chỉ lọc ảnh nhiễu Salt & Pepper với mật độ
nhiễu thấp.
1.4. Phương pháp thực hiện
Từ ý tưởng và mục đích đề tài, chúng em dự định xây dựng một phần mềm thu nhỏ
với đầy đủ chức năng lọc ảnh phi tuyến. Người sử dụng có thể dễ dàng nhập một ảnh sau
đó tùy chọn nhiễu cho ảnh, từ đó có thể lựa chọn các bộ lọc phi tuyến phù hợp để lọc ảnh.
Trên cơ sở đó, phương pháp thực hiện bao gồm:
5
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
• Tìm hiểu về Matlab và các hàm cơ bản liên quan đến xử lý ảnh trong Matlab
• Tìm hiểu lý thuyết các bộ lọc phi tuyến trong Chương I, II, III sách Nonlinear
Image Processing
• Viết sơ đồ giải thuật từ đó mô phỏng trên Matlab các bộ lọc đã tìm hiểu
• Lập trình GUI để tạo giao diện cho chương trình.
6
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH

CHƯƠNG II: CƠ SỞ LÝ THUYẾT VÀ
CÔNG CỤ THỰC HIỆN
2.1. Tổng quan về xử lý ảnh số
2.1.1. Xử lý ảnh số là gì?
Xử lý ảnh là một phần của xử lý tín hiệu số. Xử lý ảnh tăng cường thông tin hình
ảnh đối với quá trình tri giác của con người và biểu diễn trên máy tính.
Xử lý ảnh là một lĩnh vực mang tính khoa học và công nghệ. Nó là một ngành khoa
học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất nhanh,
kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt là máy tính chuyên dụng riêng
cho nó.
Quá trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho ra
kết quả mong muốn. Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh “tốt
hơn” hoặc một kết luận.
Hnh 2.1. Sơ đồ định nghĩa xử lí ảnh
2.1.2. Nguồn gốc của xử lý ảnh số
Ứng dụng đầu tiên được biết đến là nâng cao chất lượng ảnh báo được truyền qua
cáp từ Luân đôn đến New York từ những năm 1920. Vấn đề nâng cao chất lượng ảnh có
liên quan tới phân bố mức sáng và độ phân giải của ảnh. Việc nâng cao chất lượng ảnh
được phát triển vào khoảng những năm 1955. Điều này có thể giải thích được vì sau thế
7
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
chiến thứ hai, máy tính phát triển nhanh tạo điều kiện cho quá trình xử lý ảnh sô thuận
lợi. Năm 1964, máy tính đã có khả năng xử lý và nâng cao chất lượng ảnh từ mặt trăng
và vệ tinh Ranger 7 của Mỹ bao gồm: làm nổi đường biên, lưu ảnh.
Từ năm 1964 đến nay, các phương tiện xử lý, nâng cao chất lượng, nhận dạng ảnh
phát triển không ngừng. Các phương pháp tri thức nhân tạo như mạng nơ ron nhân tạo,
các thuật toán xử lý hiện đại và cải tiến, các công cụ nén ảnh ngày càng được áp dụng
rộng rãi và thu nhiều kết quả khả quan.
2.1.3. Các ứng dụng của xử lí ảnh số
a. Biến đổi ảnh

Trong xử lý ảnh do số điểm ảnh lớn các tính toán nhiều (độ phức tạp tính toán cao)
đòi hỏi dung lượng bộ nhớ lớn, thời gian tính toán lâu. Các phương pháp khoa học kinh
điển áp dụng cho xử lý ảnh hầu hết khó khả thi. Người ta sử dụng các phép toán tương
đương hoặc biến đổi sang miền xử lý khác để dễ tính toán. Sau khi xử lý dễ dàng hơn
được thực hiện, dùng biến đổi ngược để đưa về miền xác định ban đầu, các biến đổi
thường gặp trong xử lý ảnh gồm:
- Biến đổi Fourier, Cos, Sin
- Biến đổi (mô tả) ảnh bằng tích chập, tích Kronecker
- Các biến đổi khác như KL (Karhumen Loeve), Hadamard
Một số các công cụ sác xuất thông kê cũng được sử dụng trong xử lý ảnh.
b. Nén ảnh
Ảnh dù ở dạng nào vẫn chếm không gian nhớ rất lớn. Khi mô tả ảnh người ta đưa kỹ
thuật nén ảnh vào. Các giai đoạn nén ảnh có thể chia ra chế độ 1, chế độ 2. Hiện nay, các
chuẩn MPEG được dùng với ảnh đang phát huy hiệu quả.
8
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
2.1.4. Các bước trong xử lí ảnh số
Ảnh có thể xem là tập hợp các điểm ảnh và mỗi điểm ảnh được xem như là đặc
trưng cường độ sáng hay một dấu hiệu nào đó tại một vị trí nào đó của đối tượng trong
không gian và nó có thể xem như một hàm n biến P(c
1
, c
2
, , c
n
). Do đó, ảnh trong xử lý
ảnh có thể xem như ảnh n chiều.
Để dễ tưởng tượng, xét các bước cần thiết trong xử lý ảnh. Đầu tiên, ảnh tự nhiên từ
thế giới ngoài được thu nhận qua các thiết bị thu (như Camera, máy chụp ảnh). Trước
đây, ảnh thu qua Camera là các ảnh tương tự (loại Camera ống kiểu CCIR). Gần đây, với

sự phát triển của công nghệ, ảnh màu hoặc đen trắng được lấy ra từ Camera, sau đó nó
được chuyển trực tiếp thành ảnh số tạo thuận lợi cho xử lý tiếp theo. (Máy ảnh số hiện
nay là một thí dụ gần gũi). Mặt khác, ảnh cũng có thể tiếp nhận từ vệ tinh; có thể quét từ
ảnh chụp bằng máy quét ảnh. Hình 2.2 dưới đây mô tả các bước cơ bản trong xử lý ảnh.
Hnh 1.2. Các bước trong xử lý ảnh
a. Phần thu nhận ảnh (Image Acquisition)
Ảnh có thể nhận qua camera màu hoặc đen trắng. Thường ảnh nhận qua camera là
ảnh tương tự (loại camera ống chuẩn CCIR với tần số 1/25, mỗi ảnh 25 dòng), cũng có
loại camera đã số hoá (như loại CCD – Change Coupled Device) là loại photodiot tạo
cường độ sáng tại mỗi điểm ảnh.
Camera thường dùng là loại quét dòng ; ảnh tạo ra có dạng hai chiều. Chất lượng
một ảnh thu nhận được phụ thuộc vào thiết bị thu, vào môi trường (ánh sáng, phong
cảnh)
9
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
b. Tiền xử lý (Image Preprocessing)
Sau bộ thu nhận, ảnh có thể nhiễu độ tương phản thấp nên cần đưa vào bộ tiền xử
lý để nâng cao chất lượng. Chức năng chính của bộ tiền xử lý là lọc nhiễu, nâng độ tương
phản để làm ảnh rõ hơn, nét hơn.
Đây cũng là giai đoạn quan trọng liên quan đến nội dung đồ án này, đó là các
phương pháp xử lý ảnh phi tuyến để nâng cao chất lượng ảnh khi nhiễu.
c. Phân đoạn (Segmentation) hay phân vùng ảnh
Phân vùng ảnh là tách một ảnh đầu vào thành các vùng thành phần để biểu diễn
phân tích, nhận dạng ảnh. Ví dụ: để nhận dạng chữ (hoặc mã vạch) trên phong bì thư cho
mục đích phân loại bưu phẩm, cần chia các câu, chữ về địa chỉ hoặc tên người thành các
từ, các chữ, các số (hoặc các vạch) riêng biệt để nhận dạng. Đây là phần phức tạp khó
khăn nhất trong xử lý ảnh và cũng dễ gây lỗi, làm mất độ chính xác của ảnh. Kết quả
nhận dạng ảnh phụ thuộc rất nhiều vào công đoạn này.
d. Biểu diễn ảnh (Image Representation)
Đầu ra ảnh sau phân đoạn chứa các điểm ảnh của vùng ảnh (ảnh đã phân đoạn)

cộng với mã liên kết với các vùng lận cận. Việc biến đổi các số liệu này thành dạng thích
hợp là cần thiết cho xử lý tiếp theo bằng máy tính. Việc chọn các tính chất để thể hiện
ảnh gọi là trích chọn đặc trưng (Feature election) gắn với việc tách các đặc tính của ảnh
dưới dạng các thông tin định lượng hoặc làm cơ sở để phân biệt lớp đối tượng này với đối
tượng khác trong phạm vi ảnh nhận được. Ví dụ: trong nhận dạng ký tự trên phong bì
thư, chúng ta miêu tả các đặc trưng của từng ký tự giúp phân biệt ký tự này với ký tự
khác.
e. Nhận dạng và nội suy ảnh (Image Recognition and Interpretation)
Nhận dạng ảnh là quá trình xác định ảnh. Quá trình này thường thu được bằng
cách so sánh với mẫu chuẩn đã được học (hoặc lưu) từ trước. Nội suy là phán đoán theo ý
nghĩa trên cơ sở nhận dạng. Ví dụ: một loạt chữ số và nét gạch ngang trên phong bì thư
10
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
có thể được nội suy thành mã điện thoại. Có nhiều cách phân loai ảnh khác nhau về ảnh.
Theo lý thuyết về nhận dạng, các mô hình toán học về ảnh được phân theo hai loại nhận
dạng ảnh cơ bản:
- Nhận dạng theo tham số.
- Nhận dạng theo cấu trúc.
Một số đối tượng nhận dạng khá phổ biến hiện nay đang được áp dụng trong khoa
học và công nghệ là: nhận dạng ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận dạng
văn bản (Text), nhận dạng vân tay, nhận dạng mã vạch, nhận dạng mặt người…
f. Cơ sở tri thức (Knowledge Base)
Như đã nói ở trên, ảnh là một đối tượng khá phức tạp về đường nét, độ sáng tối,
dung lượng điểm ảnh, môi trường để thu ảnh phong phú kéo theo nhi u. Trong nhiều
khâu xử lý và phân tích ảnh ngoài việc đơn giản hóa các phương pháp toán học đảm bảo
tiện lợi cho xử lý, người ta mong muốn bắt chước quy trình tiếp nhận và xử lý ảnh theo
cách của con người. Trong các bước xử lý đó, nhiều khâu hiện nay đã xử lý theo các
phương pháp trí tuệ con người. Vì vậy, ở đây các cơ sở tri thức được phát huy.
2.1.5.Các phương pháp xử lí ảnh số
a. Xử lí ảnh số trong miền không gian

- Xử lí ảnh tuyến tính: Bộ lọc trung bình, lọc thông thấp,…
- Xử lí ảnh phi tuyến: Median Filter, Stack Filter, Weight Median Filter, …
b. Xử lí ảnh số trong miền tần số
- Các bộ lọc làm mượt ảnh trong miền tần số - Lọc thông thấp
+ Lọc thông thấp lý tưởng
+ Lọc thông thấp butterworth
-Các bộ lọc làm sắc nét ảnh trong miền tần số - Lọc thông cao
11
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
+ Lọc thông cao lý tưởng
+ Lọc thông thấp butterworth
2.2. Phần mềm lập trình và mô phỏng MATLAB
2.2.1. Tìm hiểu chung về MATLAB
MATLAB là một công cụ tính toán trong kỹ thuật, đặc biệt là các bài toán về ma trận.
MATLAB còn cung cấp các toolboxes chuyên dụng để giải quyết những vấn đề cụ thể
như xử lý ảnh, xử lý số tín hiệu, neuron, mô phỏng…
Và một câu hỏi đặt ra. Matlab có thể làm được những gì? Matlab hoạt động ra sao? Ai
có thể học và sử dụng Matlab?
Matlab là chương trình phần mềm hỗ trợ giúp cho việc tính toán và hiển thị, được điểu
khiển bởi tập các lệnh, tác động qua bàn phím trên cửa sổ điều khiển.
Với Matlab, các vấn đề của bạn sẽ được phân tích và xử lý theo 5 bước:
Bước 1: Đặt vấn đề
Bước 2: Mô tả các giá trị dữ liệu vào/ra
Bước 3: Các tính toán bằng tay với các tập dữ liệu đầu vào đơn giản
Bước 4: Chuyển bài toán sang giải pháp bằng Matlab
Bước 5: Kiểm tra
Matlab ngày nay đã trở nên thông thông dụng và là một công cụ trợ giúp hữu hiệu cho
các nhà chuyên môn, những sinh viên đang theo học các trường đại học và trung học
chuyên nghiệp, các kĩ sư, cán bộ kĩ thuật…nhằm giải quyết các vẫn đề đa dạng trong
công việc thường ngày của họ.

Matlab cung cấp Image Processing toobox, chuyên về xử lý ảnh. Có thể nói Matlab là
một công cụ rất mạnh giúp cho việc thực hiện các giải thuật xử lý ảnh nhanh chóng và dễ
12
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
hiểu. Matlab tích hợp được việc tính toán, thể hiện kết quả, cho phép lập trình, giao diện
làm việc rất dễ dàng cho người sử dụng.
Và với đồ án này, việc lựa chọn Matlab là công cụ giải quyết là một lựa chọn hàng
đầu!
2.2.2. Một số hàm xử lý ảnh cơ bản với MATLAB.
a. Biểu diễn ảnh số
Ảnh số được biểu diễn bằng hàm f(x,y),trong đó (x,y)-tọa độ không gian,giá trị f-
cường độ sáng của điểm ảnh.
Ảnh tương tự là ảnh có tọa độ (x,y) liên tục=>số hóa:số hóa tọa độ gọi là lấy mẫu,số
hóa biên độ-lượng tử ta thu được ảnh số.Sau khi số hóa thu được ma trận số thực.Biểu
diễn hàm f(x,y) bằng ma trận cỡ MxN.Giao của các hàng và cột gọi là các pixel.
Ma trận ảnh:
Với f(p,q) là giá trị của hàm tại hàng p,cột q
Trong MATLAB,ma trận được đại diện bởi 1 biến.Tên biến bắt đầu bằng chữ cái,gồm
chữ cái,chữ số và dấu gạch dưới.
b. Hàm đọc ảnh.
- Hàm imread: đọc một ảnh từ bất kì định dạng nào được trợ giúp trong bất kì chiều sâu
bit nào được trợ giúp .Hầu hết các file ảnh sử dụng 8 bít để chứa giá trị của pixel . Khi
13
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
chúng được đọc vào bộ nhớ ,MATLAB chứa chúng dưới dạng uint8 . Với các file trợ
giúp 16 bít dữ liệu ,PNG và TIFF, MATLAB chứa chúng dưới dạng uint16.
Chú ý: Với ảnh chỉ số , imread luôn luôn đọc bản đồ màu vào trong một chuỗi thuộc lớp
double , thậm chí mảng ảnh tự nó thuộc lớp uint8 hay uint16.
- Cú pháp : imread(‘filename’);
Trong đó:filename:URL,tên của ảnh cần đọc,…

- Chẳng hạn,đọc ảnh “football.jpg” lưu trong biến a: a=imread(‘football.jpg’);
c. Hiển thị ảnh
- Để xem ảnh , ta có thể sử dụng hàm imshow . Ta sử dụng imshow để thị một ảnh đã
được nhập vào trong không gian làm việc như ví dụ sau :
>>moon = imread('moon.tif');
>>imshow(moon);
Ta cũng có thể chỉ ra tên của file ảnh như một tham số truyền vào cho hàm như ví dụ sau:
imshow('moon.tif');
d. Hàm ghi ảnh
- Hàm imwrite sẽ ghi một ảnh tới một file đồ hoạ dưới một trong các định dạng được trợ
giúp . Cấu trúc cơ bản nhất của imwrite sẽ yêu cầu một biến ảnh và tên file .
- Cú pháp: imwrite(f,’filename’);
Ghi ma trận ảnh f lên file có tên ‘filename’.
Ví dụ: >>imwrite(f,’Vidu.tif’);
Ghi ma trận ảnh f lên file :Vidu.tif
-Nếu filename không chứa đường dẫn thì MATLAB sẽ lưu vào thư mục hiện tại.
14
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
e. Hàm tạo nhiễu Salt and Pepper:
Còn gọi là nhiễu xung, nhiễu nhị phân.
Nếu b > a, mức xám b sẽ xuất hiện tương ứng là điểm sáng trên ảnh còn mức xám a sẽ
tương ứng với điểm đen xuất hiện trên ảnh.
Để cộng nhiễu “Salt and pepper” vào một ảnh ta dùng câu lệnh sau :
t = imnoise(image,’salt & pepper’, D) với D là mật độ nhiễu
Hnh 2.2. Ảnh dưới tác động của nhiễu
a) Ảnh gốc b) Ảnh nhiễu Salt & Pepper 10%
15
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
CHƯƠNG III. MỘT SỐ BỘ LỌC TRONG XỬ LÝ
ẢNH PHI TUYẾN

3.1. Bộ lọc ngăn xếp ( Stack filter )
3.1.1. Định nghĩa
Xét M giá trị vector x=[ X1,X2,…,X
N
] khi mà X
i
Є { 0,1, … , M-1 }
Sự phân hủy ngưỡng của x nghĩa là sự phân chia x thành M-1 véctơ nhị phân x
1
, x
2
,
…, x
M-1
được thu bằng quy tắc tạo ngưỡng:

(3.1)
Sự tạo ngưỡng không làm mất bất cứ thông tin về tín hiệu, nó chỉ thay đổi các thông
tin này thành dạng nhị phân đơn giản. Tín hiệu ban đầu có thể được dựng lại từ vector nhị
phân ngưỡng bằng cách cộng chúng với nhau:
(3.2)
Cho x, y và vector nhị phân ( tín hiệu ) có độ dài cố định. Xác định:
x ≤ y nếu và chỉ nếu X
n
≤ Y
n
với mọi n
Bây giờ xét tín hiệu x và ngưỡng nhị phân của nó x
1
,x

2
,…,x
M-1
Rõ ràng nếu x
i
< x
j
nếu i > j và tín hiệu nhị phân x
1
,x
2
,…,x
M-1
tạo thành 1 chuỗi ko tăng
Với 1 hàm Boolean f(.) cho rằng:
f(x) ≥ f(y) nếu x ≥ y (3.3)
Công thức (3.3) chính là thuộc tính ngăn xếp
Bây giờ chúng ta xác định các định nghĩa của bộ lọc ngăn xếp
Định nghĩa: Một bộ lọc ngăn xếp S
f
(.) được xác định bởi một hàm tích cực Boolean f(.)
như sau:
16
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
(3.4)
Như vậy, Việc chọn 1 vector x với một bộ lọc ngăn xếp S
f
(.) dựa trên hàm tích cực
Boolean f (.) tương đương với phân hủy x thành vectơ nhị phân x
m

, 1 <m <M-1, bởi
ngưỡng, lọc mỗi mức ngưỡng với bộ lọc nhị phân f(.), và xây dựng lại vector đầu ra bằng
phương trình tổng quát (3.4).
3.1.2. Minh họa
Bộ lọc ngăn xếp kế thừa và phát huy 2 thuộc tính cơ bản của bộ lọc trung vị ( median
filter ) là phân hủy ngưỡng và thuộc tính ngăn xếp.
Ví dụ:
Input: [2 8 1 4 5 3 ]
Với bộ lọc trung vị, chúng sẽ được quan sát theo trình tự sau:
[2 2 8],[2 8 1],[8 1 4],[1 4 5],[4 5 3],[5 3 3]
Đối với hàm f= x1x2+x2x3+x1x3 đầu ra bộ lọc ngăn xếp được định nghĩa:
f = min{max(x1,x2),max(x2,x3),max(x1,x3)}
Output: [2 2 4 4 4 3]
Minh họa bộ lọc ngăn xếp với hàm f=x
1
x
2
+x
2
x
3
+x
1
x
3
, cửa sổ lọc là 3x1:
17
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
Hnh3.1. Thuật toán bộ lọc ngăn xếp
3.1.3. Ý tưởng thực hiện

Cho một ảnh được chuyển sang dạng gray và được cộng nhiễu với một thong số thích
hợp. Quá trình lọc bởi bộ lọc ngăn xếp được thực hiện như sau:
• Chuyển ảnh về dạng ma trận. Sau đó chuyển ma trận thành mảng 1 chiều
• Tách ngưỡng đồng thời áp dụng thuộc tính ngăn xếp
• Áp dụng lọc lần lượt từ trái sang phải với cửa sổ lọc 3x1 hoặc 3x3 và dễ thấy
output:
[0,0,0],[0,0,1],[0,1,0],[1,0,0]=0
[0,1,1],[1,0,1],[1,1,0],[1,1,1]=1
• Sau khi lọc xong, cộng tất cả các ngưỡng lại và chuyển mảng 1 chiều thành ma
trận rồi chuyển về dạng ảnh.
18
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
Hnh 3.2. Mô hnh thuật toán ngăn xếp
3.1.4. Kết quả.
Từ sơ đồ giải thuật trên, chúng em đã mô phỏng được 2 thuật toán bộ lọc ngăn xếp với
cửa sổ 3x1 và 3x3.
Với ảnh gốc được cộng nhiễu Salt & Pepper 10% sau đây là kết quả:
19
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
Hnh3.3. Ảnh sau khi loc bở bộ lọc ngăn xếp 3x3
Ảnh gốc - Ảnh nhiễu Salt & Pepper 10% - Ảnh sau khi lọc bằng bộ lọc ngăn xếp
3x3
+ Ảnh sau khi lọc của bộ lọc ngăn xếp 3x3 chất lượng tốt hơn bộ lọc ngăn xếp 3x1
+ Thời gian xử lý ảnh của bộ lọc ngăn xếp 3x1 và 3x3 khá lâu
3.2. Bộ lọc trung vị và trung vị trọng số ( Median filter & Weighted median
filter)
3.2.1. Bộ lọc trung vị
a. Định nghĩa.
Định nghĩa: Cho dãy số X(n)=[x(1),x(2),x(3)
,

… ,x(n)] qua bộ lọc trung vị sẽ cho đầu ra
y(n) như sau:
y(n)=Median[x(1),x(2),x(3)
,
… ,x(n)] .
Giả sử X(n) đã được sắp xếp theo thứ tự thì đầu ra y(n) là:
20
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
b. Minh họa.
Vi dụ 1:
Cho dãy số X(n)=[1, 5, 2, 6, 9] qua bộ lọc trung vị thu được y(n) như sau:
y(n)=Median[1,5,2,6,9]
=Median[1,2,5,6,9]
=5.
Ví dụ 2:
Cho dãy số X(n)=[1,4,2,9,7,6] qua bộ lọc trung vị thu được y(n) như sau:
y(n)=Median[1,4,2,9,7,6]
=Median[1,2,4,6,7,9]
=5.
c.Ý tưởng thực hiện.
Bộ lọc trung vị được thực hiện như sau:
Bước 1. Liệt kê các giá trị pixel trong cửa sổ ảnh thành mảng một chiều.
Bước 2. Sắp xếp tất cả các giá trị pixel theo trật tự tăng dần hoặc giảm dần.
Bước 3. Thay thế giá trị pixel đang xem xét với giá trị trung vị(giữa) của mảng.
21
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
Hnh 3.4: Sơ đồ thuật toán bộ lọc trung vị
d.Kết quả.
• Bộ lọc trung vị 3x3: Cho cửa sổ ảnh cỡ 3x3 như hình vẽ. Sau 3 bước thực hiện ta
thu được kết quả như sau:

22
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
Hnh 3.5.Minh họa thuật toán bộ lọc trung vị
• Minh họa với hình ảnh:
Với ảnh gốc, được cộng nhiễu Salt & Pepper 10%, mô phỏng bộ lọc trung vị 3x3,
5x5, 7x7, 9x9 đưa ra được kết quả sau:
23
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
Hnh3.6. Minh họa cho bộ lọc trung vị cỡ 3x3.
a) Ảnh gốc.
b) Ảnh nhiễu muối tiêu 10%.
c) Ảnh đầu ra.
d)Ma trận trọng số.
24
BÁO CÁO ĐỒ ÁN 1-LỌC NHIỄU ẢNH
Hnh 3.7. Kết quả mô phỏng bộ lọc trung vị 3x3 (a), 5x5 (b),7x7 (c), 9x9 (d)
3.2.2.Weight median filter.
a. Định nghĩa.
Định nghĩa: Cho tập hợp trọng số W=(W
1
,W
2
,….,W
N
) và vector quan sát X=[x
1
,x
2
,…x
N

]
qua bộ lọc trung vị trọng số cho đầu ra là:
Với W
i
> 0 và W
i
♦x
i
=x
i
,x
i
,x
i
,…x
i
với W
i
số x
i
b. Minh họa
Xét ma trận trọng số W = [ 1, 2, 3, 2, 1],vector quan sát: x(n) = [ 12, 6, 4, 1,9]. Đầu ra
của bộ lọc trung vị trọng số là:
y(n)=MEDIAN[1*12,2*6,3*4,2*1,1*9]
25

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×