2013a student versionのストレージ制限

Windows(64bit)のPCで2013a student version(32bit版)を使用しています. 画像処理(画像データは14.3GB)をしていると,read関数のなかで File could not be read due to an unexpected error. Reason: Read Failed Reason: Not enough storage is available to complete this operation. のエラーが出ます.
2013a student versionは Windows 64bit版がないため,32bit版をインストールしました. 32bit版にはデータ容量に(2GBまでの)制限があることが原因と考えられます. 最新版(2017b?)に更新することを検討していますが,2013aでも処理できる方法があればご教授頂きたいです. よろしくお願いします.

5 Commenti

Tohru Kikawada
Tohru Kikawada il 29 Gen 2018
どんな種類のフォーマットの画像データでしょうか(PNG, JPEG, Tiffなど)。
また、画像処理はある領域だけ切り出して適用できるようなものでしょうか。
もう少し具体的に処理内容や入力画像など教えていただけると何か方法をご提案できるかもしれません。
64bit版を使用したとしても14.3GBはかなりの大きさになるため工夫が必要と思います。
Yasuko Hirono
Yasuko Hirono il 29 Gen 2018
返答ありがとうございます. 画像(映像)は1536×1152のaviのデータです.
最終的には,imfuse関数を使ってフレーム毎に画像データの重ね合わせをしています. VideoReaderのreadのなかでエラーメッセージが出ます. 400フレーム毎に処理はできているので,複数に区切って処理するのが適策かなぁと考えています.
Nicolas Schmit
Nicolas Schmit il 29 Gen 2018
14.3BGのデータは普通のパソコンのメモリーには入りません。たとえメモリーを増設して、全部読み込めたとしても、読み込み終わったらメモリーが飽和状態になってしまい、計算ができなくなります。 特殊性能のパソコンを使用していかない限り、データの一部ずつを読み込み・処理するアルゴリズムを使用する必要があります。
Tohru Kikawada
Tohru Kikawada il 29 Gen 2018
動画だったのですね。もう少し具体的なイメージを持ちたいのですが、過去400フレームとの加算( imfuse )を毎フレーム行うという感じでしょうか。ウィンドウで処理をしていくようなイメージを持っています。
Yasuko Hirono
Yasuko Hirono il 29 Gen 2018
n×1536×1152×3(unit8)(n:動画のフレーム数)のデータに対して,毎フレーム1536×1152×3(unit8)を加算しています.

Accedi per commentare.

 Risposta accettata

Tohru Kikawada
Tohru Kikawada il 29 Gen 2018

1 voto

下記のように逐次的にフレームを加算するような処理ではいかがでしょうか。
全フレームをメモリに読み込まずに、1フレームずつ処理するような形なので、メモリの消費量も抑えられると思います。
v = VideoReader('xylophone.mp4');
currAxes = axes;
videoFused = im2uint16(readFrame(v));
while hasFrame(v)
videoFrame = im2uint16(readFrame(v));
videoFused = imlincomb(0.05,videoFrame,0.95,videoFused,'uint16');
image(videoFused, 'Parent', currAxes);
currAxes.Visible = 'off';
drawnow limitrate;
end

1 Commento

Yasuko Hirono
Yasuko Hirono il 31 Gen 2018
ご丁寧にありがとうございました.

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Community Treasure Hunt

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

Start Hunting!