3.1.1. Cơng cụ
Chương trình ứng dụng được xây dựng trên giao diện GUI sử dụng ngôn ngữ Python. Sở dĩ tác giả lựa chọn như vậy vì Python tích hợp thư viện của các phép tốn hình thái, các thư viện để hỗ trợ tính tốn các chỉ số đánh giá để từ đó tác giả có thể đưa ra các so sánh cũng như đánh giá hiệu quả cho các phương pháp sử dụng cho từng bài toán trong phần thực nghiệm này.
3.1.2.Tập dữ liệu thử nghiệm
Trong thử nghiệm này, tác giả sử dụng tập dữ liệu khoảng 300 ảnh bao gồm nhiều ảnh tự nhiên và do tác giả tự tạo theo các loại khác nhau như ảnh con người, khung cảnh, vật, chữ viết tay, tài liệu scan…. Các ảnh trong tập dữ liêu theo định dạng .bmp,
.png, .jpg được sử dụng có thể là ảnh xám hoặc ảnh màu với các kích thước khác nhau.
3.2. Phép tốn hình thái cơ bản
Ở phần này, tác giả thực hiện cài đặt sử dụng thư viện openCV với các phép tốn hình thái cơ bản bao gồm phép toán Dilation, phép toán Erosion, phép toán Opening và phép tốn Closing.
dilate Làm giãn hình ảnh bằng cách sử dụng một phần tử có cấu trúc
cụ thể, trong đó cũng chỉ định số lần sẽ thực hiện làm giãn.
erode Xóa các điểm ảnh bằng cách sử dụng phần tử có cấu trúc cụ thể.
Ở đây, ta cũng có thể chỉ định số lần thực hiện xóa.
morphologyEx Thực hiện các phép biến đổi hình thái nâng cao bằng
việc đưa vào các lựa chọn tương ứng với mục đích sử dụng và phẩn tử có cấu trúc cụ thể. Các lựa chọn này
Tác giả xây dựng chương trình với thao tác người dùng sẽ thực hiện chọn ảnh
mong muốn từ tập dữ liệu có sẵn, chương trình sẽ thực hiện các phép toán và đưa ra kết quả tương ứng. Dữ liệu vào: ảnh có định dạng *.png, *.jpg hay *.bmp.
Dữ liệu ra: Các ảnh kết quả tương ứng khi thực hiện phép tốn hình thái.
Hình 3.1. Các phép tốn hình thái cơ bản
3.3. Làm rõ đối tượng ảnh.
Bài tốn đặt ra ở đây sẽ loại bỏ nhiễu trong nền ảnh để làm rõ đối tượng tiền cảnh bằng việc sử dụng kết hợp một số phép tốn hình thái.
Dữ liệu vào: ảnh sẽ có định dạng *.png, *.jpg hay *.bmp.
Dữ liệu ra: ảnh kết quả được làm nét sẽ có cùng kích thước và định dạng với ảnh đầu vào. Giao diện chính và chức năng của chương trình như sau:
-Người dùng chọn ảnh mong muốn từ tập dữ liệu có sẵn.
-Chương trình hiển thị 2 ảnh: ảnh ban đầu và ảnh sau khi thao tác. -Người dùng thực hiện chỉnh sửa các chỉ số sau trên giao diện
có thể phép giãn ảnh, phép co ảnh, phép đóng, phép mở, phép tốn gradient hay “trúng-trượt” …
+, Radius: ảnh hưởng đến kích thước của các cạnh được nâng cao hoặc độ rộng của các viền cạnh, vì vậy giá trị này nhỏ sẽ nâng cao chi tiết ở quy mô nhỏ hơn. Giá trị này cao có thể gây ra quầng sáng ở các cạnh, một vành sáng mờ có thể phát hiện được xung quanh các vật thể.
+, Amount: được liệt kê dưới dạng phần trăm và kiểm soát độ lớn của mỗi lần vượt quá (tối hơn bao nhiêu và nhạt hơn bao nhiêu của các đường viền cạnh). Điều này cũng có thể được coi là mức độ tương phản được thêm vào ở các cạnh. Nó khơng ảnh hưởng đến chiều rộng của các viền cạnh.
- Chương trình thực hiện các xử lý tương ứng với thao tác của người dùng, đồng thời sẽ tính tốn các chỉ số đánh giá chất lượng ảnh.
Ở đây tác giả sử dụng thực hiện cài đặt chương trình sử dụng thuật tốn “mặt nạ không mờ” (unsharp mask). Đây là một kỹ thuật làm sắc nét hình ảnh, lần đầu tiên được thực hiện trong chụp ảnh phòng tối, nhưng hiện nay thường được sử dụng trong phần mềm xử lý ảnh kỹ thuật số. Tên của nó bắt nguồn từ thực tế là kỹ thuật sử dụng hình ảnh âm bản bị mờ, hoặc "khơng rõ nét", để tạo mặt nạ của hình ảnh gốc. Sau đó, kĩ thuật này kết hợp với hình ảnh gốc ban đầu, tạo ra hình ảnh ít mờ hơn so với hình ảnh gốc. Hình ảnh thu được, mặc dù rõ ràng hơn, nhưng có thể là sự thể hiện kém chính xác hơn đối với chủ thể của hình ảnh.[24]
Thử nghiệm này cho thấy nâng cao chất lượng hình ảnh như một bước tiền xử lý trước khi phân tích. Trong ví dụ này, bạn sửa độ sáng nền khơng đồng đều và chuyển hình ảnh thành hình ảnh nhị phân để giúp dễ dàng xác định các đối tượng tiền cảnh. Sau đó, ta có thể phân tích các đối tượng trong hình ảnh.
Kết quả: giá trị MSE là 0.22, giá trị PSNR là 6.48 và giá trị SSIM là 0.01.
3.4. Kết hợp các phép tốn hình thái để khử nhiễu ảnh.
Bài tốn đặt ra ở đây là cho trước ảnh đầu vào có nhiều chi tiết bị thừa, nhiễu và cần loại bỏ chúng để giữ lại những phần chính. Những chi tiết thừa có thể là vết mực lem, bị nhịe…
Dữ liệu vào: ảnh có định dạng *.png, *.jpg hoặc *.bmp
Dữ liệu ra: ảnh kết quả đã loại bỏ chi tiết thừa, có cùng kích thước và định dạng với ảnh đầu vào.
Ở đây, tác giả sử dụng 2 phép toán Opening và Closing để thực hiện khử nhiễu ảnh. Việc lựa chọn sử dụng phép toán nào trước là do người dùng lựa chọn trên giao diện chương trình. Tuy nhiên, với mục đích giải quyết bài tốn đặt ra để loại bỏ các chi tiết thừa trên ảnh nên tác giả thực hiện lần lượt phép toán Opening và Closing (theo như nội dung của 2.1.2.3)
Hình 3.3. Khử nhiễu ảnh
Kết quả: giá trị MSE là 0.04, giá trị PSNR là 13.87 và giá trị SSIM là 0.84. Ngồi ra, hình ảnh OCR đơn giản cũng được thử nghiệm ở đây.
Hình 3.4. Khử nhiễu ảnh OCR
Kết quả: giá trị MSE là 0.02, giá trị PSNR là 16.88 và giá trị SSIM là 0.81. Có thể thấy, hình ảnh kết quả thu được đã rõ hơn và loại bỏ các nhiễu trong ảnh.
3.5. Kết luận
Sau khi thử nghiệm với các phương pháp, ta có bảng kết quả đánh giá các chỉ số như sau:
Thử nghiệm MSE PSNR SSIM
Làm rõ ảnh 0.22 6.48 0.01
Khử nhiễu ảnh 0.04 13.87 0.84
Khử nhiễu ảnh OCR 0.02 16.88 0.81
Bảng 2. Kết quả thực nghiệm
Từ kết quả thử nghiệm trong bảng, ta thấy rằng nội dung chính của các ảnh sau khi nâng cao chất lượng ảnh gần như không thay đổi. Với các kết quả này, ta thấy rằng thử nghiệm khử nhiễu cho kết quả khá tốt trong việc nâng cao chất lượng ảnh.
KẾT LUẬN
Các phép tốn hình thái là vấn đề cơ bản trong toán học đã và đang được ứng dụng trong lĩnh vực công nghệ thông tin, đặc biệt là trong lĩnh vực xử lý ảnh. Các phép tốn hình thái là các phép tốn liên quan đến cấu trúc hình học của đối tượng và thường được xây dựng trên 2 phép toán cơ bản là phép giãn nở (DILATION) và phép co (EROSION). Mục tiêu của luận văn là tìm hiểu các phép tốn hình thái học trên cơ sở đó ứng dụng vào biểu diễn hình dạng của đối tượng. Trong quá trình tìm hiểu và xây dựng chương trình thử nghiệm, tơi đã đạt được một số kết quả nhất định như sau:
Kết quả đã đạt được
1. Nghiên cứu các khái niệm cơ bản về xử lý ảnh và phép tốn hình thái: đưa ra các khái niệm xử lý ảnh, quá trình xử lý ảnh và các khái niệm về phép tốn hình thái học; trình bày phép tốn hình thái học trên ảnh nhị phân, ảnh xám và nêu ra tính chất nội suy của phép tốn hình thái học và các phép lọc hình thái học cho ảnh OCR.
2. Xây dựng chương trình thử nghiệm phép lọc hình thái học ứng dụng cho ảnh tài liệu kém
chất lượng: cài đặt thử nghiệm phép lọc hình thái và đánh giá. Chương trình thử nghiệm đã đưa ra việc cài đặt các phép tốn hình thái cơ bản, sử dụng kết hợp các phép tốn hình thái cơ bản trong việc khử nhiễu ảnh, làm rõ đối tượng ảnh. Tuy nhiên, vì q trình nghiên cứu vẫn cịn nhiều thiếu sót nên tác giả sẽ cố gắng tìm hiểu và cải thiện thêm trong tương lai để áp dụng được nhiều hơn trong thực tiễn.
Định hướng phát triển
Tối ưu các thuật toán để cải thiện tốc độ cũng như chất lượng ảnh.
Căn cứ vào đánh giá MSE, PSNR và SSIM để điều chỉnh các tham số cho các thuật toán.
TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] Phạm Việt Bình (2006), “Một số tính chất của phép tốn hình thái và ứng dụng trong phát hiện biên”, Tạp chí Tin học và Điều khiển học.
[2] PGS.TS Nguyễn Quang Hoan (2006) – Giáo trình mơn học xử lý ảnh, học viện cơng nghệ bưu
chính viễn thơng.
[3] Ths. Hồ Đức Lĩnh (2013) - Khoa Công nghệ Thông tin – Đại học Đông Á - Bài viết “Xử lý
hình thái học trên ảnh và ứng dụng”.
[4] Trần Đức Toàn – Luận văn thạc sỹ “Nghiên cứu một số kỹ thuật nâng cao chất lượng ảnh nhị
phân và ứng dụng”.
[5] Nguyễn Xuân Vinh (2010), Phép tốn hình thái học, Luận văn khoa học Thạc sỹ công nghệ
thông tin, Khoa Công nghệ thông tin – Đại học Thái Nguyên.
Tiếng Anh
[6] Alessandro Ledda (Oct. 2006), Mathematical Morphology in Image Processing, Doctor of
Engineering Science, Department of Telecommunications, and Information Processing.
[7] Aditya Challa, Sravan Danda, B S Daya Sagar, Laurent Najman (2018), Some Properties of
Interpolations Using Mathematical Morphology, IEEE Transactions on Image Processing, vol.
27, no. 4, pp. 2038-2048.
[8] Álvar-Ginés Legaz-Aparicio, Rafael Verdu-Monedero, Jesus Angulo (2018), “Adaptive morphological filters based on a multiple orientation vector field dependent on image localfeatures”, Journal of Computational and Applied Mathematics, pp. 965-981.
[9] Bernhard Burgeth, Andreas Kleefeld, Bent Naegel, Nicolas Passat, Benjamin Perret (2019),
Mathematical Morphology and Its Applications to Signal and Image Processing, Springer
Nature Switzerland AG, Gewerbestrasse 11, 6330 Cham, Switzerland
[10] Charles Jacobs, Patrice Y. Simard, Paul Viola, and James Rinker (2005), “Text Recognition of Low-resolution Document Images”, Eighth International Conference on Document Analysis
and Recognition (ICDAR'05), Seoul, South Korea, pp. 695-699.
[11] Chris Solomon, Toby Breckon (2011), Fundamentals of Digital Image Processing: Practical
[12] Giulia Boato, (Member, IEEE), Duc-Tien Dang-Nguyen, (Member, IEEE), and Francesco G. B. De Natale, (Senior Member, IEEE) (2020), "Morphological Filter Detector for Image Forensics Applications", Morphological Filter Detector for Image Forensics Applications,
Vol.8, pp. 13549-13560.
[13] Khairul Anuar Mat Said, Asral Bahari Jambek (2016), A Study on Image Processing Using
Mathematical Morphological, School of Microelectronic Engineering, Universiti Malaysia
Perlis, Perlis, Malaysia
[14] Laurent Najman, Hugues Talbot (2010), Mathematical Morphology From Theory to
Applications, Wiley-ISTE
[15] Dr. Pierre Soille (2004), Morphological Image Analysis - Principles and Applications, Springer-Verlag Berlin Heidelberg
[16] Rafael C. Gonzalez, Richard E. Woods, Steven L. Eddins (2008), Digital Image Processing
using Matlab, Gatesmark.
[17] Shi-Yuan Ma, Ashraf Khalil, Hassan Hajjdiab and Hichem Eleuch (2020),
Quantum Dilation and Erosion, Licensee MDPI, Basel, Switzerland.
[18] Xaro Benavent, Esther Dura, Francisco Vegara, and Juan Domingo (2012), “Mathematical
Morphology for Color Images: An ImageDependent Approach”, Mathematical Problems in
Engineering, pp. 1-18.
[19] Wilhelm Burger, Mark J. Burge (2009), Principles of Digital Image Processing: Fundamental
Techniques, Sprigner.
[20] Morphological Operations in Image Processing (Jan. 2020),
https://himnickson.medium.com/morphological-operations-in-image- processing- cb8045b98fcc [21] https://en.wikipedia.org/wiki/Structural_similarity [22] https://viblo.asia/p/cac-chi-so-danh-gia-duoc-su-dung-cho-bai-toan-image- generation- is-fid-psnr-ssim-XL6lA0zDZek [23] https://www.imatest.com/docs/ssim/ [24] https://en.wikipedia.org/wiki/Unsharp_masking [25] http://www.dfstudios.co.uk/articles/programming/image-programming- algorithms/image-processing-algorithms-part-6-gamma-correction/