Two axes vs. Single with [ im , im2 ]
1 view (last 30 days)
Show older comments
Hi I am making a GUI and comparing options of showing the videos inside.
I will be showing them side by side and wanted to try the two opstion mention above.
I would expect them to be running equally fast as I am plotting the same amount of pixels are the same, but the difference is huge.
Ofcourse cat is costing something to run, but when profilling I see a large increase in drawnow.
Is this simply because having two axes enables matlab to start plotting one while starting to read the other? or is there something about having to concat images that just takes longer due to how the code is interperted.
Hope someone has a bit more experience and could confirm my assumption or inform me about the cause, thank you in advance!
Code two axes:
while bVideoRunning
im = cellfun(@readFrame,VideoObjects,'UniformOutput',false);
imconcat = cat(2,im{1},im{2}) % I have also tried imconcat = [im{:}] but it is not faster the same with not using cellfun
set(hImage1, 'CData' ,imconcat);
drawnow
end
Code concat images:
while bVideoRunning
im = readFrame(VideoObjects);
set(hImage1, 'CData' ,im);
im2 = readFrame(VideoObjects2);
set(hImage2, 'CData' ,im2);
drawnow
end
5 Comments
Answers (0)
See Also
Categories
Find more on Interactive Control and Callbacks 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!