HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG KHOA ĐÀO TẠO SAU ĐẠI HỌC TIỂU LUẬN Đề tài “NÂNG CAO CHẤT LƯỢNG ẢNH MÀU DỰA TRÊN BIẾN ĐỔI WAVELET RỜI RẠC” Hà Nội – 42022 MỤC LỤC LỜI MỞ ĐẦU 3 I MÔ HÌNH ĐỀ XUẤT 5 1 1 Ví dụ ảnh đầu vào là ảnh màu có kích thước 512x512 6 1 2 Chuyển đổi màu sắc 6 1 3 Biến đổi Wavelet rời rạc 2 chiều (2 D DWT) 6 1 4 Lọc PWL 7 1 5 Qúa trình cải thiện chất lượng tín hiệu đã sửa đổi 9 II KẾT QUẢ THỰC NGHIỆM VÀ CÁC ỨNG DỤNG TRONG THỰC TẾ 11 1 Kết quả thực nghiệm 11 2 Các ứng dụng.
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA ĐÀO TẠO SAU ĐẠI HỌC
TIỂU LUẬN
Đề tài: “NÂNG CAO CHẤT LƯỢNG ẢNH MÀU DỰA
TRÊN BIẾN ĐỔI WAVELET RỜI RẠC”
Hà Nội – 4/2022
MỤC LỤC
Trang 3LỜI MỞ ĐẦU
Nâng cao chất lượng đóng một yếu tố quan trọng hơn trong xử lý hình ảnh; cảithiện chất lượng của hình ảnh được gọi là nâng cao chất lượng hình ảnh Cải tiến chấtlượng có thể được thực hiện trên cả ảnh Xám và ảnh màu Nhiều thuật toán đã đượcứng dụng để tăng cường chất lượng ảnh xám Gần đây, kỹ thuật nâng cao độ phângiải hình ảnh sử dụng Biến đổi Wavelet rời rạc (DWT) cho các hình ảnh Vệ tinh, đãđược báo cáo bởi Demirel và Anbarjafari [1] Phương pháp nội suy trong xử lý ảnh làmột phương pháp để tăng số lượng pixel (điểm ảnh) trong ảnh kỹ thuật số Phươngpháp nội suy đã được sử dụng rộng rãi trong nhiều ứng dụng xử lý ảnh [2], Trong khi
đó, lọc Homomorphic, lọc thông thấp và lọc thông cao là các kỹ thuật khác hoạtđộng trong miền không gian [3] và [4] Sau đó, các kỹ thuật này cũng được sử dụng
để tăng cường hình ảnh màu sắc Wu và su đã đề xuất một kỹ thuật nâng cao độ phângiải hình ảnh dựa trên phép biến đổi wavelet [5] Vì một phần của hình ảnh được lọcthông cao được thêm vào dữ liệu gốc, kết quả thu được là nâng cao chất lượng vùngbiên ảnh và đồng thời cũng khuếch đại nhiễu Để giải quyết vấn đề này, các phươngpháp tiếp cận hiệu quả hơn là sử dụng bộ lọc phi tuyến nhằm cân bằng tốt hơn giữa
độ sắc nét hình ảnh và giảm nhiễu [6] Hệ thống nâng cao chất lượng ảnh doFabrizio Russo đề xuất sử dụng một hàm tuyến tính mảnh (PWL) đơn giản, trongthuật toán của ông chỉ có một hàm tuyến tính mảnh (PWL) để kết hợp các hiệu ứnglàm mịn và làm sắc nét [7] Các hệ thống mờ do F Russo và G Ramponi đề xuất rấtthích hợp để mô hình hóa sự không chắc chắn xảy ra khi các hiện tượng xung độtdiễn ra, (tức là) làm sắc nét chi tiết và khử nhiễu S.Gopinath et.al đã phát triển thuậttoán tuyến tính thông minh (PWL) cho phương pháp lọc phi tuyến của ảnh xám bằngcách sử dụng Biến đổi wavelet rời rạc Kaganami, et.al đã trình bày phương phápchuyển đổi màu của ảnh màu để nâng cao chất lượng dựa trên tính bất biến Hue vớicác đặc điểm màu sắc trực quan của con người trong mẫu màu HSV
Trang 4Trong nội dung bài tiểu luận, trình bày một phương pháp xử lý ảnh màu để cảithiện chất lượng hình ảnh đồng thời khử nhiễu dựa trên tính gần đúng mượt của hàmtuyến tính mảnh PWL và kỹ thuật DWT theo [8] Cấu trúc của Tiểu luận bao gồm:
I Mô hình được đề xuât
II Kết quả thực nghiệm và các ứng dụng trong thực tế
III Ví dụ về phần mềm nâng cao chất lượng ảnh và mô phỏng DWT trong python
Trang 5I MÔ HÌNH ĐỀ XUẤT
Lưu đồ của phương pháp đề xuất được thể hiện trong Hình.1 Đầu tiên, hìnhảnh màu có nhiễu RGB được chuyển đổi thành định dạng màu HSV, sau khi thànhphần độ chói (V) được biến đổi DWT một mức (DWT 2 chiều) phân tích (Sử dụnghàm Haar).Nó sẽ phân rã hình ảnh gốc thành bốn dải tần con (LL, LH, HL và HH) Sau đó, nhiễu trong các hệ số tần số được giảm bớt bằng kỹ thuật lọc PWL xấp xỉtrơn tru Cuối cùng, độ chói V được nâng cao thu được thông qua biến đổi Waveletngược, biểu đồ Thích ứng được cân bằng S và H được chuyển đổi trở lại thành hìnhảnh nâng cao RGB
Trang 61.1 Ví dụ ảnh đầu vào là ảnh màu có kích thước 512x512
1.2 Chuyển đổi màu sắc
Bước đầu tiên trong phương pháp này là chuyển đổi gía trị RGB (Đỏ, Xanh lục
và Xanh lam) của mỗi pixel của bất kỳ segment nào của hình ảnh gốc thành các giátrị HSV (Hue, Saturation và Luminance) Sự chuyển đổi được thể hiện bằng phươngtrình (1) :
1.3 Biến đổi Wavelet rời rạc 2 chiều (2-D DWT)
Biến đổi Wavelet đã được sử dụng khá thường xuyên trong xử lý hình ảnh Hìnhảnh có thể được biểu diễn cùng một lúc trên miền tần số và không gian cục bộ bằngcách sử dụng các phép biến đổi Wavelet Phép biến đổi Fourier và DCT cung cấp cácđặc tính tần số toàn cục của một hình ảnh, nhưng chúng không cung cấp các đặc tínhtần số cục bộ Hạn chế này được khắc phục trong các phép biến đổi wavelet Mộtbiến đổi wavelet rời rạc (DWT) trong đó các wavelet được lấy mẫu riêng biệt đểphân tích số và phân tích hàm Điều này được DWT khắc phục, nó ghi nhận được cảthông tin trên miền tần số và thời gian Biến đổi wavelet rời rạc (DWT) phân tách tínhiệu thành các dải con có băng thông nhỏ hơn và tốc độ lấy mẫu chậm hơn, cụ thể làThấp-Thấp (LL), Thấp-Cao (LH), Cao-Thấp (HL) và Cao-Cao (HH) Với điều này,
nó thu được bốn dải con từ một mức chuyển đổi - dải phụ thông thấp đầu tiên có giátrị xấp xỉ thô của hình ảnh nguồn được gọi là dải con LL và ba dải phụ thông caokhai thác chi tiết hình ảnh theo các hướng khác nhau - HL cho chiều ngang, LH chochiều dọc và HH cho các chi tiết đường chéo Việc phân tách wavelet 2-D của mộthình ảnh được thực hiện bằng cách áp dụng 1-D DWT dọc theo các hàng của hìnhảnh đầu tiên, sau đó, các kết quả được phân tách dọc theo các cột Thành phần độ
Trang 7chói (V) từ HSV được được biến đổi wavelet Các thành phần tần số của băng tầnphụ bao gồm các thành phần tần số của giá trị thành phần độ chói (V) được thể hiệntrong Hình 2 Do đó, biến đổi Wavelet rời rạc (DWT) là một công cụ thích hợp được
sử dụng để thiết kế một hệ thống nâng cao chất lượng hình ảnh
1.4 Lọc PWL
Thông thường xử lý các ảnh kỹ thuật số có mức xám L Gọi x (n) là độ chói củapixel tại vị trí n = [n1, n2] trong ảnh đầu vào Thuật toán nâng cao chất lượng trêncửa sổ 3 × 3 xung quanh x (n) Đặt x1(n), x2(n) , , xN(n) ký hiệu cho nhóm N = 8pixel lân cận, như trong Hình 3 (0 ≤ x (n) ≤ L - 1; 0 ≤ xi (n) ≤ L - 1, i = 1 , , 8)
Gọi y(n) là đầu ra của hệ thống nâng cao chất lượng ảnh F Russo đề xuất hệthống nâng cao do sử dụng Thuật toán tuyến tính (PWL) đơn giản [7], được mô tảbởi các mối quan hệ sau:
Trang 8trong đó ký hiệu⊕
tổng giới hạn a⊕
b = min {a + b, L - 1} và h là một hàm PWLđược điều khiển bởi hai tham số k smvà k sh
Công thức (4) đưa ra sự khác biệt về độ chói Δxi giữa pixel trung tâm và các
điểm ảnh lân cận Khi những khác biệt này là nhỏ, phương pháp thực hiện làm mịn
(smoothing), nghĩa là, nhằm mục đích giảm những khác biệt như vậy trong hình ảnh
nâng cao Ngược lại, khi sự khác biệt về độ chói cao, độ sắc nét được cung cấp, tức
là, một hiệu ứng có xu hướng làm tăng sự khác biệt đó Điều đó cho phương trình(5), khi | Δxi | tăng lên, ảnh hưởng của nó trong phương trình (3) trở nên hoàn toànkhác Chính xác hơn, hiệu ứng này là làm mịn mạnh đối với các khác biệt rất nhỏ (|Δxi (n) |<k sm
), làm mịn yếu đối với các khác biệt nhỏ (k sm≤
| Δxi (n) | <2k sm), làmsắc mạnh đối với các khác biệt vừa (2k sm≤ | Δxi (n) | <4k sm), và làm sắc yếu đối với
sự khác biệt lớn (| Δxi (n) | ≥ 4k sm) Hình dạng của h (u) đã được thiết kế để dần dầnkết hợp các hiệu ứng làm mịn và làm sắc nét Việc lựa chọn mô hình 7- segment dựatrên thực nghiệm Đó là sự dung hòa giữa tính phức tạp và hiệu quả Các mô hình cónhiều segment hơn yêu cầu nhiều tham số hơn và không mang lại cải tiến đáng kể
Trang 9Mặt khác, các mô hình ít segment hơn không cung cấp đủ hiệu năng và tính linhhoạt
Tiếp theo, là nội dung bước làm sắc nét (sharpening) Nếu chọn k sh >0
(thường6
sh
k ≤
), hiệu ứng làm sắc nét được áp dụng cho các pixel ảnh khi | Δxi (n) | > 2k smtrong phương trình (5) Vì làm sắc có thể được coi là ngược lại với hành động làm nhẵn , đặt h (Δxi (n))> 0 khi Δxi (n)> 2k sm và h (Δxi (n)) <0 khi Δxi( n) <−2k sm
Đặc biệt, hiệu ứng làm sắc nét này càng mạnh nếu 2k sm ≤ | Δxi (n) | <4k sm và yếu hơn khi
| Δxi (n) | ≥ 4k sm Lựa chọn này nhằm mục đích tránh việc làm sắc nét quá mức dọc theo đường viền đối tượng của hình ảnh
1.5 Qúa trình cải thiện chất lượng tín hiệu đã sửa đổi
Chất lượng của hình ảnh nâng cao có thể được cải thiện qua bước xử lý tiếp theo để loại bỏ các giá trị ngoại biên có thể vẫn còn trong ảnh Nếu hình ảnh bị nhiễu
do nhiễu Gaussian, các giá trị ngoại lai này thường là phần nhiễu nằm ở “đuôi” của phân bố Gauss Ngay cả khi xác suất xuất hiện của những ngoại biên này thấp, sự hiện diện của chúng có thể khá khó chịu, đặc biệt là trong các vùng đồng nhất của hình ảnh Cách thức xử lý được mô tả bởi các phương trình (2) đến (5) sẽ yêu cầu một giá trị k sm lớn để làm mịn loại nhiễu này và do đó, một số chi tiết nhỏ có thể bị
mờ Một sự lựa chọn phù hợp hơn là áp dụng một bước lọc bổ sung nhằm loại bỏ những giá trị ngoại lệ này Lựa chọn này cho phép chúng ta sử dụng giá trị k sm nhỏ hơn mà vẫn bảo toàn tốt các chi tiết hình ảnh Bộ lọc để loại bỏ ngoại lệ áp dụng một cách tiếp cận khác để xử lý sự khác biệt về độ chói trong cửa sổ Bộ lọc được xác định bởi mối quan hệ sau:
Trong đó g là một hàm phi tuyến
Trang 10Hàm g được chọn để đạt được hiệu chỉnh chính xác trong trường hợp lýtưởng của một giá trị ngoại biên trong một vùng lân cận đồng nhất Ví dụ, đặt x (n) =
a là một giá trị ngoại biên dương và đặt xi(n) = b (i = 1, 2, , N) là giá trị độ chói củacác pixel lân cận (a> b) Vì Δxi (n) = a - b> 0 nên g (Δxi (n)) = a - b và g (−Δxi (n)) =
0 Do đó phương trình (6) cho giá trị chính xác y (n) = b Hành động lọc được xácđịnh bởi các phương trình (6) và (7) có thể được áp dụng sau quá trình làm sắc nét đểloại bỏ các giá trị ngoại biên Tuy nhiên, lựa chọn tốt hơn là áp dụng bộ lọc này cho
dữ liệu đầu vào bị nhiễu trước quá trình cải tiến, do đó tránh được sự khuếch đại củacác giá trị ngoại biên này
II KẾT QUẢ THỰC NGHIỆM VÀ CÁC ỨNG DỤNG TRONG THỰC TẾ
1. Kết quả thực nghiệm
Trang 11Để đánh giá hiệu năng của hệ thống được đề xuất trên, đã được thử nghiệm vớinhiều hình ảnh khác nhau Nhiễu Gaussian được thêm vào hình ảnh đầu vào gốc Sau
đó, phương pháp đề xuất loại bỏ nhiễu và phương pháp cải thiện được áp dụng.Phương pháp đề xuất được so sánh với các bộ lọc tiêu chuẩn nâng cao hình ảnh nhưlọc Median, Unsharp, Laplacian và Gaussian Kết quả được thể hiện trong Hình.4 đốivới ảnh chuẩn và Hình.5 đối với ảnh vệ tinh màu
RMSE là tỷ số giữa công suất lớn nhất của tín hiệu và công suất nhiễu ảnhhưởng đến độ trung thực của tín hiệu Đây là một trong những tham số được sử dụng
Trang 12phổ biến nhất để đo lường chất lượng của hình ảnh khôi phục lại Nó được địnhnghĩa cho hai ảnh f (x, y) và (x, y) coi một trong các ảnh là xấp xỉ nhiễu của ảnh kiatheo công thức:
Các giá trị RMSE của ảnh chuẩn và ảnh vệ tinh màu cho các phương phápkhác nhau được tính toán và biểu đồ so sánh lần lượt được thể hiện ở Bảng 1 và Bảng
3 Từ các bảng có thể quan sát thấy rằng giá trị RMSE của phương pháp đề xuất thấphơn các phương pháp khác
PSNR, được định nghĩa là:
Giá trị đỉnh đến đỉnh của hình ảnh được tham chiếu là giá trị pixel lớn nhất củahình ảnh Tỷ số tín hiệu đỉnh trên nhiễu được tính toán từ sai số theo công thức trên.Giá trị của PSNR càng cao thì hiệu năng của phương pháp đó càng tốt Các giá trịPSNR của ảnh chuẩn và ảnh vệ tinh màu cho các phương pháp khác nhau được tính
Trang 13toán và các giá trị so sánh được thể hiện trong Bảng 2 và Bảng 4 Từ các bảng nàycho thấy giá trị PSNR của phương pháp đề xuất cao hơn các phương pháp khác.
có kết quả tốt hơn so với nhiều phương pháp khác
Nâng cao chất lượng ảnh là một bước quan trọng, tạo tiền đề cho xử lý ảnh.Mục đích chính là làm nổi bật một số đặc tính của ảnh như thay đổi độ tương phản,lọc nhiễu, nổi biên, làm trơn biên ảnh…
Phương pháp nâng cao chất lượng ảnh được ứng dụng như trong khôi phụcảnh, trong nhận dạng hình ảnh, chuẩn bị đầu vào cho các chương trình ứng dụngkhác như trợ lý ảo…
Trang 14III VÍ DỤ VỀ PHẦN MỀM NÂNG CAO CHẤT LƯỢNG ẢNH VÀ MÔ PHỎNG DWT TRONG PYTHON
1 Ví dụ Phần mềm nâng cao chất lượng ảnh
Mặc dù ngày nay công nghệ chụp ảnh trên các điện thoại di động thông minhđều đã được cải thiện đáng kể về cả chất lượng camera và khả năng xử lý ảnh Tuynhiên, khi chụp ảnh trong các điều kiện môi trường, vị trí bất lợi như chụp đêm, ánhsáng yếu, chụp ngược sáng hoặc đối tượng chụp ở trạng thái động ảnh hưởng rấtlớn đến chất lượng ảnh, ảnh sau khi chụp bị nhiễu, không sắc nét, màu sắc không cânbằng Vì thế mà ngay cả trên các điện thoại thông minh mới hiện nay thường phảicài đặt các phần mềm ứng dụng hỗ trợ chỉnh sửa, nâng cao chất lượng ảnh với hàngloạt tính năng hỗ trợ đa dạng Trong khuôn khổ của Tiểu luận liên quan tới phép biếnđổi Wavelet, nhóm đề tài xin giới thiệu một phần mềm chỉnh sửa ảnh rất hiệu quả,trong đó có hỗ trợ sử dụng Wavelet để tối ưu chất lượng hình ảnh, đó là phần mềmGIMP
GIMP (GNU Image Manipulation Program) là một phần mềm tự do mã nguồn
mở được sử dụng để chỉnh sửa hình ảnh, vẽ tự do, chuyển đổi giữa các định dạnghình ảnh khác nhau và các tác vụ chuyên biệt Phần mềm có giao diện đồ họa tương
tự như ứng dụng chỉnh sửa ảnh hàng đầu của Adobe là Illustrator và Photoshop CS;
hỗ trợ ngôn ngữ tiếng Việt và tương thích với các hệ điều hành Linux, macOS vàMicrosoft Windows
Sử dụng phần mềm GIMP, nhóm đề tại thực hiện trình diễn thực tế một ứngdụng được sử dụng phổ biến và thường xuyên tương tự trên các điện thoại thôngminh hiện nay đó là làm mịn da mặt để loại bỏ những khiếm khuyết trên khuôn mặtngười được chụp ảnh (da mặt nổi mụn, bị rỗ, nốt ruồi, lỗ chân lông…) để tạo ra mộtbức ảnh mới đẹp hơn, chất lượng hơn
Các thao tác demo bao gồm:
+ Tải ảnh lên phần mềm: Click mở phần mềm GIMP => File => Open =>Chọn vị trí ảnh cần chỉnh sửa => Open
Trang 15+ Chỉnh sửa ảnh sử dụng bộ lọc thuật toán Wavelet: Click chuột phải vào hìnhảnh => Filters => Enhance => Wavelet - decompose.
Hình 6: Sử dụng thuật toán phân tích Wavelet để chỉnh sửa ảnh trong phần
mềm GIMP.
+ Tại cửa sổ Wavelet decompose hiện ra các tùy chọn:
Scales: Tùy chọn số thang Wavelet, tối đa có 7 thang tương ứng với các mức
độ xử lý từ thấp đến cao Tùy vào từng mục đích và ý định chỉnh sửa ảnh đểchọn các thang Wavelet phù hợp; Thông thường, ở phạm khi chỉnh sửa toàn bộbước ảnh thường áp dụng đồng thời nhiều thang Wavelet để cho ra kết quả tốtnhất
Hình 7: Cửa sổ chọn thang phân tích Wavelet.
Create a layer group to store the decompotitsion (tạo một nhóm các lớp phân
tích Wavelet)
Trang 16 Add a layer mask to each scales layers (Mỗi lớp phân tích Wavelet là một
Hình 8: Ảnh gốc và khu vực ria cằm được chon để làm đẹp sử dụng thuật
toán Wavelet trên phần mềm GIMP.
Wavelet scale 1 Nhóm Wavelet scale 1,2,3
Nhóm Wavelet scale 1,2,3,4,5 Nhóm Wavelet scale 1,2,3,4,5,6,7
Hình 9: Kết quả phân tích Wavelet tương ứng với các nhóm thang đo khác nhau.
Trang 17- Từ kết quả demo trên cho thấy, nếu để loại bỏ râu và làm đẹp da thì lựa chọn hợp
lý là kết hợp các thang Wavelet 1, 3, 4, 5, 6, 7 cho ra kết quả tốt nhất
=>
Hình 10: Kết quả trước và sau khi xử lý ảnh bằng Wavelet.
Các demo nâng cao chất lượng ảnh khác sử dụng phần mềm xử lý ảnh GIMP
Hình 11: Ảnh trước và sau khi Color Enhance trong GIMP
Hình 12: Ảnh gốc, ảnh qua lọc thông thường và ảnh qua lọc DWT trong GIMP
2 Mô phỏng 2D - DWT trong python
Trang 18Để thực hiện mô phỏng DWT có nhiều ngôn ngữ đã tích hợp sẵn các thư viện đểchạy thử nghiệm cũng như phát triển các phần mềm ứng dụng các phương pháp biếnđổi wavelet nói chung và DWT nói riêng Trong nội dung của tiểu luận trình bàychương trình mô phỏng DWT sử dụng ngôn ngữ Python và thư viện Pywaveletstrong ngôn ngữ này.
Hình13: Ví dụ code 2-D DWT trong Python
Để sử dụng được thư viện Pywavelets cần Install thư viện về bằng câu lệnh: pip
install pywt
Hình 14: Phép biến đổi Wavelet rời rạc 2 chiều (2D-DWT)
Input - Dữ liệu đầu vào lấy dữ liệu từ thư viện Data của thư viện
Output – Dữ liệu đầu ra là biến đổi DWT 2 chiều của hình ảnh đầu vào được thể hiện dưới dạng ảnh xám tương ứng 4 tham số:
LL – Hình ảnh xấp xỉ hình ảnh vào