TensorFlow objekti tuvastamise API kasutamist Windowsis

2017. aasta juuli paiku ilmus TensorFlow objekti tuvastamise API. TensorFlow objektide tuvastamise API on TensorFlow peal üles ehitatud avatud lähtekoodiga raamistik, mis muudab objekti tuvastamise mudelite ehitamise, koolitamise ja juurutamise lihtsaks.

See API muudab tohutuks asjaolu, et erinevalt teistest mudelitest nagu YOLO, SSD, ei vaja te selle käivitamiseks keerulist riistvara häälestust.

Nad on avaldanud paberi pealkirjaga Kiiruse / täpsuse kompromissid tänapäevaste konvolutsiooniliste objektidetektorite jaoks. Siin arutatakse erinevate objektide tuvastamiseks saadaolevate arhitektuuride üle, nagu YOLO, Faster R-CNN, SSD ja R-FCN.

See API on võimeline tuvastama mitut tüüpi objekte, nagu autod, jalakäijad, inimesed, tuulelohe, koer ja palju muud. Terve nimekirja leiate siit.

Olen seda API-d kasutanud liiklussignaali tuvastamiseks reaalajas videovoos Udacity isesõitva auto nano-astmeprogrammi nurgakiviprojekti jaoks. Selles projektis pidime Carla (Udacity isejuhtiv auto) teele sõitma.

Väljund simulaatori videovoo kaudu.

Alustame seadistamist.

  1. Kloonige tensorflow-mudeli hoidla.
  2. Peamine API dokumentatsioon on aadressil https://github.com/tensorflow/models/tree/master/research/object_detection.
  3. Installige tensorflow.
# CPU jaoks
pip paigaldada tensorflow
# GPU jaoks
pip install tensorflow-gpu

4. Installige kõik muud sõltuvused

pip paigaldada padi
pip install lxml
pip install jupyter
pip install matplotlib

5. Laadige alla Google Protobufi https://github.com/google/protobuf Windows v3.4.0 väljalase „protoc-3.4.0-win32.zip”

6. Ekstraheerige Protobufi allalaaditav fail programmifailidesse

C: \ programmifailid \ protoc-3.4.0-win32

7. Nüüd sisestage mudelite uurimistöö.

cd tee \ mudelite \ uurimistöö juurde

8. Käivitage protobufi kompileerimine

"C: \ Program Files \ protoc-3.4.0-win32 \ bin \ protoc.exe" object_detection / protos / * .proto --python_out =.

See on installiprotsessi kõige olulisem samm.

9. Liikuge nüüd mudelitele \ research \ object_detection \ protos ja kontrollige, kas .py-failid on kompileerimise tulemusel edukalt loodud. (alustuseks olid ainult .proto-failid)

10. CD-le \ mudeleid \ uurimistööd \ objekti_tuvastus. Avage jupyteri märkmik object_detection_tutorial.ipynb. Siin saate mängida API-ga.

Probleem, millega tõenäoliselt kokku puutute:

  • Kui teisaldate sülearvuti mõnda teise kataloogi ja käivitate selle, kuvatakse tõrge
ModuleNotFoundError: Ühtegi moodulit nimega 'utils'
  • Selle vea allikaks on koodi kaks rida.
utilsist impordib label_map_util
utilsist impordi visualization_utils kui vis_util
  • Selle tõrke põhjuseks on asjaolu, et me ei tea Pythoni veel, kuidas leida utilside kataloog, mida need read kasutavad.

Probleemi lahendamine:

  • Minge jaotisse Süsteem -> Täpsemad süsteemiseaded -> Keskkonnamuutujad -> Uus ja lisage muutuja nimega PYTHON_PATH ja need väärtused:
  • Muutke süsteemimuutujates PATH ja lisage% PYTHON_PATH%.
  • Peate süsteemi taaskäivitama ja siis saate seda koodi vabalt kasutada kõikjal süsteemis.

Mõned väljundnäidised

Selle API-ga katsetamiseks kasutasin oma veebikaamerat ja mobiiltelefoni kaamerat. Mobiilikaamera ühendamiseks kasutasin IP veebikaamera Androidi rakendust. Saate hoidlat kontrollida.

Täname, et lugesite Leiate mind Twitterist @ Rohitpatil5 või saate minuga ühendust LinkedInis.