MỘT SỐ VẤN ĐỀ CƠ BẢN TRONG XỬ LÝ ẢNH
Một số khái niệm
1.1.1 Khái niệm về ảnh số Ảnh số là tập hợp hữu hạn các điểm ảnh với mức xám phù hợp dùng để mô tả gần nhất với ảnh thật Số điểm ảnh xác định độ phân giải của ảnh, độ phân giải càng cao thì càng thể hiện rõ nét các đặc điểm của tấm hình, càng làm cho tấm ảnh trở nên thực và sắc nét hơn Điểm ảnh là một phần tử của ảnh số tại tọa độ (x, y) với độ xám hoặc màu nhất định Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp sao cho mắt người cảm nhận được sự liên tục về không gian và mức xám (hoặc màu) của ảnh số gần như ảnh thật Mỗi phần tử trong ma trận được gọi là một phần tử ảnh
Mức xám là kết quả của sự biến đổi độ sáng của điểm ảnh, thường được xác định trong khoảng từ 0 đến 255 Độ phân giải của ảnh là mật độ điểm ảnh trên ảnh số, với khoảng cách giữa các điểm ảnh được chọn để mắt người thấy được sự liên tục của ảnh Ảnh đen trắng chỉ bao gồm hai màu: đen và trắng, và được phân thành L mức Nếu sử dụng B bit để mã hóa mức đen trắng, thì L được xác định là L = 2^B Với B=1, chỉ có 2 mức: mức 0 (tối) và mức 1 (sáng), tức là ảnh nhị phân Nếu L lớn hơn 2, ta có ảnh đa cấp xám; với 8 bit, số mức xám có thể biểu diễn là 256.
Trong hệ thống màu RGB, mức độ cường độ màu được biểu diễn từ 0 đến 255, với 0 là màu đen nhất và 255 là màu sáng nhất Ảnh màu được tạo thành từ ba màu cơ bản: đỏ (R), lục (G) và lam (B) Mỗi màu trong ảnh màu được lưu trữ riêng biệt như một ảnh đa cấp xám, dẫn đến việc không gian lưu trữ cho ảnh màu lớn hơn gấp ba lần so với ảnh đa cấp xám có cùng kích thước.
1.1.2 Tổng quan về một hệ thống xử lý ảnh
Xử lý ảnh là một lĩnh vực khoa học mới mẻ, đặc biệt trong ngành công nghiệp, nhưng đang phát triển nhanh chóng Sự phát triển này đã thúc đẩy các trung tâm nghiên cứu và ứng dụng, cùng với việc phát triển máy tính chuyên dụng cho lĩnh vực này.
Tổng quan về một hệ thống xử lý ảnh được thể hiện bằng hình ảnh bên dưới:
Hình 1-1 Tổng quan về hệ thống xử lý ảnh
Quá trình thu nhận ảnh bắt đầu với việc sử dụng camera, trong đó ảnh thường được nhận dưới dạng tín hiệu tương tự từ các loại camera ống kiểu CCIR, hoặc tín hiệu số hóa từ các thiết bị CCD (Charge Coupled Device) Ngoài ra, ảnh cũng có thể được thu nhận thông qua các bộ cảm ứng (sensor) hoặc được quét trên máy scanner.
Số hóa là quá trình chuyển đổi tín hiệu tương tự thành tín hiệu rời rạc thông qua việc lấy mẫu và lượng hóa, trước khi tiến hành xử lý, phân tích hoặc lưu trữ.
Quá trình phân tích ảnh bao gồm nhiều công đoạn nhỏ, bắt đầu với việc tăng cường ảnh (Enhancement) nhằm nâng cao chất lượng hình ảnh Ảnh có thể bị suy yếu do thiết bị thu nhận, nguồn sáng hoặc nhiễu, vì vậy cần khôi phục để làm nổi bật các đặc tính chính hoặc đưa ảnh về trạng thái gần giống gốc Các giai đoạn tiếp theo bao gồm phát hiện biên (Edge Detection), phân vùng ảnh (Image Segmentation) và trích chọn đặc điểm.
Cuối cùng, tùy theo mục đích của người dùng sẽ là giai đoạn nhận dạng, phân lớp hoặc là các quyết định khác.
Kỹ thuật lọc nhiễu trong xử lý ảnh
Quá trình xử lý ảnh này liên quan đến việc thay đổi giá trị pixel ban đầu của ảnh đầu vào sang giá trị mới thông qua việc sử dụng ma trận hoặc cửa sổ nhân chập Tất cả các điểm ảnh trên ảnh sẽ được nhân chập với ma trận, với tâm của ma trận được đặt trùng vào vị trí của pixel đang được tính toán, từ đó làm thay đổi giá trị của pixel ban đầu.
Giá trị của pixel ban đầu được thay đổi theo công thức (1 1)
I src là giá trị điểm ảnh đầu vào trước khi thực hiện phép nhân chập tại vị trí tọa độ (x, y)
I dst giá trị điểm ảnh đầu ra khi đã thực hiện phép nhân chập
M là giá trị của ma trận nhân chập M tại tọa độ (u, v) n = (kích thước ma trận - 1) /2 và lấy tâm của ma trận nhân chập làm điểm gốc
Ví dụ: Ta có một ma trận điểm ảnh I và ma trận nhân chập M như sau:
Khi đó ta có các giá trị lần lượt là:
Kích thước ma trận nhân chập =3
Ta xét ví dụ :Idst (2, 2) = Isrc (2, 2) *M (u, v) Ở đây (u, v) [-1, 0, 1]
Sau khi thực hiện phép nhân chập, giá trị điểm ảnh Isrc (2, 2 ) từ giá trị 7 sẽ được thay đổi thành 201
Bộ lọc số là hệ thống biến dạng phân bố tần số của các thành phần tín hiệu theo các chỉ tiêu nhất định Việc sử dụng lọc số đóng vai trò quan trọng trong việc tạo ra các hiệu ứng hình ảnh, bao gồm các hiệu ứng làm mờ (Blur) và làm trơn (Smooth).
Nguyên tắc cơ bản của các phương pháp lọc số là thực hiện phép nhân chập giữa ma trận ảnh và ma trận lọc (Kernel) Mỗi loại lọc sử dụng một ma trận lọc riêng biệt, và không có quy định cụ thể nào cho việc xác định kích thước ma trận M Kích thước của ma trận M phải là một số lẻ, như 3x3 hay 5x5 Ma trận lọc còn được gọi là cửa sổ chập, cửa sổ lọc hoặc mặt nạ.
Nguyên tắc lọc ảnh được thể hiện qua công thức (1 2)
Isrc: Là ảnh gốc được sử dụng để lọc số ảnh
Idst: Là ảnh ra sau khi thực hiện xong phép lọc số ảnh
M: Là ma trận lọc (Mask, kernel)
*: Là phép toán nhân chập
Tpt là tổng các phần tử trong ma trận M Khi đó tổng Tpt các phẩn tử trong ma trận M thường là 1
Nếu Tpt > 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (Idst) có độ sáng lớn hơn so với ảnh ban đầu (Isrc)
Nếu Tpt < 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (Idst) có độ sáng nhỏ hơn so với ảnh ban đầu (Isrc)
1.2.3 Một số kỹ thuật lọc nhiễu
Lọc trung bình là một kỹ thuật lọc tuyến tính, hoạt động như một bộ lọc thông thấp Thuật toán này sử dụng một cửa sổ lọc 3x3 để quét qua từng điểm ảnh của ảnh đầu vào Tại mỗi điểm ảnh, giá trị của các điểm ảnh trong vùng 3x3 của ảnh gốc được đưa vào ma trận lọc Giá trị điểm ảnh của ảnh đầu ra được tính bằng cách lấy giá trị trung bình của tất cả các điểm ảnh trong cửa sổ lọc Quá trình tính toán bao gồm hai bước: tính tổng các thành phần trong cửa sổ lọc và chia tổng này cho số lượng phần tử của cửa sổ lọc.
Bộ lọc này được minh họa trong hình 1-2
Hình 1-2 Hình ảnh minh họa về phép lọc trung bình
Các bước cơ bản của kỹ thuật lọc trung bình:
Quét cửa sổ lọc lần lượt lên các thành phần của ảnh đầu vào; điền các giá trị được quét vào cửa sổ lọc
Xử lý bằng cách thao tác trên các thành phần của cửa sổ lọc
Tính giá trị trung bình các thành phần trong cửa sổ lọc
Gán giá trị trung bình này cho ảnh đầu ra
Lọc Trung vị là một kỹ thuật lọc phi tuyến hiệu quả trong việc xử lý hai loại nhiễu phổ biến, bao gồm nhiễu đốm và nhiễu muối tiêu.
Kỹ thuật lọc trung vị là một phương pháp phổ biến trong xử lý ảnh, sử dụng ma trận 3x3 để quét qua từng điểm ảnh của ảnh đầu vào Tại mỗi vị trí điểm ảnh, thuật toán sẽ lấy giá trị của các điểm ảnh trong vùng 3x3 và sắp xếp chúng theo thứ tự Cuối cùng, giá trị điểm ảnh ở giữa (trung vị) của dãy đã được sắp xếp sẽ được gán cho điểm ảnh tương ứng trong ảnh đầu ra.
Bộ lọc này được minh họa trong hình 1-3
Hình 1-3 Hình ảnh minh họa về phép lọc trung vị
Các bước cơ bản của kỹ thuật lọc trung vị
Quét cửa sổ lọc lên các thành phần của ảnh gốc; điền các giá trị được quét vào cửa sổ lọc
Lấy các thành phần trong của sổ lọc để xử lý
Sắp xếp theo thứ tự các thành phần trong cửa sổ lọc
Lưu lại thành phần trung vị, gán cho ảnh output
Kết quả từ hai bộ lọc trung vị và lọc trung bình được trình bày trong hình 1-4 cho thấy bộ lọc trung vị hoạt động hiệu quả hơn bộ lọc trung bình khi sử dụng cửa sổ lọc 3x3 Bộ lọc trung vị ít làm mờ các cạnh của hình ảnh, đồng thời giúp hình ảnh sau khi lọc trở nên sắc nét hơn đáng kể so với bộ lọc trung bình.
Hình 1-4 Kết quả lọc ảnh theo 2 phương pháp trung bình và trung vị
(a) Ảnh gốc-không bị nhiễu
(b) Ảnh gốc sau khi có thêm nhiễu
(c) Kết quả lọc trung bình
(d) Kết quả lọc trung vị
Kỹ thuật tìm biên trong xử lý ảnh
1.3.1 Một số khái niệm Điểm biên: Một điểm ảnh được coi là điểm biên nếu có sự thay đổi nhanh hoặc đột ngột về mức xám (hoặc màu) Ví dụ trong ảnh nhị phân, điểm đen gọi là điểm biên nếu lân cận nó có ít nhất một điểm trắng Đường biên: là tập hợp các điểm biên liên tiếp tạo thành một đường biên Ý nghĩa của đường biên trong xử lý: Thứ nhất, đường biên là một loại đặc trưng cục bộ tiêu biểu trong phân tích, nhận dạng ảnh Thứ hai, người ta sử dụng biên làm phân cách các vùng xám (màu) cách biệt Ngược lại, người ta cũng sử dụng các vùng ảnh để tìm đường phân cách Đường biên là nơi mà các điểm ảnh lân cận nhau có cường độ thay đổi mạnh một cách đột ngột Một số kiểu đường biên hay gặp trên thực tế được minh họa trên hình 1-5
Hình 1-5 Một số kiểu đường biên thông dụng 1.3.2 Các phương pháp phát hiện biên
Các phương pháp phát hiện biên truyền thống dựa vào phép nhân chập giữa bức ảnh f(x, y) và bộ lọc 2D h(x, y), thường được gọi là mặt nạ Công thức phát hiện biên được thể hiện như sau: h(x, y) * f(x, y) = ∫∫ h(k, k) f(x + 2k, y + 2k) dk².
Cấu trúc và giá trị của các toán tử phát hiện biên quyết định hướng đặc trưng mà chúng nhạy cảm với biên Một số toán tử thích hợp cho các đường biên ngang, trong khi một số khác lại hiệu quả hơn cho biên thẳng đứng hoặc theo hướng đường chéo Hiện nay, có nhiều phương pháp phát hiện biên, nhưng chúng có thể được chia thành hai nhóm chính: phát hiện biên sử dụng Gradient và phương pháp Laplacian.
Phương pháp phát hiện biên sử dụng Gradient, bao gồm các toán tử Roberts, Prewitt, Sobel và Canny, dựa trên việc xác định giá trị cực đại và cực tiểu của đạo hàm bậc nhất của ảnh Đạo hàm bậc nhất theo hướng ngang và dọc được tính toán theo công thức (1.4) x y f.
Biên độ của vector gradient, hay độ lớn tổng cộng của giá trị đạo hàm tại biên, được xác định bằng cách kết hợp cả hai giá trị theo công thức (1.5).
Hướng của vector gradient được xác định theo công thức (1 6) tan 1 Gx f Gy
Hướng của biên sẽ vuông góc với hướng của vector gradient này
Sobel sử dụng hai mặt nạ kích thước [3 x 3], trong đó một mặt nạ là sự quay 90° của mặt nạ kia, nhằm phát hiện các đường biên theo chiều đứng và chiều ngang hiệu quả Qua phép tích chập giữa ảnh và các mặt nạ này, ta thu được các gradient theo chiều đứng và chiều ngang Gx.
Gy Toán tử Sobel có dạng như hình 1-6
Phương pháp Prewitt gần giống với Sobel Đây là phương pháp lâu đời nhất, cổ điển nhất Toán tử Prewitt được mô tả trên hình 1-7
Giống như phương pháp Sobel, chúng ta thực hiện việc tính toán đường biên theo chiều ngang và chiều dọc một cách riêng biệt bằng cách sử dụng hai mặt nạ như hình 1-8, sau đó tổng hợp kết quả để xác định đường biên thực sự của ảnh.
Biến đổi khoảng cách
Biến đổi khoảng cách (Distance transform) là thuật toán chuyển đổi giá trị của điểm ảnh dựa trên khoảng cách tới điểm biên trong bức ảnh Thông thường, một bức ảnh được phân chia thành nhiều thành phần khác nhau.
Điểm đối tượng là những điểm trực tiếp cấu thành lên đối tượng Trong ảnh nhị phân, điểm đối tượng là những điểm có mức xám bằng 1
Điểm nằm ngoài đối tượng, hay còn gọi là điểm nền, trong ảnh nhị phân, điểm nền là những điểm có giá trị mức xám bằng 0
Giao của các điểm đối tượng và các điểm nền được gọi là biên ảnh viết tắt là B
1.4.2 Thuật toán biến đổi khoảng cách đơn giản
Thuật toán biến đổi khoảng cách đơn giản được trình bày như sau: Đầu tiên, chỉ định mỗi phần tử trên đường biên một giá trị khoảng cách là 0, I (s) =0
Trong bài viết này, chúng ta xác định điểm "s" nằm trong đường biên B Đối với mỗi điểm "t" không thuộc B, chúng ta gán giá trị I(t) bằng giá trị nhỏ nhất của khoảng cách Euclid d(s, t) giữa điểm s và điểm t.
Giải thuật của thuật toán này được trình bày bên dưới: for (y = 1; y