Knihovna opencv na rozpoznávání obličejů (Computer Vision) obsahující 2500 algoritmů by měla umět např. ořezávat různě focené profilové fotky.
Instalace opencv
Typ instalace – oficiální package pro Debian 12 bookworm: https://packages.debian.org/source/bookworm/opencv
wget https://raw.githubusercontent.com/php-opencv/php-opencv-packages/master/opencv_4.7.0_amd64.deb && sudo dpkg -i opencv_4.7.0_amd64.deb && rm opencv_4.7.0_amd64.deb
Instalace PHP extension
Již mám PHP 8.2, je třeba doinstalovat zdrojáky pro následné vytvoření rozšíření opencv.
sudo apt install php8.2-dev
git clone https://github.com/php-opencv/php-opencv.git
…vytvoří adresář php-opencv
cd php-opencv && phpize && ./configure –with-php-config=/usr/bin/php-config8.2 && make
Build complete.
sudo make install
make test
melo by spustit 17 testu
echo „extension=opencv.so“ > /etc/php/8.2/cli/conf.d/opencv.ini
Případně ještě pro verzi PHP spouštěném z nginx serveru
echo „extension=opencv.so“ > /etc/php/8.2/fpm/conf.d/opencv.ini
zapne načtení modulu opencv v PHP
php -v
PHP 8.2.10 (cli) (built: Sep 4 2023 08:11:43) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.10, Copyright (c) Zend Technologies
with Zend OPcache v8.2.10, Copyright (c), by Zend Technologies
php -i
mělo by obsahovat toto:
opencv
opencv support => enabled
Příklady použití zde: https://github.com/php-opencv/php-opencv-examples/
BONUS: Instalace extra modulů opencv_contrib
V základním otestovaném repozitáři nejsou všechny moduly, např. upscale obrázku pomocí natrénované neuronové sítě dnn_superres.
Repozitář https://github.com/opencv/opencv_contrib by měl být nainstalován na našem Debian 12 ve formě automatické závislosti již dříve instalovaného package „opencv_4.7.0_amd64.deb“ s názvem „libopencv-contrib-dev“. Tato knihovna by měla obsahovat všechny hlavičky a zdrojové knihovny pro kompilaci extra modulů např. dnn_superres.
Extra modul dnn_superres by měl jít zkompilovat ze zdrojáků příkazem:
cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules -Dopencv_dnn_superres=ON <opencv_source_dir>