实践5-视频运动目标检测:帧差法的实现(共4页)

上传人:文库****9 文档编号:211031308 上传时间:2021-11-15 格式:DOCX 页数:4 大小:293.24KB
返回 下载 相关 举报
实践5-视频运动目标检测:帧差法的实现(共4页)_第1页
第1页 / 共4页
实践5-视频运动目标检测:帧差法的实现(共4页)_第2页
第2页 / 共4页
实践5-视频运动目标检测:帧差法的实现(共4页)_第3页
第3页 / 共4页
实践5-视频运动目标检测:帧差法的实现(共4页)_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《实践5-视频运动目标检测:帧差法的实现(共4页)》由会员分享,可在线阅读,更多相关《实践5-视频运动目标检测:帧差法的实现(共4页)(4页珍藏版)》请在金锄头文库上搜索。

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

2、数);(5)显示图像。请将上述任务改成找茬游戏的自动找茬功能。请改为三帧差分,并上交源代码。函数解析:(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来实现不同类型的

3、颜色空间转换。比如CV_BGR2GRAY表示转换为灰度图,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 第一个原数组(

4、第一张图像)src2 第二个原数组(第二张图像)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_valu

5、e, int threshold_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_B

6、INARY_INV:如果 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.thre

7、shold_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.threshold_type=CV_THRESH_TOZERO_INV:dst(x,y) = 0, if src(x,y)threshold ;dst(x,y) = src(x,y), otherwise.专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号