Khái niệm: Giả sử giá trị mức xám của điểm ảnh Pi là A(Pi), phƣơng pháp để phân lớp các pixel nhƣ sau: Điểm Pi Ck nếu Tj ≤ A(Pi) < Tj+1, trong đó Tj, Tj+1 lần lƣợt là giá trị ngƣỡng dƣới và ngƣỡng trên của lớp Ck.
Vấn đề: Xác định các ngƣỡng Ti, Tj giữa các lớp và kết quả của quá trình phân lớp là mỗi lớp Ck sẽ cho một vùng ảnh Rk tƣơng ứng.
Có 2 phƣơng pháp để xác định ngƣỡng Ti, Tj:
- Xác định ngƣỡng dựa trên biểu đồ Histogram (nếu có thể). Chọn ngƣỡng dựa trên biểu đồ Histogram.
- Phƣơng pháp xác định ngƣỡng tự động dựa trên quá trình học theo thuật toán ISODATA.
Sau đây, sẽ lần lƣợt tìm hiểu về từng phƣơng pháp xác định ngƣỡng ở trên:
19
a, Xác định ngưỡng dựa trên biểu đồ Histogram
Việc tìm ngƣỡng biên độ rất hữu ích khi các đặc điểm của biên độ đủ để mô tả đối tƣợng. Giá trị của biên độ là tiêu chuẩn đƣa ra một khoảng đại diện cho các đặc trƣng riêng biệt của đối tƣợng. Kỹ thuật xác định ngƣỡng rất hữu ích trong việc phân vùng ảnh nhị phân nhƣ là các tài liệu in, các dòng vẽ và đồ họa, ảnh màu, … Việc chọn ngƣỡng là một bƣớc rất quan trọng trong phƣơng pháp này. Các bƣớc chọn ngƣỡng nhƣ sau:
1. Xem xét Histogram của ảnh đƣợc để xác định các đỉnh và các khe. Nếu ảnh có dạng rắn lƣợn (nhiều đỉnh và khe), thì các khe có thể đƣợc sử dụng để chọn ngƣỡng.
2. Chọn ngƣỡng t sao cho xác định đƣợc số ŋ của toàn bộ mẫu < t.
3. Điều chỉnh ngƣỡng dựa trên xem xét lƣợc đồ xám của các điểm lân cận. 4. Chọn ngƣỡng bởi việc lấy mẫu Histogram của những điểm mà thỏa mãn
tiêu chí để chọn. Ví dụ nhƣ, trong các ảnh có độ tƣơng phản thấp, histogram của các pixel sẽ có độ lớn Laplacian g(m,n) lớn hơn giá trị t định trƣớc (sao cho từ 5% đến 10% số điểm ảnh với gradient lớn nhất sẽ coi nhƣ biên) sẽ cho phép xác định các đặc tính ảnh lƣỡng cực tốt hơn ảnh gốc.
5. Khi có một mô hình phân lớp xác suất, việc xác định ngƣỡng dựa vào tiêu chuẩn nhằm cực tiểu của sai số hoặc một số tính chất theo định luật Bayes. Ví dụ: Phân vùng ảnh tƣợng đài Washington trên hình 2.2.
Trƣớc tiên, cƣờng độ thấp là ngƣỡng để tách các khu vực rất tối (các cây ở trong ảnh) để loại cây ra khỏi ảnh.
Sau đó, tìm một hình chữ nhật bao quanh tƣợng đài bởi việc chọn ngƣỡng các đƣờng ngang và dọc.
Ngƣỡng
Giá trị độ sáng Số điểm ảnh
20
Hình 2.1: Chọn ngƣỡng các đƣờng ngang dọc
Đƣờng viền sau bao quanh đối tƣợng nằm trong hình chữ nhật cho ta các đối tƣợng đã đƣợc phân vùng.
Hình 2.2: Phân vùng ảnh tƣợng đài Washington Quá trình nhị phân hóa cũng chính là việc phân theo ngƣỡng, tức là:
Out (x,y) = 1 với In(x, y) ≥ T 0 với In(x, y) < T
Với T là ngƣỡng cần xác định.
Trong một số trƣờng hợp, cần biến đổi lƣợc đồ xám theo công thức:
1 1 0 0 ( ) ( ( ,1)) ( ( ,1) ) N N K i H i t e k f k i
Với e (k,1) là ảnh đầu ra của việc phát hiện biên, (i) là hàm Delta, t(e(k,1) tính bởi: Horizontai and vertical projection analysis Contour following 255 60 255 Ảnh đầu vào Tree removed image Ảnh đã phân vùng h(n) n v(m) m
21 1 ( ( ,1)) 1 ( ,1) t e k e k
Để có thể hiểu rõ hơn về nguyên tắc phân vùng dựa vào ngƣỡng biên độ xét ví dụ sau:
Hình 2.3: Lƣợc đồ hình rắn lƣợn và cách chọn ngƣỡng
Giả sử ảnh có lƣợc đồ xám nhƣ hình trên ta chọn các ngƣỡng nhƣ hình vẽ: T0 = Lmin, T4 = Lmax.
Ta có 5 ngƣỡng và phân vùng thành 4 vùng, ký hiệu là Ck là vùng thứ k của ảnh, k=1, 2, 3, 4.
Cách phân vùng theo nguyên tắc:
Pi Ck nếu Tk-1A(Pi ) < Tk, k =1, 2, 3, 4.
Sau khi phân vùng xong, nếu ảnh rõ nét thì việc phân vùng coi nhƣ kết thúc. Trƣờng hợp ngƣợc lại cần điều chỉnh ngƣỡng. Thuật toán ISODATA cho phép điều chỉnh ngƣỡng theo từng bƣớc cho đến khi ta có một phân vùng nhƣ ý.
T0 T1 T2 T3 T4 L mức xám
22
b, Xác định ngưỡng dựa trên thuật toán tam giác
Hình 2.4: Xác định ngƣỡng dựa trên thuật toán tam giác
Thuật toán này do Zack đƣa ra và đƣợc minh họa ở hình 2.4. Trong hình này, dễ dàng nhận thấy một đƣờng thẳng đã đƣợc xây dựng bằng cách nối từ giá trị lớn nhất của lƣợc đồ tại độ sáng bmax đến giá trị nhỏ nhất của lƣợc đồ sáng bmin. Với mỗi độ sáng b trong khoảng [bmax, bmin], sẽ tính đƣợc khoảng cách d từ giá trị lƣợc đồ tại b là h[b] đến đƣờng thẳng đã có. Giá trị bo ứng với khoảng cách lớn nhất sẽ đƣợc chọn làm giá trị ngƣỡng .
Kỹ thuật lấy ngƣỡng không nhất thiết phải đƣợc áp dụng cho toàn bộ ảnh, mà có thể áp dụng cho từng vùng ảnh một. Các giá trị ngƣỡng đƣợc tính riêng biệt cho từng vùng một và sau đó đƣợc kết hợp lại thông qua phép nội suy để hình thành nên một mặt ngƣỡng cho toàn bộ ảnh. Trong thuật toán mới này, kích thƣớc của các vùng cần đƣợc chọn một cách thích hợp sao cho có một lƣợng đáng kể các điểm ảnh ở trong một vùng, nhằm phục vụ cho việc tính lƣợc đồ và xác định ngƣỡng tƣơng ứng. Tính hữu ích của thuật toán này, cũng nhƣ nhiều thuật toán khác, sẽ phụ thuộc vào từng ứng dụng cụ thể.
c, Xác định ngưỡng dựa trên thuật toán ISODATA
- Bƣớc khởi đầu: (t = 0)
+ Dự đoán đƣợc số vùng của ảnh: Nc
+ Xác định đƣợc giá trị bắt đầu của ngƣỡng của lớp theo cách sau: Chia [Lmin, Lmax] thành Nc phần bằng nhau.
23
Lmin: Giá trị nhỏ nhất của mức xám của ảnh ban đầu Lmax: Giá trị lớn nhất của mức xám của ảnh ban đầu Giả sử ta có Nc = 4: T0 (0) = Lmin, T4 (0) = Lmax T1 (0) = T0 (0) + (Lmax - Lmin)/ Nc T2 (0) = T1 (0) + (Lmax - Lmin)/ Nc T3 (0) = T2 (0) + (Lmax - Lmin)/ Nc - Các bƣớc lặp:
+ Thực hiện phân lớp theo các Tj (t-1), j = [0, Nc], điểm ảnh PiCk nếu nhƣ Tj ≤ A(Pi) < Tj+1, trong đó lặp với mọi lớp Ck thuộc khoảng [0, Nc].
+ Tính giá trị trung bình của các điểm ảnh của các lớp ở bƣớc lặp t: mk (t) + Tính giá trị ngƣỡng ở bƣớc lặp t: Tj (t) theo công thức:
Tj (t) = mk(t)+mk+1(t+1) 2
Nếu tồn tại Tj (t) = Tj (t-1) hoặc mk(t) = mk+1(t-1) thì thuật toán dừng lại và sang bƣớc cuối cùng, ngƣợc lại thì sang bƣớc tiếp theo.
Từ các bƣớc trên sẽ tìm đƣợc các ngƣỡng Tj là hằng số nên thuật toán hội tụ. Do đó thực hiện các công việc sau:
- Phân các điểm ảnh theo các ngƣỡng Tj đã tìm đƣợc.
- Đánh nhãn các vùng ảnh Rk bằng thuộc tính chung và hiển thị các vùng (phân tách).
- Hiệu chỉnh các vùng (số vùng theo kết quả hiển thị các vùng Nc có thể tăng, giảm): Nếu Nc thay đổi thì sẽ phải dự đoán lại số vùng và thực hiện lại từ đầu.