从https://github.com/victordibia/skyfall安装requirement.txt
后,我试图运行应用程序
我遇到以下错误:
File "app.py", line 19, in `<module>`
from utils import web_socket_client
File "C:\Users\anurag\Downloads\skyfall-master\utils\web_socket_client.py", line 8, in <module>
from websocket import WebSocketException, WebSocketConnectionClosedException ImportError: cannot import name 'WebSocketException'`
还有另一种运行应用程序的方法。如果需要,请在文件中进行更改并发送github链接
答案 0 :(得分:0)
我在Debian Linux和Python 3.6.5上运行该应用程序没有任何问题。也许您需要在python虚拟环境中运行它,以确保某些已安装的软件包不会造成干扰。 Linux指令:
git clone https://github.com/victordibia/skyfall
使用程序包管理器安装python3-venv
程序包。运行:
python3 -m venv skyfall_venv
然后
source skyfall_venv/bin/activate
现在您位于虚拟环境中,该环境已在您的Shell中指示。做
(skyfall_venv): pip install --upgrade pip
如果它不起作用,请执行
(skyfall_venv): pip3 install --upgrade pip
获得最新的点子。
3。然后编辑skyfall/requirements.txt
,删除git前面的多余-e
,它的外观必须类似于以下内容:
Flask==0.12.2
opencv_python==3.4.0.12
numpy==1.14.2
tensorflow==1.7.0
protobuf==3.5.2.post1
websocket_client==0.47.0
git+https://github.com/dpallot/simple-websocket-server.git
在venv内部运行:
(skyfall_venv): pip install -r requirements.txt
(或pip3
,如果前者不起作用)
4。您应该看不到任何错误。在venv中运行该应用程序:
(skyfall_venv): cd skyfall
(skyfall_venv): python app.py
(如果前者不起作用,则为python3)
我看到带有手势识别的窗口,如果我在应用程序建议的浏览器中打开网址,则可以玩游戏。
cvcam.py
:
import cv2
cap = cv2.VideoCapture(0)
# Check if the webcam is opened correctly
if not cap.isOpened():
raise IOError("Cannot open webcam")
while True:
ret, frame = cap.read()
frame = cv2.resize(frame, None, fx=0.5, fy=0.5, interpolation=cv2.INTER_AREA)
cv2.imshow('Input', frame)
c = cv2.waitKey(1)
if c == 27:
break
cap.release()
cv2.destroyAllWindows()