Use files from multiple folders

8 views (last 30 days)
Hi
I want to extract images from different videos in different folders (other than the folder for MATLAB code) but I do not want to use a separate code saved in the same directory of each video. Also I want to save the extracted images in the same directory of the original video. Is that possible?
Thanks

Accepted Answer

Image Analyst
Image Analyst on 29 Jul 2023
Since this is one of the most common FAQs, see the FAQ for code snippets:

More Answers (1)

Jon
Jon on 28 Jul 2023
Yes, this is possible.
You can either open the file using the full path to the file, for example
im = imread('c:/mystuff/myvideos/image001.jpg');
or you can change the directory down to the directory where the files are, do what you want and then go back
% Save the original folder so you can go back and navigate to new folder
oldFolder = cd('c:/mystuff/myvideos');
% Read the image, etc
im = imread('image001.jpg');
% Go back to original directory
cd(oldFolder)
You can also use relative paths. See https://www.mathworks.com/help/matlab/ref/cd.html for more details.
You can also look at the dir command that is useful to find the names of available files and folders, see https://www.mathworks.com/help/matlab/ref/dir.html
  2 Comments
Stephen23
Stephen23 on 29 Jul 2023
Edited: Stephen23 on 29 Jul 2023
Using CD in code should be avoided, as it forces MATLAB to rescan those folders for all relevant files and can changes what functions get called. The documentation recommends "Avoid programmatic use of cd, addpath, and rmpath, when possible. Changing the MATLAB path during run time results in code recompilation."
Using absolute / relative filenames is faster, easier to debug, and more robust.
Nikoo Moradpour
Nikoo Moradpour on 31 Jul 2023
Thanks Jon and Stephan for your help and answers.

Sign in to comment.

Categories

Find more on Search Path in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!