kita akan lanjutkan postingan dari artikel sebelumnya. pada tahap ini kita akan membuat model dari data-data gambar yang kita sudah miliki. langsung saja...
pada kesempatan kali ini kita akan menggunakan suatu tools yang akan mempermudah sedikit pekerjaan kita, yap kita akan menggunakan docker. disini kita tidak usah mengdownload dan mempersiapkan dependency kita manually.
1. install docker
untuk keluar dari docker tanpa mematikannya
untuk masuk lagi ke docker file
3. build alignment
7. sekarang kita akan test hasil dari model yang telah kita buat.
cari gambar selain gambar dari trining data tadi.
saya mencari gambar lain dari acah, raisa, isyana, isyana, rafi ahmad, dan nagita.
(test_acha.jpg test_bcl.jpg test_isyana.jpg test_nagita.jpg test_rafi.jpg test_raisa.jpg)
dari hasil tersebut dapat kita ketahui bahwa ke-empat artis yang kita telah buat modelnya, dapa di klasifikasikan dengan benar. nah dua artis ini (nagita dan rafi) mendapatkan hasil yang tidak benar, ya karena memeng kita tidak membuat modelnya terlebih dahulu. tapi ada yang menarik dari hasil ini, kalau menurut sistem ini sepertinya Rafi Ahmad memang mirip dengan Raisa ya dengan confidence level sangat tinggi yaitu 0.91. jangan-jangan mereka saudaraan... haha #just-Kidding ^-^
ref:
https://medium.com/@ageitgey/machine-learning-is-fun-part-4-modern-face-recognition-with-deep-learning-c3cffc121d78
https://hackernoon.com/building-a-facial-recognition-pipeline-with-deep-learning-in-tensorflow-66e7645015b8
pada kesempatan kali ini kita akan menggunakan suatu tools yang akan mempermudah sedikit pekerjaan kita, yap kita akan menggunakan docker. disini kita tidak usah mengdownload dan mempersiapkan dependency kita manually.
1. install docker
$ docker pull bamos/openface2. running docker di file rootprojek kita. file root projek saya di "/home/kirra/Documents/projek/facedetect"
$ cd /home/kirra/Documents/projek/facedetect
$ docker run -p 9000:9000 -p 8000:8000 -t -i -v $(pwd)/blog:/root/openface/blog bamos/openface /bin/bash
$ cd /root/openface
untuk keluar dari docker tanpa mematikannya
$ ctrl+p dan ctrl+qmelihat docker image yang sedang running
$ sudo docker ps
untuk masuk lagi ke docker file
$ sudo docker attach 16e8a2d80156
3. build alignment
$ ./util/align-dlib.py ./blog/filter/ align outerEyesAndNose ./aligned-images/ --size 96output from console:
4. membuat representasi dari gambar=== ./blog/filter/acha/Z (10)_0.jpg ====== ./blog/filter/BungaCL/images (44)_0.jpg ====== ./blog/filter/acha/Z (6)_0.jpg ====== ./blog/filter/BungaCL/images (84)_0.jpg ====== ./blog/filter/BungaCL/images (27)_0.jpg ====== ./blog/filter/isyana/images (66)_0.jpg ====== ./blog/filter/raisa/images (2)_0.jpg ====== ./blog/filter/BungaCL/images (79)_0.jpg ====== ./blog/filter/raisa/images (12)_1.jpg ===....=== ./blog/filter/acha/9k= (7)_0.jpg ====== ./blog/filter/acha/images (15)_0.jpg ====== ./blog/filter/acha/2Q== (5)_0.jpg ====== ./blog/filter/acha/images (90)_0.jpg ====== ./blog/filter/BungaCL/images (1)_0.jpg ====== ./blog/filter/acha/images (8)_0.jpg ===
$ ./batch-represent/main.lua -outDir ./generated-embeddings/ -data ./aligned-images/
output:
{ data : "./aligned-images/" imgDim : 96 model : "/root/openface/models/openface/nn4.small2.v1.t7" device : 1 outDir : "./generated-embeddings/" cache : false cuda : false batchSize : 50 } ./aligned-images/ cache lotation: /root/openface/aligned-images/cache.t7 Creating metadata for cache. { sampleSize : { 1 : 3 2 : 96 3 : 96 } split : 0 verbose : true paths : { 1 : "./aligned-images/" } samplingMode : "balanced" loadSize : { 1 : 3 2 : 96 3 : 96 } } running "find" on each class directory, and concatenate all those filenames into a single file containing all image paths for a given class now combine all the files to a single large file load the large concatenated list of sample paths to self.imagePath 253 samples found......................... 0/253 .......................................] ETA: 0ms | Step: 0ms Updating classList and imageClass appropriately [======================================== 4/4 ========================================>] Tot: 69ms | Step: 17ms Cleaning up temporary files Splitting training and test sets to a ratio of 0/100 nImgs: 253 Represent: 50/253 Represent: 100/253 Represent: 150/253 Represent: 200/253 Represent: 250/253 Represent: 253/253
5. latih model wajah dari model yang kita miliki
$ ./demos/classifier.py train ./generated-embeddings/
output:
Loading embeddings. Training for 4 classes. Saving classifier to './generated-embeddings//classifier.pkl'6. hasil struktur folder setelah training
7. sekarang kita akan test hasil dari model yang telah kita buat.
cari gambar selain gambar dari trining data tadi.
saya mencari gambar lain dari acah, raisa, isyana, isyana, rafi ahmad, dan nagita.
(test_acha.jpg test_bcl.jpg test_isyana.jpg test_nagita.jpg test_rafi.jpg test_raisa.jpg)
$ ./demos/classifier.py infer ./generated-embeddings/classifier.pkl blog/test/test_acha.jpg
=== blog/test/test_acha.jpg ===
Predict acha with 0.90 confidence.
$ ./demos/classifier.py infer ./generated-embeddings/classifier.pkl blog/test/test_bcl.jpg
=== blog/test/test_bcl.jpg ===
Predict BungaCL with 0.65 confidence.
$ ./demos/classifier.py infer ./generated-embeddings/classifier.pkl blog/test/test_isyana.jpg
=== blog/test/test_isyana.jpg ===
Predict isyana with 0.67 confidence.
$ ./demos/classifier.py infer ./generated-embeddings/classifier.pkl blog/test/test_raisa.jpg
=== blog/test/test_raisa.jpg ===
Predict raisa with 0.99 confidence.
$ ./demos/classifier.py infer ./generated-embeddings/classifier.pkl blog/test/test_nagita.jpg
=== blog/test/test_nagita.jpg ===
Predict acha with 0.60 confidence.
$ ./demos/classifier.py infer ./generated-embeddings/classifier.pkl blog/test/test_rafi.jpg
=== blog/test/test_rafi.jpg ===
Predict raisa with 0.91 confidence.
dari hasil tersebut dapat kita ketahui bahwa ke-empat artis yang kita telah buat modelnya, dapa di klasifikasikan dengan benar. nah dua artis ini (nagita dan rafi) mendapatkan hasil yang tidak benar, ya karena memeng kita tidak membuat modelnya terlebih dahulu. tapi ada yang menarik dari hasil ini, kalau menurut sistem ini sepertinya Rafi Ahmad memang mirip dengan Raisa ya dengan confidence level sangat tinggi yaitu 0.91. jangan-jangan mereka saudaraan... haha #just-Kidding ^-^
ref:
https://medium.com/@ageitgey/machine-learning-is-fun-part-4-modern-face-recognition-with-deep-learning-c3cffc121d78
https://hackernoon.com/building-a-facial-recognition-pipeline-with-deep-learning-in-tensorflow-66e7645015b8
No comments:
Post a Comment