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

10 views (last 30 days)
大輝 隅岡
大輝 隅岡 on 31 Jan 2023
Commented: 大輝 隅岡 on 2 Feb 2023
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])

Accepted Answer

Shunichi Kusano
Shunichi Kusano on 1 Feb 2023
上記コードでカメラが撮影後に閉じてしまいますか?上記コードをもし丸々繰り返しているなら、冒頭の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 Comment
大輝 隅岡
大輝 隅岡 on 2 Feb 2023
実際にカメラが閉じずに実行できました.回答ありがとうございした.

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB Support Package for IP Cameras in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!