Chương 1: Giới thiệu khái quát về vấn đề được đề cập trong luận văn này, xác định động cơ, mục tiêu thực hiện và giới hạn của đề tài. Chương 2: Giới thiệu về các loại nhiễu và kỹ thuật phục vụ cho bài toán giảm nhiễu ảnh như: Công cụ biến đổi Wavelet, biến đổi Curvelet Transform, ngưỡng lọc Bayesian, và các nghiên cứu hiện có liên quan đến đề tài. Chương 3: Trình bày nghiên cứu chi tiết về mô hình đề xuất trong luận văn. Chương 4: Trình bày kết quả thực nghiệm, đánh giá hiệu quả của giải thuật đề xuất qua các thông số PSNR và MSE.
Chương 5: Tổng hợp kết luận, các kết quả đã đạt được, ưu nhược điểm và hướng phát triển đề tài. 3 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN 2.1 Nhiễu Gaussian Nhiễu Gaussian được phân bố đều trên tín hiệu. Điều này có nghĩa là mỗi pixel trong ảnh nhiễu là tổng của các giá trị pixel thực và giá trị nhiễu Gaussian phân bố ngẫu nhiên. Như tên gọi, kiễu nhiễu này có phân bố Gaussian với hàm phân bố xác xuất 𝐹 (𝑔) có hình dáng quả chuông được cho bởi công thức: 1 2 2 𝐹 (𝑔 ) = 𝑒 −(𝑔−𝑚) /2𝜎 √2𝜋𝜎 2 với 𝑔 chỉ mức xám, 𝑚 chỉ trung bình của hàm và 𝜎 chỉ độ lệch chuẩn của nhiễu.
Nó được mô tả theo đồ thị trong hình 2.1 và ảnh thực tế của nhiễu xuất hiện trong hình 2.1: Phân phối Gaussian [22] 4 Hình 2.2: Ảnh y khoa xương (a) Ảnh gốc (b) Ảnh nhiễu Gaussian (trung bình = 0, phương sai = 0.2 Nhiễu muối tiêu (Salt and Pepper) Nhiễu muối tiêu là một loại xung của nhiễu thông thường xuất hiện trong ảnh do quá trình truyền dữ liệu gây ra. Nó có hai giá trị có thể là 𝑎 và 𝑏 mà có xác suất của mỗi giá trị thông thường thấp hơn 0,1. Các pixel bị hư hỏng được thay đến giá trị tối đa hay tối thiểu, làm cho hình ảnh trông giống dạng “muối tiêu”. Các pixel không bị tác động không thay đổi.
Cho hình ảnh 8-bit, giá trị của nhiễu tiêu là 0 và nhiễu muối là 255. Hàm một độ xác xuất của nhiễu này được minh họa trong hình 2. Nhiễu muối tiêu với phương sai 0.03 được trình bày trong hình 2.3: Hàm mật độ xác suất cho nhiễu muối tiêu [22] Hình 2.4: Ảnh y khoa xương (a) Ảnh gốc, (b) Ảnh nhiễu muối tiêu 2.3 Nhiễu đốm (Speckle) Nhiễu đốm là loại nhiễu nhân. Loại nhiễu này xuất hiện trong hầu hết các hệ thống hình ảnh.
Nguồn của nhiễu này được cho là sự giao thoa ngẫu nhiên của các giá trị trả về chặt chẽ. Nhiễu đốm phát triển đầy đủ có đặc điểm của nhiễu nhân. Nhiễu đốm có phân bố gamma 𝐹 (𝑔) với công thức sau: 𝑔𝛼−1 𝐹 (𝑔 ) = 𝑒 −𝑔/𝑎 (𝛼 − 1 )! 𝑎 𝛼 6 với phương sai là 𝛼 2 và g là mức xám, 𝑎 là tham số của phân bố gamma. Một hình ảnh có nhiễu đốm với phương sai là 0.03 trống giống như hình 2.
Phân bố gamma có hình dạng như hình 2.5: Phân bố Gamma[22] Hình 2.6: Ảnh y khoa xương (a) Ảnh gốc, (b) Ảnh nhiễu đốm (Speckle) 2.2 Curvelet Transform Curvelet Transform được đề xuất bởi Candès và Donoho [1] dựa trên Ridgelet Transform vào năm 2000. Đối với Curvelet Transform thế hệ đầu tiên được đề xuất còn nhiều hạn chế bởi vì khả năng biến đổi ridget lúc đó còn mập mờ, chưa được rõ ràng. Sau đó một thế hệ Curvelet Transform thứ hai được đề xuất dựa trên biến đổi miền tần 7 số, phương pháp này đơn giản và hiệu quả hơn so với phương pháp thứ nhất. Và từ đó Curvelet Transform thế hệ thứ hai được xem là một công cụ rất hiệu quả trong xử lý ảnh, và được sử dụng rộng rãi cho đến thời điểm hiện tại.
Các bước biến đổi của Curvelet transform: Subband Smooth Renormalization Ridgelet analysis f Decompostition Partitioning 𝑔𝑄 = 𝑇𝑄−1 .7: Các bước biến đổi Curvelet Transform [1] 2.1 Các bước xây dựng Curvelet Transform Starck[1] đề xuất quá trình biến đổi Curvelet trải qua các bước sau: Bước 1: Phân tách lớp (Subband Decomposition) Chúng ta xây dựng một tổ hợp bộ lọc 𝑃0 , (∆𝑠, 𝑠 ≥ 0). Lọc ảnh 𝑓 bằng các bộ lọc con: 𝑓 ⟼ (𝑃0 𝑓, ∆1 𝑓, ∆2 𝑓, … ) Bước này sẽ chia ảnh ra thành nhiều subband với thuộc tính khác nhau. Mỗi ảnh con chứa các thông số chi tiết của từng tần số khác nhau. 𝑃0 → Lowpass filter ∆1 , ∆2 , … - Band-pass (high-pass) filters Vì vậy ảnh gốc có thể phục hồi lại được từ các ảnh con này: 𝑓 = 𝑃0 (𝑃0 𝑓) + ∑ ∆𝑠 (∆𝑠 𝑓) 𝑠 Chúng ta sử dụng 2 ký tự để định nghĩa bộ lọc: - Φ0 : là bộ lọc thông thấp (lowpass filter).
Bộ lọc tần số thấp gần với ngưỡng |𝜉 | ≤ 1. - Ψ2𝑠 : là bộ lọc thông cao (band-pass filter). Bộ lọc tần số cao gần với ngưỡng |𝜉 | ∈ [22𝑠 , 22𝑠+2 ]. - Bên cạnh đó, bộ lọc cao có tính đệ quy: Ψ2𝑠 (𝑥) = 24𝑠 Ψ(22𝑠 𝑥).
Công thức chi tiết của 2 bộ lọc Φ0 và Ψ2𝑠 được viết chi tiết trong chương 2.2 Wavelet Transform của cuốn luận văn. Cơ sở trực giao hay cơ sở wavelet được định nghĩa là: 8 𝜓(𝑗,𝑘) (𝑥) = 2𝑗/2 𝜓(2𝑗 𝑥 − 𝑘 ) Hàm tỉ lệ được tính như sau: 𝜙(𝑗,𝑘) (𝑥) = 2𝑗/2 𝜙(2𝑗 𝑥 − 𝑘 ) với 𝜓 được gọi là hàm wavelet và 𝑗 và 𝑘 là các số nguyên mà chia tỉ lệ và mở rộng hàm wavelet. Hệ số 𝑗 trong hai công thức trên là chỉ số mức mà chỉ định chiều rộng của wavelet. Chỉ số định vị 𝑘 cung cấp vị trí.
Hàm wavelet được giãn ra bởi lũy thừa của 2 và được tịnh tiến theo số nguyên 𝑘. Trong mối quan hệ với các hệ số wavelet công thức wavelet là: 𝑁−1 𝜓(𝑥) = ∑ 𝑔𝑘 √2𝜙(2𝑥 − 𝑘 ) 𝑘 với 𝑔0 , 𝑔1 , 𝑔2 , … là các hệ số wavelet thông cao. Công thức xác định tỉ lệ trong mối quan hệ với các hệ số tỉ lệ được cho như sau: 𝑁−1 𝜙(𝑥) = ∑ ℎ𝑘 √2𝜙(2𝑥 − 𝑘 ) 𝑘 Hàm 𝜙(𝑥) là hàm chia tỉ lệ và các hệ số ℎ0 , ℎ1 , ℎ2 , … là các hệ số chia tỉ lệ thông thấp. Các hệ số tỉ lệ và wavelet liên hệ với nhau bởi mới quan hệ chiếu cầu phương: 𝑔𝑛 = (−1)𝑛 ℎ1−𝑛+𝑁 Biến 𝑁 là số momen triệt tiêu.
Các công thức wavelet được tạo ra từ các họ wavelet khác nhau như Daubechies, Haar, Coiflets, Symlets, … Các wavelet được phân thành một họ bởi số momen triệt tiêu. Trong mỗi họ wavelet, có các lớp con wavelet được phân biệt bởi số hệ số và số vòng lặp. Quá trình phân tách lớp quá quá trình ứng dụng các bộ lọc được định nghĩa ở trên. Cụ thể: 𝑃0 𝑓 = Φ0 ∗ 𝑓 ∆𝑠 𝑓 = Ψ2𝑠 ∗ 𝑓 9 Ở đây có sự liên quan giữa phương pháp Curvelet và Wavelet Transform.
Các subband của phương pháp Curvelet được xem là xấp xỉ với các subband của của Wavelet Transform: - Sử dụng Wavelet Transform, 𝑓 được phân tách thành 𝑆0 , 𝐷1 , 𝐷2 , 𝐷3 , … - 𝑃0 𝑓 tương đương với subband 𝑆0 và 𝐷1 , có thể bao gồm luôn cả 𝐷2 và 𝐷3 - ∆𝑠 𝑓 tương đương với các subband từ 𝐷2𝑠 và 𝐷2𝑠+1 Ví dụ quá trình Subband Decomposition: 𝑓 ⟼ (𝑃0 𝑓, ∆1 𝑓, ∆2 𝑓, … ) Hình 2.8: Quá trình Subband Decomposition[26] Bước 2: Làm mỏng (Smooth Partitioning) Đối với từng subband, tiến hành quá trình làm mỏng ảnh bằng cách phân chia thành các cặp ô vuông 𝑤𝑄 (𝑥1 , 𝑥2 ) 𝑘1 𝑘1 + 1 𝑘2 𝑘2 + 1 𝒬(𝑠,𝑘1,𝑘2) = [ 𝑠 , 𝑠 ]×[ 𝑠, ] ∈ 𝑄𝑠 2 2 2 2𝑠 10 𝑤 là một cửa sổ được làm mỏng với kích thước chính là 2−𝑠 × 2−𝑠. Một phép nhân đồng vị 𝑤𝑄 cho ra kết quả gần với 𝑄(∀𝑄 ∈ 𝑄𝑠 ). Làm tương tự cho tất cả Q ở một quy mô nhất định, ví dụ: 𝑄 = 𝑄 (𝑠, 𝑘1 , 𝑘2 ) với 𝑘1 và 𝑘2 thay đổi, 𝑠 cố định. Áp dụng kỹ thuật này cho mỗi subband bị cô lập trong giai đoạn trước đó của thuật toán.
Bằng cách này quá trình làm mỏng được phân chia vào các “ô vuông” ∆𝑠 𝑓 → (𝑤𝑄 ∆𝑠 𝑓)𝑄 ∈ 𝑄𝑠 Ví dụ bước Smooth Partitioning: 11 Cắt thành 8x8 ∆1 𝑓 ℎ𝑄 = 𝑤𝑄 × ∆𝑠 𝑓 Hình 2.9: Quá trình Smooth Partitioning[26] Bước 3: Chuẩn hóa (Renormalization) Với từng cặp ô vuông Q, chúng ta thực hiện 𝑇𝑄 𝑓 (𝑥1 , 𝑥2 ) = 2𝑠 𝑓(2𝑠 𝑥1 − 𝑘1 , 2𝑠 𝑥2 − 𝑘2 ) Bước này có ý nghĩa chuyển đổi và tái chuẩn hóa 𝑓 để một phần đầu vào Q trở thành một phần đầu ra gần với ma trận [0,1] × [0,1]. Ở bước này mỗi ô vuông sau khi biến đổi trở thành những ô tái chuẩn hóa đơn vị: 𝑔𝑄 = 𝑇𝑄−1 (𝑤𝑄 ∆𝑠 𝑓), 𝑄 ∈ 𝑄𝑠 12 Bước 4: Phân tích Ridgelet (Ridgelet analysis) Trước khi đi vào phần Ridgelet Transform, chúng ta có một số đặc tính sau: - Subband ∆𝑠 𝑓 bào gồm các tần số gần với miền |𝜉 | ∈ [22𝑠 , 22𝑠+2 ]. - Cửa sổ tạo ridges với chiều rộng xấp xỉ 𝑤𝑖𝑑𝑡ℎ ≈ 2−2𝑠 và chiều xài xấp xỉ 𝑙𝑒𝑛𝑔𝑡ℎ ≈ 2−𝑠. - Các đường tái chuẩn hóa có tỷ lệ 𝑤𝑖𝑑𝑡ℎ ≈ 𝑙𝑒𝑛𝑔𝑡ℎ2.
Chúng ta mã hóa các ridges bằng phương pháp Ridgelet Transform. Mỗi “ô vuông” trong bước 2 được phân tích trong hệ thống ridgelet trực giao. Đây là hệ thống cơ sở mỗi phần tử 𝑝𝜆 làm một cơ sở trực giao cho: 𝐿2 (𝑅2 ). Một số phân tích Ridgelet được mô phỏng như sau: Hình 2.10: Một số phân tích Ridgelet Quá trình xây dựng Ridgelet chia miền tần số thành từng cặp đôi thuộc |𝜉 | ∈ [22𝑠 , 22𝑠+2 ].
Theo hướng góc “angular direction”, nó sử dụng mẫu của wavelet địa phương. Các phần tử Ridgelet có công thức trên miền tần số nhứ sau: 13 1 −1 ̂𝜆 (𝜉 ) = 𝜌 |𝜉 | 2 (𝜓̂𝑗,𝑘 (|𝜉 |) ∙ 𝜔𝑗,𝑙 (𝜃) + 𝜓̂𝑗,𝑘 (−|𝜉 |) ∙ 𝜔𝑗,𝑙 (𝜃 + 𝜋)) 2 Trong đó: o 𝜔𝑗,𝑙 : Chu kỳ Wavelet trong khoảng [−𝜋, 𝜋] o 𝑖: hệ số góc (angular scale) o 𝑙 ∈ [0, 2𝑖−1 − 1]: vị trí góc (angular location) o 𝜓𝑗,𝑘 : Meyer Wavelet trong ℜ o 𝑗: hệ số ridgelet (Ridgelet scale). o 𝑘: vị trí Ridgelet (Ridgelet location). Mỗi ô vuông chuẩn hóa được phân tích trong hệ thống ridgelet: 𝛼(𝑄,𝜆) = 𝑔𝑄 , 𝜌𝜆 o Từng đoạn ridgelet có tỉ lệ 2−2𝑠 × 2−𝑠 o Sau khi chuẩn hóa, nội địa hóa tần số trong băng tần |𝜉 | ∈ [2𝑠 , 2𝑠+1 ] o Mỗi phân đoạn chỉ cần vài hệ số ridgelet để biễu diễn.
Ví dụ bước phân tích Rigelet: Hình 2.11: Quá trình phân tích Ridgelet[26] 14 2.