M5Stack UnitV2 で静止画を撮影する(python直叩き)

以前httpリクエストでM5Stack UnitV2で静止画を取得する方法を書きましたが、今回はUnitV2内でpythonを直に叩いて静止画を取得する方法です。

まずshot.pyをPCにダウンロードしてから下記のコマンドを叩いてください。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# @PC UnitV2にsshでログイン
$ ssh m5stack@unitv2.py

# @UnitV2
$ sudo chmod 666 /dev/null

## いったんログアウトするか、新しいターミナルをPCで立ち上げる ##

# @PC
$ scp <ファイルを置いたディレクトリ>/server_core.py m5stack@10.254.239.1:/media/sdcard/
$ ssh m5stack@unitv2.py

# @UnitV2
$ sudo mv /media/sdcard/shot.py ~/payload/

## 画像認識用サーバーが起動している場合はJupyter Notebook モードにする ##

# @UnitV2 撮影
## 最後にファイル名が表示されるのでそれをメモ(※1) => /media/sdcard/に保存される
$ sudo python3 ~/payload/shot.py

## ログアウトするか新しいターミナルをPCで立ち上げる

# @PC
# PCのカレントディレクトリにjpg画像がコピーされる
$ scp m5stack@10.254.239.1:/media/sdcard/<※1でメモしたファイル名> ./

以上です。

pythonコマンドを叩く前に画像認識用サーバーが起動している場合はJupyter Notebook モードにしてください。画像認識用サーバーが起動したままになっているとメモリー不足?のためコマンドがエラーになります。

Jupyter Notebookモードでもなんらかのnoteが起動しているとダメなので、JupyterNotebookの画面から個々のnoteをshutdownしてください。

それでもダメであれば、Jupyter NoteBookを落としてください(ページ右上のQuitで落とせると思います)。

これでUnitV2でサーバーとかを使わず静止画が取得できます。

ただ、フルHD(1920x1080)の画像が取得できると思ってましたが、最大サイズはフルじゃないHDサイズ(1280 x 720)のようです。