0057-在OpenCV环境下使用KNN背景建模提取前景目标

原理大家自行上网搜索吧,OpenCV提供了类BackgroundSubtractorKNN实现KNN背景建模。

代码如下
图像处理开发资料、图像处理开发需求、图像处理接私活挣零花钱,可以搜索公众号"qxsf321",并关注!
代码中用到的视频下载链接:https://pan.baidu.com/s/1mhLS0ZY 密码:bcc2

//opencv版本:OpenCV3.0
//VS版本:VS2013
//Author:qxsf321.net

#include   
#include 

#include 
#include 

#include 

using namespace cv;
using namespace std;

const int HISTORY_NUM = 7;// 14;// 历史信息帧数  
const int nKNN = 3;// KNN聚类后判断为背景的阈值  
const float defaultDist2Threshold = 20.0f;// 灰度聚类阈值  

struct PixelHistory
{
        unsigned char *gray;// 历史灰度值  
        unsigned char *IsBG;// 对应灰度值的前景/背景判断,1代表判断为背景,0代表判断为前景  
};


int main()
{
        PixelHistory* framePixelHistory = NULL;// 记录一帧图像中每个像素点的历史信息  
        cv::Mat frame, FGMask, FGM

你可能感兴趣的:(0057-在OpenCV环境下使用KNN背景建模提取前景目标)