实践5-视频运动目标检测:帧差法的实现_第1页
实践5-视频运动目标检测:帧差法的实现_第2页
实践5-视频运动目标检测:帧差法的实现_第3页
实践5-视频运动目标检测:帧差法的实现_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实践5 视频运动目标检测:帧差法的实现实验任务:根据原理,获取并显示两幅图像的帧差灰度图和帧差二值图,如下图所示。实现的算法是:(1)分别读取两张图像;(2)将2张图像分别转换为灰度图,转换函数可用:cvCvtColor/cvtColor;(3)将2张灰度图相减(求差值),得到帧差灰度图,相减函数可用:cvAbsDiff/absdiff;(4)利用阈值操作,将帧差灰度图转化为帧差二值图,阈值操作函数可用:cvThreshold/threshold;(如果假设目标设定为白色,背景设定为黑色,则需要使用逻辑“非”操作进行颜色转换,可使用cvNot/bitwise_not函数);(5)显示图像。请将

2、上述任务改成找茬游戏的自动找茬功能。请改为三帧差分,并上交源代码。函数解析:(1)cvCvtColor/cvtColorC: void cvCvtColor( const CvArr* src, CvArr* dst, int code );C+:voidcvtColor(InputArraysrc, OutputArraydst, intcode, intdstCn=0)src 输入的8-bit,16-bit或32-bit单倍精度浮点数影像。dst 输出的8-bit,16-bit或32-bit单倍精度浮点数影像。code色彩空间转换的模式,该code来实现不同类型的颜色空间转换。比如CV_B

3、GR2GRAY表示转换为灰度图,CV_BGR2HSV将图片从RGB空间转换为HSV空间。常见的code模式有:CV_RGB2GRAY(彩色图像-灰度图像)CV_BGR2YCrCbCV_RGB2YCrCbCV_YCrCb2BGRCV_YCrCb2RGBCV_BGR2HSVCV_RGB2HSVCV_HSV2BGRCV_HSV2RGB(2)cvAbsDiff/absdiffOpenCV 中计算两个数组差的绝对值的函数。void cvAbsDiff( const CvArr* src1, const CvArr* src2, CvArr* dst );src1 第一个原数组(第一张图像)src2 第二

4、个原数组(第二张图像)dst输出数组(输出的帧差图像)函数 cvAbsDiff 计算两个数组差的绝对值,其数学原理为:dst(I)c = abs(src1(I)c - src2(I)c).所有数组必须有相同的数据类型相同的大小(或ROI大小)。(3)cvThreshold/threshold作用:函数 cvThreshold 对单通道数组应用固定阈值操作。该函数的典型应用是对灰度图像进行阈值操作得到二值图像。void cvThreshold( const CvArr* src, CvArr* dst, double threshold, double max_value, int thresh

5、old_type );src:原始数组 (单通道 , 8-bit of 32-bit 浮点数)。dst:输出数组,必须与 src 的类型一致,或者为 8-bit。threshold:阈值max_value:使用 CV_THRESH_BINARY 和 CV_THRESH_BINARY_INV 的最大值。threshold_type:阈值类型 threshold_type=CV_THRESH_BINARY:如果 src(x,y)threshold ,dst(x,y) = max_value; 否则,des(x,y)=0;threshold_type=CV_THRESH_BINARY_INV:如果

6、src(x,y)threshold,dst(x,y) = 0; 否则,dst(x,y) = max_value.本函数支持的对图像取阈值的方法由 threshold_type 确定:threshold_type=CV_THRESH_BINARY:dst(x,y) = max_value, if src(x,y)threshold 0, otherwise.threshold_type=CV_THRESH_BINARY_INV:dst(x,y) = 0, if src(x,y)threshold; dst(x,y) = max_value, otherwise.threshold_type=CV_THRESH_TRUNC:dst(x,y) = threshold, if src(x,y)threshold;dst(x,y) = src(x,y), otherwise.threshold_type=CV_THRESH_TOZERO:dst(x,y) = src(x,y), if (x,y)threshold ; dst(x,y) = 0, otherwise

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论