Opencv 2.4.13 требует python 2.7, но для репозитория Monocular Total Capture требуется python 3.5 - PullRequest
0 голосов
/ 11 марта 2020

Я пытаюсь использовать этот репо:

https://github.com/CMU-Perceptual-Computing-Lab/MonocularTotalCapture

Требуется "OpenCV 2.4.13 (скомпилировано из исходного кода с CUDA 9.0, CUDNN 7.0 ) ", поэтому я пытаюсь установить его с Conda. Установка по умолчанию python на моей системе:

(base) root@ziom-Z87-HD3:/home/ziom# python
Python 2.7.16 |Anaconda, Inc.| (default, Sep 24 2019, 21:51:30) 
[GCC 7.3.0] on linux2

, но для репо требуется python 3.5, поэтому я переключился на него с помощью этой команды:

alias python='/usr/bin/python3.5'

и похоже, что это сработало.

(base) root@ziom-Z87-HD3:/home/ziom# python
Python 3.5.2 (default, Oct  8 2019, 13:06:37) 
[GCC 5.4.0 20160609] on linux

сейчас требуется установка python 3.5 и OpenCV 2.4.13, поэтому я даю следующую команду:

conda create -n ziomario pip python=3.5
conda activate ziomario

на данный момент я Я должен установить OpenCV 2.4.13, и я даю эту команду:

conda install -c conda-forge opencv=2.4.13

, но она не работает, потому что это:

(ziomario) root@ziom-Z87-HD3:/home/ziom# conda install -c conda-forge opencv=2.4.13
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: / 
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
Examining @/linux-64::__glibc==2.23=0:  25%|██▌       | 1/4 [00:00<00:00, 6026.3Examining python=3.5:  50%|█████     | 2/4 [00:00<00:00, 7351.98it/s]           Examining conflict for python opencv:  25%|██▌       | 1/4 [00:00<00:00, 10979.8                                                                                failed

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  - opencv=2.4.13 -> python=2.7

Your python: python=3.5

If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.

The following specifications were found to be incompatible with your CUDA driver:

  - feature:/linux-64::__cuda==9.0=0

Your installed CUDA driver is: 9.0

Opencv = 2.4.13 требует python = 2.7, но для репо требуется python 3,5. Я не знаю, что делать.

Ответы [ 2 ]

0 голосов
/ 11 марта 2020

Для этого вы можете использовать "pyenv"

Я нашел тот веб-сайт, который действительно полезен: https://realpython.com/intro-to-pyenv/

Я напишу резюме из шагов, предполагающих, что вы используете систему Ubuntu или Debian.

Сначала вы загружаете зависимости, если вы этого еще не сделали:

$ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev \
libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl

Затем вы используете pyenv-installer:

$ curl https://pyenv.run | bash

Это установит pyenv вместе с несколькими полезными плагинами:

  1. pyenv: само приложение pyenv
  2. pyenv-virtualenv: плагин для pyenv и виртуальных сред
  3. pyenv-update: плагин для обновления pyenv
  4. pyenv-doctor: плагин для проверки установки зависимостей pyenv и build
  5. pyenv-which-ext: плагин для автоматического ищите системные команды

В конце выполнения вы должны увидеть что-то вроде этого:

WARNING: seems you still have not added 'pyenv' to the load path.

# Load pyenv automatically by adding
# the following to ~/.bashrc:

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

The output will be based on your shell. But you should follow the instructions to add pyenv to your path and to initialize pyenv/pyenv-virtualenv auto completion. Once you’ve done this, you need to reload your shell:
$ exec "$SHELL" # Or just restart your terminal

Затем вы можете установить версию python с эта команда:

$ pyenv install -v 3.5

И еще ... (go на сайт)

0 голосов
/ 11 марта 2020

Это странно, потому что в репо явно сказано, что он должен использовать то, что вы пытаетесь использовать. Я предполагаю, что кто-то допустил ошибку в списке зависимостей. Попробуйте сначала обновить Opencv, а затем свяжитесь с сопровождающими, так как они написали противоречие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...