2.5.4 Phương pháp chiết tách cạnh Canny
Sự phát triển của công nghệ thông tin đã giúp cho dữ liệu viễn thám ngày càng cung cấp thông tin chi tiết hơn về đối tƣợng qua dữ liệu ảnh, trong xử lý ảnh số, điều này đƣợc thể hiện rõ ràng trong độ phân giải bức xạ với mức lƣợng tử ngày càng cao. Đối với các dữ liệu ảnh viễn thám trƣớc đây, độ phân giải bức xạ thƣờng ở mức thấp ( 8bits), do vậy các thuật tốn tuyến tính có thể áp dụng đƣợc. Tuy nhiên, khi giá trị lƣợng tử hóa tăng lên (12-16bits) thì độ chính xác khi sử dụng phƣơng pháp này khơng cịn đảm bảo, do đó cần phải có phƣơng pháp thích hợp hơn. Đã có các nghiên cứu sử dụng thuật tốn mờ Fuzzy hay học máy,… nhƣng khả năng ứng dụng còn khá hạn chế vì tập mẫu khơng nhiều hay chƣa đáp ứng đƣợc độ chính xác cần thiết. Với ƣu điểm của ảnh gradient là làm nổi bật cạnh, gờ ảnh, nghiên cứu sinh thử nghiệm áp dụng dạng ảnh này để chiết tách cạnh theo phƣơng pháp Canny [75,45], phục vụ cho cơng tác xác định ESF để tính tốn MTF thay cho các thuật toán đã và đang đƣợc sử dụng.
Phƣơng pháp Canny đƣợc thực hiện theo 4 bƣớc nhƣ sau [75,45]:
- Lọc nhiễu: Do quá trình chiết tách cạnh dễ bị ảnh hƣởng bởi nhiễu trong ảnh nên
cần tiến hành lọc nhiễu. Bƣớc này sẽ làm mịn ảnh bằng cách sử dụng bộ lọc Gauss kích thƣớc 5x5 để lọc nhiễu trên ảnh.
- Tính Gradient và hướng gradient: dùng bộ lọc Sobel X và Sobel Y (3x3) để tính
đƣợc ảnh đạo hàm Gx (theo hàng) và Gy (theo cột). Sau đó, tiếp tục tính ảnh Gradient và góc của Gradient theo cơng thức. Ảnh đạo hàm Gx và Gy là ma trận, thì kết quả tính ảnh đạo hàm Gradient cạnh cũng là một ma trận cùng kích thƣớc, mỗi điểm ảnh trên ma trận này thể hiện độ lớn của biến đổi mức sáng ở vị trí tƣơng ứng trên ảnh gốc. Tƣơng tự, ma trận góc cũng có cùng kích thƣớc, mỗi điểm ảnh trên ma trận góc thể hiện góc, hay nói cách khác là hƣớng của cạnh.
- Loại bỏ giá trị không phải cực đại (Non-maximum Suppression, NMS): loại bỏ
các điểm ảnh ở vị trí khơng phải cực đại toàn cục. Ở bƣớc này, dùng một ma trận lọc kích thƣớc 3x3 lần lƣợt chạy qua các điểm ảnh trên ảnh gradient. Trong quá trình lọc, xem xét xem độ lớn gradient của điểm ảnh trung tâm có phải là cực đại (lớn nhất trong cục bộ - local maximum) so với các gradient ở các điểm ảnh xung quanh. Nếu là cực đại, sẽ ghi nhận sẽ giữ điểm ảnh đó lại. Cịn nếu điểm ảnh đó khơng phải là cực đại lân cận, sẽ đặt độ lớn gradient của nó về giá trị 0. Chỉ thực hiện so sánh điểm ảnh trung tâm với 2 điểm ảnh lân cận theo hƣớng gradient (ví dụ hình 2.21). Ví dụ: nếu hƣớng gradient đang là 0 độ, ta sẽ so điểm ảnh trung tâm với điểm ảnh liền trái và liền phải nó. Trƣờng hợp khác nếu hƣớng gradient là 45 độ, ta sẽ so sánh với 2 điểm ảnh hàng xóm là góc trên bên phải và góc dƣới bên trái của điểm ảnh trung tâm. Tƣơng tự cho 2 trƣờng hợp hƣớng gradient còn lại. Kết thúc bƣớc này ta đƣợc một mặt nạ nhị phân.