February 6th, 2020
Celem tego protokołu jest wykorzystanie gotowych konwolucyjnych sieci neuronowych do automatyzacji śledzenia zachowań i przeprowadzania szczegółowej analizy zachowań. Śledzenie zachowania może być stosowane do dowolnych danych wideo lub sekwencji obrazów i można je uogólnić w celu śledzenia dowolnego obiektu zdefiniowanego przez użytkownika.
Przeprowadzenie szczegółowej analizy zachowania ma kluczowe znaczenie dla zrozumienia relacji między zachowaniem mózgu. Jednym z najlepszych sposobów oceny zachowania są dokładne obserwacje. Jednak ilościowe określenie zaobserwowanego zachowania jest czasochłonne i trudne.
Klasyczne metody analizy zachowania nie są łatwe do zmierzenia i są z natury subiektywne. Najnowsze osiągnięcia w dziedzinie uczenia głębokiego, gałęzi uczenia maszynowego i sztucznej inteligencji, stwarzają możliwości zautomatyzowanej i obiektywnej kwantyfikacji obrazów i filmów. Poniżej przedstawiamy nasze najnowsze metody wykorzystujące głębokie sieci neuronowe do przeprowadzania szczegółowej analizy zachowań gryzoni i ludzi.
Główną zaletą tej techniki jest jej elastyczność i możliwość zastosowania do dowolnych danych obrazowych do analizy zachowania. Przybornik DeepBehavior obsługuje identyfikację pojedynczych obiektów, wykrywanie wielu obiektów i śledzenie pozycji ludzkiej. Udostępniamy również kod przetwarzania końcowego w MATLAB, aby uzyskać bardziej dogłębne metody analizy kinematycznej.
Zacznij od skonfigurowania Tensor Box. Aktywuj środowisko, a następnie użyj GitHub, aby sklonować Tensor Box i zainstalować go na maszynie i na dodatkowych zależnościach. Następnie uruchom graficzny interfejs użytkownika do etykietowania i oznacz co najmniej 600 obrazów z szerokiej dystrybucji ramek zachowań.
Aby oznaczyć obraz etykietą, kliknij lewy górny róg interesującego go obiektu, a następnie prawy dolny róg. Następnie upewnij się, że obwiednia przechwytuje cały obiekt. Kliknij przycisk Dalej, aby przejść do następnej klatki.
Aby połączyć obrazy treningowe z plikiem hiperparametrów sieci, otwórz overfeat_rezoom. json w edytorze tekstów i zastąp ścieżkę pliku w obszarze train_idl do labels.json. Następnie dodaj tę samą ścieżkę do pliku w obszarze test-idl i zapisz zmiany.
Zainicjuj skrypt trenowania, który rozpocznie trenowanie przez 600 000 iteracji i wygeneruje wynikowe wytrenowane wagi konwolucyjnej sieci neuronowej w folderze wyjściowym. Następnie wykonaj przewidywanie na nowych obrazach i wyświetl dane wyjściowe sieci jako obrazy oznaczone etykietami i jako współrzędne pola ograniczenia. Zainstaluj YOLOv3.
Następnie oznacz dane treningowe za pomocą Yolo_mark, umieszczając obrazy w folderze Yolo_mark-data-obga i oznaczając je jeden po drugim w graficznym interfejsie użytkownika. Oznacz około 200 obrazów. Następnie skonfiguruj plik konfiguracyjny.
Aby zmodyfikować plik konfiguracyjny, otwórz folder YOLO-obj. cfg. Modyfikowanie wierszy partii, podpodziału i klas.
Następnie zmień filtr dla każdej warstwy konwolucyjnej przed warstwą YOLO. Pobierz wagi sieci i umieść je w kompilacji darknetu. x64 folder.
Uruchom algorytm trenowania, a po jego zakończeniu wyświetl iteracje. Aby śledzić wiele części ciała człowieka, zainstaluj OpenPose, a następnie użyj go do przetworzenia żądanego wideo. Możliwości zestawu narzędzi DeepBehavior Toolbox zostały zademonstrowane na nagraniach wideo, na których myszy wykonują zadanie docierania do granulek pokarmowych.
Ich prawe łapy były oznaczone, a ruch był śledzony za pomocą kamer z przodu i z boku. Po obróbce końcowej z kalibracją kamery uzyskano trajektorie 3D zasięgu. Dane wyjściowe YOLOv3 to wiele pól ograniczenia, ponieważ można śledzić wiele obiektów.
Ramki ograniczające znajdują się wokół interesujących obiektów, które mogą być częściami ciała. W OpenPose sieć wykryła wspólne pozycje i po przetworzeniu końcowym za pomocą kalibracji kamery utworzono model 3D obiektu. Jednym z krytycznych kroków, które nie zostały omówione w tym protokole, jest upewnienie się, że urządzenie ma odpowiednie wersje i zależności języka Python, a także urządzenie skonfigurowane przez procesor graficzny przed rozpoczęciem.
Po pomyślnym uzyskaniu zachowania ścieżki z sieci można wykonać dodatkowe przetwarzanie końcowe w celu dalszej analizy kinematyki i wzorców zachowania. Powodem, dla którego DeepBehavior Toolbox ma zastosowanie w podejściach diagnostycznych w modelach chorób gryzoni i ludzi, nie jest bezpośrednia korzyść terapeutyczna. Wykorzystanie tych technik jako narzędzia diagnostycznego lub prognostycznego jest aktywnie badane w naszym laboratorium.
Technika ta jest wykorzystywana do badania mechanizmów neuronalnych prawidłowego zachowania motorycznego u gryzoni, a także jest wykorzystywana w badaniach klinicznych do oceny odzyskiwania motorycznego u pacjentów z chorobami neurologicznymi.
View the full transcript and gain access to thousands of scientific videos
Ten protokół wykorzystuje wstępnie zbudowane konwolucyjne sieci neuronowe do automatyzacji śledzenia zachowań i przeprowadzania szczegółowej analizy zachowań. Może być stosowany do dowolnych danych wideo lub sekwencji obrazów, umożliwiając śledzenie obiektów zdefiniowanych przez użytkownika.