TGViewer
QArelia | Блог про тестирование, QA 🧩 QArelia | Блог про тестирование, QA 🧩 @qa_relia · 956 subscribers
Post #44 264
#истории #opencv #хакатон
Как однажды я в CV 👁‍🗨 хакатоне участвовал

Весной я с коллегой (кстати, он тоже не разработчик) решили поучаствовать в хакатоне по компьютерному зрению iVision 2021. У меня опыта в этой сфере не было, поэтому я готовился изучать что-то новое на предстоящем мероприятии 💫

В нашей категории была дана задача на распознавание свободных парковочных мест 🚗 Организаторы дали видеопотоки нескольких камер и нужно было показывать свободные места в live-режиме 🖥
На втором этапе, на который мы прошли и это было уже достижение, мы дорабатывали раннее созданное нечто 😂 Теперь надо было стать фронтенд-разработчиком и создать веб-приложение в виде карты 🗺, на которой можно наглядно увидеть свободные места, а также бота 🤖 для Telegram, оповещающего о наличии свободного места на конкретной парковке.

Начали думать и искать хотя бы какие-то зацепки, что и как делать. Что-то находилось, но оно не совсем то и не работало в нашем случае 👀 Посмотрели как работает пример с Хабра — работал он откровенно криво и долго.
Затем попробовали библиотеку ImageAI, которая давала уже хоть какие-то результаты по распознаванию автомобилей, но даже она с какой-то большой погрешностью еле-еле могла различить автомобиль 🚗 на некоторых камерах из-за угла наклона. Количество автомобилей сложно было даже глазами посчитать, особенно вдалеке.
Исходя из этого было решено дообучать модель под наши условия 🚴‍♂️

Следующий этап выборки и разметки данных занимал от 6 до 12 часов и проделывался дважды из-за размеров картинок, влияющих на скорость обработки.
Получилась на время работающая модель с плюс-минус хорошим результатом 🎯
И ещё это дело куда-то задеплоить надо было, тут пришлось стать девопсом 🧙‍♂️

Я перепробовал 3 сервиса для деплоя: Heroku, Google App Engine и DigitalOcean.
С Heroku было сложно разобраться из-за внутреннего движка и непонятных ошибок, хотя там есть отдельный план для AI/ML приложений, но он платный разумеется.
Google App Engine отказался обрабатывать долгие запросы, такое он увы не поддерживает 🤷‍♂️
Спасибо DigitalOcean, что не тупил и всё поднял с первого раза 👌 Но ресурсов это съедало много.

Но вскоре нас поджидал главный подвох 🗿

На финальном этапе наша модель поплыла 🚣‍♀️, потому что растаял мартовский снег, а дело было в апреле уже.
По сути цель задания осталась та же, просто надо было всё красиво оформить в виде веб-странички с картой, на которой видны парковки и свободные места. А с помощью телеграм бота оповещать 📣 о наличии свободного места на определённой парковке.
Надо было что-то быстро создать, поэтому всё было написано в HTML файле, юзая jQuery, и даже ни капли не стыдно, зато что-то работало и удалось разобраться с Google Maps 📈
Telegram бот на Python вполне свои функции выполнял: подписался на парковку, получил уведомление, побежал парковать машину 👍
Только вот с точностью была проблема, модель подвела 🤔

Но несмотря на сложности, это был интересный челлендж 🙌 Мне понравилось пробовать разные решения с их плюсами и минусами, тестировать работу сервиса и получать наглядный результат. Разбивать задачи на подзадачи 🧩 Демонстрировать ход решения в Jupyter Notebook 📝 Вспоминать Python и JavaScript 😊

Извлёк некоторые уроки для себя на будущее, что надо больше изучать и понимать работу алгоритмов, в каких случаях лучше применять. И улучшать работу с фронтенд фреймворками 📚
  • 🔥 3
More from @qa_relia
  1. Aug 5, 2025🔹 ISTQB выпустила новую сертификацию — CT‑GenAI (Certified Tester – Testing with Generati…
  2. Jul 31, 2025❇️ Как я стал QA лидом и что теперь делаю каждый день Часть 1. История моего перехода в QA…
  3. Jul 13, 2025🔥 Ребят, я очень давно не писал, потому что... начал работать в новой роли QA лида) 🤔 Я…
  4. Mar 8, 2025🌷 Поздравляю с 8 марта! Дорогие наши тестировщицы, багоискательницы и хранительницы качес…
  5. Feb 27, 2025👩‍💻 Про код-ревью автотестов Код автотестов должен обязательно проходить код-ревью, а то…
  6. Feb 22, 2025🗂 Папка с лучшими Telegram каналами про QA 🥳 В том году мой канал добавили супер-полезну…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →