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

Tiểu luận Phương pháp lọc gauss (Có Source Code)

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 (1.06 MB, 13 trang )

Mục lục
1. Phát biểu bài toán, phân tích yêu cầu………….…….2
2. Các vấn đề cần giải quyết………… ………………2
3. Thuật toán………………………….……………… 2
4. Kỹ thuật cài đặt… ………………………….…….6
5. Các vấn đề khác……………………………….……12
1
Phương pháp lọc Gauss
1. Phát biểu bài toán
-Đề bài : Phương pháp lọc Gauss
-Phân tích yêu cầu đề bài
• Yêu cầu : Sử dụng phương pháp lọc Gauss để xử lý ảnh : làm mờ
hay còn gọi là làm nhòe ảnh, giảm nhiễu và mức độ chi tiết (không
mong muốn) trên ảnh, nâng cao chất lượng ảnh.
• Đầu vào : ảnh ( .bmp, .gif, .tif, .png, .jpeg…) bị nhiễu hoặc chất
lượng ảnh chưa tốt.
• Đầu ra : ảnh đã được xử lý.
2. Vấn đề cần giải quyết
- Tìm hiểu và nắm được các phương pháp lọc ảnh
- Sử dụng phương pháp lọc Gauss để nâng cao chất lượng ảnh
- Cài đặt được thuật toán và đưa vào áp dụng
- Đưa ra kết quả đạt được và các vấn đề còn tồn tại
3. Thuật toán
3.1 Các phương pháp lọc ảnh
i. Mean filter
1. Arithmetic filter
2. Geometric filter
3. Harmonic filter
4. Contra harmonic
ii. Order-Statistics filters
1. Median filter


2. Max filter & Min filter
3. Midpoint filter
….
3.2 Phương pháp lọc Gauss
3.2.1 Phân phối Gauss là gì ?
Phân phối Gauss hay còn gọi là phân bố chuẩn là 1 hàm của lý thuyết xác
xuất . Dạng hay gặp nhất là :
Đồ thị :
2
Hình : Phân bố chuẩn Gauss
Trong trường hợp phân phối trung bình hay kỳ vọng thống kê (thống kê trung
bình) a đáp ứng được phân phối trượt trên trục x dần về 0.
a=0 thì ta có thể đơn giản hóa công thức:
Trong đó:
- phân bố chuẩn
-
2
: phương sai
-
3.2.2 Bộ lọc Gauss
Toán tử lọc Gauss dùng để làm nhòe ảnh và bỏ đi nhiễu xung quanh. Một
cách trực quan thì việc sử dụng bộ lọc Gauss được xem như là phương pháp làm
mờ mịn cũng giống như hiệu ứng hình ảnh được đặt dưới một lớp màn trong suốt
bị mờ. Nó không giống với trường hợp hình ảnh bị mờ do hậu quả của ống kính bị
mất tiêu điểm hay do bóng của đối tượng dưới ánh sáng thường.
Trong trường hơp này hiệu ứng cũng giống như phương pháp lọc trung
bình, nhưng nó sử dụng nhân khác để biểu diễn các dạng khác nhau của ngưỡng
Gauss. Nhân này có 1 vài đặc tính đặc biệt sau :
• Phân bố Gauss trên mảng 1 chiều :
3

Trong đó : là độ lệch chuẩn
Phân phối Gauss 1 chiều với trung vị (0) và =1
• Trong 2-D vecto đẳng hướng Gauss có dạng :
Phân phối Gauss 2 chiều với trung vị (0,0) và =1
4
Trong toán học, việc ứng dụng Gaussian Blur cho một hình cũng chính là tính tích
chập (Convolution) hình đó với hàm Gaussian. Vì biến đổi Fourier của một
Gaussian sẽ tạo ra một Gaussian khác cho nên nếu xét trên miền tần số thì phương
pháp này sẽ làm giảm các thành phần có tần số cao trong hình. Hay nói cách khác
Gaussian Blur là một bộ lọc tần số cao.
Ý tưởng của làm mịn theo phương pháp Gauss là sử dụng sự phân bố 2_D trong
phạm vi xung quanh của điểm. Mỗi ảnh được lưu trữ bằng 1 tập hợp các điểm ảnh
để tạo ra hàm Gauss với tần số rời rạc trước khi thực hiện phép nhân chập. Trong
lý thuyết, hàm Gaussian tại mỗi điểm trên hình là khác 0. Điều này có nghĩa là
Gaussian Kernel nên có kích thước bằng với hình ảnh và giá trị tại mỗi phần tử
luôn khác 0. Tuy nhiên trong thực hành, do việc tính tóan dựa trên xấp xỉ rời rạc
cho nên giá trị của các phần tử trên bề mặt Gaussian ở khỏang cách lớn hơn 3σ so
với trung tâm gần như không đáng kể (tiệm cận 0). Do vậy các phân tán Gaussian
ngòai bán kính này sẽ bị bỏ qua, đó cũng là lý do mà thông thường Gaussian
kernel có kích thước giới hạn 3, 5, 7 (Giá trị này còn tùy vào giá trị phương sai
chuẩn mà ta chọn). Khoảng cách giữa hai điểm gần nhau trong Gaussian Kernel là
σ.
Mỗi lần nhân được tính toán, sự làm bóng sẽ được thực hiện khi sử dụng phương
thức nhân chập chuẩn. Sự nhân chập sẽ được biểu diễn rất nhanh chóng trong
trường hợp sử dụng mặt nạ đẳng hướng theo phương x hoặc y. Do đặc tính có cấu
trúc như những hình tròn đối xứng, với hình hai chiều nên sự nhân chập 2 chiều
có thể được biểu diễn bằng cách biến đổi Gauss 1 chiều theo hướng ngang và
đứng. Điều này rất hữu ích trong việc giảm chi phí tính toán thể hiện khá rõ trong
công thức:
5

Một cách nữa để làm trơn ảnh bằng Gauss với một độ lệch chuẩn lớn hơn là nhân
chập ảnh đó 1 vài lần với hệ số Gauss nhỏ hơn. Trong khi đó quá trình tính toán
rất phức tạp và chúng cần có khả năng áp dụng nếu việc xử lý bị đẩy ra ngoài khi
sử dụng phần cứng trong biến đổi.
Một vấn đề cần quan tâm nữa là nếu ta sử dụng lần lượt nhiều Gaussian cho một
ảnh thì kết quả cũng tương đương với khi ta dùng một Gaussian lớn hơn có bán
kính bằng căn bậc hai tổng bình phương các bán kính của các Gaussian đã dùng,
ví dụ:
Cũng vì mối quan hệ này mà thời gian tính toán sẽ không thể được
tiết kiệm khi chia nhỏ các Gaussian. Do đó nên sử dụng Gaussian đơn trong tính
toán nếu có thể.
Lọc Gauss không chỉ có ích trong ứng dụng kỹ thuật. Nó còn thu hút sự chú ý
trong công nghệ sinh học.
4. Kỹ thuật cài đặt
Bộ lọc Gauss là cửa sổ lọc trong lớp tuyến tính, được tính toán tự nhiên bằng
giá trị hiệu chỉnh trung bình:
Lọc Gauss 1 chiều hay còn gọi là thuật toán làm mờ Gauss :
1. Đặt cửa sổ kích thước 2N+1 tính toán điểm tựa xn=3n/N, n=-N,
-N+1, , N;
2. Tính toán giá trị G"n ;
3. Tính chỉ số co giãn k'=∑G"n ;
4. Tính toán độ dày của cửa sổ G'n=G"n/k' ;
5. Cho mỗi phần tử tín hiệu :
a. Đặt cửa sổ lọc trên nó
b. Lấy ra các phần tử
c. Nhân những phần tử bằng những góc đồng vị
d. Tính tổng -> tổng này là giá trị lọc mới.
Biểu diễn cho phân phối Gauss 2D :
Phân phối Gauss 2D là sự kết hợp của Gauss 1D trên 2 hướng x và y.
6

Điều này có nghĩa là thực hiện lọc trên phương ngang sau đó tiếp tục thực hiện lọc
theo phương dọc. Với mỗi trường hợp thực hiện theo các hướng khác nhau, kết
quả lọc sẽ cho sự khác nhau .
Thuật toán :
- Tính toán ma trận Gauss
- Thực hiện lọc theo từng dòng
- Thực hiện lọc theo từng cột.
Trong quá trình cài đặt, đối với những ảnh chứa nhiều tập hợp các điểm gián
đoạn thì cần tính độ xấp xỉ gián đoạn trước khi thực hiện lọc theo từng dòng và
từng cột bằng cách nhân chập ma trận Gauss và ma trận điểm ảnh.
Ngoài ra kích thước của nhân thường là các ma trận có kích thước lẻ như :
3x3, 5x5, 7x7… Khi người dùng khai báo kích thước chẵn như 4x4, 6x6,…thì
tâm của nhân sẽ được xác định lại bằng cách dịch sang phải 1 bit độ lớn của kích
thước nhân, từ đó xác định lại ma trận Gauss để thực hiện thuật toán. Ảnh được
lọc bình thường.
Đối với ảnh xám thuật toán thực hiện bình thường. Đối với ảnh 24bit, mỗi điểm
ảnh chứa trong 3byte thành phần R G B, quá trình lọc ảnh tiến hành song song
trên mảng giá trị RBG của ảnh, kết quả đầu ra thu được mảng RGB với giá trị đã
được lọc.
Với lọc Gauss 2D với cửa sổ [N,N] sẽ giảm số lượng tính toán xuống N phép tính,
đặc biệt cho những ảnh lớn: từ O(N
2
) xuống O(N)
Mô hình dữ liệu khi sử dụng bộ lọc làm trơn ảnh :
7
: data : smooth
Kết quả thu được : Hiệu quả của bộ lọc phụ thuộc nhiều vào hằng số co giãn và
kích thước nhân của bộ lọc :
• Kích thước nhân K=[1x1]


8
• Kích thước nhân K=[3x3]

• Kích thước nhân K
9
• Kích thước K=[7x7]
Khi tăng kích thước nhân ảnh sẽ tăng độ nhòe theo độ tăng kích thước nhân.
Tùy theo yêu cầu của ảnh đầu ra mà ta điều chỉnh kích thước nhân cho phù hợp.
Cũng tương tự khi thay đổi độ lớn của sigma: độ nhòe của ảnh cũng thay
đổi tương tự khi thay đổi độ lớn của của sổ lọc.
• Kích thước K=[5x5] & sigma= 0.5
10
• Kích thước K=[5x5] & sigma= 1.4
• Kích thước K=[5x5] & sigma= 3
11
• Với ảnh bị nhiễu :
12
5. Các vấn đề khác.
Từ các kết quả thu được từ các ảnh khác nhau hiệu quả thu được khi sử dụng bộ
lọc Gauss để nâng cao chất lượng ảnh là đáng kể. Phương pháp này được ứng
dụng một cách rộng rãi và hiệu quả trong các phần mềm xử lý đồ họa. Bộ lọc
Gauss mang lại hiệu ứng tương tự Mean filter, tuy nhiên bộ lọc Gauss cho chất
lượng ảnh kết quả cao hơn vì có sự tập trung trọng số vào pixel đang xét tại vị trí
trung tâm. Thực tế chứng minh bộ lọc Gauss được sử dụng rất nhiều để làm bước
tiền xử lý trước khi thực hiện các biến đổi khác như phát hiện biên (phương pháp
Canny,…), trích chọn đặc trưng, LOG, DOG,… nâng cao hiệu quả của phép biến
đổi.
KẾT LUẬN
Với phương pháp lọc Gauss ta nhận thấy rằng hiệu quả thu được khi xử lý
ảnh là rất tốt và được ứng dụng nhiều trong thực tiễn để nâng cao chất lượng ảnh,

gảm những chi tiết không mong muốn và là bước tiền xử lý cho ảnh đầu vào của
các phương pháp xử lý ảnh khác.
Vì quá trình tìm hiểu thông qua các nguồn tài liệu khác nhau và khả năng hiểu biết
còn hạn chế nên ngôn từ dùng chưa thật chuẩn xác, báo cáo chưa được hoàn
chỉnh, kính mong thầy xem xét, chỉ ra thiếu sót để em có thể hoàn thiện bài làm
của mình hơn.
Em xin chân thành cảm ơn!
13

×