Прога после довольно простенького обучения автоматически и на всех фреймах довольно точно (здесь с точностью 1-2 пикселя по сравнению с "ручной" разметкой) отмечает нужные body parts (в данном случае это "nose" + "body centre" + "tail" - см цветные точки). И на выходе получаем csv файл где для каждого фрейма есть XY координаты для каждой body part и likelihood определения (т.к. можно фильровать менее точные разметки). С этим уже потом можно работать где угодно (хоть в Питоне с pandas, хотя в R). К примеру, для той же рыбы я могу определить
- ориентацию оси тела и heading (куда она направляется/смотрит головой)
- где и когда та или иная часть тела расположена в пространстве - к примеру точки и моменты пересечения определенных zones, бюджеты времени в тех или иных "зонах". Это уже потом можно использовать для автоматического определения ориентации при перемещении тела в данной арене
Подобные вещи (quantification of complex behaviours) присутствуют в некоторых довольно дорогих проприетарных продуктах типа известного Ethovision от Noldus, но это £5-10k за лицензию (да еще и ограничения на количество компов, где можно работать). Плюс их точность иногда хромает, их зашитые алгоритмы непрозрачны и/или с довольно ограниченной гибкостью (а порой и без нее) и заточены на preclinical studies (обычно грызуны, реже зебрафиши). Да, там point-and-click, но всё равно нужно приличное время разбираться, а здесь нужно знать базовый python и тоже разобраться с документацией.
Короче, open source всё равно рулит :)
Комментарии (0)