Các phép toán vùng đệm (buffer) làm tăng kích th−ớc của đối t−ợng bằng việc mở rộng ranh giới của nó.
Hình 3.14. Các ví dụ về vùng đệm (điểm, đ−ờng, vùng)
Nhận hoặc lựa chọn các đặc tr−ng bên trong hoặc bên ngoài ranh giới của vùng đệm.
- Xác định các vị trí nằm ngoài các nhà máy hóa chất chẳng hạn nó không cách các nhà máy hóa chất d−ới 10 km.
- Tìm tất cả các vùng bên trong 300 m của vùng đốn gỗ đ−a ra
- Xác định các vùng ô nhiễm tiếng ồn xung quanh các con đ−ờng chính - Các vùng đệm xung quanh vùng đất ô nhiễm để khoanh vùng bảo vệ nguồn n−ớc ngầm.
- Các vùng dịch vụ (2000 m xung quanh tâm tái chế )
- Tạo các vùng bảo vệ tài nguyên (dự trữ tài nguyên thiên nhiên) - Cụm bệnh dịch xung quanh các đặc tr−ng nào đó...
Các phép toán vùng đệm mờ bao gồm việc tính toán độ thuộc cho các vùng đ−ợc mở rộng ranh giới bởi các đối t−ợng trên các lớp dữ liệu trong GIS. Đối với bản đồ vector xử lý với phép toán buffer đơn giản hơn. Nh−ng đối với bản đồ raster phép toán buffer có sự khác biệt so với các phép toán khác.
Không nh− các phép toán tập hợp, các phép toán buffer raster không thể xác định bởi chính l−ới cell trên bản đồ raster. Để xác định giá trị mới của một cell l trong bản đồ raster rõ, các giá trị của tất cả 4 cell lân cận của l đ−ợc suy xét. Nếu ít nhất một giá trị là 1 thì giá trị của l thay đổi thành 1. Trong tr−ờng hợp khác giá trị mới của l là số lớn nhất của giá trị gốc của l và các giá trị của tất cả các cell lân cận của l. Bản đồ raster mờ có thể đ−ợc làm t−ơng tự: Giá trị của l đ−ợc thay đổi bằng giá trị mờ lớn nhất trong lân cận của l, mà phải là giá trị trong khoảng [0,1].
Hàm buffer là hàm tăng đơn điệu β: [0, 1] → [0, 1] mà ở đó giá trị không bao giờ v−ợt quá đầu vào của nó: ∀m∈ [0, 1]: β (m) ≤ m
Ví dụ đơn giản của hàm buffer mờ là β (m) = max{0, m - 0,1}.
Nếu l0 là lân cận của l1, khi đó độ thuộc của l1 đ−ợc xác định: à(l1) ← max{à(l1), β(à(l0))}
Khi cập nhật độ thuộc của l1 có một ảnh h−ởng đến các cell lân cận của l1 vì thế phải thực hiện lặp lại cho đến tình huống đạt đ−ợc. Thuật toán buffer cho bản đồ raster đ−ợc thực hiện nh− sau:
Brute-Force β-Buffering
Cho à là hàm mờ của bản đồ Cho β là hàm buffer
Cho L là tậo tất cả các cell trong bản đồ để tạo buffer Repeat Until à là ổn định:
For each l0∈ L do:
For all neighbors li của l0 do: à(li) ← max{à(li), β(à(l0))} β-Buffering by Local Propagation
Cho à là hàm mờ của bản đồ Cho β là hàm buffer
Cho L là tậo tất cả các cell trong bản đồ để tạo buffer While L ≠∅ do:
Select l0∈ L. L ← L – {l0}
For all neighbors li của l0 do: à(li) ← max{à(li), β(à(l0))}
If à(li) bị thay đổi, then L ← L ∪ {li} β-Buffering With Ordered Cells
Cho à là hàm mờ của bản đồ Cho β là hàm buffer
Cho L là tậo tất cả các cell trong bản đồ để tạo buffer While L ≠∅ do:
Select l0∈ L : à(l0) là max trong L L ← L – {l0}
For all neighbors li của l0 do: à(li) ← max{à(li), β(à(l0))}