Image 在matlab代码中如何裁剪图像中的矩形框
我想在代码中裁剪检测到的面。这是我的密码Image 在matlab代码中如何裁剪图像中的矩形框,image,matlab,image-processing,computer-vision,face-detection,Image,Matlab,Image Processing,Computer Vision,Face Detection,我想在代码中裁剪检测到的面。这是我的密码 function DisplayDetections(im, dets) imshow(im); k = size(dets,1); hold on; for i=1:k rectangle('Position', dets(i,:),'LineWidth',2,'EdgeColor', 'r'); end imcrop(rectangle); hold off; 它们的语法在裁剪时出错。 任何人都可以帮助裁剪在上面的框中检测到的矩形框
function DisplayDetections(im, dets)
imshow(im);
k = size(dets,1);
hold on;
for i=1:k
rectangle('Position', dets(i,:),'LineWidth',2,'EdgeColor', 'r');
end
imcrop(rectangle);
hold off;
它们的语法在裁剪时出错。
任何人都可以帮助裁剪在上面的框中检测到的矩形框。该代码只在图像中绘制矩形。如果您确实想要裁剪出具有定义矩形的部分图像,请使用
因此,您可以这样做来存储所有裁剪的矩形。这是假设im和DET已在函数的代码中定义:
k = size(dets,1);
cropped = cell(1,k);
for i=1:k
cropped{k} = imcrop(im, dets(i,:));
end
裁剪将是一个单元格数组,其中每个元素将存储由dets数组中的每个矩形定义的裁剪图像。这是假设dets是一个2D数组,其中有4列,行数决定有多少个矩形。每行DET的结构应如下所示:
[xmin ymin width height]
xmin,ymin是矩形左上角的水平和垂直坐标,而width和height是矩形的宽度和高度
如果要访问单元格数组中的裁剪部分,只需执行以下操作:
crp = cropped{k};
k将是在图像中检测到的第k个矩形。该代码仅在图像中绘制矩形。如果您确实想要裁剪出具有定义矩形的部分图像,请使用
因此,您可以这样做来存储所有裁剪的矩形。这是假设im和DET已在函数的代码中定义:
k = size(dets,1);
cropped = cell(1,k);
for i=1:k
cropped{k} = imcrop(im, dets(i,:));
end
裁剪将是一个单元格数组,其中每个元素将存储由dets数组中的每个矩形定义的裁剪图像。这是假设dets是一个2D数组,其中有4列,行数决定有多少个矩形。每行DET的结构应如下所示:
[xmin ymin width height]
xmin,ymin是矩形左上角的水平和垂直坐标,而width和height是矩形的宽度和高度
如果要访问单元格数组中的裁剪部分,只需执行以下操作:
crp = cropped{k};
k将是图像中检测到的第k个矩形。语法错误是什么?此代码应该运行。。。。除非您按下编辑器中的“运行”按钮……语法错误可能是您正在将输入参数中的函数“矩形”指定给函数“imcrop”。语法错误是什么?此代码应该运行。。。。除非您按下编辑器中的“运行”按钮……语法错误可能是您正在将输入参数中的函数“矩形”指定给函数“imcrop”。