カメラで撮影する処理を繰り返したい

PCのMATLABでMATLAB mobileをインストールしたスマホのカメラを操作し,写真を撮影するプログラムを作っているのですが,撮影するとカメラが閉じてしまい困っています.
以下のコードで撮影した写真をフォルダに保存しているのですが,この処理を繰り返すにはどのようにプログラムを組めばよいでしょうか
clc
clear
m = mobiledev;
cam = camera(m,'back');
cam.Autofocus = 'on';
img = cam.snapshot('manual');
fname = [char(datetime('now','Format','yyyy-MM-dd HHmmSS')),'.jpg'];
imwrite(img,['指定したフォルダ',fname])

 Akzeptierte Antwort

Shunichi Kusano
Shunichi Kusano am 1 Feb. 2023

0 Stimmen

上記コードでカメラが撮影後に閉じてしまいますか?上記コードをもし丸々繰り返しているなら、冒頭のclearコマンドで一個前に作ったmとcamが消えてしまうので、それが原因かもしれません。下記のようにforループを撮影から画像保存までで閉じる形にしたら大丈夫だと思います。
clc
clear
m = mobiledev;
cam = camera(m,'back');
cam.Autofocus = 'on';
for i = 1:100 % とりあえず100コマ
img = cam.snapshot('manual');
fname = [char(datetime('now','Format','yyyy-MM-dd HHmmSS')),'.jpg'];
imwrite(img,['指定したフォルダ',fname]);
end
clear

1 Kommentar

大輝 隅岡
大輝 隅岡 am 2 Feb. 2023
実際にカメラが閉じずに実行できました.回答ありがとうございした.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB Support Package for IP Cameras finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!