how to retrieve pixel values from bounding box of an image.

7 visualizaciones (últimos 30 días)
Following is a code to create a bounding box of the detected face.
clear all
clc
faceDetector = vision.CascadeObjectDetector;
I = imread('visionteam.jpg'); % RGB IMage
figure
imshow(I)
title('Input Image')
bboxes = step(faceDetector, I);
IFaces = insertObjectAnnotation(I, 'Rectangle', bboxes, 'Face');
figure, imshow(IFaces), title('Detected faces');
--------------------------------------------------------------------
My question is:
How can I obtain pixel values inside this bounding box area?
Store the retrieved values in M by N by 3 matrix, after obtaining the pixel values under the bounding box area. How can it be done?

Respuesta aceptada

Ameer Hamza
Ameer Hamza el 4 de Nov. de 2020
Editada: Ameer Hamza el 4 de Nov. de 2020
See imcrop(): https://www.mathworks.com/help/images/ref/imcrop.html. For example, add following lines at end of your code
faces = cell(1, size(bboxes,1));
for i=1:numel(faces)
faces{i} = imcrop(I, bboxes(i,:));
end
It will save each face in the cell array.
  4 comentarios
sami ullah
sami ullah el 5 de Nov. de 2020
Thanks a lot Ameer Hamza
Ameer Hamza
Ameer Hamza el 5 de Nov. de 2020
I am glad to be of help!

Iniciar sesión para comentar.

Más respuestas (0)

Productos


Versión

R2015a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by