Bisher haben wir Methoden wie BING und Selective Search als R-CNN eingeführt. ・ Klicken Sie hier für frühere Artikel Ich habe versucht, BING mit OpenCV als Vorverarbeitung von CNN zu verwenden Ich habe versucht, die selektive Suche als R-CNN zu verwenden Die Genauigkeit von BING ist jedoch nicht sehr gut. Es gibt immer noch Beschwerden über die selektive Suche, wie z. B. langsame Verarbeitungsgeschwindigkeit. Diesmal möchte ich also Faster R-CNN ausprobieren.
Diese Methode wurde beschleunigt, indem Kandidatenkandidaten für Objekte mithilfe von CNN ermittelt wurden. Ursprünglich wurde eine Methode namens Fast R-CNN früher angekündigt, Bald darauf wurde das schnellere Faster R-CNN angekündigt. (Die Geschwindigkeit des Fortschritts in dieser Welt ist erschreckend.) Weitere Informationen finden Sie auf der Seite der Cornnel University. https://arxiv.org/abs/1506.01497
Das Original ist Caffe https://github.com/rbgirshick/py-faster-rcnn/tree/96dc9f1dea3087474d6da5a98879072901ee9bf9 Ich möchte Caffe nicht sehr oft als persönliches Hobby verwenden, daher werde ich dieses Mal die Chainer-Version verwenden. https://github.com/mitmul/chainer-faster-rcnn
Umgebung: Ubuntu16.04LTS, Python2.7.12, Chainer1.12.0 Befolgen Sie einfach die Schritte in ReadMe.
□ Klonen Sie den Chainer-Fast-Neural-Stil.
$ git clone https://github.com/mitmul/chainer-faster-rcnn
□ Wechseln Sie in den Bibliotheksordner und erstellen Sie
$ cd chainer-faster-rcnn/lib
$ python setup.py build_ext -i
$ cd ..
□ Laden Sie das trainierte Modell herunter
$ if [ ! -d data ]; then mkdir data; fi; cd data
$ wget https://dl.dropboxusercontent.com/u/2498135/faster-rcnn/VGG16_faster_rcnn_final.model`
$ cd ..
□ Laden Sie das Testbild herunter und führen Sie es aus
$ wget http://vision.cs.utexas.edu/voc/VOC2007_test/JPEGImages/004545.jpg
$ python forward.py --img_fn 004545.jpg --gpu 0
Es ist das Ergebnis des Testbildes Dies ist ein Bild, das ich selbst vorbereitet habe Beide werden genau erfasst. Darüber hinaus wird es bei Verwendung der GTX970 in etwa 0,3 bis 0,4 Sekunden erkannt. Übrigens hat es nur für die CPU ca. 30 Sekunden gedauert.
Schnelleres R-CNN scheint im Moment eine ziemlich gute Technik zu sein. Eine Grafikkarte ist erforderlich. In Zukunft wird es leichte Modelle geben, die auf Mobilgeräten funktionieren.
[30.11.2016 Nachtrag] Wenn Sie darüber nachdenken, scheint es eine schnellere Methode zu geben, die als Single Shot Multi-Box-Erkennung bezeichnet wird. https://arxiv.org/abs/1512.02325 Das möchte ich auch in meiner Freizeit ausprobieren.
Recommended Posts