网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
10月15日漏签0天
matlab吧 关注:292,095贴子:1,658,805
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 10回复贴,共1页
<<返回matlab吧
>0< 加载中...

求教各位大神,这个基于视频的车流量检测,MATLAB代码对吗?

  • 只看楼主
  • 收藏

  • 回复
  • 天枰小米专卖店
  • 江湖少侠
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
基于视频的车流量统计——matlab代码
% 创建系统对象,用于读入待处理视频
filename = 'viptraffic.avi';
hvfr = vision.VideoFileReader(filename,'ImageColorSpace', 'RGB');
% 创建系统对象,用于色彩空间转换
hcsc =vision.ColorSpaceConverter('Conversion', 'RGB to intensity');
% 创建系统对象,用于用高斯混合模型检测背景
hfdet = vision.ForegroundDetector(...
'NumTrainingFrames', 5, ... % 取连续五帧进行检测背景
'InitialVariance', (30/255)^2); % 初始标准差为 30/255
% 创建系统对象,用于检测出包含汽车运动的图像块
hblob = vision.BlobAnalysis( ...
'CentroidOutputPort',false, ...
'AreaOutputPort', true, ...
'BoundingBoxOutputPort',true, ...
'OutputDataType', 'single',...
'MinimumBlobArea', 250, ...
'MaximumBlobArea', 3600,...
'MaximumCount', 80);
% 创建系统对象,用于对检测出的运动车辆进行框画
hshapeins = vision.ShapeInserter( ...
'BorderColor', 'Custom', ...
'CustomBorderColor', [0 255 0]);
% 创建系统对象,用于标注检测到车辆的个数
htextins = vision.TextInserter( ...
'Text', '%4d', ...
'Location', [1 1], ...
'Color', [255 255 255], ...
'FontSize', 12);
% 创建系统对象,用于显示结果
sz = get(0,'ScreenSize');
pos = [20 sz(4)-300 200 200];
hVideoOrig = vision.VideoPlayer('Name','Original', 'Position', pos);
pos(1) = pos(1)+220; %在右侧建立下一个视窗
hVideoFg = vision.VideoPlayer('Name','Foreground', 'Position', pos);
pos(1) = pos(1)+220;
hVideoRes = vision.VideoPlayer('Name','Results', 'Position', pos);
line_row = 23; % 定义感兴趣区域(ROI)
% 以下的程序段为对输入的视频图像进行处理
while ~isDone(hvfr)
image = step(hvfr); % 读入视频的每一帧
y= step(hcsc, image); % 将彩色图像转换成灰度图像
% 采用自动白平衡算法去除灰度突变
y = y-mean(y(:));
fg_image = step(hfdet, y); % 检验背景
%采用数学形态学,在前景图像中检测变化的联通图像块区域的面积
[area, bbox] = step(hblob, fg_image);
image_out = image;
image_out(22:23,:,:) = 255; % 仅对经过白线后的车辆进行计数
image_out(1:15,1:30,:) = 0; % 将背景置为黑色
Idx = bbox(:,2) > line_row; %选择感兴趣区域.
% 当在感兴趣区域中,联通图像块的比例占整个变化区域的40%以上时,便认为是车辆
ratio = zeros(length(Idx),1);
ratio(Idx) = single(area(Idx,1))./single(bbox(Idx,3).*bbox(Idx,4));
ratiob = ratio > 0.4;
count = int32(sum(ratiob)); % 车辆的数量
bbox(~ratiob,:) = int32(-1);
%将检测出的车辆圈画出来
image_out = step(hshapeins, image_out, bbox);
%显示检测汽车的数量
image_out = step(htextins, image_out, count);
step(hVideoOrig, image); % 原始视频
step(hVideoFg, fg_image); % 前景
step(hVideoRes, image_out); % 用方框勾画检测出的车辆
end
%关闭视频文件
release(hvfr);


  • Vill-Vi
  • 初涉江湖
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
'MinimumBlobArea', 250, ...
楼主,这个代码是什么意思?


2025-10-15 01:39:35
广告
不感兴趣
开通SVIP免广告
  • 司空摘star
  • 初涉江湖
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
没问题


  • zxc13579ben
  • 初涉江湖
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
楼主检测的结果怎么显示。


  • zxc13579ben
  • 初涉江湖
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
运行完左上角就变成0了


  • 天枰小米专卖店
  • 江湖少侠
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你这个程序网上直接档的吧?


  • 天枰小米专卖店
  • 江湖少侠
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
要改很多东西的,你加我扣扣吧,我给你看一下成品,925695187


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 10回复贴,共1页
<<返回matlab吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示