介紹
背景減除,官網(wǎng)是這樣介紹的。
背景減法(BS)是通過(guò)使用靜態(tài)相機(jī)來(lái)生成前景蒙版(即,包含屬于場(chǎng)景中的運(yùn)動(dòng)對(duì)象的像素的二進(jìn)制圖像)的通用且廣泛使用的技術(shù)。
顧名思義,BS計(jì)算前景蒙版,在當(dāng)前幀和背景模型之間執(zhí)行減法運(yùn)算,其中包含場(chǎng)景的靜態(tài)部分,或者更一般而言,考慮到所觀察場(chǎng)景的特征,可以視為背景的所有內(nèi)容。
其實(shí)不難理解,我們建立了背景模型,那么前景就很容易分離出來(lái)了。當(dāng)然,這個(gè)方法使用場(chǎng)景一般上是靜態(tài)的背景場(chǎng)景。
后臺(tái)建模包括兩個(gè)主要步驟,后臺(tái)初始化和后臺(tái)更新,背景減除在OpenCV中的是cv::BackgroundSubtractor類(lèi),下面是例子:
官方例子
#include
#include
#include
#include
#include
#include
#include
using namespace cv;
using namespace std;
const char* params
= "{ help h | | Print usage }"
"{ input | vtest.avi | Path to a video or a sequence of image }"
"{ algo | MOG2 | Background subtraction method (KNN, MOG2) }";
int main(int argc, char* argv[])
{
CommandLineParser parser(argc, argv, params);
parser.about( "This program shows how to use background subtraction methods provided by "
" OpenCV. You can process both videos and images.\\n" );
if (parser.has("help"))
{
//print help information
parser.printMessage();
}
//create Background Subtractor objects
Ptr
截圖:
簡(jiǎn)單分析
PtrpBackSub,創(chuàng)建背景減除的對(duì)象,然后createBackgroundSubtractorMOG2()或createBackgroundSubtractorKNN()用來(lái)選擇更新背景的算法,MOG2或者KNN。然后pBackSub->apply(frame, fgMask);用來(lái)更新背景模型。
總的來(lái)說(shuō)用起來(lái)是比較煎簡(jiǎn)單的。其實(shí)背景減除最簡(jiǎn)單的實(shí)現(xiàn),可以直接用當(dāng)前幀減去前一幀的圖像作為背景,這個(gè)辦法最簡(jiǎn)單粗暴。優(yōu)化的話,我們就得對(duì)所有的幀差進(jìn)行建模,用來(lái)得到最優(yōu)的背景模型。
審核編輯:劉清
-
OpenCV
+關(guān)注
關(guān)注
31文章
635瀏覽量
41393 -
MOGPON
+關(guān)注
關(guān)注
0文章
2瀏覽量
5748 -
printf函數(shù)
+關(guān)注
關(guān)注
0文章
31瀏覽量
5902
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
Vivado設(shè)計(jì)流程分析 Vivado HLS實(shí)現(xiàn)OpenCV的開(kāi)發(fā)流程

Vivado HLS實(shí)現(xiàn)OpenCV圖像處理的設(shè)計(jì)流程與分析
LabVIEW+Python+openCV
OpenCV中的BGR格式,在libyuv中對(duì)應(yīng)的那個(gè)格式?OpenCV中的RGB格式呢?
一種基于背景減除與三幀差分的運(yùn)動(dòng)目標(biāo)檢測(cè)算法
在Vivado中如何實(shí)現(xiàn)OpenCV設(shè)計(jì)
OpenCV的混合高斯背景模型源碼程序免費(fèi)下載
如何實(shí)現(xiàn)復(fù)雜背景中的快速人臉識(shí)別技術(shù)研究

復(fù)雜背景下缺陷檢測(cè)將Halcon實(shí)現(xiàn)轉(zhuǎn)為OpenCV的實(shí)例
OpenCV中的Python實(shí)現(xiàn)
OpenCV Webinar 2丨如何在OpenCV中調(diào)用Tengine推理,實(shí)現(xiàn)開(kāi)發(fā)效率翻倍

如何在OpenCV中實(shí)現(xiàn)CUDA加速
手把手教你使用LabVIEW OpenCV DNN實(shí)現(xiàn)手寫(xiě)數(shù)字識(shí)別(含源碼)
如何基于計(jì)算機(jī)視覺(jué)實(shí)現(xiàn)道路交通計(jì)數(shù)

基于OpenVINO+OpenCV的OCR處理流程化實(shí)現(xiàn)

評(píng)論