4

我尝试在matlab中应用代码进行人脸检测和跟踪,但不幸的是这个错误提示了

我用matlab R2012a

这是我试过的代码

faceDetector = vision.CascadeObjectDetector();
videoFileReader = vision.VideoFileReader('visionface.avi');
videoFrame      = step(videoFileReader);
bbox            = step(faceDetector, videoFrame);
videoOut = insertObjectAnnotation(videoFrame,'rectangle',bbox,'Face');

这是错误:

Undefined function 'insertObjectAnnotation' for input
arguments of type 'single'.

请帮忙 。

4

4 回答 4

1

函数 insertObjectAnnotation 在 R2012b 中被引入 Matlab。它不适用于 matlab R2012a

于 2013-09-17T06:49:46.550 回答
0

insertObjectAnnotationR2012a 中不存在该功能。它是在 R2012b 中添加的。如果您还有 R2012a,您可以使用vision.ShapeInsertervision.TextInserter系统对象来注释您的图像。它们不像 那样方便insertObjectAnnotation,但它们会完成这项工作。

于 2013-10-17T13:44:46.980 回答
0

insertObjectAnnotation 适用于计算机视觉系统工具箱下的 windows 环境。它在ubuntu中不起作用。

于 2013-01-30T13:28:58.203 回答
0

问题是它videoFrame的类型single不是有效的输入类型。大多数 matlab 函数期望它们的输入是double. 尝试转换videoFramedouble

ideoOut = insertObjectAnnotation( double(videoFrame), 'rectangle', bbox, 'Face');
于 2012-12-14T01:37:36.443 回答