У меня нет проблем с запуском приложения на Debian Linux и Python 3.6.5.Возможно, вам нужно запустить его в виртуальной среде python, чтобы убедиться, что какой-то установленный пакет не мешает.Инструкция для Linux:
- Клонировать GIT в локальную папку:
git clone https://github.com/victordibia/skyfall
Создайте виртуальную среду python3 в папке рядом:
Установите пакет python3-venv
с помощью менеджера пакетов.Выполните:
python3 -m venv skyfall_venv
затем source skyfall_venv/bin/activate
Теперь вы находитесь в виртуальной среде, которая указана в вашей оболочке.Сделайте
(skyfall_venv): pip install --upgrade pip
, если это не сработает, сделайте
(skyfall_venv): pip3 install --upgrade pip
, чтобы получить последний пункт в вене.
3. После редактирования skyfall/requirements.txt
удаление лишних -e
перед git должно выглядеть следующим образом:
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()