Electron + Angular + Python で画像解析デスクトップアプリケーションを作りたい(希望)


はじめに

ユーザのWindowsマシン内でスタンドアロンで動くデスクトップアプリケーションとして、画像解析アプリを作るため、良いGUIフレームワークを探している。候補の一つとして、前から使ってみたかったElectronの採用を検討。

要件

  1. 格好良いGUIをこれまで持っているスキルセットで作りたい(ドラッグ&ドロップなど複雑な操作を想定しているので、出来ればWebの技術)
  2. GUIからのインプットを元に、Pythonによる画像解析処理をして、結果をGUIに返したい
  3. スタンドアロンでの利用を想定、ユーザの環境設定は極力簡単にしたい
  4. インプットをマシンの外に送信しない(ファイルが大きく通信環境が貧弱なため、処理に時間が掛かってしまう)

調査内容

ElectronでAngularを使いたい

もともとのスキルセットとして、Angularを持っていたので、AngularとElectronを組み合わせて使いたいと思った。
このブログ 通りに実装することで、Electron+Angularで簡単にデスクトップアプリケーションを実装することができた。

ビルドはこちら を参照にした。

Pythonの実行をどうしよう・・・

課題

  • 要件1は実現時できそうだが、2〜4.が見通し立たず(特に3.が怪しい。。Pythonの実行環境と共に配布したいが、できるのだろうか・・・今後確認)
  • 何か無理そう・・・Angularを使わなければ行けそうなので、こちらに舵を切るか。。

参考

https://neos21.net/blog/2018/10/13-01.html
https://fireship.io/lessons/desktop-apps-with-electron-and-angular/
https://ics.media/entry/7298/
https://www.fyears.org/2015/06/electron-as-gui-of-python-apps.html