Chương 4 Phân đoạn ảnh sử dụng lọc khuếch tán
4.4 Tính toán giới hạn gia tăng biên
Của hệ phương trình khuếch tán phi tuyến được dựa trên các hệ thống hữu hạn khác nhau được phát triển bởi Osher and Sethian dành cho sự tiến triển của đường cong thông qua các cấp độ. Thời gian thực hiện bắt nguồn từ 𝜕𝑢
𝜕𝑡 và giới hạn khuếch tán 𝑔(∇𝐺𝜎∗ 𝐼)|∇𝑢|𝑑𝑖𝑣(∇𝑢/|∇𝑢|) trình bày không khó và không phức tạp. 𝜕𝑢
𝜕𝑡 được xáp xỉ bằng:
𝑢𝑛+1[𝑖, 𝑗] − 𝑢𝑛[𝑖, 𝑗] ∇𝑡
Tác giả: Nguyễn Xuân Việt 106
|∇𝑢|𝑑𝑖𝑣 ( ∇𝑢 |∇𝑢|) =
𝑢𝑦2𝑢𝑥𝑥 − 2𝑢𝑥𝑢𝑦𝑢𝑥𝑦 + 𝑢𝑥2𝑢𝑦𝑦 𝑢𝑥2+ 𝑢𝑦2
Các điều cần thiết đặc biệt phải chú ý là sự thực hiện của giới hạn dữ liệu (thực tế, là một giới hạn gia tăng,v.v.., tốc độ không đổi của sự mở rộng) 𝛽|∇𝑢|(𝑢 − 𝐼)/(𝑢 − 𝐼) và giới hạn “doublet” ∇𝑔 ∙ ∇𝑢. Giới hạn phình ra cho cho tới va chạm đầu tiên với biên, v.v., sự gián đoạn trong định hướng đường biên của vật thể. Do vậy, ta phải xấp xỉ không gian phát sinh sử dụng theo hướng giản đồ sai phân hữu hạn. Giới hạn “doublet” cho phép sự phát triển của bước nhảy mà chỉ ra các đường biên của đối tượng. Trong trường hợp này chúng ta không thể dùng sai phân giữa giới hạn mà phải dùng sai phân tiến hoặc lùi hữu hạn thích nghi bởi vậy hướng của chúng luôn cách xa chỗ gián đoạn. Cho:
𝐷𝑖+∅𝑛[𝑖, 𝑗] = ∅𝑛[𝑖 + 1, 𝑗] − ∅𝑛[𝑖, 𝑗] 𝐷𝑖−∅𝑛[𝑖, 𝑗] = ∅𝑛[𝑖, 𝑗] − ∅𝑛[𝑖 − 1, 𝑗] 𝐷𝑖+∅𝑛[𝑖, 𝑗] = ∅𝑛[𝑖, 𝑗 + 1] − ∅𝑛[𝑖, 𝑗] 𝐷𝑖−∅𝑛[𝑖, 𝑗] = ∅𝑛[𝑖, 𝑗] − ∅𝑛[𝑖, 𝑗 − 1] 𝐷𝑖∅𝑛[𝑖, 𝑗] =∅𝑛[𝑖+1,𝑗]−∅𝑛[𝑖−1,𝑗] 2 𝐷𝑗∅𝑛[𝑖, 𝑗] =∅𝑛[𝑖,𝑗+1]−∅𝑛[𝑖,𝑗−1] 2 Sau đó (∇𝑔 ∙ ∇𝑢)[𝑖, 𝑗] = 𝑚𝑎𝑥(𝐷𝑖𝑔𝑛[𝑖, 𝑗], 0)𝐷𝑖−𝑢𝑛[𝑖, 𝑗] + min(𝐷𝑖𝑔𝑛[𝑖, 𝑗], 0)𝐷𝑖+𝑢𝑛[𝑖, 𝑗] + 𝑚𝑎𝑥(𝐷𝑗𝑔𝑛[𝑖, 𝑗], 0)𝐷𝑗−𝑢𝑛[𝑖, 𝑗] + min(𝐷𝑗𝑔𝑛[𝑖, 𝑗], 0)𝐷𝑗+𝑢𝑛[𝑖, 𝑗] Và |∇𝑢| = {(𝑚𝑎𝑥(𝐷𝑖−𝑢𝑛[𝑖, 𝑗], 0))2+ (min(𝐷𝑖+𝑢𝑛[𝑖, 𝑗], 0))2+ 𝑚𝑎𝑥(𝐷𝑗−𝑢𝑛[𝑖, 𝑗], 0))2 + (min(𝐷𝑗+𝑢𝑛[𝑖, 𝑗], 0))2}
Tác giả: Nguyễn Xuân Việt 107 Mô hình khuếch tán phi tuyến có thể được nhúng trong phạm vi không gian như là nghiệm trạng thái ổn định của phương trình vi phân thu được bằng phân biệt điều kiện cân bằng của hàm trong phương trình với mối quan hệ với 𝜎. Điều này dẫn đến một phương trình vi phân rất phức tạp mà thực tế khó để giải. Các cặp phương trình hệ thống đơn giản hơn đã được giới thiệu trong mục 2. Vì sự đơn giản như vậy, ta sử dụng lại cặp phương trình này ở đây
𝜕𝑢 𝜕𝑡 = −∇𝐸𝑣(𝑢, 𝜎) 𝜕𝜎 𝜕𝑡 = −𝐶1𝑒 −𝑐2|∇𝐸𝑣(𝑢,𝜎)| Với 𝑐1 và 𝑐2 là hằng số định trước.
Có nhiều kĩ thuật đã tồn tại trong các tài liệu phân tích số để giải quyết vấn đề giá trị ban đầu như vậy. Ví dụ, người ta có thể sử dụng bất kỳ phương pháp sau đây để tìm nghiệm theo thứ tự của sự phức tạp: phương pháp của Euler, phương pháp của fourth - order Runge - Kutta, hoặc kĩ thuật của Adams - Moulton predictor – corrector Phiên bản rời rạc của nhưng phương trình này dùng cho việc theo dõi quy mô không gian được thực hiện bằng cách sử dụng rõ ràng bước Euler ở trong đó đạo hàm theo thời gian được tính xấp xỉ bằng các công thức sai phân với khoảng thời gian ∆𝑡. Điều này cho ta phương trình rời rạc sau đây:
𝜎𝑡+1 = 𝜎𝑡− (∇𝑡)𝑐1𝑒𝑥𝑝 − 𝑐2|∇𝐸𝑣𝑡(𝑢, 𝜎)| (48)
𝑢𝑡+1 = 𝑢𝑡− (∇𝑡)∇𝐸𝑣𝑡(𝑢𝑡, 𝜎𝑡) (49) Chú ý rằng tham số tỷ lệ 𝜎 là liên tục.
Tác giả: Nguyễn Xuân Việt 108