Python + numerikus számítási csomagok
A Python egy interpretált, általános célú programozási szkriptnyelv. Több évtizedes fejlődési múltra tekint vissza. Előnye, hogy megköveteli a programozótól az olvasható programkód készítést, valamint a nyelvi szerkezetei is közel állnak az emberi nyelvhez. Elsajátítása így viszonylag egyszerű.
A nyelv erejét a hozzá telepíthető rengetegféle funkciót ellátó csomag jelenti még. Különösen erős a numerikus számításokhoz tartozó funkciók elérhetősége. Emiatt ingyenes és nyílt forráskódú alternatívája tud lenni például a Matlab-nak is. A nyelvhez és a csomagokhoz számos angol nyelvű dokumentáció elérhető.
Néhány népszerű, a képfeldolgozáshoz kapcsolódó csomag.
- Numpy ("Numerical Python"). A nyelv kiterjesztése többdimenziós mátrixok hatékony kezelésével. A többi csomag alapját képzi.
- SciPy ("Scientific Python"). Numpy csomagra épülő, numerikus számítási algoritmusokat tartalmazó csomag.
- MatPlotLib. Numpy csomagra épülő, diagramrajzoló és vizualizációs csomag.
- IPython ("Interactive Python"). Python parancssori képességeinek nagyfokú bővítése. Matlab-szerű prototípus készítés érhető el a segítségével.
- Scikit-image. SciPy kiterjesztése további képfeldolgozó műveletekkel.
- Mahotas. Számítógépes látás algoritmusok.
- Pillow. Számos képformátum betöltése és képek feldolgozása.
- Pandas. Adatmanipulációhoz és elemzéshez, magasszintű hozzáférést biztosít táblázatba rendezett adatokhoz. Numpy csomagra épül, de célszerű a SciPy és MatPlotLib csomagok telepítése is.
Több, a képfeldolgozás területén használatos komplex C++ függvénykönyvtár is rendelkezik Python kötéssel.
- OpenCV. Képfeldolgozó és számítógépes látás algoritmusok.
- SimpleITK. Az Insight Toolkit (ITK) egyszerűsített interfésze. Az ITK de-facto szabványnak számít a 3D orvosi képek szegmentálási és regisztrációs algoritmusainál.
- VTK ("Visualzation Toolkit"). Inkább 3D számítógépes grafikai csomag, de feladatai közé tartozik a képek vizualizációja és egyszerűbb feldolgozása is.
Számos képfeldolgozó és modellező program a Python nyelven keresztül teszi lehetővé a funkcióinak bővítését.
- GIMP ("GNU Image Manipulation"). Ingyenes képmanipulációs program, a PhotoShop alternatívája.
- Blender. Ingyenes 3D modellező és animációs program.
- 3D Slicer. 3D orvosi képmegjelenítő és foldolgozó szoftver.