Saya mencoba menerapkan navigasi flowfield, seperti yang dijelaskan dalam http://grail.cs.washington.edu/projects/crowd-flows/ tapi saya tidak dapat memahami bagaimana Fungsi Kepadatan pada Gambar 4 dari makalah ini seharusnya menangani radius satuan.
Adakah yang pernah mengimplementasikannya dan dapat memberikan lebih banyak informasi?
Ini adalah bagian yang dipertanyakan:
Algoritma mereka tampaknya hanya menggunakan 4 sel, menunjuk ke kiri bawah unit, jadi apakah ini semacam kernel yang perlu diterapkan beberapa kali?
Terima kasih.
Jawaban:
Tidak, ini bukan "kernel yang perlu diterapkan beberapa kali". Anda cukup menerapkan formula seperti yang tertulis, satu kali.
Ini semacam aturan yang aneh, dan tidak dijelaskan dengan jelas. Biarkan saya mencoba sedikit memperjelasnya:
Pertama, temukan empat sel yang sudut berbaginya paling dekat dengan unit. Unit akan menyumbang jumlah kepadatan yang tidak nol hanya untuk sel-sel itu. Sebut sel-sel A, B, C dan D seperti pada gambar 4 (b).
Misalkan Δx dan Δy menjadi jarak horizontal dan vertikal unit dari pusat sel A, diukur dalam satuan lebar / tinggi satu sel.
Misalkan ρ A = min (1 − Δx, 1 − Δy) λ , ρ B = min (Δx, 1 − Δy) λ , ρ C = min (Δx, Δy) λ dan ρ D = min (1 − ,x, Δy ) λ , seperti yang dijelaskan dalam makalah.
Biarkan unit berkontribusi ρ A kepadatan ke sel A, ρ B kepadatan ke sel B, ρ C kepadatan ke sel C, dan ρ D kepadatan ke sel D.
Seperti yang saya katakan, aturannya agak aneh, dan saya tidak memiliki interpretasi geometris yang jelas untuk menawarkannya. Namun demikian, memenuhi sifat yang diharapkan yang:
Ketika unit tepat di tengah sel X apa pun, maka (terlepas dari A, B, C atau D yang kita pilih X), ia memberikan kontribusi 1 λ = 1 unit densitas ke sel X dan 0 unit densitas untuk sel lainnya.
Ketika unit persis di sudut empat sel, memberikan kontribusi (1/2) λ unit kepadatan untuk masing-masing dari empat sel (dan tidak ada sel lain, menurut definisi).
Namun, perhatikan bahwa, menggunakan aturan ini, jumlah total kepadatan yang dikontribusikan oleh satu unit untuk semua sel tidak konstan, bahkan jika λ = 1. Secara khusus, ketika unit persis di titik tengah tepi antara dua sel, itu memberikan kontribusi (1/2) λ unit kepadatan untuk dua sel, dan tidak ada untuk sel lain. Jadi, menyebut nilai yang dihasilkan sebagai "kepadatan" tampaknya agak menyesatkan.
Sunting: Cara lain untuk menulis rumus untuk ρ A , ρ B , ρ C dan ρ D , yang dapat membuat simetri definisi lebih jelas, adalah dengan mendefinisikan d X = max (| x - x X |, | y - y X |) sebagai jarak papan catur dari unit di (x, y) dari pusat sel X di (x X , y X ), diukur dalam lebar / tinggi sel. Kemudian, untuk sel X apa pun,
sumber