如何在脸部识别代码中使用从边界框中提取的脸部。

时间:2014-08-14 17:17:53

标签: matlab image-processing image-segmentation matlab-cvst

我有三个人在镜头前使用FaceDetect = vision.CascadeObjectDetector;我在这三个面上都有一个边框。我想跟踪保存在我的面部识别代码数据库中的特定面部。为此,我使用下面的代码,但收到错误:

temp = getdata(vid,1);
index1 = bbox(1,:);
face1 = temp(index1(2):index1(2)+index1(4),index1(1):index1(1)+index1(3),:);

R = imagesc(face1);
name1 = recognize(R);            %.....my face recognition function

我收到的错误如下所示:

Error using rgb2gray>parse_inputs (line 81) MAP must be a m x 3 array.

Error in rgb2gray (line 35) X = parse_inputs(varargin{:});

Error in get_face (line 11) img=rgb2gray(img);

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

在致电rgb2gray之前,您应该检查img是否确实是rgb图像,i。即大小为M-by-N-by-3。