Contents — find the section you need

Videoyu kare kare incelerken, görüntünün hangi kısmının ne kadar hareket ettiğini sezgisel olarak anlamak kolay değildir. Optik Akış, her pikselin parlaklığının bir sonraki karede nereye hareket ettiğini bir vektör olarak temsil eder. Bu, hareket içeren her işlem için ortak bir dil haline gelir: otonom araçlarda çarpışma tahmini, dronlar için kendi kendine konum belirleme, spor analizi ve video enterpolasyonu.

0. 30 Saniyelik Özet

  • Akış, "nesnenin kendi hızı" değil, görüntüdeki görünen hareketidir. Kamera hareketi, nesne hareketi ve derinlik hepsi içinde karışmıştır.

  • Parlaklık sabitliği denklemi, piksel başına yalnızca bir denklem verir, bu nedenle yerel pencere düzgünlüğü varsayımı, özellik noktaları veya düzenleme eklenerek çözülmesi gerekir.

  • Lucas-Kanade, küçük bir pencereyi tek bir hız olarak ele alır - seyrek izleme yöntemi. Horn-Schunck, tüm görüntü boyunca düzgünlük kullanır - yoğun tahmin yöntemi.

  • Büyük yer değiştirmeler için bir görüntü piramidi gerekir; Örtüşme, yansımalar ve bulanıklık için güven ölçümleri ve aykırı değerlerin ele alınması gerekir. Kaydırma deklanşörü de satır zamanlamasındaki farkın düzeltilmesini gerektirir.

  • RAFT gibi öğrenme tabanlı yöntemler oldukça doğrudur, ancak GPU belleği, dağıtım dışı davranış, gerçek zamanlı performans ve lisanslama kontrol edildikten sonra kullanılmalıdır.

1. Parlaklık Sabitliğinden Akış Kısıtlama Denklemine

Diagram 1 · Use the button to switch views
Görüntü piramidinden yoğun vektör alanına optik akış tahmini

Şekil 1 — Bir piramit önce büyük yer değiştirmeyi ele alır, ardından daha ince ölçeklerde yoğun bir vektör alanını iyileştirir. Güven ve örtüşme maskeleri vektörlerle birlikte hareket etmelidir.

Küçük, sabit bir desen kareler arasında hareket ediyorsa, onu sabit parlaklığa sahip olarak idealize edebiliriz.

I(x,y,t)=I(x+u\Delta t,y+v\Delta t,t+\Delta t)

Birinci dereceden Taylor açılımı \Delta t\to0 ile birlikte şunu verir:

I_xu+I_yv+I_t=0

İki bilinmeyen hız bileşeni (u,v) olmasına rağmen sadece bir denklem olduğundan, bu tek başına çözülemez. Bir kenarda, boyunca hareket Kenar yönü görünmezdir; düz bir bölgede hiç gradyan yoktur. Bu, açıklık problemidir.

2. Lucas-Kanade ve Horn-Schunck

Lucas-Kanade, yerel bir pencere W boyunca hızın aynı olduğunu varsayar ve aşağıdaki karesel hatayı en aza indirir.

E(u,v)=\sum_{(x,y)\in W}w(x,y)\{I_xu+I_yv+I_t\}^2

Sadece gradyan matrisinin yeterince iyi koşullandırıldığı köşeleri kullanır ve bunu özellik noktası izlemede kullanılan aynı piramit ve yinelemeli güncelleme ile birleştirir (önceki bölüme bakın). OpenCV'nin calcOpticalFlowPyrLK'si bu ailenin bir uygulamasıdır.

Horn-Schunck, tüm görüntü üzerindeki akış alanını bilinmeyen olarak ele alır ve aynı anda parlaklık kısıtlamasını ve hızın düzgünlüğünü en aza indirir.

E(u,v)=\iint (I_xu+I_yv+I_t)^2+\alpha^2(|\nabla u|^2+|\nabla v|^2)\,dxdy

Daha büyük bir \alpha daha düzgün bir akış alanı sağlar; daha küçük bir değer yerel süreksizliklere izin verir. Nesne sınırı boyunca yumuşatma Farklı nesnelerin hızlarını karıştırır, bu nedenle bunun yerine sağlam kayıplar veya kenar koruyucu düzenleme kullanılır.

3. Seyrek Akış ve Yoğun Akış

Tür Tahmini noktalar Temsili yöntemler Güçlü Yönleri Zayıf Yönleri
Seyrek Yüzlerce ila binlerce nokta, örneğin köşeler LK, KLT Hafif, doğrudan poz tahminine beslenir Düşük dokulu bölgelerde boşluklar bırakır
Yarı yoğun Gradyanlı pikseller Doğrudan VO, Hessian tabanlı yöntemler Geometrik bilgiyi hesaplama maliyetiyle dengeler Tüm görüntüyü doldurmaz
Yoğun Neredeyse her piksel Horn–Schunck, TV-L1, RAFT Hareketli nesneler, sıvılar, enterpolasyon için etkilidir Hesaplama maliyeti, tıkanma sınırlarında belirsizlik

Görsel Odometri için, seyrek eşleşmeleri şuraya aktarır: Geometrik hesaplama daha kararlı olma eğilimindedir. Öte yandan, hareket eden yayaların bölgelerini maskelemek veya video enterpolasyonu için piksel başına hareket kullanmak yoğun akış gerektirir. Gerekli yoğunluğu önceden, amaç için belirlemek, soruna daha fazla GPU eklemekten daha etkilidir.

4. Büyük Yer Değiştirmelerin, Örtüşmenin ve Parlaklık Değişiminin Ele Alınması

Tek piksellik diferansiyel yaklaşım, büyük hareketlerde bozulur. Görüntüyü 1/2, 1/4, 1/8 ölçeğine küçülterek bir Gauss piramidi oluşturulur; büyük yer değiştirmeler kaba seviyede tahmin edilir, ardından ince seviyeye yükseltilir ve yinelemeli olarak iyileştirilir. Çok fazla piramit seviyesi küçük nesnelerin kaybolmasına neden olur; çok azı yetersiz arama aralığı bırakır.

Aydınlatma değiştiğinde, parlaklık sabitliği bozulur, bu nedenle bunun yerine yerel normalizasyon, gradyan yönü, sağlam Charbonnier kaybı veya göreceli renk farkı kullanılır. Hareket eden bir nesnenin sınırında, önceki karede görünen bir piksel bir sonrakinde gizlenebilir (örtüşme). Örtüşme Bayraklar, ileri-geri tutarlılık ve görünürlük maskeleri, bir izi zorla geçirmek yerine kullanılır.

5. Öğrenme Tabanlı Yöntemler: RAFT Nasıl Okunur

RAFT (Tekrarlayan Tüm Çift Alan Dönüşümleri), iki görüntü arasındaki tüm piksel çiftleri arasında korelasyonu hesaplamak ve ardından akışı yinelemeli bir güncelleme operatörüyle iyileştirmekle bilinir. Klasik yöntemlerin "yerel penceresinden" çok daha geniş bir eşleşme adayı havuzundan yararlanabildiği için, tekrarlayan dokuya sahip alanlarda veya büyük yer değiştirmeler altında güçlü olabilir.

Ancak bir kıyaslama testinde düşük ortalama uç nokta hatası (EPE), sahada gerçek bir robotta güvenli bir şekilde kullanılabilmesiyle aynı şey değildir. Kameranın lensi, pozlaması, yuvarlanan deklanşörü, tozu veya gece aydınlatması eğitim verilerinden farklıysa, güven düşer. Değerlendirme, çıkarım süresini, giriş çözünürlüğünü, niceleme hatasını, GPU sürücüsünü ve modelin lisansını içermelidir.

6. Kamera Hareketini Dinamik Nesnelerden Ayırma

Akışı kamera hareketine dönüştürmek için kamera gereklidir. İçsel matris K ve derinlik Z. Bir görüntü noktasının normalleştirilmiş koordinatlarında \mathbf{x}, kameranın ötelemesi \mathbf{t} ve açısal hızı \boldsymbol{\omega} nedeniyle oluşan akış kavramsal olarak şu şekilde yazılabilir:

\mathbf{u}=\frac{1}{Z}A(\mathbf{x})\mathbf{t}+B(\mathbf{x})\boldsymbol{\omega}

Öteleme bileşeni 1/Z ile değişir — daha yakın nesneler daha uzaktakilerden daha fazla hareket eder — dönme bileşeni ise derinliğe bağlı değildir. RANSAC aracılığıyla bulunan tek bir hareket modeliyle tutarlı akış, arka plan olarak ele alınır; büyük artık değerlere sahip bölgeler aday dinamik nesneler haline gelir. Birçok araç veya yaya bulunan sahnelerde, nesne tespiti ve anlamsal maskeler geometrik tahminle birlikte kullanılır.

7. Değerlendirme Metrikleri ve Tekrarlanabilir Ölçüm

Gerçek akış (u^*,v^*) verildiğinde, ortalama uç nokta hatası

EPE=\frac{1}{N}\sum_{i=1}^{N}\sqrt{(u_i-u_i^*)^2+(v_i-v_i^*)^2}

Sadece ortalamayı değil, 95. yüzdelik dilimi, tıkanma sınırlarında oluşan hatayı, düşük dokulu bölgelerdeki hatayı ve hıza göre ayrılmış hatayı da raporlayın. Gerçek donanımda gerçek verileri elde etmek zor olduğundan, genellikle hareket yakalama, robot kolunun bilinen yörüngesi, sentetik görüntüler, ileri-geri tutarlılık ve VO yeniden projeksiyon hatasından elde edilen veriler birleştirilir.

Kayıtlar, kamera zaman damgalarını, pozlamayı, çözünürlüğü, piramit seviyelerini, pencere boyutunu, yineleme sayısını, GPU/CPU'yu, sıcaklığı ve akış güvenini içermelidir. Aynı algoritma adı altında bile, bu koşullar farklıysa sonuçlar karşılaştırılabilir değildir.

8. Özet

Optik Akış, piksellerin görünen hareketini denklemlerle sınırlandırır ve bunu yerel pencereler, tüm görüntü düzgünlüğü, görüntü piramitleri ve öğrenmeye dayalı korelasyon kullanarak çözer. Seyrek LK, kendi kendine yerelleştirmeye uygundur; yoğun akış, dinamik nesnelere ve video işlemeye uygundur. Kamera hareketini nesne hareketine, tıkanmaya, aydınlatmaya ve yuvarlanan deklanşöre karşı ayrı ayrı değerlendirerek ve değerlendirerek Ortalama hatadan ziyade başarısızlık koşullarını dikkate almak, yanlış uygulama seçiminden kaçınmaya yardımcı olur.

Anlayışınızı kontrol edin
Görüntü hareketi, nesnenin fiziksel hızı mıdır?

Kamera hareketi, nesne hareketi ve derinlik, yansıtılan hareketi etkiler. Saniyedeki pikselleri saniyede metreye dönüştürmek için geometrik bilgiye ihtiyaç vardır.

Referanslar

What to read next

Review the backgroundOptik akış Lab: iki kare arasındaki hareketi izleyinContinue the seriesHomografi Temelleri — Düzlemsel İlişkileri Tek Bir 3x3 Matrisle TanımlamaExplore another aspect of this fieldGörüntü parlaklığı ve luminans Lab — pozlama, gama ve kırpma