読み取った動画を1フ​レーム分表示させると​、トリミングされて引​き伸ばされてしまいま​す。

4 Ansichten (letzte 30 Tage)
denpika
denpika am 21 Mai 2018
Kommentiert: Tohru Kikawada am 2 Jul. 2018
下記コードを実行すると添付のファイルのように、画像がトリミングされた上に引き伸ばされてしまいます。 別のMatlabでは問題なく実行できたので設定が原因と思うのですが、どうしても原因がわからなかったので質問します。
vidObj = VideoReader('xylophone.mp4');
vidHeight = vidObj.Height;
vidWidth = vidObj.Width;
s = struct('cdata',zeros(vidHeight,vidWidth,3,'uint8'),'colormap',[]);
k = 1;
while hasFrame(vidObj)
s(k).cdata = readFrame(vidObj);
k = k+1;
end
image(s(1).cdata)

Antworten (1)

Tohru Kikawada
Tohru Kikawada am 22 Mai 2018
image(s(1).cdata) imshow(s(1).cdata) としてお試しください。アスペクト比が保持されると思います。
  7 Kommentare
denpika
denpika am 18 Jun. 2018
VideoReaderのハードウェアアクセラレーションを無効化したら解決しました。
matlab.video.read.UseHardwareAcceleration('off')
Tohru Kikawada
Tohru Kikawada am 2 Jul. 2018
情報ありがとうございます。ハードウェアアクセラレーションの問題だったのですね。
参考になりました。

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!