having trouble using parallel computing in image proccesing

1 Ansicht (letzte 30 Tage)
noam Y
noam Y am 4 Mai 2018
Bearbeitet: noam Y am 5 Mai 2018
Hello, I'm trying to process a video and create an output video from modified frames.
because I have a multi-core machine I'm using parfor to accelerate the process,
the problem is that every iteration all of the Matlab workers take the same frame instead of reaching for the next one. any advice? my code:
video = VideoReader('file_name.mov');
outputVideo = VideoWriter(fullfile('destenation folder\','output file name.avi'));
outputVideo.FrameRate = video.FrameRate;
open(outputVideo);
frame=0;
while hasFrame(video)
if frame>=video.FrameRate*5&&frame<=video.FrameRate*7
images = cell(1,6);
parfor frm=1:6
frame = frame +1;
img = readFrame(video);
images{frm} = RetrieveOutputimg(img);
end
for image=1:6
try
writeVideo(outputVideo,images{image});
figure;
imshow(images{image});
catch
end
end
else
frame = frame +1;
readFrame(video);
end
end
close(outputVideo);

Antworten (0)

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by