Artykuł metodologiczny

Segmentacja tomogramów krioelektronowych oparta na głębokim uczeniu

12.7K wyświetleń

DOI:

10.3791/64435

11 listopada 2022

W tym artykule

Podsumowanie

To jest metoda trenowania wielowarstwowego U-Net do wieloklasowej segmentacji tomogramów krioelektronowych przy użyciu części jednego tomogramu jako danych wejściowych do treningu. Opisujemy, jak wywnioskować tę sieć z innymi tomogramami i jak wyodrębnić segmentacje do dalszych analiz, takich jak uśrednianie subtomogramu i śledzenie włókien.

Streszczenie

Tomografia krioelektronowa (cryo-ET) pozwala naukowcom obrazować komórki w ich naturalnym, uwodnionym stanie w najwyższej obecnie możliwej rozdzielczości. Technika ta ma jednak kilka ograniczeń, które sprawiają, że analiza generowanych przez nią danych jest czasochłonna i trudna. Ręczna segmentacja pojedynczego tomogramu może trwać od kilku godzin do kilku dni, ale mikroskop może z łatwością wygenerować 50 lub więcej tomogramów dziennie. Obecne programy segmentacji głębokiego uczenia dla cryo-ET istnieją, ale ograniczają się do segmentacji jednej struktury na raz. W tym przypadku wielowarstwowe konwolucyjne sieci neuronowe U-Net są trenowane i stosowane do automatycznej segmentacji wielu struktur jednocześnie w kriotomogramach. Przy odpowiednim przetwarzaniu wstępnym, sieci te mogą być solidnie wywnioskowane dla wielu tomogramów bez potrzeby trenowania poszczególnych sieci dla każdego tomogramu. Ten przepływ pracy znacznie poprawia szybkość, z jaką można analizować tomogramy krioelektronowe, skracając czas segmentacji do mniej niż 30 minut w większości przypadków. Co więcej, segmentacje mogą być wykorzystywane do poprawy dokładności śledzenia włókien w kontekście komórkowym oraz do szybkiego wyodrębniania współrzędnych do uśredniania subtomogramu.

Wprowadzenie

Rozwój sprzętu i oprogramowania w ciągu ostatniej dekady doprowadził do "rewolucji rozdzielczości" dla mikroskopii krioelektronowej (cryo-EM)1,2. Dzięki lepszym i szybszym detektorom3, oprogramowaniu do automatyzacji zbierania danych4,5, oraz zaawansowanym funkcjom wzmacniania sygnału, takim jak płytki fazowe6, zbieranie dużych ilości danych kriogenicznych o wysokiej rozdzielczości jest stosunkowo proste.

Cryo-ET zapewnia bezprecedensowy wgląd w ultrastrukturę komórkową w natywnym, uwodnionym stanie7,8,9,10. Podstawowym ograniczeniem jest grubość próbki, ale wraz z przyjęciem metod takich jak mielenie skupionej wiązki jonów (FIB), gdzie grube próbki komórkowe i tkankowe są rozrzedzane do tomografii11, horyzont tego, co można obrazować za pomocą cryo-ET, stale się poszerza. Najnowsze mikroskopy są w stanie wyprodukować ponad 50 tomogramów dziennie, a przewiduje się, że tempo to wzrośnie tylko ze względu na rozwój schematów szybkiego gromadzenia danych12,13. Analiza ogromnych ilości danych wytwarzanych przez cryo-ET pozostaje wąskim gardłem dla tej metody obrazowania.

Ilościowa analiza informacji tomograficznych wymaga najpierw adnotacji. Tradycyjnie wymaga to segmentacji rąk przez eksperta, co jest czasochłonne; W zależności od złożoności molekularnej zawartej w kriotomogramie, może to zająć godziny lub dni poświęconej uwagi. Sztuczne sieci neuronowe są atrakcyjnym rozwiązaniem tego problemu, ponieważ można je wytrenować do wykonywania większości prac związanych z segmentacją w ułamku czasu. Konwolucyjne sieci neuronowe (CNN) są szczególnie przydatne do zadań związanych z widzeniem komputerowym14 i zostały ostatnio przystosowane do analizy tomogramów krioelektronowych15,16,17.

Tradycyjne CNN wymagają wielu tysięcy próbek treningowych z adnotacjami, co często nie jest możliwe w przypadku zadań analizy obrazów biologicznych. W związku z tym architektura U-Net doskonale radzi sobie w tej dziedzinie18, ponieważ opiera się na rozszerzaniu danych, aby skutecznie trenować sieć, minimalizując zależność od dużych zestawów treningowych. Na przykład, architektura U-Net może być trenowana za pomocą zaledwie kilku wycinków pojedynczego tomogramu (czterech lub pięciu plasterków) i solidnie wnioskowana na innych tomogramach bez ponownego trenowania. Ten protokół zawiera przewodnik krok po kroku dotyczący trenowania architektur sieci neuronowych U-Net w celu segmentacji kriotomogram elektronowych w Dragonfly 2022.119.

Dragonfly to komercyjnie opracowane oprogramowanie służące do segmentacji i analizy obrazów 3D za pomocą modeli głębokiego uczenia się, które jest swobodnie dostępne do użytku akademickiego (obowiązują pewne ograniczenia geograficzne). Posiada zaawansowany interfejs graficzny, który pozwala laikom w pełni wykorzystać możliwości głębokiego uczenia się zarówno do segmentacji semantycznej, jak i odszumiania obrazu. Protokół ten pokazuje, jak wstępnie przetwarzać i opisywać tomogramy krioelektronowe w Dragonfly w celu trenowania sztucznych sieci neuronowych, które można następnie wywnioskować w celu szybkiej segmentacji dużych zbiorów danych. W dalszej części omówiono i pokrótce pokazano, jak wykorzystać dane segmentowane do dalszej analizy, takiej jak śledzenie włókien i ekstrakcja współrzędnych w celu uśredniania subtomogramu.

Protokół

UWAGA: Oprogramowanie Dragonfly 2022.1 wymaga wysokowydajnej stacji roboczej. Zalecenia systemowe znajdują się w Tabeli materiałów wraz ze specyfikacją sprzętową stacji roboczej użytej w tym protokole. Wszystkie tomogramy wykorzystane w tym protokole zostały poddane binowaniu 4x, co zwiększyło rozmiar piksela z 3,3 do 13,2 ang/pix. Próbki wykorzystane w reprezentatywnych wynikach zostały pozyskane z firmy (patrz Tabela materiałów), która stosuje wytyczne dotyczące opieki nad zwierzętami zgodne ze standardami etycznymi tej instytucji. Tomogram użyty w tym protokole oraz wygenerowany jako dane treningowe multi-ROI zostały dołączone jako pakiet danych w Pliku uzupełniającym 1 (dostępnym pod adresem https://datadryad.org/stash/dataset/doi:10.5061/dryad.rxwdbrvct), aby użytkownik mógł przeprowadzić analizę na tych samych danych, jeśli zechce. Dragonfly udostępnia również otwartą bazę danych o nazwie Infinite Toolbox, w której użytkownicy mogą dzielić się wytrenowanymi sieciami.

1. Przygotowanie

  1. Zmiana domyślnego obszaru roboczego:
    1. Aby zmienić obszar roboczy tak, aby odpowiadał temu użytemu w niniejszym protokole, po lewej stronie w Panelu głównym (Main panel) przewiń w dół do sekcji Właściwości widoku sceny (Scene's View Properties) i odznacz opcję Pokaż legendy (Show Legends). Przewiń w dół do sekcji Układ (Layout) i wybierz widok Pojedyncza scena i cztery równomierne widoki (Single scene and the Four Equal Views).
    2. Aby zaktualizować domyślną jednostkę, przejdź do Plik | Preferencje (File | Preferences). W otwartym oknie zmień Jednostkę domyślną (Default unit) z milimetrów na nanometry.
  2. Przydatne domyślne skróty klawiszowe:
    1. Naciśnij Esc, aby wyświetlić nitkę celownika (crosshairs) w widokach 2D i umożliwić obrót wolumenu 3D w widoku 3D. Naciśnij X, aby ukryć nitkę celownika w widokach 2D i umożliwić translację 2D oraz translację wolumenu 3D w widoku 3D.
    2. Najedź kursorem na nitkę celownika, aby zobaczyć małe strzałki, które można klikać i przeciągać w celu zmiany kąta płaszczyzny widoku w pozostałych widokach 2D.
    3. Naciśnij Z, aby przejść w tryb przybliżania (zoom state) w obu widokach, co pozwala użytkownikowi klikać i przeciągać w dowolnym miejscu, aby powiększać i pomniejszać obraz.
    4. Kliknij dwukrotnie widok w scenie czterech widoków (Four View scene), aby skupić się tylko na tym widoku; kliknij dwukrotnie ponownie, aby powrócić do wszystkich czterech widoków.
  3. Okresowo zapisuj postępy, eksportując wszystko w karcie Właściwości (Properties) jako obiekt ORS w celu łatwego importu. Zaznacz wszystkie obiekty na liście i kliknij prawym przyciskiem myszy Eksportuj | Jako obiekt ORS (Export | As ORS object). Nazwij plik i zapisz. Alternatywnie przejdź do Plik | Zapisz sesję (File | Save Session). Aby korzystać z funkcji autozapisu w oprogramowaniu, włącz ją w Plik | Preferencje | Autozapis (File | Preferences | Autosave).

2. Import obrazów

  1. W celu importu obrazów przejdź do File | Import Image Files. Kliknij Add, znajdź plik obrazu, a następnie kliknij Open | Next | Finish.
    UWAGA: Oprogramowanie nie rozpoznaje plików .rec. Wszystkie tomogramy muszą posiadać rozszerzenie .mrc. W przypadku korzystania z dostarczonych danych należy zamiast tego przejść do File | Import Object(s). Znajdź plik Training.ORSObject file i kliknij Open, a następnie kliknij OK.

3. Przetwarzanie wstępne (Rycina 1.1)

  1. Utwórz niestandardową skalę intensywności (służącą do kalibracji intensywności obrazów w różnych zestawach danych). Przejdź do Utilities | Dimension Unit Manager. W dolnym lewym rogu kliknij +, aby utworzyć nową Dimension Unit.
  2. Wybierz cechę o wysokiej intensywności (jasną) i niskiej intensywności (ciemną), która występuje we wszystkich analizowanych tomogramach. Nadaj jednostce nazwę i skrót (np. dla tej skali ustaw fiducial beads na 0.0 Standard intensity, a background na 100.0). Zapisz niestandardową jednostkę wymiaru.
    UWAGA: Niestandardowa skala intensywności to dowolna skala tworzona i stosowana do danych w celu zapewnienia, że wszystkie dane znajdują się w tej samej skali intensywności, mimo że zostały zebrane w różnym czasie lub przy użyciu różnego sprzętu. Wybierz jasne i ciemne cechy, które najlepiej reprezentują zakres sygnału. Jeśli w danych nie ma znaczników fiducjalnych, wybierz po prostu najciemniejszą cechę, która zostanie poddana segmentacji (na przykład najciemniejszy obszar białka).
  3. Aby skalibrować obrazy do niestandardowej skali intensywności, kliknij prawym przyciskiem myszy zestaw danych w kolumnie Properties po prawej stronie ekranu i wybierz Calibrate Intensity Scale. Na karcie Main po lewej stronie ekranu przewiń w dół do sekcji Probe. Używając okrągłego narzędzia próbkowania (circular probe tool) o odpowiedniej średnicy, kliknij w kilku miejscach w obszarze tła tomogramu i zapisz średnią wartość w kolumnie Raw Intensity; powtórz czynność dla znaczników fiducjalnych, a następnie kliknij Calibrate. W razie potrzeby dostosuj kontrast, aby ponownie uczynić struktury widocznymi, korzystając z narzędzia Area w sekcji Window Leveling na karcie Main.
  4. Filtrowanie obrazu:
    UWAGA: Filtrowanie obrazu może zredukować szum i wzmocnić sygnał. W tym protokole zastosowano trzy filtry wbudowane w oprogramowanie, ponieważ najlepiej sprawdzają się one dla tych danych, jednak dostępnych jest wiele innych filtrów. Po ustaleniu protokołu filtrowania obrazów dla analizowanych danych, konieczne będzie zastosowanie dokładnie tego samego protokołu do wszystkich tomogramów przed segmentacją.
    1. Na karcie main po lewej stronie przewiń w dół do Image Processing Panel. Kliknij Advanced i poczekaj na otwarcie nowego okna. Z panelu Properties wybierz zestaw danych do przefiltrowania i uczynij go widocznym, klikając ikonę oka po lewej stronie zestawu danych.
    2. Z panelu Operations użyj menu rozwijanego, aby w pierwszej kolejności wybrać Histogram Equalization (w sekcji Contrast). Wybierz Add Operation | Gaussian (w sekcji Smoothing). Zmień kernel dimension na 3D.
    3. Dodaj trzecią operację, a następnie wybierz Unsharp (w sekcji Sharpening). Pozostaw domyślne ustawienia wyjściowe dla tej operacji. Zastosuj do wszystkich przekrojów i uruchom filtrowanie, a następnie zamknij okno Image Processing, aby powrócić do głównego interfejsu.

4. Tworzenie danych treningowych (Rycina 1.2)

  1. Zidentyfikuj obszar treningowy, najpierw ukrywając nieprzefiltrowany zbiór danych poprzez kliknięcie w oko ikona po lewej stronie w Właściwości danych panel. Następnie wyświetl nowo przefiltrowany zestaw danych (który zostanie automatycznie nazwany Zbiór danych-Wyrównanie histogramu-Gauss-Maskowanie nieskorelowane). Wykorzystując przefiltrowany zbiór danych, wyznacz podregion tomogramu zawierający wszystkie interesujące cechy.
  2. Aby utworzyć ramkę wokół obszaru zainteresowania, po lewej stronie, w główny zakładka, przewiń w dół do Kształty kategoria i wybór Utworzenie polaPodczas przebywania w Widok czterech kadrów panel, użyj różnych płaszczyzny 2D aby pomóc w prowadzeniu/przesuwaniu krawędzi ramki tak, by objęła ona wyłącznie obszar zainteresowania we wszystkich wymiarach. W lista danych, wybierz Pudełko obszar i zmień kolor obramowania, aby ułatwić obserwację, klikając w szary kwadrat obok symbolu oka.
    UWAGA: Minimalny rozmiar fragmentu (patch) dla sieci 2D U-Net wynosi 32 x 32 piksele; rozmiar ramki 400 x 400 x 50 pikseli jest odpowiednią wartością początkową.
  3. Aby utworzyć wiele obszarów ROI, po lewej stronie należy wybrać Segmentacja zakładka | Nowe i sprawdź Utwórz jako wieloobszarowy ROI (Multi-ROI)Upewnij się, że liczba klas odpowiada liczbie interesujących cech oraz klasie tła. Nazwij obszar wielo-ROI (multi-ROI). Dane treningowe i upewnij się, że geometria odpowiada zestawowi danych przed kliknięciem Proszę o przesłanie tekstu źródłowego do tłumaczenia..
  4. Segmentacja danych treningowych
    1. Przewijaj dane, aż znajdą się one w granicach zaznaczonego obszaru. Wybierz Wielopunktowy ROI w właściwości menu po prawej stronie. Kliknij dwukrotnie pierwsza pusta nazwa klasy w wielo-ROI, aby go nazwać.
    2. Maluj pędzlem 2D. W segmentacja zakładka po lewej stronie, przewiń w dół do narzędzia 2D i wybrać szczotka okrężnaNastępnie należy wybrać Adaptacyjny model Gaussa lub Lokalna metoda Otsu z menu rozwijanego. Aby malować, przytrzymaj lewy Ctrl i kliknij. Aby wymazać, przytrzymaj przesunięcie w lewo i kliknij.
      UWAGA: Pędzel będzie odzwierciedlać kolor aktualnie wybranej klasy.
    3. Powtórz poprzedni krok dla każdej klasy obiektów w wieloobszarowym ROI (multi-ROI). Upewnij się, że wszystkie struktury wewnątrz obramowanej області zostały w pełni wysegmentowane, w przeciwnym razie zostaną one uznane przez sieć za tło.
    4. Po oznakowaniu wszystkich struktur kliknij prawym przyciskiem myszy Klasa tła w Wieloobszarowy ROI oraz wybierz Dodaj wszystkie nieoznaczone woksele do Klasa.
  5. Utwórz nowy obszar zainteresowania (ROI) jednej klasy o nazwie MaskaUpewnij się, że geometria jest ustawiona na przefiltrowany zestaw danych, a następnie kliknij stosowaćW ramach właściwości zakładka po prawej stronie, kliknij prawym przyciskiem myszy na Pudełko oraz wybierz Dodaj do ROIDodaj to do Maska ROI.
  6. Aby przyciąć dane treningowe za pomocą maski w ramach Właściwości zakładka, zaznacz obie Dane treningowe wielu ROI oraz Maskowanie ROI poprzez utrzymanie Kontrola i klikając na każdy z nich. Następnie kliknij Przecięcie poniżej listy właściwości danych w sekcji zatytułowanej Operacje boolowskieNadaj nazwę nowemu zbiorowi danych Przycięte dane wejściowe do szkoleniaoraz upewnij się, że geometria odpowiada przefiltrowanemu zestawowi danych przed kliknięciem Proszę podać tekst źródłowy do tłumaczenia..

5. Użycie kreatora segmentacji do uczenia iteracyjnego (Rysunek 1.3)

  1. Zaimportuj dane treningowe do kreatora segmentacji, klikając najpierw prawym przyciskiem myszy na przefiltrowany zbiór danych w karcie Properties, a następnie wybierając opcję Segmentation Wizard. Po otwarciu nowego okna przejdź do karty input po prawej stronie. Kliknij Import Frames from a Multi-ROI i wybierz Trimmed Training Input.
  2. (Opcjonalnie) Utwórz ramkę wizualizacji zwrotnej, aby monitorować postępy treningu w czasie rzeczywistym.
    1. Wybierz z danych ramkę, która nie jest segmentowana, i kliknij +, aby dodać ją jako nową ramkę. Kliknij dwukrotnie etykietę mixed po prawej stronie ramki i zmień ją na Monitoring.
  3. Aby wygenerować nowy model sieci neuronowej, w karcie Models po prawej stronie kliknij przycisk +, aby utworzyć nowy model. Wybierz z listy U-Net, a następnie w wymiarze wejściowym wybierz 2.5D oraz 5 slices, po czym kliknij Generate.
  4. Aby wytrenować sieć, kliknij Train w prawym dolnym rogu okna SegWiz.
    UWAGA: Trening można przerwać wcześniej bez utraty postępów.
  5. Aby użyć wytrenowanej sieci do segmentacji nowych ramek, po zakończeniu treningu U-Net utwórz nową ramkę i kliknij Predict (prawy dolny róg). Następnie kliknij strzałkę w górę w prawym górnym rogu przewidzianej ramki, aby przenieść segmentację do ramki rzeczywistej.
  6. Aby skorygować predykcję, użyj Ctrl-Kliknięcia dwóch klas, aby zmienić piksele segmentowane jednej klasy na drugą. Wybierz obie klasy i użyj pędzla, aby malować tylko piksele należące do którejkolwiek z tych klas. Skoryguj segmentację w co najmniej pięciu nowych ramkach.
    UWAGA: Malowanie pędzlem przy wybranych obu klasach powoduje, że zamiast usuwania za pomocą Shift-Kliknięcia, jak ma to miejsce zazwyczaj, piksele pierwszej klasy zostaną przekonwertowane na drugą. Ctrl-Kliknięcie wykona operację odwrotną.
  7. W celu treningu iteracyjnego kliknij ponownie przycisk Train i pozwól sieci trenować przez kolejne 30-40 epok, po czym zatrzymaj trening i powtórz kroki 4.5 oraz 4.6 w kolejnej rundzie szkolenia.
    UWAGA: W ten sposób model może być iteracyjnie trenowany i ulepszany przy użyciu jednego zbioru danych.
  8. Aby opublikować sieć, po uzyskaniu satysfakcjonujących wyników, wyjdź z Segmentation Wizard. W oknie dialogowym, które pojawi się automatycznie z pytaniem o modele do opublikowania (zapisania), wybierz skuteczną sieć, nazwij ją, a następnie opublikuj, aby sieć była dostępna do użytku poza kreatorem segmentacji.

6. Zastosowanie sieci (Rysunek 1.4)

  1. Aby zastosować proces najpierw do tomogramu treningowego, należy wybrać przefiltrowany zestaw danych w panelu Properties. W panelu Segmentation po lewej stronie należy przewinąć w dół do sekcji Segment with AI. Upewnij się, że wybrano właściwy zestaw danych, wybierz z menu rozwijanego model, który został właśnie opublikowany, a następnie kliknij Segment | All Slices. Alternatywnie można wybrać Preview, aby wyświetlić podgląd segmentacji dla jednego przekroju.
  2. Aby zastosować proces do zestawu danych do inferencji, zaimportuj nowy tomogram. Przeprowadź wstępne przetwarzanie zgodnie z Krokiem 3 (Figure 1.1). W panelu Segmentation przejdź do sekcji Segment with AI. Upewniając się, że wybranym zestawem danych jest nowo przefiltrowany tomogram, wybierz wcześniej wytrenowany model i kliknij Segment | All Slices.

7. Manipulacja i oczyszczanie segmentacji

  1. Szybko usuń szum, wybierając najpierw jedną z klas, która zawiera zarówno szum, jak i interesującą cechę. Prawy przycisk myszy | Process Islands | Remove by Voxel Count | Select a voxel size. Zacznij od małej wartości (~200) i stopniowo zwiększaj liczbę, aby usunąć większość szumu.
  2. W celu korekty segmentacji, Ctrl-kliknij dwie klasy, aby zaznaczyć tylko piksele należące do tych klas. Ctrl-kliknij + przeciągnij za pomocą narzędzi segmentacji (segmentation tools), aby zmienić piksele drugiej klasy na pierwszą, oraz Shift-kliknij + przeciągnij, aby uzyskać odwrotny efekt. Powtarzaj tę czynność, aby szybko skorygować błędnie oznaczone piksele.
  3. Oddziel połączone komponenty.
    1. Wybierz klasę. Kliknij prawym przyciskiem myszy klasę w Multi-ROI | Separate Connected Components, aby utworzyć nową klasę dla każdego komponentu, który nie jest połączony z innym komponentem tej samej klasy. Użyj przycisków pod Multi-ROI, aby łatwo łączyć klasy.
  4. Eksportuj ROI jako plik Binary/TIFF.
    1. Wybierz klasę w Multi-ROI, następnie kliknij prawym przyciskiem myszy i wybierz Extract Class as a ROI. W powyższym panelu properties zaznacz nowe ROI, prawy przycisk myszy | Export | ROI as Binary (upewnij się, że zaznaczona jest opcja export all images into one file).
      UWAGA: Użytkownicy mogą łatwo konwertować format tiff na mrc, używając programu IMOD tif2mrc20. Jest to przydatne przy śledzeniu filamentów.

8. Generowanie współrzędnych do uśredniania subtomogramów z obszaru ROI

  1. Wyodrębnij klasę.
    1. Kliknij prawym przyciskiem myszy Class to be used for averaging | Extract Class as ROI. Kliknij prawym przyciskiem myszy class ROI | Connected Components | New Multi-ROI (26 connected).
  2. Wygeneruj współrzędne.
    1. Kliknij prawym przyciskiem myszy new Multi-ROI | Scalar Generator. Rozwiń Basic Measurements with Dataset | i zaznacz Weighted Center of Mass X, Y and Z. Wybierz zestaw danych i oblicz. Kliknij prawym przyciskiem myszy Multi-ROI | Export Scalar Values. Zaznacz Select all Scalar slots, a następnie OK, aby wygenerować światowe współrzędne centroidów dla każdej klasy w multi-ROI w formie pliku CSV.
      UWAGA: Jeśli cząsteczki znajdują się blisko siebie, a segmentacje się stykają, konieczne może być przeprowadzenie transformacji watershed (podziału linii wododziałowych), aby rozdzielić komponenty do multi-ROI.

9. Transformacja watershed

  1. Wyodrębnij klasę, klikając prawym przyciskiem myszy class in Multi-ROI to be used for averaging | Extract Class as ROI. Nazwij ten ROI Watershed Mask.
  2. (Opcjonalnie) Zamknij otwory.
    1. Jeśli segmentowane cząstki mają otwory lub prześwity, zamknij je przed wykonaniem transformacji watershed. Kliknij ROI w sekcji Data Properties. W zakładce Segmentation (po lewej stronie) przejdź do Morphological Operations i zastosuj kombinację funkcji Dilate, Erode oraz Close, aby uzyskać jednolite segmentacje bez otworów.
  3. Odwróć ROI, klikając ROI | Copy Selected Object (poniżej Data Properties). Zaznacz skopiowany ROI i w zakładce Segmentation po lewej stronie kliknij Invert.
  4. Utwórz mapę odległości, klikając prawym przyciskiem myszy inverted ROI | Create Mapping Of | Distance Map. Do późniejszego użycia utwórz kopię mapy odległości i odwróć ją (prawy przycisk myszy | Modify And Transform | Invert Values | Apply). Nazwij tę odwróconą mapę Landscape.
  5. Utwórz punkty zalążkowe (seed points).
    1. Ukryj ROI i wyświetl Distance Map. W zakładce Segmentation kliknij Define Range i zmniejszaj zakres, aż zostaną podświetlone tylko kilka pikseli w centrum każdego punktu i żaden z nich nie będzie połączony z innym punktem. Na dole sekcji Range kliknij Add to New. Nazwij ten nowy ROI Seedpoints.
  6. Wykonaj transformację watershed.
    1. Kliknij prawym przyciskiem myszy Seedpoints ROI | Connected Components | New Multi-ROI (26 connected). Kliknij prawym przyciskiem myszy nowo wygenerowany Multi-ROI | Watershed Transform. Wybierz mapę odległości o nazwie Landscape i kliknij OK; wybierz ROI o nazwie Watershed Mask i kliknij OK , aby obliczyć transformację watershed z każdego punktu zalążkowego i podzielić poszczególne cząstki na osobne klasy w multi-ROI. Wygeneruj współrzędne zgodnie z krokiem 8.2.

Schemat procesu segmentacji tomogramu z pięciowarstwową siecią treningową UNet i wynikami renderowania 3D.
Rysunek 1: Schemat postępowania. 1) Przetwarzanie wstępne tomogramu treningowego poprzez kalibrację skali intensywności i filtrowanie zbioru danych. 2) Tworzenie danych treningowych poprzez ręczną segmentację niewielkiej części tomogramu z zastosowaniem wszystkich odpowiednich etykiet, które użytkownik chce zidentyfikować. 3) Wykorzystując przefiltrowany tomogram jako dane wejściowe, a segmentację ręczną jako wynik treningowy, w kreatorze segmentacji trenowana jest pięciowarstwowa, wielowarstwowa sieć U-Net. 4) Wytrenowaną sieć można zastosować do pełnego tomogramu w celu jego adnotacji, a następnie wygenerować renderowanie 3D dla każdej segmentowanej klasy. Prosimy kliknąć tutaj, aby wyświetlić powiększoną wersję tego rysunku.

Wyniki

Zgodnie z protokołem, sieć U-Net obejmująca pięć przekrojów została wytrenowana na pojedynczym tomogramie (Rycina 2A) w celu zidentyfikowania pięciu klas: błony, mikrotubul, aktyny, markerów fiducjalnych oraz tła. Sieć była trenowana iteracyjnie łącznie trzy razy, a następnie zastosowano ją do tomogramu w celu jego pełnej segmentacji i adnotacji (Rycina 2B,C). Minimalne czyszczenie wykonano zgodnie z krokami 7.1 i 7.2. Kolejne trzy interesujące tomogramy (Rycina 2D,G,J) zostały wczytane do oprogramowania w celu wstępnego przetwarzania. Przed importem obrazów jeden z tomogramów (Rycina 2J) wymagał korekty rozmiaru piksela z 17.22 Å/px do 13.3 Å/px, ponieważ został on zebrany na innym mikroskopie przy nieco innym powiększeniu. Do zmiany rozmiaru wykorzystano program IMOD squeezevol za pomocą następującego polecenia:

'squeezevol -f 0.772 plik_wejsciowy.mrc plik_wyjsciowy.mrc'

W tym poleceniu parametr -f odnosi się do współczynnika zmiany rozmiaru piksela (w tym przypadku: 13,3/17,22). Po imporcie wszystkie trzy cele wnioskowania zostały poddane wstępnemu przetwarzaniu zgodnie z krokami 3.2 i 3.3, a następnie zastosowano sieć U-Net z pięcioma warstwami (five-slice U-Net). Ponownie wykonano minimalne czyszczenie danych. Końcowe segmentacje przedstawiono na Rysunku 2.

Segmentacje mikrotubul z każdego tomogramu wyeksportowano jako binarne (krok 7.4) pliki TIF, przekonwertowano na format MRC (program IMOD tif2mrc), a następnie wykorzystano do korelacji cylindrów i śledzenia filamentów. Binarne segmentacje filamentów pozwalają na znacznie bardziej stabilne śledzenie niż śledzenie bezpośrednio na tomogramach. Mapy współrzędnych powstałe w wyniku śledzenia filamentów (Rysunek 3) zostaną wykorzystane do dalszych analiz, takich jak pomiary najbliższego sąsiada (upakowanie filamentów) oraz średniowanie sub-tomogramów helikalnych wzdłuż pojedynczych filamentów w celu określenia orientacji mikrotubul.

Łatwo jest zidentyfikować sieci, które nie zostały pomyślnie lub w sposób wystarczający wytrenowane. Sieć, która nie zadziałała, nie będzie w stanie wysegmentować żadnych struktur, natomiast sieć niedostatecznie wytrenowana zazwyczaj poprawnie wysegmentuje niektóre struktury, wykazując jednocześnie znaczną liczbę wyników fałszywie dodatnich i fałszywie ujemnych. Takie sieci można korygować i trenować iteracyjnie w celu poprawy ich wydajności. Kreator segmentacji automatycznie oblicza współczynnik podobieństwa Dice'a (oznaczany jako score w SegWiz) po zakończeniu trenowania modelu. Statystyka ta dostarcza szacunkową wartość podobieństwa między danymi treningowymi a segmentacją U-Net. Program Dragonfly 2022.1 posiada również wbudowane narzędzie do oceny wydajności modelu, które jest dostępne w zakładce Artificial Intelligence na górze interfejsu (instrukcje użytkowania znajdują się w dokumentacji).

Struktura włókien neuronów szczura; wizualizacja; obraz mikroskopowy; organizacja strukturalna neuronów DIV 5.
Rysunek 2: Inferencja. (A-C) Oryginalny tomogram treningowy neuronu hipokampa szczura DIV 5, zebrany w 2019 roku na Titan Krios. Jest to rekonstrukcja metodą wstecznej projekcji z korekcją CTF w programie IMOD. (A) Żółta ramka reprezentuje obszar, w którym wykonano ręczną segmentację dla danych wejściowych do treningu. (B) Segmentacja 2D z modelu U-Net po zakończeniu treningu. (C) Rendering 3D segmentowanych obszarów pokazujący błonę (niebieski), mikrotubule (zielony) i aktynę (czerwony). (D-F) Neuron hipokampa szczura DIV 5 z tej samej sesji co tomogram treningowy. (E) Segmentacja 2D z modelu U-Net bez dodatkowego treningu i po szybkim oczyszczaniu. Błona (niebieski), mikrotubule (zielony), aktyna (czerwony), znaczniki fiducjalne (różowy). (F) Rendering 3D segmentowanych obszarów. (G-I) Neuron hipokampa szczura DIV 5 z sesji z 2019 roku. (H) Segmentacja 2D z modelu U-Net po szybkim oczyszczaniu oraz (I) rendering 3D. (J-L) Neuron hipokampa szczura DIV 5, zebrany w 2021 roku na innym Titan Krios przy innym powiększeniu. Rozmiar piksela został zmieniony za pomocą programu IMOD squeezevol , aby dopasować go do tomogramu treningowego. (K) Segmentacja 2D z modelu U-Net po szybkim oczyszczaniu, wykazująca stabilną inferencję w różnych zbiorach danych przy odpowiednim wstępnym przetwarzaniu oraz (L) rendering 3D segmentacji. Paski skali = 100 nm. Skróty: DIV = dni in vitro; CTF = funkcja przenoszenia kontrastu. Kliknij tutaj, aby zobaczyć większą wersję tego rysunku.

Proces tomogramu, segmentacja U-Net, binarna maska aktyny; schemat analizy mikroskopowej pokazujący śledzenie filamentów.
Rycina 3: Udoskonalenie śledzenia filamentów. (A) Tomogram neuronu hipokampa szczura w 4. dniu hodowli (DIV 4), wykonany na Titan Krios. (B) Mapa korelacji wygenerowana z korelacji cylindrycznej w obrębie filamentów aktynowych. (C) Śledzenie filamentów aktyny z wykorzystaniem intensywności filamentów aktynowych na mapie korelacji do zdefiniowania parametrów. Śledzenie obejmuje błonę i mikrotubule, a także szum, podczas próby śledzenia wyłącznie aktyny. (D) Segmentacja tomogramu za pomocą sieci U-Net. Błona zaznaczona na niebiesko, mikrotubule na czerwono, rybosomy na pomarańczowo, triC na fioletowo, a aktyna na zielono. (E) Segmentacja aktyny wyodrębniona jako binarna maska do śledzenia filamentów. (F) Mapa korelacji wygenerowana z korelacji cylindrycznej przy użyciu tych samych parametrów co w (B). (G) Znacznie ulepszone śledzenie wyłącznie filamentów aktynowych z tomogramu. Skrót: DIV = dni in vitro. Kliknij tutaj, aby wyświetlić powiększoną wersję tej ryciny.

Plik uzupełniający 1: Tomogram wykorzystany w niniejszym protokole oraz wieloobszarowy region zainteresowania (multi-ROI) wygenerowany jako dane treningowe zostały dołączone jako zestaw danych (Training.ORSObject). Patrz: https://datadryad.org/stash/dataset/doi:10.5061/dryad.rxwdbrvct.

Dyskusja

Protokół ten określa procedurę korzystania z oprogramowania Dragonfly 2022.1 do trenowania wieloklasowej sieci U-Net na podstawie pojedynczego tomogramu oraz sposobu wnioskowania o tej sieci z innymi tomogramami, które nie muszą pochodzić z tego samego zestawu danych. Szkolenie jest stosunkowo szybkie (może trwać nawet 3-5 minut na epokę lub nawet kilka godzin, w zależności od trenowanej sieci i używanego sprzętu), a ponowne trenowanie sieci w celu poprawy jej uczenia się jest intuicyjne. Tak długo, jak etapy przetwarzania wstępnego są przeprowadzane dla każdego tomogramu, wnioskowanie jest zazwyczaj solidne.

Spójne przetwarzanie wstępne jest najbardziej krytycznym krokiem wnioskowania uczenia głębokiego. W oprogramowaniu znajduje się wiele filtrów obrazowania, a użytkownik może eksperymentować, aby określić, które filtry najlepiej sprawdzają się w przypadku określonych zestawów danych; Należy zauważyć, że jakiekolwiek filtrowanie jest używane w tomogramie treningowym, musi być zastosowane w ten sam sposób do tomogramów wnioskowania. Należy również zadbać o to, aby sieć otrzymywała dokładne i wystarczające informacje szkoleniowe. Bardzo ważne jest, aby wszystkie funkcje podzielone na segmenty w ramach wycinków treningowych były podzielone na segmenty tak starannie i precyzyjnie, jak to możliwe.

Segmentacja obrazu jest ułatwiona przez zaawansowany interfejs użytkownika klasy komercyjnej. Zapewnia wszystkie niezbędne narzędzia do segmentacji rąk i pozwala na proste ponowne przypisanie wokseli z jednej klasy do drugiej przed treningiem i ponownym trenowaniem. Użytkownik może ręcznie segmentować woksele w całym kontekście tomogramu, a także ma do dyspozycji wiele widoków i możliwość swobodnego obracania głośności. Dodatkowo oprogramowanie zapewnia możliwość korzystania z sieci wieloklasowych, które zwykle osiągają lepszewyniki 16 i są szybsze niż segmentacja z wieloma sieciami jednoklasowymi.

Istnieją oczywiście ograniczenia w możliwościach sieci neuronowej. Dane Cryo-ET są z natury bardzo zaszumione i ograniczone w próbkowaniu kątowym, co prowadzi do zniekształceń specyficznych dla orientacji w identycznych obiektach21. Szkolenie opiera się na ekspertze, który dokładnie dzieli struktury na segmenty, a udana sieć jest tylko tak dobra (lub tak zła), jak dane treningowe, które są jej dostarczane. Filtrowanie obrazu w celu wzmocnienia sygnału jest pomocne dla trenera, ale nadal istnieje wiele przypadków, w których dokładna identyfikacja wszystkich pikseli danej struktury jest trudna. Dlatego ważne jest, aby przy tworzeniu segmentacji szkoleń zachować dużą ostrożność, aby sieć miała jak najlepsze informacje do przyswojenia podczas szkolenia.

Ten przepływ pracy można łatwo modyfikować zgodnie z preferencjami każdego użytkownika. Chociaż ważne jest, aby wszystkie tomogramy były wstępnie przetworzone w dokładnie ten sam sposób, nie jest konieczne stosowanie dokładnie tych filtrów, które są używane w protokole. Oprogramowanie posiada wiele opcji filtrowania obrazów i zaleca się ich optymalizację pod kątem konkretnych danych użytkownika przed rozpoczęciem dużego projektu segmentacji obejmującego wiele tomogramów. Dostępnych jest również wiele architektur sieciowych: stwierdzono, że wielowarstwowa sieć U-Net działa najlepiej w przypadku danych z tego laboratorium, ale inny użytkownik może uznać, że inna architektura (taka jak 3D U-Net lub Sensor 3D) działa lepiej. Kreator segmentacji zapewnia wygodny interfejs do porównywania wydajności wielu sieci przy użyciu tych samych danych treningowych.

Narzędzia takie jak te przedstawione tutaj sprawią, że ręczna segmentacja pełnych tomogramów stanie się zadaniem należącym do przeszłości. Dzięki dobrze wyszkolonym sieciom neuronowym, które można solidnie wywnioskować, całkowicie możliwe jest stworzenie przepływu pracy, w którym dane tomograficzne są rekonstruowane, przetwarzane i w pełni segmentowane tak szybko, jak mikroskop jest w stanie je zebrać.

Oświadczenia

Licencja otwartego dostępu do tego protokołu została opłacona przez Object Research Systems.

Podziękowania

To badanie było wspierane przez Penn State College of Medicine oraz Wydział Biochemii i Biologii Molekularnej, a także grant Tobacco Settlement Fund (TSF) 4100079742-EXT. Usługi i instrumenty CryoEM i CryoET Core (RRID:SCR_021178) wykorzystane w tym projekcie zostały częściowo sfinansowane przez Pennsylvania State University College of Medicine za pośrednictwem Biura Prodziekana ds. Badań i Doktorantów oraz Departamentu Zdrowia Pensylwanii przy użyciu funduszy na rzecz rozliczeń tytoniowych (CURE). Wyłączną odpowiedzialność za treść ponoszą autorzy i niekoniecznie reprezentują one oficjalne poglądy Uniwersytetu lub Kolegium Medycznego. Departament Zdrowia Pensylwanii wyraźnie zrzeka się odpowiedzialności za jakiekolwiek analizy, interpretacje lub wnioski.

Materiały

Lista materiałów użytych w tym artykule
NazwaFirmaNumer katalogowyKomentarze
badańDragonfly 2022.1https://www.theobjects.com/dragonfly/index.html
E18 Szczur Zdysocjowanatkanka transnetyxhipokampa KTSDEDHPhttps://tissue.transnetyx.com/faqs
IMODUniversity of Coloradohttps://bio3d.colorado.edu/imod/
Intel® Xeon® Złoty procesor 6124 3,2 GHzIntel
https://www.intel.com/content/www/us/en/products/sku/120493/intel-xeon-gold-6134-processor-24-75m-cache-3-20-ghz/specifications.html NVIDIA Quadro P4000NVIDIAhttps://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/productspage/quadro/quadro-desktop/quadro-pascal-p4000-data-sheet-a4-nvidia-704358-r2-web.pdf
Windows 10 Minimalne
https://theobjects.com/dragonfly/system-requirements.html
Systemy obiektowych wymagania dotyczące stacji roboczej Microsoft https://www.microsoft.com/en-us/evalcenter/evaluate-windows-10-enterprise Enterprise 2016

Bibliografia

  1. Bai, X. -C., Mcmullan, G., Scheres, S. H. W. How cryo-EM is revolutionizing structural biology. Trends in Biochemical Sciences. 40 (1), 49-57 (2015).
  2. de Oliveira, T. M., van Beek, L., Shilliday, F., Debreczeni, J., Phillips, C. Cryo-EM: The resolution revolution and drug discovery. SLAS Discovery. 26 (1), 17-31 (2021).
  3. Danev, R., Yanagisawa, H., Kikkawa, M. Cryo-EM performance testing of hardware and data acquisition strategies. Microscopy. 70 (6), 487-497 (2021).
  4. Mastronarde, D. N. Automated electron microscope tomography using robust prediction of specimen movements. Journal of Structural Biology. 152 (1), 36-51 (2005).
  5. Tomography 5 and Tomo Live Software User-friendly batch acquisition for and on-the-fly reconstruction for cryo-electron tomography Datasheet. , Available from: https://assets.thermofisher.com/TFS-Assets/MSD/Datasheets/tomography-5-software-ds0362.pdf (2022).
  6. Danev, R., Baumeister, W. Expanding the boundaries of cryo-EM with phase plates. Current Opinion in Structural Biology. 46, 87-94 (2017).
  7. Hylton, R. K., Swulius, M. T. Challenges and triumphs in cryo-electron tomography. iScience. 24 (9), (2021).
  8. Turk, M., Baumeister, W. The promise and the challenges of cryo-electron tomography. FEBS Letters. 594 (20), 3243-3261 (2020).
  9. Oikonomou, C. M., Jensen, G. J. Cellular electron cryotomography: Toward structural biology in situ. Annual Review of Biochemistry. 86, 873-896 (2017).
  10. Wagner, J., Schaffer, M., Fernández-Busnadiego, R. Cryo-electron tomography-the cell biology that came in from the cold. FEBS Letters. 591 (17), 2520-2533 (2017).
  11. Lam, V., Villa, E. Practical approaches for Cryo-FIB milling and applications for cellular cryo-electron tomography. Methods in Molecular Biology. 2215, 49-82 (2021).
  12. Chreifi, G., Chen, S., Metskas, L. A., Kaplan, M., Jensen, G. J. Rapid tilt-series acquisition for electron cryotomography. Journal of Structural Biology. 205 (2), 163-169 (2019).
  13. Eisenstein, F., Danev, R., Pilhofer, M. Improved applicability and robustness of fast cryo-electron tomography data acquisition. Journal of Structural Biology. 208 (2), 107-114 (2019).
  14. Esteva, A., et al. Deep learning-enabled medical computer vision. npj Digital Medicine. 4 (1), (2021).
  15. Liu, Y. -T., et al. Isotropic reconstruction of electron tomograms with deep learning. bioRxiv. , (2021).
  16. Moebel, E., et al. Deep learning improves macromolecule identification in 3D cellular cryo-electron tomograms. Nature Methods. 18 (11), 1386-1394 (2021).
  17. Chen, M., et al. Convolutional neural networks for automated annotation of cellular cryo-electron tomograms. Nature Methods. 14 (10), 983-985 (2017).
  18. Ronneberger, O., Fischer, P., Brox, T. U-net: Convolutional networks for biomedical image segmentation. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). 9351, 234-241 (2015).
  19. Dragonfly 2021.3 (Computer Software). , Available from: http://www.theobjects.com/dragonfly (2021).
  20. Kremer, J. R., Mastronarde, D. N., McIntosh, J. R. Computer visualization of three-dimensional image data using IMOD. Journal of Structural Biology. 116 (1), 71-76 (1996).
  21. Iancu, C. V., et al. A "flip-flop" rotation stage for routine dual-axis electron cryotomography. Journal of Structural Biology. 151 (3), 288-297 (2005).

Przedruki i uprawnienia

Tagi

Kriotomografia elektronowasegmentacja oparta na głębokim uczeniusieć neuronowa U-Netsegmentacja wieloklasowawstępne przetwarzanie obrazuanaliza tomogramurenderowanie 3Dśledzenie filamentówuśrednianie subtomogramówtrenowanie sieci neuronowej