Bir kamerada nesne tespit modelini saniyede otuz kez çalıştırmak, çoğu karede zaten bilinen bir şeyi yeniden hesaplamaktır: iki kare arasında nesne hâlâ oradadır ve fiziğin öngördüğü yöne gider. Bu yüzden ağır modeli N karede bir koşturup aradaki kareleri ucuz bir hareket tahminiyle taşımak, gömülü sistemde en doğrudan hesap tasarruflarından biridir. Ama bu bir hızlandırma hilesi değil, bir bütçe kararıdır: N'yi kontrol döngüsünün son tarihi, nesnenin ivmesi, izin verilen tahmin hatası ve sahneye yeni nesne girme riski birlikte belirler. Bu yazı N'nin nasıl seçileceğini gösteriyor.
Kısaca
- Ağır modeli her karede koşturmak, zaten bilinen bilgiye tam fiyat ödemektir; tespit N karede bir çalışır, aradaki kareleri ucuz bir tahmin taşır.
- Kazanç hiçbir zaman tam N kat olmaz, çünkü sabit maliyetler her karede ödenir. Sabit hız tahmininin hatası ise ½·a·t² ile büyür.
- N'yi iki kısıt belirler: bilinen nesnelerde tahmin hatası, yeni nesnelerde fark etme süresi. Belirsizlik, manevra ya da değişim sinyali tespiti erkene çekmelidir.
- Dayanak: Çalışkan ve Koruk, ICHORA 2025. Oradaki GPU kazancı o donanıma ve göreve aittir.
Film ve dayandığı çalışma
60 saniyelik kavram filmimiz Real Time Has a Cost fikri şöyle anlatıyor: direkteki bir kamera kafası gökyüzünün bir parçasını izliyor, kadrajdan bir hava aracı geçiyor. Hesap odasındaki dört cam plakadan yalnızca biri yanıyor (DETECT), diğer üçü CARRY. Tesis, hava aracı, sensörler ve üst katmanlar bizim 3B animasyonumuz; ekrandaki kutular, izler ve yörüngeler dedektör çıktısı değil, illüstrasyon.
Fikrin kaynağı, Bursa Teknik Üniversitesi'nden H. H. Çalışkan ve T. Koruk'un ICHORA 2025 çalışması; ikinci yazar Talha Koruk, Spikedge'in kurucusu. Çalışma, Jetson Xavier NX ve Rockchip RK3588 gibi gömülü sistemlerde hava aracı tespiti için değiştirilmiş bir YOLOv8 mimarisini (YOLO-Prime), morfolojik bir CNN sınıflandırıcıyı ve gelecekteki koordinatları tahmin eden dinamik doğrusal regresyonu birleştiriyor; tespit ve sınıflandırma dört karenin birinde koşuyor, kalan üç kare tahminle taşınıyor. Özette, regresyonun eklenmesiyle derin öğrenme modellerinin GPU kullanımının yaklaşık %66 azaldığı raporlanıyor. Bu sayı o donanımda ve o görevde ölçüldü; filmimiz bu ölçümü tekrarlamıyor, biz de yöntemi kendi donanımımızda ölçmedik.
Maliyet modeli: neden hiçbir zaman tam N kat kazanılmaz?
Kare başına maliyeti üçe ayırın: her karede ödenen sabit kısım C_sabit (video çözme, ön işleme, ilişkilendirme), yalnızca tespit karelerinde ödenen C_tespit ve ara karelerde ödenen C_tahmin. Tespit N karede bir koşuyorsa:
ortalama maliyet / kare = C_sabit + (C_tespit + (N - 1) * C_tahmin) / N
kazanç = (C_sabit + C_tespit) / ortalama maliyet
tavan = (C_sabit + C_tespit) / (C_sabit + C_tahmin) # N çok büyükken
C_tahmin ≪ C_tespit iken kesirli terim C_tespit/N'ye yaklaşır, ama C_sabit küçülmez; kazancı N değil, sabit kısmın payı sınırlar (Amdahl yasası). C_sabit sıfırken kazanç N / (1 + (N − 1)·r) olur (r = C_tahmin / C_tespit); bu, Deep Feature Flow makalesindeki hızlanma formülünün (Denklem 7) aynısıdır. C_tahmin genellikle küçüktür: SORT makalesi, dedektör hariç takip bileşeninin tek bir Intel i7 2,5 GHz çekirdeğinde 260 Hz'de çalıştığını bildiriyor.
Az hesabın ikinci getirisi ısıdır. NVIDIA'nın Jetson Xavier belgesine göre sıcaklık kısma eşiğini aşınca saat frekansları DVFS ile düşürülür; oda sıcaklığında kare periyoduna sığan tespit karesi, güneş altındaki kapalı muhafazada sığmayabilir. "GPU kullanımı" ise genellikle bir zaman oranıdır (ör. tegrastats'taki GR3D_FREQ), watt değildir; watt için NVIDIA Jetson modüllerinde güç raylarını ya da muhafaza girişini ölçmek gerekir.
Son tarih: iki tespit arasında nesne ne kadar yol alır?
Örnek hesap: değerler ölçüm değil, varsayımdır. 30 fps; nesne görüş hattına dik yönde 20 m/s ile gidiyor; sabit hız modelinin görmediği ivme 5 m/s²; hedef 0,5 m genişliğinde; tespit sonucu gecikmesiz; C_sabit = 4 ms, C_tespit = 20 ms, C_tahmin = 0,5 ms.
Nesne kare başına 20/30 ≈ 0,67 m, N = 4'lük bir tespit döngüsünde (4/30 ≈ 133 ms) 2,67 m, yani yaklaşık 2,7 m yol alır. Sabit hız tahmini bu yolu taşır; hata, modelin görmediği ivmeden gelir: e = ½·a·t².
| N | Kare başına ort. maliyet (kazanç) | Döngü süresi / yol | Sabit hız hatası (½·a·t²) |
|---|---|---|---|
| 1 | 24,0 ms (1,00×) | 33 ms / 0,67 m | 0,3 cm |
| 2 | 14,3 ms (1,68×) | 67 ms / 1,33 m | 1,1 cm |
| 4 | 9,4 ms (2,56×) | 133 ms / 2,67 m | 4,4 cm |
| 8 | 6,9 ms (3,46×) | 267 ms / 5,33 m | 17,8 cm |
| 16 | 5,7 ms (4,20×) | 533 ms / 10,67 m | 71,1 cm |
Tavan 4,5 ms/kare, yani 5,33×. Maliyet doyarken hata karesel büyüyor: N'yi 8'den 16'ya çıkarmak kare başına 1,2 ms kazandırıyor, ama hatayı dört katına çıkarıp 0,5 m'lik hedef genişliğinin üstüne taşıyor. Orada tahmin edilen kutu ile yeni tespit örtüşmez, IoU sıfıra düşer; bu rejimde kovaryansla ölçeklenen merkez uzaklığı (Mahalanobis) kapısı daha dayanıklıdır. Tablo, makaledeki sonucu yeniden üretmiyor.
Aradaki kareleri ne taşır?
Taşıyıcı ne kadar ucuzsa o kadar az şey bilir:
- Sabit hız. En ucuzu; hata ½·a·t² ile büyür.
- Kayan pencerede doğrusal regresyon. Son k gözleme doğru uydurup ileri uzatır. Kısa pencere manevraya çabuk uyar ama gürültülüdür; uzun pencere pürüzsüzdür ama geç kalır. Makaledeki model "dinamik doğrusal regresyon"; ayrıntılar özette yok.
- Kalman filtresi (Kalman, 1960). Aynı hareket modeli, özyinelemeli ve gürültüsü modellenmiş hâlde; asıl getirisi her tahmin adımında büyüyen kovaryanstır, yani tespitin ne zaman öne çekileceğini söyleyen hazır bir sayı. SORT, sabit hız modelli Kalman filtresini IoU tabanlı Macar algoritmasıyla birleştirir.
- Sabit dönüş hızı ve benzeri manevra modelleri. Dönen hedefi düz çizgiden iyi taşır; bedeli doğrusal olmayan filtre ve fazladan durum değişkenidir (karşılaştırma için Li ve Jilkov'un derlemesi).
Tespiti ne zaman beklemeden tetiklemeli?
Sabit N en basit zamanlayıcıdır ve literatür yetmediğini söylüyor: Deep Feature Flow, içerik ciddi biçimde değiştiğinde yeni anahtar kare ayrılmasını ideal sayar; Detect or Track, tespit sıklığını takip kalitesine bağlayan ve her karede "tespit mi, takip mi" kararını veren küçük bir zamanlayıcı ağ önerir. Öğrenilmiş bir zamanlayıcı olmadan da dört tetikleyici işin çoğunu görür: periyot doldu; Kalman kovaryansı sınırı aştı; son tespitte bir iz eşleşmedi ya da yenilik (innovation) beklenenden büyüktü, yani nesne muhtemelen manevra yapıyor; ucuz bir bekçi bilinen izlerin dışında hareket gördü.
# Uyarlamalı tespit zamanlayıcısı (sözde kod; eşikler sisteme özgüdür)
def on_frame(frame, t, s):
s.tracks.predict_to(t) # ucuz, her karede
due = t - s.last_submit >= N_MAX / FPS
unsure = any(tr.pos_sigma() > SIGMA_MAX for tr in s.tracks)
trouble = s.tracks.lost_or_maneuvering()
novel = s.watch.score(frame, mask=s.tracks.boxes()) > CHANGE_MAX
if (due or unsure or trouble or novel) and s.detector.idle():
s.detector.submit(frame, t) # asenkron
s.last_submit = t
for det in s.detector.results(): # gecikmeli gelebilir
s.tracks.update_at(det.t_capture, det) # yakalama anında uygula, ileri taşı
s.tracks.count_misses(det.t_capture) # kaçırma yalnızca tespit karesinde
return s.tracks.state_at(t)
İki tespit arasında sahneye yeni bir nesne girerse?
Tahmin yalnızca bilinen izleri taşır; iki tespit arasında giren nesne, en kötü durumda yaklaşık N/fps artı tespit gecikmesi kadar görünmez kalır. Ucuz çareler:
- Değişim bekçisi. Kare farkı ya da arka plan çıkarma (OpenCV'deki MOG2'nin dayandığı Zivkovic yöntemi gibi) her karede çalışır ve yalnızca tetikler. Pan-tilt kafa dönerken kameranın kendi hareketi telafi edilmezse bekçi her karede tetiklenir ve N fiilen 1'e iner.
- Düşük çözünürlüklü tam kare tarama. Ucuzdur ama küçük hedefi yok eder; nedenini kenarda drone tespiti yazımızda anlattık.
- Dönüşümlü dilim tarama. Bilinen izler tahmin edilen konumun çevresindeki küçük pencerelerde doğrulanır, her karede karenin bir dilimi tam çözünürlükte taranır. Toplam hesap benzer kalır, tepe düzleşir, jitter azalır.
Gökyüzünde uzaktan yaklaşan hava aracı kenardan girmez, kadrajın ortasında belirir; yalnızca kenarları izleyen bekçi onu kaçırır.
N'yi nasıl seçmeli? İki kısıt, bir maliyet eğrisi
- Bilinen nesneler için izin verilen konum hatası ε'u ve modellenmemiş ivmenin üst sınırı a'yı yazın: t_max = √(2ε/a).
- En kötü tahmin ufku yaklaşık N/fps + L'dir (L, tespit gecikmesi). N/fps + L ≤ t_max koşulu N₁'i verir.
- Yeni bir nesneyi en geç fark etme sürenizi (T_yeni) yazın. N/fps + L ≤ T_yeni koşulu N₂'yi verir.
- N = min(N₁, N₂). Kazanç o N'de doymuşsa daha büyüğü anlamsızdır; tespit karesi kare periyoduna sığmıyorsa tespiti asenkron çalıştırın.
Örnek hesap: ek olarak L = 50 ms, ε = 0,25 m (hedef genişliğinin yarısı) ve T_yeni = 220 ms. t_max = √(2 · 0,25 / 5) ≈ 0,316 s. N/30 + 0,05 ≤ 0,316 koşulundan N₁ = 7, N/30 + 0,05 ≤ 0,22 koşulundan N₂ = 5 çıkar. Bağlayıcı kısıt yeni nesnedir: N = 5, kare başına 8,4 ms (2,86×), en kötü ufukta (217 ms) sabit hız hatası yaklaşık 11,7 cm, yani 25 cm'lik bütçenin içinde. Başka bir hız, ivme ya da alarm süresi başka bir N verir.
| Nesne dinamiği | Kare hızı ve son tarih | Kaçırmanın bedeli | Önerilen yaklaşım |
|---|---|---|---|
| Yavaş, düzgün | Yüksek fps, gevşek | Düşük | Büyük N; sabit hız ya da kayan pencere regresyonu |
| Hızlı, düzgün | Orta fps, sıkı | Orta | Orta N; Kalman; belirsizlik eşiğiyle tetikleme |
| Sık, ani manevra | Düşük fps | Yüksek | Küçük N; dönüş modeli; büyük yenilikte N'yi geçici küçültme |
| Periyodik imza (kanat çırpışı gibi) | fps/N < 2 × imza frekansı | Yanlış sınıf | Ara karelerde ucuz bölge ölçümü; taşınan noktaları öznitelikten çıkarma |
Bu hesabı hattınızın gerçek maliyetleriyle yapmak, kenarda yapay zekâ hattı işinin ilk adımıdır.
Nerede yanlış gider
- Atlanan kareyi kaçırılan tespit saymak. SORT makalesindeki deneylerde bir iz, tek bir tespitsiz karede silinir (T_Lost = 1); gerekçelerden biri sabit hız modelinin gerçek dinamiği iyi öngörmemesidir. Böyle bir izleyiciye atlanan karelerde boş tespit listesi verirseniz her iz iki tespit arasında ölür; kaçırma sayacı yalnızca dedektörün koştuğu karede artmalıdır.
- Ortalamaya bakıp en kötü kareyi unutmak. Örnek hesap: C_tespit = 40 ms olsaydı tespit karesi 44 ms sürer ve 33,3 ms'lik kare periyodunu dört karede bir aşardı; oysa N = 4'te ortalama 14,4 ms'dir. Senkron tasarımda bu, periyodik bir jitter darbesidir.
- Gecikmeli tespiti "şimdi"ye yazmak. Asenkron tespitin sonucu yakalama anına aittir. Örnek hesap: 20 m/s'lik bir nesnede 50 ms'lik gecikmeyi yok saymak 1,0 m'lik sistematik bir geri kalmadır; 0,5 m'lik hedefte iki gövde boyu.
- Taşınan noktaları ölçüm sanmak. Tahmin edilen noktalar hareket modeline birebir uyar. İz şeklinden sınıflandırma yapan bir modele verilirse bir kuş izi drone gibi görünebilir; bu problemi kuş mu drone mu yazımızda ele alıyoruz. Periyodik bir imzanın örnekleme hızı da fps/N'ye düşer. Örnek hesap: 30 fps ve N = 4'te 7,5 Hz, Nyquist sınırı 3,75 Hz.
Bu yazının söyleyemedikleri
Bu yöntemi kendi donanımımızda ölçmedik; yazıdaki milisaniye, metre ve santimetre değerleri etiketli örnek hesaplardır. Makalenin yaklaşık %66'lık sonucu o görevde, o donanımda ve bir GPU kullanım metriğiyle ölçüldü; başka görev, donanım ya da metriğe taşınamaz. Filmin sahnesi illüstrasyondur. Nesnenizin ivme sınırını ve sahnenize ne sıklıkla yeni nesne girdiğini de bilmiyoruz; N'yi bunlar belirler. Cevap için şunları ölçerdik:
- N'ye karşı tahmin hatası: kayıtlı videoda her karede tespit koşturup N'yi yeniden oynatarak; ortalamayı değil, p95'i ve en kötü değeri.
- Gözlemden eyleme süre: yakalama anından çıkışa (ör. bir GPIO kenarı) donanım damgasıyla.
- Kontrol döngüsü jitter'ı: senkron ve asenkron tespitle ayrı ayrı, tam yükte.
- Muhafazada watt ve jonksiyon sıcaklığı: termal dengeden sonra, gerçek ortam sıcaklığında, her karede tespit ile seçilen N yan yana.
Ölçüm koşullarını (aynı giriş akışı, aynı güç kipi, termal denge) çıkarım hattı yöntem notumuzda topladık.
Sık sorulan sorular
Her karede tespit koşturmak neden israf?
İki ardışık kare arasında sahne çok az değişir; nesnenin konumu ve hızı büyük ölçüde bir önceki kareden kestirilebilir. Ağır modeli her karede çalıştırmak, çoğu karede zaten bilinen bilgiye tam fiyat ödemektir.
Kaç karede bir tespit yapılacağını (N) nasıl seçerim?
İki kısıt yazın: bilinen nesneler için tahmin hatası (½·a·t² ≤ ε, t yaklaşık N/fps artı tespit gecikmesi) ve yeni bir nesneyi fark etme süresi. Küçük olan N'yi belirler; sonra kazancın o N'de sabit maliyetler yüzünden doyup doymadığına bakın.
İki tespit arasında sahneye yeni bir nesne girerse ne olur?
Tahmin yalnızca bilinen izleri taşıdığı için yeni nesne bir sonraki tespit karesine kadar görünmez kalır. Her karede çalışan ucuz bir değişim bekçisi ya da dönüşümlü dilim tarama bu gecikmeyi sınırlar; bekçi tetiklenirse tespit N'yi beklemez.
Bu yöntem doğruluğu düşürür mü?
Ara karelerdeki konum bir ölçüm değil, tahmindir; hatası tahmin ufkunun karesiyle ve modellenmemiş ivmeyle büyür. Örneğin Deep Feature Flow, ImageNet VID tespitinde 10 kata kadar hızlanmayı mAP'de 73,9'dan 69,5'e düşüşle raporluyor; sizin sisteminizdeki kayıp ise göreve, donanıma ve N'ye özgüdür.
Kaynaklar
- Çalışkan, Koruk: Optimized YOLOv8 (YOLO-Prime), M-CNN, and Dynamic Linear Regression for Real-Time Aerial Vehicle Detection in Embedded Systems (ICHORA 2025): filmin dayanağı; özetteki yaklaşık %66'lık GPU kullanımı düşüşü.
- Zhu vd.: Deep Feature Flow for Video Recognition (CVPR 2017): anahtar kare, Denklem 7, ImageNet VID sonuçları.
- Luo vd.: Detect or Track: Towards Cost-Effective Video Object Detection/Tracking (AAAI 2019): tespit sıklığının takip kalitesine bağlanması, zamanlayıcı ağ.
- Bewley vd.: Simple Online and Realtime Tracking (ICIP 2016): sabit hız Kalman, IoU ile eşleştirme, T_Lost = 1, 260 Hz.
- Kalman: A New Approach to Linear Filtering and Prediction Problems (1960): Kalman filtresinin özgün makalesi.
- Li, Jilkov: Survey of Maneuvering Target Tracking. Part I: Dynamic Models (IEEE TAES 2003): dönüş modelleri dahil manevra modelleri derlemesi.
- Zivkovic: Improved Adaptive Gaussian Mixture Model for Background Subtraction (ICPR 2004): OpenCV MOG2'nin dayandığı yöntem.
- NVIDIA Jetson Linux Developer Guide: Tegrastats Utility: GR3D_FREQ (GPU'nun bir periyotta etkin olduğu süre oranı), güç rayları.
- NVIDIA Jetson Linux Developer Guide: Jetson Xavier NX Series and Jetson AGX Xavier Series: kısma eşikleri ve DVFS ile saat kısması.
Erişim tarihi: 26 Eylül 2026.



