0

私はmatlabでビデオを持っています。mmreaderを使って読みました。ファイル情報は次のとおりです。

ビデオ設定:

BitsPerPixel = 24
FrameRate = 25
Height = 288
NumberOfFrames = 590
VideoFormat = RGB24
Width = 352

私のコーディングでは、フレームレートを特定の値に変更したいと考えています。これどうやってするの?

4

1 に答える 1

1

使用できます:

movie(M,n,fps)      

これにより、1 秒あたりのフレーム数が fps でムービーが再生されます。デフォルトは 12 フレーム/秒です。指定された速度を達成できないコンピューターは、できるだけ速く再生します

または、たとえば、このコード ビットを参照してください (matlab のドキュメントから取得)。特に最後の行...

%Read and play back the movie file xylophone.mpg:
xyloObj = mmreader('xylophone.mpg');

nFrames = xyloObj.NumberOfFrames;
vidHeight = xyloObj.Height;
vidWidth = xyloObj.Width;

% Preallocate movie structure.
mov(1:nFrames) = ...
struct('cdata', zeros(vidHeight, vidWidth, 3, 'uint8'),...
       'colormap', []);

% Read one frame at a time.
for k = 1 : nFrames
   mov(k).cdata = read(xyloObj, k);
end

% Size a figure based on the video's width and height.
hf = figure;
set(hf, 'position', [150 150 vidWidth vidHeight])

 % Play back the movie once at the video's frame rate.
 movie(hf, mov, 1, xyloObj.FrameRate);
于 2012-10-16T15:52:52.550 に答える