- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
帧差法目标识别.
本文展示了一种自动识别视频中移动目标的方法。论文中提取移动目标通过帧序列,这种方法不需要先验知识,比如:时间阈值调整。基于相邻帧的连续对称差分,我们能得到全分辨率显著图;然后利用最大熵方法计算阈值决定候选区域和获得兴趣点的种子;最后用修改的模糊生长方法获得最终的结果。本文中提出的算法是有效的、具有鲁棒性的。实验结果也证明它具有很好的效果。
移动目标检测在计算机视觉中有广泛应用,但是在研究过程中也有很多
挑战。通常目标检测方法被分为三类:
(1)基于时间信息。例如:帧差法能很快检测出目标,但很难得到整个物体的轮廓,并且易受背景的影响。
(2)基于空间信息的。
(3)基于时间和空间信息的。有较好的效果,计算复杂度高。
本文提出了一种基于时间信息的方法。
(1)通过相邻帧对称差分获得显著图;
(2)使用最大熵模型得到一个阈值去二值化时间显著图和获得候选区域。然后选择候选区域最显著的点作为兴趣种子点。
(3)对于每一兴趣种子点,在显著图上应用模糊生长方法直到没有点能被聚集和能获得移动物体的轮廓
A.移动显著图的产生
①获得一段连续帧
②相邻帧做差分得到移动目标。
③对得到的差分显著图做开运算。作用:消除小的和亮的细节。
④为了去除噪声和背景运动的影响,对差分得到的显著图做和再平均
。
B.兴趣种子选择
由于图像是连续变化的,一个固定的阈值不能很好的二值化显著图,本文采用最大熵方法得到一个变化的阈值去二值化显著图和提取候选兴趣区域。然后选择兴趣种子点。
C.移动目标检测
为了提取移动的目标,本论文应用模糊生长方法去使兴趣点的种子生长成一片区域。如果像素值满足下列条件,对兴趣点的种子使用模糊生长算法。a和u表示如下图
实验
数据集:PETS2000, PETS2001 and Dataset2014
设备:The algorithm is implemented with C++ on a personal computer with Core i3 3.3 GHz CPU and 2G RAM.
评价标准:
假负率(False Negative Rate?,?FNR)?:FNR = FN /(TP + FN)?,即被预测为负的正样本结果数/正样本实际数
假正率(False Positive Rate?,?FPR)?:FPR = FP /(FP + TN)?,即被预测为正的负样本结果数?/负样本实际数
Specificity (负例的覆盖率,True Negative Rate) =正确预测到的负例个数/实际负例总数
PBC :Percentage of Bad Classifications
召回率(Re、recall):预测为真实正例除以所有真实正例样本的个数
准确率(Precision) :预测为真实正例除以所有被预测为正例样本的个数
F-measure:查准率和查全率的调和平均值,?更接近于P, R两个数较小的那个:?F=2* P* R/(P + R)
实验结果如下图
表一表示的是本论文实验得出的结果;Fig7和Fig8本文的实验结果与图中方法的比较,可以看出本文中的方法表现很出色。
论文中的检测结果
本论文的贡献共以下五点:
(1)产生特征图基于时间信息。
(2)对于场景不需要任何先验知识。
(3)扩展了差分从相邻两帧到相邻n帧。
(4)对于复杂的背景和相机的抖动具有很好的鲁棒性。
(5)自动的提取移动目标。
算法:
clc;clear all
videoObj =VideoReader(11.avi);%读视频文件
nframes = get(videoObj, NumberOfFrames);%获取视频文件帧个数
N=12;
start=20;
% [hang,lie]=size(grayFrame);
alldiff=zeros(288,512,N);
for k = 1+start : N+start
currentFrame = read(videoObj, k);%读取第i帧
subplot(2,2,1);%创建图像显示窗口并获取第一个窗口句柄
imshow(currentFrame);
% Convert to grayscale.
grayFrame = rgb2gray(currentFrame);%灰度化
[hang,lie]=size(grayFrame);
% alldiff=zeros(hang,lie,N);
if(k==1+start)
grayFrame_1 = grayFrame;
end
difgrayFrame= grayFrame - grayFrame
文档评论(0)