Je voulais lancer un programme de traitement d'image réalisé avec Anaconda avec Apache + Django, donc une simple note pour moi-même. Je ne fais rien comme SSL ou la sécurité. C'est une continuation de https://qiita.com/hinoma/items/5b881b8ac531a0ba7953. Pour le moment, c'est le personnage principal. Je n'ai pas encore préparé les images, donc je les posterai quand je le pourrai.
CSS ne fonctionnera pas si l'article précédent est tel qu'il est. Par conséquent, modifiez setting.py.
setting.py
import os
TEMOLATES = [
{
'DIRS' : [os.path.join(BASE_DIR, 'templates')]
LANGUAGE_CODE = 'ja'
TIME_ZONE = 'Asia/Tokyo'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
Après cela, créez un répertoire statique et un répertoire de modèles dans la même hiérarchie que manage.py. Placez le fichier css dans le répertoire static et le fichier html dans le répertoire templates.
/etc/httpd/conf.d/django.conf
#Postscript
WSGIApplicationGroup %{GLOBAL}
WSGIPythonHome /usr/local/bin/pyenv/versions/anaconda3-4.4.0/
Alias /static/ /var/www/komon/static/
<Directory /var/www/komon/staitc>
Require all granted
</Directory>
# python manage.py collectstatic
Faisons cela.
Puisque vous pouvez utiliser opencv, keras, tensorflow, etc., installez-les.
# pip install opencv-python==4.4.0.44
# conda install keras=2.2.4
# conda install numpy=1.16.2
# conda install tensorflow=1.13.1
Si vous installez keras = 2.2.4, numpy1.18 sera installé, mais une rétrogradation est requise car elle est incompatible avec cela.
libstdc++.so.6 version cxxabi_1.3.8' not found C'est l'erreur qui s'est produite lorsque j'ai exécuté apache. Apparemment, il n'y a pas de cxxabi_1.3.8 dans libstdc ++. So.6
# strings /usr/lib64/libstdc++.so.6 | grep CXXABI_
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
Apparemment, il n'y a pas de 1.3.8, donc je dois l'obtenir d'une manière ou d'une autre.
# cp /usr/local/bin/pyenv/versions/anaconda3-4.4.0/lib/libstdc++.so.6.0.26 /usr/lib64/
# mv libstdc++.so.6 libstdc++.so.6.bak
# ln -s libstdc++.so.6.0.26 libstdc++.so.6
# string /usr/lib64/libstdc++.so.6 | grep CXXABI_
(CXXABI_1.3.8 est tout ce dont vous avez besoin)
# systemctl restart httpd
Si vous faites cela et que cela fonctionne, vous pouvez le trouver dans views.py du projet django.
import tensorflow as tf
Je pense que ce n'est pas grave si l'écran est affiché en tapant l'adresse IP d'un PC externe après l'ajout d'un tel que.
Si c'est alphanumérique
cv2.putText(Chemin de l'image,Caractères que vous souhaitez afficher, (x, y), cv2.FONT_HERSHEY_PLAIN, 2,Couleur, 1, cv2.LINE_AA)
Il peut être affiché avec, mais le japonais ne peut pas être affiché avec opencv, utilisez donc un oreiller
from PIL import Image, ImageFont, ImageDraw
Passe par le programme, mais lors de l'affichage du japonais, il est nécessaire de lire la police, alors lisez-la avec le code suivant.
font = ImageFont.truetype(fontpath, fontsize)
Cela peut provoquer des erreurs dans certains cas
The _imagingft C module is not installed
Quand devient, la solution devrait être la suivante.
# yum install freetype-devel libjpeg-devel libpng-devel
# pip uninstall pil pillow
# pip install pillow
# pip list
(Vérifiez s'il y a un oreiller avec ceci)
Cela a fonctionné dans mon environnement.
Recommended Posts