GNU/Linux >> Linux Esercitazione >  >> Linux

OpenCV e python/virtualenv?

Basta copiare il cv2*.so file nella cartella dei pacchetti del sito dell'ambiente virtuale. Ad esempio:

cp /usr/lib/python3.6/dist-packages/cv2.cpython-36m-aarch64-linux-gnu.so ~/your_virt_env_folder/YOUR_VIRT_ENV_NAME/lib/python3.6/site-packages/

Uso i makefile nei miei progetti per installare OpenCV all'interno di Python virtualenv. Di seguito è riportato un esempio boilerplate. Richiede che tu abbia già i collegamenti OpenCV presenti per il tuo sistema Python (/usr/bin/python ) che puoi ottenere usando qualcosa come yum install opencv-python o apt-get install python-opencv .

Fai le prime query al sistema cv2 di Python module e recupera la posizione del file della libreria installata. Quindi copia cv2.so nella directory virtualenv.

VENV_LIB = venv/lib/python2.7
VENV_CV2 = $(VENV_LIB)/cv2.so

# Find cv2 library for the global Python installation.
GLOBAL_CV2 := $(shell /usr/bin/python -c 'import cv2, inspect; print(inspect.getfile(cv2))')

# Link global cv2 library file inside the virtual environment.
$(VENV_CV2): $(GLOBAL_CV2) venv
    cp $(GLOBAL_CV2) [email protected]

venv: requirements.txt
    test -d venv || virtualenv venv
    . venv/bin/activate && pip install -r requirements.txt

test: $(VENV_CV2)
    . venv/bin/activate && python -c 'import cv2; print(cv2)'

clean:
    rm -rf venv

(Puoi copiare e incollare sopra lo snippet in un Makefile, ma assicurati di sostituire i rientri con i caratteri di tabulazione eseguendo sed -i s:' ':'\t':g Makefile o simili.)

Ora puoi eseguire il modello:

echo "numpy==1.9.1" > requirements.txt
make
make test

Nota che invece del collegamento simbolico, in realtà copiamo il file .so per evitare il problema indicato qui:https://stackoverflow.com/a/19138136/1510289


Virtualenv crea un ambiente Python separato. Dovrai reinstallare tutte le tue dipendenze. EDIT è vero che pip non sembra funzionare bene con opencv. L'errore del modulo mancante può essere risolto copiando l'oggetto condiviso cv nel tuo virtualenv. Maggiori informazioni nella domanda collegata di seguito.


Linux
  1. Come installare Python 2 e Python 3 su Fedora 35

  2. Come installare Python su Ubuntu 20.04 e 18.04?

  3. Script Python per elencare utenti e gruppi

  4. Ottieni il titolo della finestra corrente con Python e Xorg

  5. Possibile script misto shell e python?

Gestione dei dati mancanti in Python:cause e soluzioni

Come installare Python Pip su Ubuntu 18.04 e 20.04

Pipx – Installa ed esegui applicazioni Python in ambienti isolati

Come installare Python 2 e Python 3 su CentOS 8

Come installare e utilizzare Python-Mistune su Linux

Come installare Anaconda Navigator e JupyterLab su Linux