2013-06-20 22 views
7

opencv maksimum akış algoritması (dosya gcgraph.hpp sınıf GCGRAPH) bir uygulama vardır. available here.opencv GCGRAPH (maks akış) dayanmaktadır Ne algoritması?

kimse bu sınıfı tarafından uygulanan belirli hangi maksimum akış algoritması biliyor mu?

+0

@taocp Uygulamanın algoritmadan okunması, uygulama okunabilirlik yönünden daha fazla performans odaklı olması nedeniyle sorun yaşıyorum – Shai

+0

@templatetypedef - – Shai

+1

bağlantısı için teşekkürler, şimdi bunu anlamaya çalışıyorum. Bir süredir gördüğüm en az okunabilir kod. Kodunuzu yorumlayın millet! – templatetypedef

cevap

8

Bu konuda% 100 emin değilim, ama ben algoritma this research paper describing max-flow algorithms for computer vision dayanmaktadır inanıyoruz. Özellikle, Bölüm 3 maksimum akışları hesaplamak için yeni bir algoritma açıklamaktadır.

Ben algoritmanın uygulanması ile gazetenin algoritmanın her detayını dizilmiş değil, ancak birçok ayrıntıları maç gibi:

  • algoritması hem s ve t den iki yönlü aramayı kullanarak eserlerini tarif uygulama olarak iyi yapıyor ki: örneğin, // grow S & T search trees, find an edge connecting them okuma bir yorum var.
  • Açıklanan algoritma, std::vector<Vtx*> orphans değişkeninin uygulamada izlendiği anlaşılan bir dizi yetim düğümün kaydını tutar.
  • Tanımlanan algoritma, bir dizi ağaç oluşturarak ve bunları yeniden kullanarak çalışır; Algoritma uygulaması, her bir düğüm ile ilişkili bir ağacın kaydını tutar.

Umarım bu yardımcı olur!

+1

Bu harika bir yardımcı! teşekkür ederim. – Shai