Playing videos in Matlab

11 ビュー (過去 30 日間)
Abdussalam Elhanashi
Abdussalam Elhanashi 2019 年 11 月 1 日
Hi Guys
I wantt help fpr following code instade of reading the frames of videos i want to read video as normal playing
load('Detector.mat');
vidReader = VideoReader('004.avi');
vidPlayer = vision.DeployableVideoPlayer;
i = 1;
results = struct('Boxes',[],'Scores',[]);
while(hasFrame(vidReader))
I = readFrame(vidReader);
step(vidPlayer,I);
i = i+1;
  3 件のコメント
Masumi Morishige
Masumi Morishige 2020 年 10 月 17 日
編集済み: Masumi Morishige 2020 年 11 月 25 日
I met the same error and solved it by installing "Computer Vision Toolbox" from "HOME > Add-Ons".
Although it's written in Japanese, I will share the article just in case.
I'm happy if this helps you.
Lusanni Acosta-Rodriguez
Lusanni Acosta-Rodriguez 2020 年 12 月 4 日
Thanks Masumi! After installing the "Computer Vision Toolbox" the error went away. Now I am facing another one. But, with respect to the Vision Toolbox is good!
Again, thanks!

サインインしてコメントする。

採用された回答

Subhadeep Koley
Subhadeep Koley 2019 年 11 月 4 日
Hi, your code is almost correct only you have add some pause() between every frame otherwise you won’t be able to see all the frames. The pause time should be ideally 1/FrameRate to view the video in its original speed. Refer to the code below.
vidReader = VideoReader('rhinos.avi'); % Read your video here
vidPlayer = vision.DeployableVideoPlayer;
while(hasFrame(vidReader))
I = readFrame(vidReader);
step(vidPlayer,I);
pause((1/vidReader.FrameRate)); % pause of value (1/FrameRate)
end
Or else if you only want to play the video you can use the function implay().
implay('rhinos.avi'); % Read your video here
And hit the ‘Play’ button.
Hope this helps!

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by