Wykrywanie obiektów z użyciem Tensorflow
Nieco wcześniej wytrenowałem AI wykrywania obiektów.
W jednym zimnym zimnym dniu w lipcu … czyli w Australii … czułem nagły potrzebę trenowania modelu AI do wykrywania nierozpaczonych prętów zbrojeniowych w betonie…
Więc kupiłem w lokalnym Bunnings Warehouse sklepie kilka nowych, błyszczących prętów zbrojeniowych takich jak te
oraz korki bezpieczeństwa na pręty zbrojeniowe takie jak te
Zaczęliśmy od korków
Zrobiłem sto zdjęć różnych kompozycji z tymi żółtymi korkami na pręty zbrojeniowe, oznaczyłem je w LabelImg, wziąłem pewien model SSD, a potem jeszcze EfficientNet i zrobiłem trochę kodu w Python- i model szybko nauczył się tego, czego chciałem.
na początku model traktował prawie wszystkie żółte cylindryczne obiekty jako korki na pręty zbrojeniowe
A granice prostokątów mogły być bardziej precyzyjne…
Potem pojawiły się pręty
Wziąłem kilka innych przydatnych narzędzi z garażu i zrobiłem jeszcze sto zdjęć takich jak te, a model zaczął lepiej widzieć…
Tak, o wiele lepiej.
Aplikacja mobilna
W końcu wytrenowałem mały model SSD AI, który mógł działać na moim telefonie mobilnym bez ogromnych opóźnień, stworzyłem prostą aplikację Android i oto jak wyglądała na Samsungu S8:
Była to bardzo dobra eksperyment.
Przydatne linki
- MMdetection nie jest już wspierane
- Przepływ pracy do trenowania wykrywacza obiektów z Label Studio & MMDetection
- LabelImg: https://github.com/HumanSignal/labelImg
- TensorFlow: https://www.tensorflow.org/
- Python Cheatsheet
- Conda Cheatsheet
- venv Cheatsheet
- Bash Cheat Sheet
- Ollama cheatsheet
- Generowanie PDF w Pythonie - biblioteki i przykłady"