前提
IISでサーバーを作成しています。
サーバーとクライアントのOSは両方ともWindows10です。
実現したいこと
opencv-pythonを使用してカメラに接続し画像を画面に表示、画面を閉じる時にそのときカメラに写っていた画像を保存する処理の書かれたpythonファイルを作りました。それをpyinstallerでexeファイルに変換したので、クライアントのPCからwebブラウザ経由で実行したいです。
発生している問題・エラーメッセージ
クライアント側からexeファイルを実行したところ、カメラに接続することはできますが、カメラから取得した画像を画面に表示することができません。
該当のソースコード
python_exe.py (exe化したファイル)
import cv2
cap = cv2.VideoCapture(0)
window = 'camera'
while True:
ret, frame = cap.read()
if ret == False:
break
cv2.imshow(window, frame)
cv2.waitkey(10)
if cv2.getWindowProperty(window, cv2.WND_PROP_VISIBLE) == 0:
cv2.imwrite(r'ファイルのパス¥〇〇.jpg', frame)
break
cap.release()
コマンドプロンプトにて
cd 〇〇.jpgが置いてあるファイルまでのパス
pyinstaller 〇〇.jpg --noconsole
exeファイルの実行は
subprocess.run(r'ファイルのパス¥python_exe.exe')
にて行います。
試したこと
カメラから取得した画像ではなく、サーバー側のPC内に元々保存されている画像を画面に表示する処理に書き換えたpythonファイルで代用してクライアント側のPCから実行しましたが、同様に画面に表示されませんでした。
カメラに接続して取得した画像を画面に表示はせずにサーバーのPC内に保存する処理を行った場合は成功しました。
このことからカメラから取得した画像を画面に表示しようとすると正常に動作しなくなるらしいのですが、原因がわかりません。どなたかわかる方がいたら教えていただきたいです。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。