how do i get a webcam to capture an image and store the image in a folder and continuously do so while changing the file name for each new image?
5 views (last 30 days)
Show older comments
this is what i have tried to use so far to save captured image but it hasnt worked...
counter = 1;
baseDir = 'C:\Users\Nakk\Documents\MATLAB';
baseName = 'Nakk_'; %Nakk is the name i have chosen for the image files
newName = [baseDir baseName num2str(counter) '.jpg'];
while exist(newName,'file')
counter = counter + 1;
newName = [baseDir baseName num2str(counter) '.jpg'];
end
imwrite(img, newName);
2 Comments
vasundra wazir
on 16 Apr 2020
can u help me the code. i want to crop the image in gui and save the image in the folder but its nit showing in the axes the image and is not saving in folder. kindly help me with this . its important.
hold on
for i=1:size(bbox,1)
rectangle('position', bbox(1,:), 'Linewidth', 5,' Linestyle', '-','Edgecolor','r');
end
hold off
N=size(bbox,1);
handles.N=N;
counter= 1;
for i=1:N
Face=imcrop(img,bbox(i,:));
axes(handles.axes2);
imshow(Face);
savenam= strcat('E:\matlab\Face Recognition & Image Processing System\R_TrainDatabase', num2str(counter));
baseDir = 'E:\matlab\Face Recognition & Image Processing System\R_TrainDatabase';
newName = [ baseDir savenam num2str(counter) ' .jpg'];
handles. face= face;
while exits(newName, 'file')
counter = counter +1;
newName = [baseDir num2str(counter) '.jpg'];
end
face= imresize(face, [140 180]);
Fac=rgb2gray(face);
imwrite(Fac, newName);
axes(handles.axes2);
imshow(Face);
end
Walter Roberson
on 17 Apr 2020
savenam= strcat('E:\matlab\Face Recognition & Image Processing System\R_TrainDatabase', num2str(counter));
That already has counter as part of it, and then you put the counter in again
newName = [ baseDir savenam num2str(counter) ' .jpg'];
Accepted Answer
Jan
on 24 Mar 2014
Edited: Jan
on 24 Mar 2014
Notice that your baseDir does not end with a file separator, such that Matlab checks for the files "C:\Users\Nakk\Documents\MATLABNakk_1.jpg" etc.
Better use fullfile instead of the concatenation of the path with [ and ]:
newName = fullfile(baseDir, sprintf('%s%d.jpg', baseName, counter));
I prefer sprintf instead of num2str for such cases.
More Answers (1)
karem nessem
on 29 Mar 2017
the iamge isn't save ..just black
1 Comment
Walter Roberson
on 29 Mar 2017
Please show your code -- all the parts of how the image is captured and saved.
See Also
Categories
Find more on Red in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!