Skip navigation

Telepítés

Teendők röviden

Lépések

  • Telepítsünk egy aktuálisan friss Python verziót a https://www.python.org/ oldalról letöltve.
    • Megjegyzés: A jegyzet példatára a Python 3.12.8 verzióval került tesztelésre.
  • A példatárban található pyocv-requirements szövegfájlokból válasszuk ki a számunkra megfelelőt és másoljuk be a Python telepítési mappába.
    • A minimálisan szükséges csomagokat tartalmazó telepítéshez: pyocv-requirements-min.txt.
    • Az előző nem tartalmazza a PyQt6 csomagot, amit a példatár egyetlen példaprogramja használ csak, a mérete viszont 100 MB nagyságrendű. Ha erre is szükségünk van, akkor a pyocv-requirements-pyqt.txt fájt válasszuk.
    • Amennyiben a tárhely nem probléma, és más képfeldolgozó vagy mélytanulási feladat megoldására is szeretnénk használni a Python-t, akkor a pyocv-requirements-full.txt választása javasolt.
  • Nyissunk parancssort, és lépjünk be a Python telepítési mappába.
  • Adjuk ki a következő parancsot (válasszuk a számunkra megfelelő telepítési lista fájlt, a példában a minimálisan szükséges szerepel):
    • python -m pip install -r pyocv-requirements-min.txt

Az egyes lépések megértéséhez szükséges információk az oldal további részében kerülnek ismertetése.

Alternatív lehetőség

Az Irinyi Kabinet Windows gépein elérhető Python a szükséges előre telepített csomagokkal együtt a C:\Python3128 mappában található. Ezt összecsomagolhatjuk, és saját gépen ugyanerre a helyre kibontva használhatjuk. Külön telepítést nem igényel, elegendő a keretrendszerben (pl. PyCharm) megadni a Python értelmező elérési útvonalát, ahogyan később bemutatjuk.

A ZIP tartalmát csomagoljuk ki a C: meghajtó főmappájába, ahol így létrejön egy Python3128 mappa. Ha hozzáférési jogosultság miatt ez nem engedélyezett, akkor először hozzuk létre manuálisan a C:\Python3128 mappát és a ZIP-ben található Python3128 mappa tartalmát másoljuk ide (figyeljünk arra, hogy ne jöjjön létre egy újabb Python3128 mappaszint). A kicsomagolt méret ~3 GB!

Ebben a Python 3.12.8 értelmező és az OpenCV 4.10.0+contrib csomag található (a többi szükséges csomag mellett).

A telepítés sikerességének ellenőrzése

Lépések

  • Indítsuk el a Python értelmezőt a C:\Python3128\python.exe futtatásával. (A narancssárga rész helyére a tényleges elérési útvonalat írva.)
  • Gépeljük be az alábbi parancsot: import cv2
  • Ha nem kapunk hibaüzenetet, akkor az OpenCV csomag elérhető a Python számára..
  • Ekkor kiírathatjuk az OpenCV verziószámát a konzolra: print(cv2.__version__)
  • 4.10.0 jelenik meg.
  • Kiléphetünk az értelmezőből: quit()

Python alaprendszer Windows alatt

A Python értelmező telepítő csomagjai ingyenesen elérhetők a hivatalos honlapon:

Melyik verziót válasszuk?

A Python kétféle fő verzióban érhető el, Python 2 és Python 3. A 2-es főverzió 2020. áprilisáig kapott frissítéseket, azóta a támogatása megszűnt. Emiatt érdemes a 3-as főverziót telepíteni.

A számunkra fontos csomagok nem mindig követik rögtön a legfrissebb Python verziókat! Amennyiben azt tapasztaljuk, hogy egy fontos csomag nem érhető el a választott verzióhoz, akkor válasszunk másikat (korábbit)! Általában az új Python verziók a mi szempontunkból nem igazán adnak nélkülözhetetlen új funkciót, így teljesen megfelelő egy valamivel korábbi változat is.

32 vagy 64 bit?

A 64 bites verzió nagyobb memóriatartományt tud megcímezni, ami jól jöhet nagy méretű adathalmazok esetén. Ha az operációs rendszerünk 64 bites, válasszuk ezt. 32 bites operációs rendszer értelemszerűen csak 32 bites programokat képes futtatni, míg a 64 bites bármelyiket.

Hova telepítsük?

Első körben ahová a telepítő javasolja. Ha problémába ütközünk (pl. ékezetes betűket vagy szóközöket, speciális karaktereket is tartalmaz az elérési útvonal), akkor válasszuk inkább a meghajtó gyökérkönyvtárában például a Python27Python39Python311 vagy hasonló nevű mappákat.

Tematikus disztribúciók

Több cég is készít olyan Python disztribúciót, amely az alapnyelv mellett rengeteg csomagot is tartalmaz. Tudományos számításokhoz az alábbi kettő a legismertebb:

Telepítés szempontjából ez tűnhet egyszerűbbnek, de a sok csomag miatt például a PyCharm IDE rengeteg időt tölt a felesleges csomagok átvizsgálásával, így használatuk nem célszerű.

Python csomagok telepítése Windows rendszeren

Csomagok telepítésére a Python pip segédprogramja használható. Ez egy központi repozitóriumban ellenőrzi a csomag elérhetőségét, és a telepített Python verzióhoz legalkalmasabb csomagot telepíti. A PyPI (Python Package Index) repozitórium elérhető az alábbi linken:

Problémát okozhat viszont, hogy néhány csomag csak forráskód szinten érhető el itt, ezeket pedig megpróbálja lefordítani, és ha a fordítási környezet beállítása nem megfelelő, akkor hibaüzenetet kapunk. Az ehhez szükséges fordítási környezet konfigurációja Windows rendszeren nem feltétlenül egyszerű, ezért ekkor inkább töltsünk le egy bináris csomagot, és telepítsük azt helyette (lásd a whl telepítés részben). Szintén hátrány lehet, hogy bizonyos csomagok esetén nem az aktuálisan legfrissebbet telepíti. Régebben ilyen volt az OpenCV is, de az utóbbi időben gyorsan megjelenik a hivatalos csomag.

A pip ellenőrzi a csomag függőségeket is, és azokat próbálja telepíteni először. Előfordulhat, hogy a telepítés egy másik, függő csomag miatt lesz sikertelen, így figyeljük a hibaüzenetet és a megfelelő csomagot telepítsük bináris csomagból!

pip használat

  • Nyissunk parancssort és gépeljük be a telepítési parancsot! Ha a Python nem érhető el a rendszer elérési útvonalán, akkor előzetesen lépjünk be a Python telepítési mappába. A Python-t nem kell elindítani, a parancsokat parancssorból adjuk ki. Telepítés indítása például az ipython csomag telepítésére:
    • python -m pip install ipython
  • Egy csomag eltávolítása az uninstall opcióval megy:
    • python -m pip uninstall ipython

Whl telepítés

A whl (wheel) kiterjesztésű csomagok az adott rendszerre binárisan elérhető csomagokat jelentik. Ezeket akkor célszerű használni, ha a pip nem ilyet talál és fordítani próbál, rendszerint sikertelenül.

  • Keressünk elérhető bináris csomagot a neten! Figyeljünk arra, hogy a Python verziószám és a 32 vagy 64 bitesség egyezzen a telepített verzióval!
  • Windows esetén indulhatunk az alábbi oldalról: Unofficial Windows Binaries for Python Extension Packages.
  • Telepítés itt is: python -m pip install "Elérési útvonal\csomag.whl"

A számunkra szükséges csomagok közül jelenleg egyik sem igényel whl telepítést.

Windows esetén példaként a fenti oldalon keressük meg a NumPy bejegyzést. Itt 2019. januárjában ez volt látható (a frissebb verziók értelmezése is ugyanilyen módon megy, így ezt nem aktualizáljuk):

NumPy, a fundamental package needed for scientific computing with Python.
Numpy+MKL is linked to the Intel® Math Kernel Library and includes required DLLs in the numpy.core directory.

numpy‑1.15.4+mkl‑cp27‑cp27m‑win32.whl
numpy‑1.15.4+mkl‑cp27‑cp27m‑win_amd64.whl
numpy‑1.15.4+mkl‑cp34‑cp34m‑win32.whl
numpy‑1.15.4+mkl‑cp34‑cp34m‑win_amd64.whl
numpy‑1.15.4+mkl‑cp35‑cp35m‑win32.whl
numpy‑1.15.4+mkl‑cp35‑cp35m‑win_amd64.whl
numpy‑1.15.4+mkl‑cp36‑cp36m‑win32.whl
numpy‑1.15.4+mkl‑cp36‑cp36m‑win_amd64.whl
numpy‑1.15.4+mkl‑cp37‑cp37m‑win32.whl
numpy‑1.15.4+mkl‑cp37‑cp37m‑win_amd64.whl
numpy‑1.15.4+mkl‑pp360‑pp360‑win32.whl
numpy‑1.16.0+mkl‑cp27‑cp27m‑win32.whl
numpy‑1.16.0+mkl‑cp27‑cp27m‑win_amd64.whl
numpy‑1.16.0+mkl‑cp35‑cp35m‑win32.whl
numpy‑1.16.0+mkl‑cp35‑cp35m‑win_amd64.whl
numpy‑1.16.0+mkl‑cp36‑cp36m‑win32.whl
numpy‑1.16.0+mkl‑cp36‑cp36m‑win_amd64.whl
numpy‑1.16.0+mkl‑cp37‑cp37m‑win32.whl
numpy‑1.16.0+mkl‑cp37‑cp37m‑win_amd64.whl

A fájlnevek értelmezése az alábbi.

  • A whl fájlok a NumPy+MKL 1.15.4 és 1.16.0 verzióit tartalmazzák.
  • A fájlnévben a cp utáni két számjegy a Python verziót azonosítja.
    • cp27: Python 2.7.x
    • cp34: Python 3.4.x
    • cp35: Python 3.5.x
    • cp36: Python 3.6.x
    • cp37: Python 3.7.x
  • A win32 és a win_amd64 pedig a bitszélességet.
  • A megfelelő verzió letöltése után telepíthetjük a pip-pel a fent leírt módon!

OpenCV Python csomag

PyPI csomagnév és link: opencv-contrib-python és opencv-python.

A contrib verzió (opencv-contrib-python) tartalmazza a kiegészítő és tesztelés alatt álló algoritmusokat is. Válasszuk ezt, ha elérhető!

Megjegyezzük, hogy az OpenCV-hez tartozik egy contrib-nonfree rész is, amely a szabadalmi védettséget élvező (= kereskedelmi szoftverekben csak jogdíj fizetése után felhasználható) algoritmusokat tartalmazza. A hivatalosan kiadott OpenCV Python csomagok ezeket a funkciókat nem tartalmazzák! Saját magunk fordíthatunk a C++ forrásból ilyen csomagot, ha szükségünk van ezekre a funkciókra is. A jegyzet ilyen funkciókat nem tárgyal, vagyis a sima contrib csomag elegendő.

Telepítendő csomagok

A gyakorlati anyaghoz az alábbi csomagokra van szükség.

  • numpy
  • ipython
  • scipy
  • matplotlib
  • notebook
  • ipywidgets
  • pyqt6
  • opencv-contrib-python

A jegyzet közvetlenül nem használja, de hasznosak lehetnek az alábbiak is:

  • pandas
  • scikit-image
  • scikit-learn
  • SimpleITK
  • open3d
  • tensorflow
  • exif
  • imutils
  • pyqt6-tools

Ha tensorflow-t is telepítünk, akkor célszerű azzal kezdeni. Telepítésekor a csomag igényeinek megfelelő függőségi csomagok automatikusan telepítésre kerülnek (pl. numpy).

A szükséges csomagok neveit egy szövegfájlban is felsorolhatjuk (pl. pyocv-requirements.txt néven mehet a Python telepítési mappába), soronként egy csomag nevét megadva. A pip telepítő a szövegfájl tartalma alapján az összes telepítést elvégzi az alábbi módon indítva:

python -m pip install -r pyocv-requirements.txt

Egy minimális tartalmú ilyen fájl lehet az alábbi (a csomag függőségek miatt nem kell az összeset felsorolni):

numpy
scipy
matplotlib
jupyter
opencv-contrib-python

Ha szükséges, megadhatjuk egy csomag konkrétan kért verziószámát is, pl.:

opencv-contrib-python==4.10.0.84

Amenniyben a Jupyter Notebook csomag verziószáma 5.2-nél kisebb, a Python mappába lépve adjuk ki az alábbi parancsot a vezérlőelemek engedélyezéséhez! Ezt elegendő egyszer elvégezni. Például Windows esetén:

Scripts\jupyter-nbextension enable --py widgetsnbextension

Magasabb verziószámú csomag esetén már nem érhető el a jupyter-nbextension fájl, így futtatni sem lehet, de nem is kell.

Python Linux környezetben

A legtöbb Linux disztribúció esetén a Python környezet alapértelmezetten telepítésre kerül. Ha mégsem, vagy nem megfelelő a verzió, az adott rendszer csomagkezelőjével dolgozhatunk. A következő nevű csomagokat keressük: python, python2, python3.

A Python csomagok általában a nevük megadásával telepíthetők a Linux csomagkezelőjével, illetve használhatjuk a Python pip segédprogramját is a fent leírt módon.