andrewssobral/bgslibrary

A C++ Background Subtraction Library with wrappers for Python, MATLAB, Java and GUI on QT

What it solves

BGSLibrary 提供一個統一的背景減除框架,讓使用者能輕鬆將影片串流中的移動前景物體從靜態或變化的背景中分離出來。它透過提供完整的預實作技術集合,免除從頭實作多種背景減除演算法的需求。

How it works

此框架以 C++ 撰寫,利用 OpenCV 函式庫,實作了超過 40 種背景減除演算法。它使用工廠模式讓開發者能夠實例化並套用不同的演算法於影片影格,以產生前景遮罩與背景模型。此函式庫跨平台,並提供 Python、Java 與 MATLAB 的封裝,使這些工具可在不同程式環境中使用。

Who it’s for

此函式庫設計給電腦視覺領域的研究人員與開發者,特別是專注於影片監控、運動偵測與前景‑背景分割的使用者。

Highlights

  • Extensive Algorithm Library: 包含超過 40 種不同的背景減除演算法,如 ViBe、KNN 與 Gaussian Mixture。
  • Multi-Language Support: 提供 Python(pybgs)、Java 與 MATLAB 的封裝。
  • Harnesses OpenCV: 完全相容於 OpenCV 2.4.x、3.x 與 4.x 版本。
  • Flexible Build System: 支援透過 CMake 或 Pixi 進行建置,以簡化相依管理。