Команда 220volt представляет программный модуль автоматизированного мониторинга объектов животного мира по изображениям с фотоловушек с использованием искусственного интеллекта.
- детектировать животных на фотографиях, производить подсчёт их количества, а также классифицировать их
- определять продолжительность нахождения животных при множественной регистрации для определённой локации
- выводить полученные данные в пользовательский интерфейс для контроля, а также формировать таблицу в файл отчёта
Программный модуль представляет собой полезный инструмент интеллектуального наблюдения и контроля, позволяющий экономить время научных сотрудников и специалистов на классификацию и оценку времени пребывания животных на охраняемых территориях. Технические особенности: Java, FlatLAF, Py4J, Python, Yolo v8, PyTorch, OpenCV.
- Скачайте Java 8 с официального сайта.
- Следуйте инструкциям по установке на вашем устройстве.
- Скачайте Python 11 с официального сайта.
- Следуйте инструкциям по установке на вашем устройстве.
- Убедитесь, что Python добавлен в переменные окружения PATH.
-
Скачайте проект с GitHub на устройство с доступом к интернету.
-
Убедитесь, что все зависимости для проекта загружены. Для этого выполните следующие команды на устройстве с доступом к интернету:
pip download -r requirements.txt -d /path/to/save/packages
-
Перенесите проект и загруженные пакеты на целевое устройство.
-
На целевом устройстве выполните команду для установки зависимостей:
pip install --no-index --find-links=/path/to/save/packages -r requirements.txt
-
Клонируйте проект с GitHub:
git clone https://github.com/Zuzokin/Hack_photo_trap
-
Исполните скрипт
createvenv.bat
для установки всех зависимостей:createvenv.bat
Или в папке с baseline введите следующие команды
python3 -m venv venv venv/bin/activate python3 -m pip install --upgrade pip pip install -r requirements.txt
-
Откройте файл
Animals.jar
.
-
Выберите необходимую директорию в поле выбора папки с датасетом.
-
Выберите папку с проектом на Python, содержащую нейросетевую модель.
-
Выберите на панели управления путь, в который будет сохранен отчет с регистрациями в формате CSV.
-
Нажмите кнопку "Запустить" и дождитесь завершения обработки датасета. По указанному ранее пути найдите сгенерированный CSV файл.
- Все регистрации, включая имена файлов, из которых они были построены, можно найти в таблице.
- Для удобного поиска по таблице можно воспользоваться поиском по ключевым словам на панели управления.
- Введите, например, интересующий класс животного. В таблице все соответствующие результаты будут подсвечены зеленым цветом.
- Для снятия выделения используйте кнопку "Отменить".
- В качестве модели нейронной сети использовался baseline с детектором YOLOv8 размера nano и классификатором efficientnet_b0. При анализе изображения применяются этапы адаптивной локальной предобработки, такие как LACC (Locally Adaptive Color Correction) и LACE (Locally Adaptive Contrast Enhancement). Код предобработки представлен в файлах LACC.py и LACE.py.
- Код формирования csv таблицы представлен в файле Frame.java в функции processCSV
- Для предотвращения учета ложных распознаваний при регистрации используются данные с предыдущих фотографий, где учитывается время и уверенность распознаного класса.
Ознакомиться с подробным роликом тестирования демонстрационного приложения можно по ссылке