资源简介
资源中包含了两个m文件。
yidongpingjunfa.m采用了背景差法检测运动目标,移动平均法提取图像背景。
minboundrect.m用于绘制运动目标的最小外接矩形框,可任意设置最小外接矩形框的角度。
本人做的是视频中运动车辆的检测,读者可自行更换检测算法以及参数调整以匹配不同的运动场景。
yidongpingjunfa.m采用了背景差法检测运动目标,移动平均法提取图像背景。
minboundrect.m用于绘制运动目标的最小外接矩形框,可任意设置最小外接矩形框的角度。
本人做的是视频中运动车辆的检测,读者可自行更换检测算法以及参数调整以匹配不同的运动场景。
代码片段和文件信息
function [rectxrectyareaperimeter] = minboundrect(xymetric)
% minboundrect: Compute the minimal bounding rectangle of points in the plane
% usage: [rectxrectyareaperimeter] = minboundrect(xymetric)
%
% arguments: (input)
% xy - vectors of points describing points in the plane as
% (xy) pairs. x and y must be the same lengths.
%
% metric - (OPTIONAL) - single letter character flag which
% denotes the use of minimal area or perimeter as the
% metric to be minimized. metric may be either ‘a‘ or ‘p‘
% capitalization is ignored. Any other contraction of ‘area‘
% or ‘perimeter‘ is also accepted.
%
% DEFAULT: ‘a‘ (‘area‘)
%
% arguments: (output)
% rectxrecty - 5x1 vectors of points that define the minimal
% bounding rectangle.
%
% area - (scalar) area of the minimal rect itself.
%
% perimeter - (scalar) perimeter of the minimal rect as found
%
%
% Note: For those individuals who would prefer the rect with minimum
% perimeter or area careful testing convinces me that the minimum area
% rect was generally also the minimum perimeter rect on most problems
% (with one class of exceptions). This same testing appeared to verify my
% assumption that the minimum area rect must always contain at least
% one edge of the convex hull. The exception I refer to above is for
% problems when the convex hull is composed of only a few points
% most likely exactly 3. Here one may see differences between the
% two metrics. My thanks to Roger Stafford for pointing out this
% class of counter-examples.
%
% Thanks are also due to Roger for pointing out a proof that the
% bounding rect must always contain an edge of the convex hull in
% both the minimal perimeter and area cases.
%
%
% See also: minboundcircle minboundtri minboundsphere
%
%
% default for metric
if (nargin<3) || isempty(metric)
metric = ‘a‘;
elseif ~ischar(metric)
error ‘metric must be a character flag if it is supplied.‘
else
% check for ‘a‘ or ‘p‘
metric = lower(metric(:)‘);
ind = strmatch(metric{‘area‘‘perimeter‘});
if isempty(ind)
error ‘metric does not match either ‘‘area‘‘ or ‘‘perimeter‘‘‘
end
% just keep the first letter.
metric = metric(1);
end
% preprocess data
x=x(:);
y=y(:);
% not many error checks to worry about
n = length(x);
if n~=length(y)
error ‘x and y must be the same sizes‘
end
% start out with the convex hull of the points to
% reduce the problem dramatically. Note that any
% points in the interior of the convex hull are
% never needed so we drop them.
if n>3
% edges = convhull(xy{‘Qt‘}); % ‘Pp‘ will silence the warnings
try
edges = convhull(xy);
catch
end
% exclude those points inside the hull as not relevant
% also sorts the points into their convex hull as a
% closed polygon
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5260 2019-11-21 15:09 minboundrect.m
文件 2841 2019-12-23 17:46 yidongpingjunfa.m
----------- --------- ---------- ----- ----
8101 2
相关资源
- MATLAB运动目标检测代码
- 用matlab读取视频文件中的图像,并对
- 基于MATLAB的vibe算法的运动目标检测代
- 运动目标检测的背景建模
- 基于MATLAB运动目标检测追踪
- 运动目标检测光流法
- 基于帧差法的运动目标检测的matlab代
- 视频运动目标检测与跟踪 matlab代码
- 运动目标检测的matlab代码
- 运动目标检测与跟踪算法 Matlab
- 改进的VIBE运动目标检测算法
- 改进的混合高斯背景模型
- MotionDetection 静止背景下运动目标检测
- Moving-target-detection 运动目标检测的一
- GMM 建立了混合高斯模型
- 运动目标检测及图像分割matlab代码(
- 运动目标检测跟踪matlab
- 图像处理之运动目标检测
- MATLAB车辆运动目标跟踪检测[每辆车速
评论
共有 条评论