Afficher commentaires plus anciens
動画をカラーマップに変換したいと思っています。下記のコードを参考にしましたが、うまく実行できません。良い方法を教えていただきたいです。
folder=fileparts(which('DSC_1814.MOV'));
movieFullFileName=fullfile(folder,'DSC_1814.MOV');
nframeWritten=0;
v=VideoReader('DSC_1814.MOV');
p=vision.VideoPlayer;
nframe=round(v.Duration*v.FrameRate);
[folder,baseFileName,extention]=fileparts(movieFullFileName);
folder=pwd;
opFolder=sprintf('%s/Movie Frames from %s',folder,baseFileName);
if ~exist(opFolder,'dir')
mkdir(opFolder);
end
allTheFrames=cell(nframe,1);
allTheFrames(:)={zeros(vidHeight,vidWidth,3,'uint8')};
allTheColormaps=cell(nframe,1);
allTheColormaps(:)={zeros(256,3)};
recalledMovie=struct('cdata',allTheFrames,'colormap',allTheColormaps);
for frame=1:3
opBaseFileName=sprintf('%d.png',frame);
opFullFileName=fullfile(opFolder,opBaseFileName);
thiFrame=imread(opFullFileName);
recalledMovie(frame)=im2frame(thisFrame);
end
エラー: imread>get_full_filename (line 566)
ファイル "C:\Users\○\Documents\MATLAB\Movie Frames from DSC_1814\1.png" は存在しません
エラー: imread (line 375)
fullname = get_full_filename(filename);
エラー: try4 (line 31)
thiFrame=imread(opFullFileName);
7 commentaires
Kenta
le 30 Jan 2020
「"C:\Users\○\Documents\MATLAB\Movie Frames from DSC_1814\1.png" は存在しません」とのことなので、
そのディレクトリに1.pngという名前の画像がないのではないでしょうか?
例えば、画像はあるが、1.jpgになっているとか、ディレクトリ(ファイルの場所)がちがうのかもしれません。
C:\Users\○\Documents\MATLAB\Movie Frames from DSC_1814の場所を参照すれば確認できると思います。
Natsumi Nakatani
le 30 Jan 2020
Kenta
le 1 Fév 2020
どのディレクトリにも存在しない=読み込めない
というシンプルな原因かと思うのですが、そういうこどではないのですか?
その場合、解析したい画像の名前を1.png 2.png 3.pngとし、読み込んでいけば解決すると思うのですがいかがでしょうか。
Natsumi Nakatani
le 3 Fév 2020
Kenta
le 3 Fév 2020
動画のファイルを添付いただけますか?
動画の全フレームに対して行わないといけないのですかね。
つまり、動画ではあるもののfpsを落としてもよいのでしたら、比較的簡単に実装できるかもしれません。
全フレームに対して行いたいのであれば、動画=>各フレームを別の変数に保存=>各フレームに対して操作を施す
というながれかと思います。
Natsumi Nakatani
le 4 Fév 2020
はい、動画で保存してもいいですし、GIF形式も良いです。詳しくはドキュメントのほうをご参照ください。
例えばうえのリンクにGIFに保存する方法があります。
また、どの動画でもよいのであれば、matlabの例題用の動画もあると思うので、必要があれば
そのリンクとそれ用のコードも教えていただければ一緒に考えることもできそうです。
Réponses (0)
Catégories
En savoir plus sur Video Formats and Interfaces dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!