Étape 2: Installation des conditions préalables
Si votre ordinateur fonctionne sur Ubuntu, suivez les instructions fournies dans la section Ubuntu pour installer les programmes. De même, suivre la section Windows si vous êtes sur une machine Windows.
Ubuntu
Out of the box, Ubuntu est livré avec python et plusieurs modules d’extension préinstallées. Il n’y a donc, pas besoin d’installer python, si vous êtes sous Ubuntu OS. J’utilise python version 2.7 pour ce tutoriel.
J’ai utilisé le sublime-texte-3 comme éditeur de texte pour ce projet. Vous pouvez utiliser votre éditeur de texte favori.
Entrez la commande suivante dans le terminal de Ubuntu pour obtenir tous les paquets nécessaires (dépendances)-
sudo apt-get -y install libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff4-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip<br>
Entrez les commandes suivantes dans le terminal pour télécharger la dernière version d’OpenCV et de l’installer sur votre machine :
mkdir opencv<br>cd opencv wget <a href="https://github.com/Itseez/opencv/archive/3.0.0-alpha.zip" rel="nofollow"> https://github.com/Itseez/opencv/archive/3.0.0-al...> -O opencv-3.0.0-alpha.zip unzip opencv-3.0.0-alpha.zip
Maintenant, installez les fichiers téléchargés opencv
cd opencv-3.0.0-alpha<br>mkdir build cd build cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -DBUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON .. make -j $(nproc) sudo make install
Étapes finales
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'<br>sudo ldconfig
Maintenant, vous avez presque tous les modules et logiciels. Donc, commencer avec la construction de notre système d’alerte.
Windows
Tout d’abord, vous devez télécharger Pyhton d’ici.
Télécharger OpenCV pour windows à partir d’ici. Vous devez télécharger numpy depuis ici.
Vous pouvez obtenir n’importe quel éditeur de texte que vous aimez. J’utilise sublime-texte-3 à cet effet.
Suivez les étapes ci-dessous pour installer les fichiers téléchargés :
2. output_images-faire un dossier nommé « output_images » et le laisser vide. Après avoir exécuté le code pré-processing, elle va rogner les visages des images dans le dossier "input_images" et les enregistre automatiquement ici. Vous pouvez voir l’image annotée : images de « output_images » avec sauvé après avoir exécuté le code fourni dans cette étape.
3. sorted_images - maintenant, il nous faut choisir manuellement les photos de vos amis et conservez-le dans des dossiers distincts, avec noms de même que vos amis. Vous pouvez le voir, j’ai recueilli des images de 6 de mes amis et eux stockés dans des dossiers distincts.
Pourquoi nous devons choisir manuellement et d’organiser les images des amis ? Je vais répondre à cette question à l’étape suivante.
Après l’exécution de ce code, votre dossier « output_images » doit être rempli d’images recadrées. Donc, maintenant passer à l’Etape 3 mentionnés ci-dessus où il faut mettre manuellement toutes les images des amis dans des dossiers séparés.
Avec ce point, nous avons complété avec succès de pré-traitement & organiser nos données (images).
Code
Enregistrer ce que .py et le lancer depuis la ligne de commande. Je suppose que vous avez connaissance du codage en python, donc j’explique pas comment le faire fonctionner ici.
Remarque : vous devez avoir images enregistrées dans le dossier « input_images » avant d’exécuter ce code et le fichier xml préalablement formés attachés à cette étape, enregistrée avec le nom - " haarcascade_frontalface_default.xml "dans le même dossier que ce code est po
J’ai commenté brièvement ce que fait le code à chaque partie.
Vous pouvez afficher le même code ici .
Vous pouvez aussi télécharger le même code ci-dessous que j’ai ai il joint à cette étape.
'''<br>Surya Teja Cheedella shine123surya[at]gmail[dot]com BITS Pilani, Hyderabad Campus Takes all the images in "input_path" and analyses them for any faces. If face(s) is(are) found, it crops and saves them at "output_path". ''' import cv2 import cv2.cv as cv from os import listdir import time def cropImage(img, box): [p, q, r, s]= box # crop and save the image provided with the co-ordinates of bounding box write_img_color= img[q:q+ s, p:p+ r] saveCropped(write_img_color, name) # save the cropped image at specified location def saveCropped(img, name): cv2.imwrite(output_path+ name+ ".jpg", img) if __name__== "__main__": # paths to input and output images input_path= "input_images/" output_path= "output_images/" # load pre-trained frontalface cascade classifier frontal_face= cv2.CascadeClassifier("haarcascade_frontalface_default.xml") input_names= listdir("/home/suryateja/Documents/GitHub/FaceRecognizer/"+ input_path) print("Starting to detect faces in images and save the cropped images to output file...") sttime= time.clock() i= 1 for name in input_names: print(input_path+name) color_img= cv2.imread(input_path+ name) # converting color image to grayscale image gray_img= cv2.cvtColor(color_img, cv2.COLOR_BGR2GRAY) # find the bounding boxes around detected faces in images bBoxes= frontal_face.detectMultiScale(gray_img, scaleFactor=1.3, minNeighbors=5, minSize=(30, 30), flags = cv.CV_HAAR_SCALE_IMAGE) #print(bBoxes) for box in bBoxes: #print(box) # crop and save the image at specified location cropImage(color_img, box) i+= 1 print("Successfully completed the task in %.2f Secs." % (time.clock()- sttime))