空灵学院

 找回密码
 立即注册

扫一扫,访问微社区

搜索
查看: 2007|回复: 0

视频图像差分检测

[复制链接]

1137

主题

1761

帖子

7558

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
7558
发表于 2014-1-15 18:55:22 | 显示全部楼层 |阅读模式
以下内容摘自好友lyqmath新浪博客,在此借花献佛。

简介
视频图像序列处理方法中,差分算法以其高效性、简便性应用广泛。这里给出应用实例,并给出实验结果。

代码
  1. % By lyqmath
  2. clc; clear all; close all;
  3. % 原始视频
  4. targetavi = 'traffic.avi';
  5. % 检测结果视频
  6. resultavi = 'c:\\result.avi';
  7. %% 读取视频
  8. mov = mmreader(targetavi);
  9. fnum = mov.NumberOfFrames;
  10. %% 建立结果视频
  11. aviobj = avifile(resultavi);
  12. aviobj.Quality = 100;
  13. aviobj.Fps = 25;
  14. aviobj.compression = 'Indeo5';
  15. %% 帧间差分法
  16. figure(1);
  17. for i = 2 : fnum
  18.     x = read(mov, i-1);
  19.     y = read(mov, i);
  20.     subplot(1, 2, 1); imshow(x, []); title(sprintf('第%d帧视频,By lyqmath', i-1), 'FontWeight', 'Bold', 'Color', 'r');
  21.     % 灰度化
  22.     if ndims(x) == 3
  23.         m = rgb2gray(x);
  24.     else
  25.         m = x;
  26.     end
  27.     if ndims(y) == 3
  28.         n = rgb2gray(y);
  29.     else
  30.         n = y;
  31.     end
  32.     % 中值滤波
  33.     m = medfilt2(m);
  34.     n = medfilt2(n);
  35.     % 数据类型转换
  36.     q = im2double(n);
  37.     w = im2double(m);
  38.     % 差分
  39.     c = q-w;
  40.     % 阈值,此值可以调节
  41.     t = 40/256;
  42.     % 阈值分割
  43.     c(abs(c)>=t)=255;
  44.     c(abs(c)<t) = 0;
  45.     c = logical(c);
  46.     x1 = x(:, :, 1); x2 = x(:, :, 2); x3 = x(:, :, 3);
  47.     x1(c) = 255; x2(c) = 0; x3(c) = 0;
  48.     xc = cat(3, x1, x2, x3);
  49.     subplot(1, 2, 2); imshow(xc, []); title(sprintf('第%d帧视频识别结果,By lyqmath', i-1), 'FontWeight', 'Bold', 'Color', 'r');
  50.     f = getframe(gcf);
  51.     f = frame2im(f);
  52.     % 生成视频
  53.     aviobj = addframe(aviobj, f);
  54. end
  55. %% 关闭视频句柄
  56. aviobj = close(aviobj);
复制代码
结果





注:专注图像处理技术,注重实用性、可行性。可作为工程项目解决方案,论文科研实

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|空灵学院 ( 11033542 )

GMT+8, 2024-5-15 08:16 , Processed in 0.025804 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表