创建系统对象,用于读取和显示视频,并绘制对象的边框。
videoReader = videoReader (“visionface.avi”);放像机=愿景。放像机(“位置”[100100680520]);
读取第一个视频帧,其中包含对象,定义区域。
objectFrame = readFrame (videoReader);objectRegion =(264122、93、93);
作为一种替代方法,您可以使用以下命令使用鼠标选择对象区域。物体必须占据区域的大部分:
图;imshow (objectFrame);
objectRegion =圆(getPosition (imrect))
显示带有红色边框的初始帧。
objectImage = insertShape (objectFrame,“矩形”objectRegion,“颜色”,“红色”);图;imshow (objectImage);标题(“红框显示对象区域”);
检测目标区域的兴趣点。
点= detectMinEigenFeatures (im2gray (objectFrame),“投资回报”, objectRegion);
显示检测到的点。
pointImage = insertMarker (objectFrame点。的位置,“+”,“颜色”,“白色”);图;imshow (pointImage);标题(“检测兴趣点”);
创建一个跟踪器对象。
追踪=愿景。PointTracker (“MaxBidirectionalError”1);
初始化跟踪。
初始化(跟踪、points.Location objectFrame);
在每个视频帧中读取、跟踪、显示点和结果。
而hasFrame(videoReader) frame = readFrame(videoReader);(点,有效性)=追踪(框架);out = insertMarker(frame,points(validity,:)),“+”);放像机(出);结束
释放视频播放器。
释放(放像机);