Subskrypcja JoVE jest wymagana do oglądania tego materiału. Zaloguj się lub rozpocznij bezpłatny okres próbny.

Artykuł metodologiczny

Wykorzystanie bibliotek przetwarzania obrazów w celu usprawnienia kwantyfikacji jąder

907 wyświetleń

DOI:

10.3791/67945

6 czerwca 2025

W tym artykule

Podsumowanie

Ten artykuł opisuje krok po kroku metody automatyzacji kwantyfikacji jąder na podstawie obrazów za pomocą programu wykonywalnego o otwartym kodzie źródłowym, sprawdzanego w różnych gęstościach komórek. Ten program stanowi alternatywę, która usuwa bariery związane z kosztami, dostępnością dla użytkowników o ograniczonych umiejętnościach technologicznych oraz walidacją specyficzną dla aplikacji, która może ograniczać użyteczność istniejących technologii.

Streszczenie

Testy żywych komórek i analizy komórek oparte na obrazie wymagają normalizacji danych dla dokładnej interpretacji. Powszechnie stosowaną metodą jest barwienie i ilościowe oznaczanie jąder, a następnie normalizacja danych do liczby jąder. Ta liczba jąder jest często wyrażana jako liczba komórek w komórkach jednojądrowych. Chociaż ręczna kwantyfikacja może być pracochłonna i czasochłonna, dostępne zautomatyzowane metody mogą nie być preferowane przez wszystkich użytkowników, mogą nie mieć walidacji dla tego konkretnego zastosowania lub mogą być zbyt kosztowne. W tym miejscu przedstawiamy instrukcje krok po kroku dotyczące przechwytywania wymiernych obrazów jąder barwionych fluorescencyjnymi barwnikami DNA, a następnie ilościowego określania jąder za pomocą zautomatyzowanego oprogramowania do liczenia obiektów opracowanego przy użyciu bibliotek widzenia komputerowego Python. Weryfikujemy również ten program w szerokim zakresie gęstości komórek. Chociaż dokładny czas wykonania programu różni się w zależności od liczby obrazów i sprzętu komputerowego, ten program konsoliduje godziny pracy, licząc jądra w sekundach, aby program mógł działać. Chociaż protokół ten został opracowany przy użyciu obrazów utrwalonych, barwionych komórek, obrazy barwionych jąder w żywych komórkach i zastosowania immunofluorescencji można również określić ilościowo za pomocą tego programu. Ostatecznie program ten zapewnia opcję, która nie wymaga wysokiego stopnia umiejętności technologicznych i jest zweryfikowaną alternatywą typu open source, która pomaga biologom komórkowym i molekularnym w usprawnianiu ich przepływów pracy, automatyzując żmudne i czasochłonne zadanie kwantyfikacji jąder.

Wprowadzenie

Eksperymenty funkcjonalne i oparte na obrazach są kluczowe dla zrozumienia wpływu eksperymentalnych terapii na biochemię i fizjologię całych komórek. Prawidłowa interpretacja danych z eksperymentów biologii komórki zależy od dokładności i odtwarzalności protokołu eksperymentalnego, w tym normalizacji danych. Na przykład analizy zużycia tlenu i wskaźników zakwaszenia zewnątrzkomórkowego w żywych komórkach na początku badania i po leczeniu określonymi lekami pozwalają na ocenę różnych aspektów metabolizmu energetycznego1,2. Pomiar aktywności enzymów, takich jak dehydrogenaza mleczanowa w supernatancie kultur komórkowych, może pomóc w ilościowym określeniu integralności błony komórkowej3. Barwienie hodowanych komórek anektyną V i jodkiem propidyny przed utrwaleniem pozwala na ocenę komórek apoptotycznych i martwiczych4. Jednak różnice w gęstości komórek w studzienkach wpływają na wyniki każdego z tych testów. Poleganie wyłącznie na gęstości wysiewu może dostarczyć mylących wyników z powodu błędów w liczeniu komórek do wysiewu, różnic w gęstości komórek w pożywce podczas posiewu lub różnych temp wzrostu komórek między próbkami lub traktowaniem w trakcie eksperymentów. Dlatego wymagana jest normalizacja wyników eksperymentalnych.

Obecne metody normalizacji danych funkcjonalnych i opartych na obrazach komórek obejmują stężenie białka5 lub liczbę jąder lub komórek6. Aby znormalizować dane dotyczące stężenia białka, komórki muszą być wyekstrahowane w równych objętościach buforu do lizy z inhibitorem proteazy po przeprowadzeniu testu, a następnie należy przeprowadzić dodatkowy test (np. test kwasu bicinchoninowego, test Bradforda itp.) w celu ilościowego określenia białka. Dokładność tej metody opiera się na całkowitej ekstrakcji komórek; Pozostawienie jakiegokolwiek białka przyczynia się do błędów w kwantyfikacji. Liczenie jąder lub komórek stanowi alternatywę, w której żadne komórki nie muszą być usuwane z powierzchni, na której są hodowane. Zamiast tego żywe lub utrwalone komórki są barwione lub barwione przeciw za pomocą barwienia kolorymetrycznego lub fluorescencyjnego, a liczenie można przeprowadzić na podstawie obrazów całych komórek lub tylko jąder. Kwantyfikacja jąder jest preferowana w stosunku do całych komórek w zastosowaniach mikroskopii fluorescencyjnej i do normalizacji danych w połączonych komórkach (np. Rurkach mięśniowych) lub tkankach. W celu ilościowego oznaczania jąder przy użyciu podejścia fluorescencyjnego fluorescencyjne barwniki DNA (np. dichlorek 4′,6-diamidino-2-fenyloindolu (DAPI), Hoechst 33342, Hoechst 33358, DRAQ5 itp.) nakłada się na żywe lub utrwalone komórki i obrazuje za pomocą mikroskopii fluorescencyjnej. DAPI, Hoechst i DRAQ5 preferencyjnie wiążą się z bogatymi w adeninę i tyminą regionami DNA7,8,9, zapewniając środki do wykrywania jąder. Optymalizacja stężenia barwnika zapobiega wiązaniu poza celem (tj. z mitochondrialnym DNA, powodując punktową fluorescencję cytozolową)10. Proces optymalizacji można usprawnić poprzez zastosowanie dostępnych na rynku nośników montażowych zawierających DAPI dla komórek stałych (np. VECTASHIELD Antifade Mounting Medium z DAPI) oraz opublikowanych stężeń barwników dla żywych komórek (np. Hoechst)6,11,12. Po wybarwieniu jądra w żywych lub nieruchomych komórkach są wizualizowane za pomocą odpowiedniego filtra wzbudzenia (np. ultrafioletowego [DAPI i Hoechst] lub dalekiej czerwonej [DRAQ5]). Maksima wzbudzenia dla DAPI, Hoechst i DRAQ5 znajdują się na obu końcach spektrum dla mikroskopii fluorescencyjnej. Ta cecha, plus specyficzność DNA tych barwników i ich stosowanie w optymalnych stężeniach, minimalizuje fluorescencję poza celem. Uzyskane obrazy pokazują jasne jądra na czarnym tle, a jądra te są określane ilościowo jako miara liczby komórek dla komórek jednojądrowych. Podczas gdy istnieją inne dokładne metody kwantyfikacji jąder oparte na barwieniu, wykorzystujące barwienia histologiczne i mikroskopię jasnego pola13, automatyzacja jest trudniejsza, choć możliwa, przy użyciu tych podejść.

Chociaż pozostaje to złotym standardem, ręczna kwantyfikacja jąder jest pracochłonna, czasochłonna i podatna na potencjalne błędy ludzkie przy długotrwałym liczeniu. Chociaż istnieją programy do automatycznego zliczania komórek, nie są one preferowane przez wszystkich użytkowników, mogą być zbyt kosztowne, a walidacja dla określonych aplikacji może być minimalna. W ostatnich latach Python stał się cennym i dostępnym zasobem dla biologów. Biblioteki przetwarzania obrazów w języku Python są szczególnie przydatne do analizy obrazów14. Tutaj podajemy instrukcje krok po kroku dotyczące korzystania z naszego programu wykonywalnego opracowanego przy użyciu kodu Python do ilościowego oznaczania jąder barwionych barwnikami fluorescencyjnymi i obrazowanych za pomocą mikroskopii fluorescencyjnej. Umiejętność kodowania nie jest konieczna do korzystania z opisanego tutaj programu. Ten przepływ pracy jest specyficzny dla komórek lub tkanek z zastosowanymi fluorescencyjnymi barwnikami DNA. Nie jest przeznaczony do użytku z obrazami w jasnym polu. W rozdziale 1 opisano, w jaki sposób rejestrować i zapisywać obrazy zebrane za pomocą mikroskopii fluorescencyjnej w sposób zgodny z tym przepływem pracy. Sekcja 2 zawiera instrukcje dotyczące uruchamiania programu kwantyfikacji jąder jako pliku wykonywalnego i pobierania danych wyjściowych. Program wykonywalny może być uruchomiony bezpośrednio z dostarczonego pliku .exe i nie wymaga żadnych modyfikacji w celu ilościowego określenia jąder na obrazach o wysokiej jakości. Ten plik wykonywalny wymaga komputera z systemem Windows. Sekcja 3 zawiera instrukcje dotyczące uruchamiania programu jako skryptu Pythona, a nie pliku wykonywalnego (wymagane w systemach opartych na Macu lub Linux, opcjonalne dla systemów opartych na systemie Windows) i pozwala na dostrojenie kodu w razie potrzeby. W sekcji 4 opisano, jak wykorzystać wyniki do normalizacji. Po tych protokołach pojawiają się reprezentatywne wyniki, w tym dane walidacyjne z naszego laboratorium.

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Protokół

UWAGA: Pliki uzupełniające można znaleźć pod następującym linkiem https://osf.io/a2s4d/?view_only=2d1042eb8f7c4c4a84579fe4e84fb03c

1. Przechwytywanie i zapisywanie obrazów przy użyciu mikroskopii fluorescencyjnej

  1. Przygotować próbki komórek lub tkanek do obrazowania, w tym przeprowadzić barwienie pożądanym barwnikiem DNA. Aby uzyskać obrazy wykorzystane w tej procedurze, mioblasty C2C12 (CRL-172, American Type Culture Collection) hodowano w płytkach 6-dołkowych przez 48-72 h w standardowych warunkach hodowli (5% CO2, 37 °C, wilgotna komora), z dodatkiem lub bez dodatku 50 mM EtOH6, a następnie utrwalono w lodowatym metanolu zgodnie z wcześniejszym opisem13. Utrwalone komórki zamontowano przy użyciu medium montażowego zawierającego DAPI15 i wysuszono w ciemności przed obrazowaniem.
  2. Włączyć wszystkie komponenty mikroskopu fluorescencyjnego oraz komputer zgodnie z ustalonymi standardowymi procedurami operacyjnymi. Uruchomić oprogramowanie powiązane z mikroskopem.
  3. Ustawić mikroskop tak, aby wizualizować próbki przez okular. Sprawdzić obiektyw. W razie potrzeby obrócić rewolwer do pożądanego obiektywu. Upewnić się, że w programie komputerowym wybrano odpowiedni obiektyw w celu dokładnego wskazania obszaru obrazowania. W tej procedurze obrazy zarejestrowano przy użyciu obiektywu 10x.
  4. Przy wyłączonym świetle umieścić próbkę (preparat, płytkę lub naczynie) na stoliku. Włączyć obrazowanie na żywo z odpowiednim filtrem i ustawić czas ekspozycji na określoną wartość lub wybrać ekspozycję automatyczną. Tutaj zastosowano filtr DAPI oraz czas ekspozycji 61-62 ms. Informacje dotyczące ustawiania czasu ekspozycji, zwłaszcza dla obrazów o wysokiej gęstości komórek, znajdują się w tabeli rozwiązywania problemów.
  5. Patrząc przez okular, powoli regulować ostrość za pomocą pokrętła grubego ustawienia, aż widoczne staną się zabarwione jądra komórkowe, a następnie użyć pokrętła precyzyjnego, aby powoli dostroić ostrość, aż jądra staną się wyraźne i ostre.
    UWAGA: Przykłady odpowiednich obrazów przedstawiono na Rysunku 1.
    1. Jeśli pojawi się nadmierne barwienie tła lub jeśli jądra wydają się bardzo słabo widoczne, ręcznie skorygować czas ekspozycji. Na pojedynczym obrazie mogą występować widoczne różnice w intensywności sygnału dla niektórych jąder; jednak okrągły kształt powinien być widoczny dla wszystkich jąder przy minimalnych zakłóceniach sygnału.
      UWAGA: Program wykorzystywany w dalszych analizach jest odporny na różnice w intensywności. Surowe obrazy wykorzystane do opracowania i walidacji programu do kwantyfikacji jąder obejmują zdjęcia o różnych intensywnościach sygnału i są dostępne w repozytorium Open Science Framework (patrz link wspomniany powyżej).

figure-protocol-1
Rycina 1: Przykładowe obrazy jąder barwionych DAPI. Na obrazach przedstawiono jądra przy (A) niskiej, (B) średniej lub (C) wysokiej gęstości komórek przy minimalnym tle. Należy zwrócić uwagę na zróżnicowaną intensywność sygnału jąder na obrazie C; nie wpłynęło to na kwantyfikację. Pasek skali (C) wskazuje 10 µm; paski skali powinny zostać usunięte z obrazów wykorzystywanych do kwantyfikacji jąder. Kliknij tutaj, aby wyświetlić powiększoną wersję tej ryciny.

  1. Gdy jądra komórkowe będą widoczne w okularze, przełącz tryb detekcji na kamerę. Dostrój ostrość za pomocą pokrętła mikrometrycznego.
  2. W razie potrzeby dostosuj czas ekspozycji. Zanotuj końcowy czas ekspozycji, aby zastosować go przy kolejnych próbkach i obrazach.
    UWAGA: Choć idealnie byłoby stosować ten sam czas ekspozycji dla wszystkich obrazów, różnice w czasie ekspozycji są w tej aplikacji dopuszczalne, ponieważ intensywność fluorescencji nie jest ilościowo określana ani porównywana między próbkami.
  3. Przechwyć obraz, korzystając z odpowiedniego przycisku przechwytywania obrazu w oprogramowaniu. Jeśli próbki zostały poddane wielokrotnemu barwieniu, przełącz filtr (np. na FITC, TRITC lub Cy5) i wykonaj obraz tego samego obszaru w celu późniejszego nałożenia obrazów.
  4. Zamknij migawkę, aby zminimalizować ekspozycję próbki na światło. Bez nakładania paska skali zapisz obraz w uniwersalnym formacie plików graficznych (.tif, .png lub .jpg) w dedykowanym folderze. Upewnij się, że nazwa każdego pliku obrazu jest odpowiednio opisowa lub że stosowane kody nazw plików posiadają odpowiednią dokumentację powiązaną.
    UWAGA: Folder ten stanie się katalogiem obrazów dla programu do kwantyfikacji. W przypadku obrazowania wielokolorowego skopiuj tylko obrazy jąder do osobnego, dedykowanego folderu. Można to zrobić również po zakończeniu sesji obrazowania. Obrazy eksportowane przy użyciu domyślnych ustawień w większości oprogramowań do obrazowania zazwyczaj mają wystarczającą rozdzielczość do użytku w tym programie, pod warunkiem, że przechwycono obrazy wysokiej jakości. Należy jednak wizualnie sprawdzić obrazy po eksporcie, aby upewnić się, że morfologia jąder jest wyraźna. Jeśli obrazy są zapisywane w formacie .jpg, należy zadbać o to, aby nie były one nadmiernie skompresowane i aby zachowana została ich jakość.
  5. Otwórz migawkę, powróć do obrazowania na żywo i przesuń się w obrębie próbki do innego miejsca. Powtarzaj kroki 1.8-1.9 w razie potrzeby. W przypadku obrazów komórek wysianych na płytkach 6-dołkowych przy powiększeniu 10x, przechwyć 10-15 obrazów na dołek (w zależności od jednorodności gęstości komórek w obszarze próbki).
  6. Po wykonaniu wszystkich obrazów dla pojedynczej próbki wybierz jedną z poniższych opcji:
    1. Przejdź do następnej próbki i powtórz kroki 1.4-1.10.
    2. Wstrzymaj protokół i wróć w innym czasie. Próbki powinny pozostać chronione przed światłem. Ta opcja nie jest zalecana przy pracy z żywymi komórkami.
  7. Po zakończeniu obrazowania upewnij się, że wszystkie próbki są chronione przed światłem przed zapaleniem światła w pomieszczeniu. Jeśli folder z obrazami jest zapisany lokalnie, przenieś pliki na pendrive, do chmury lub na inny dysk sieciowy dostępny dla komputera, na którym będzie uruchomiony program do kwantyfikacji. Zapisz je w dedykowanym folderze.
  8. Wyłącz wszystkie elementy mikroskopu i komputera zgodnie z ustalonymi standardowymi procedurami operacyjnymi.
  9. Obrazowanie jest teraz zakończone. Przeanalizuj pliki za pomocą automatycznego programu do kwantyfikacji, jak opisano w sekcji 2, lub alternatywnie, uruchamiając program jako skrypt Python, jak opisano w sekcji 3.

2. Uruchamianie programu do automatycznej kwantyfikacji jąder jako pliku wykonywalnego

UWAGA: Ta metoda, polegająca na uruchamianiu programu jako pliku wykonywalnego, jest kompatybilna z komputerami PC z systemem Windows i jest zalecaną metodą dla użytkowników systemu Windows. Użytkownicy systemu Mac OS lub innych systemów innych niż Windows powinni uruchamiać program jako skrypt Python (patrz Rozdział 3).

  1. Upewnij się, że na komputerze zainstalowano język Python. W razie potrzeby zainstaluj Pythona ze strony python.org/downloads (preferowane) lub korzystając z Anaconda lub Miniconda. W dacie publikacji program został przetestowany z wersjami Pythona 3.10-3.12.
  2. Otwórz przeglądarkę i przejdź do https://github.com/rbudnar/nuclei_counter/releases. Pobierz najnowszą wersję pliku o nazwie count_nuclei.zip.
  3. W folderze Pobrane kliknij prawym przyciskiem myszy plik Zip i wybierz „Wypakuj wszystkie” do wybranej lokalizacji na komputerze lokalnym (patrz Rysunek 2A). Pozostaw to okno otwarte; ścieżka do tego pliku zostanie użyta w kroku 2.5 (patrz Rysunek 2B).
    UWAGA: Folder Count_nuclei powinien teraz pojawić się jako plik aplikacji. Jest to plik wykonywalny.
  4. Otwórz wiersz poleceń, wpisując CMD lub „Wiersz poleceń” w pasku wyszukiwania. Użyj polecenia cd, aby zmienić katalog na ścieżkę do pliku wykonywalnego (patrz Rysunek 2C), a następnie naciśnij Enter. Przykład linii polecenia: C:\Users\janedoe>cd [spacja po cd, następnie wklej ścieżkę do pliku]
  5. W następnej linii polecenia wpisz poniższą komendę i naciśnij Enter.
    count_nuclei.exe --img_dir "path/to/images" --output_dir "path/to/output" --save_images --output_count_filename "results.csv"
    gdzie path/to/images to ścieżka do folderu zawierającego obrazy do analizy (patrz krok 1.14); path/to/output to ścieżka do folderu, w którym ma zostać zapisany plik .csv (domyślnie jest to bieżący katalog roboczy, jeśli nie zostanie podano ścieżki); a results.csv to nazwa pliku, w którym zostaną zapisane uzyskane wyniki zliczeń (jeśli nie zostanie podana, domyślna nazwa pliku wyjściowego to count_results.csv).
    UWAGA: W linii polecenia wymagane są cudzysłowy. Upewnij się, że po cudzysłowach przed ścieżką do pliku nie ma spacji (patrz Rysunek 2C).
  6. Gdy pojawi się następna linia polecenia, przetwarzanie jest zakończone. Kontury i arkusz z wynikami są teraz dostępne w lokalizacji określonej jako katalog wyjściowy w kroku 2.5 (tj. path/to/output; patrz Rysunek 2C).
  7. Wizualnie sprawdź kontury, aby zweryfikować jakość zliczeń. Wyników można teraz użyć do normalizacji danych, zgodnie z opisem w Sekcji 4.
    UWAGA: Jeśli wydaje się, że kontury pominęły jądra (np. jądra są zbyt słabo widoczne) lub łączą grupy jąder w jeden obiekt (np. prześwietlony obraz, zbyt duże tło, artefakty), użytkownik powinien zapoznać się z tabelą rozwiązywania problemów i może być konieczny powrót do Sekcji 1 w celu optymalizacji akwizycji obrazów przed przejściem do Sekcji 4.

figure-protocol-2
Rysunek 2: Przykłady kluczowych etapów przepływu pracy dla sekcji 2. (A) Wyodrębnianie plików z folderu Downloads, zwracając uwagę na kliknięcie w odpowiedni folder, jak wskazano strzałką, aby umożliwić wyodrębnianie (B) do wybranego miejsca docelowego w kroku 2.3. (C) Przykłady poleceń dla kroków 2.4 i 2.5 oraz kolejna linia poleceń wskazująca na zakończenie w kroku 2.6. Należy zauważyć, że ścieżka pliku w kroku 2.4 (C) odpowiada lokalizacji wyodrębniania w kroku 2.3 (B). Kieruj się tutaj, aby wyświetlić powiększoną wersję tego rysunku.

3. Uruchamianie zautomatyzowanego programu do kwantyfikacji jąder jako skryptu Python

  1. Upewnij się, że na komputerze zainstalowano język Python. W razie potrzeby zainstaluj Pythona ze strony python.org/downloads (zalecane) lub korzystając z Anaconda lub Miniconda. W dacie publikacji program został przetestowany z wersjami Pythona 3.10-3.12.
  2. Otwórz przeglądarkę i przejdź do https://github.com/rbudnar/nuclei_counter. Kliknij w Zielony kod przycisk, a następnie kliknij Pobierz ZIP aby pobrać repozytorium kodu (patrz Rysunek 3A).
  3. Postępuj zgodnie z poniższymi instrukcjami dla systemu operacyjnego Windows. Zob. krok 3.4 dla komputerów z systemem Mac OS.
    1. W folderze Pobrane kliknij prawym przyciskiem myszy na plik i wybrać Wyodrębnij wszystko aby wypakować pliki na lokalny komputer (patrz Rysunek 3B-C).
    2. W lokalizacji wypakowanego pliku otwórz folder o nazwie nuclei_counter-main. Jest to repozytorium kodu.
      UWAGA: Pobieranie jest wymagane tylko przy pierwszym uruchomieniu programu; należy przenieść rozpakowane pliki do dostępnej lokalizacji sieciowej i zapisać tę lokalizację.
    3. Otwórz wiersz polecenia, wpisując CMD lub Wiersz polecenia w pasku wyszukiwania. Jeśli Python został zainstalowany za pomocą Anaconda lub Miniconda, zamiast standardowego wiersza polecenia otwórz Anaconda Prompt. Można to zrobić, wpisując Anaconda Prompt w pasku wyszukiwania.
    4. Użyj polecenia cd, aby zmienić katalog na repozytorium kodu, a następnie naciśnij WprowadźZobacz poniższą linię kodu, która jest wrażliwa na wielkość liter. Upewnij się, że podczas kopiowania ścieżki do pliku otwarty jest folder o nazwie nuclei_counter-main; plik o nazwie pyproject lub pyproject.toml powinien być widoczny (patrz Rysunek 3D). Przykład wiersza polecenia: C:\Users\janedoe>cd [spacja po cd, następnie kopiuj i wklej ścieżkę do pliku]
    5. W następnej linii wiersza poleceń wpisz poniższy tekst, uwzględniając spację i kropkę (patrz Rycina 3D:
      pip install -e .
      UWAGA: Kroki 3.3.5 oraz 3.3.6 należy wykonać tylko raz, podczas pierwszego uruchomienia programu na danym komputerze. Jeśli ta czynność została już wykonana, należy przejść do kroku 3.3.7. Inicjalizacja procesu instalacji może potrwać kilka chwil.
    6. Naciśnij WprowadźWykonanie tej komendy instaluje biblioteki wymagane do uruchomienia tego skryptu oraz instaluje repozytorium w trybie edytowalnym na wypadek konieczności wprowadzenia poprawek w kodzie (patrz Rysunek 3D).
    7. Wpisz poniższą komendę w następnej linii poleceń, aby zmienić katalog na główny katalog z kodem źródłowym (patrz Rycina 3E):
      cd "licznik jąder komórkowych"
    8. W następnej linii polecenia wpisz poniższą treść i naciśnij Wprowadź (patrz Rycina 3E):
      python count_nuclei.py --img_dir "ścieżka/do/obrazów" --katalog_wyjściowy "ścieżka/do/pliku_wyjściowego" --zapisz_obrazy --nazwa_pliku_liczby_wyjściowej "wyniki.csv"
      gdzie path/to/images to ścieżka do folderu zawierającego obrazy do analizy (krok 1.14); path/to/output to ścieżka do folderu, w którym powinien zostać zapisany plik .csv (domyślnie jest to bieżący katalog roboczy, jeśli ścieżka nie zostanie podana); a results.csv to nazwa pliku, w którym zostaną zapisane uzyskane wyniki zliczeń (jeśli nie zostanie podana, domyślna nazwa pliku wyjściowego to count_results.csv).
      UWAGA: W wierszu poleceń wymagane są cudzysłowy. Należy upewnić się, że przed ścieżką do pliku, bezpośrednio po cudzysłowach, nie znajdują się żadne spacje. Skrypt języka Python odczyta pliki znajdujące się podaną ścieżką i uruchomi program do liczenia jąder dla wszystkich obrazów w katalogu (patrz Rycina 3E). Uzyskane wyniki zliczeń zostaną zapisane w pliku .csv z wynikami w określonej lokalizacji.
    9. Gdy pojawi się następna linia poleceń, przetwarzanie zostanie zakończone (patrz Rycina 3E). Kontury oraz arkusz z wynikami są już dostępne w lokalizacji określonej jako katalog wyjściowy w kroku 3.3.8 (tj. path/to/output).

figure-protocol-3
Rycina 3: Przykłady kluczowych elementów przepływu pracy dla sekcji 3 w systemie Windows.Aby uzyskać dostęp do kodu, kliknij zielony przycisk z napisem Code i (A) pobierz plik Zip (wskazano strzałkami). (B) Rozpakuj plik, klikając prawym przyciskiem myszy na plik Zip (zaznaczono na niebiesko) i (C) określając pożądane miejsce docelowe. (D) Po otwarciu wiersza poleceń przedstawiono przykłady komend dla kroków 3.3.4 i 3.3.5. Należy zauważyć, że komenda dla kroku 3.3.5 znajduje się w jednej linii; tekst zaczynający się od „Obtaining file” w następnej linii pojawia się po naciśnięciu klawisza enter (krok 3.3.6; tj. uruchomienie komendy). (E) Przykłady komend dla kroków 3.3.7 i 3.3.8, pasek postępu po wykonaniu kroku 3.3.8 oraz wiersz poleceń wskazujący na zakończenie operacji w kroku 3.3.9. Kliknij tutaj, aby wyświetlić większą wersję tej ryciny.

  1. W przypadku systemu Mac OS należy postępować zgodnie z poniższymi instrukcjami.
    1. W folderze Pobrane kliknij menu Plik i wybierz Otwórz, aby wypakować pliki na komputer lokalny (patrz Rysunek 4A).
    2. W lokalizacji wypakowanych plików otwórz folder o nazwie nuclei_counter-main. Jest to repozytorium kodu.
      UWAGA: Pobieranie jest wymagane tylko przy pierwszym użyciu programu; wystarczy przenieść wypakowane pliki do dostępnej lokalizacji sieciowej i zapisać tę lokalizację.
    3. Otwórz terminal, naciskając command+spacja, co uruchomi Spotlight; następnie wyszukaj frazę „terminal”.
    4. Użyj polecenia cd, aby zmienić katalog na repozytorium kodu, a następnie naciśnij Enter. Patrz poniższa linia kodu, która rozróżnia wielkość liter. Wpisz ścieżkę do pliku w dokumencie tekstowym, a następnie skopiuj ją do terminala. Upewnij się, że ścieżka do pliku zaczyna się od tekstu bezpośrednio poprzedzającego cd (np. /Users/userid na Rysunku 4B). Przykład wiersza polecenia: /Users/janedoe›cd /Users/janedoe/Desktop/nuclei_counter-main
    5. W następnym wierszu polecenia, po identyfikatorze użytkownika, pojawi się znak dolara (patrz Rysunek 4B). Upewnij się, że po znaku dolara znajduje się spacja, a następnie wpisz poniższą komendę, wliczając spację i kropkę na końcu polecenia. Bezpośrednio po pip, bez spacji, wpisz odpowiednią wersję Pythona: pip3 install -e .
      UWAGA: Kroki 3.4.5 oraz 3.4.6  należy wykonać tylko przy pierwszym uruchomieniu programu na danym komputerze. Jeśli zostało to już wykonane, przejdź do kroku 3.4.7. Proces instalacji może wymagać chwili na zainicjowanie.
    6. Naciśnij Enter. Wykonanie tego polecenia instaluje biblioteki niezbędne do uruchomienia skryptu oraz instaluje repozytorium w trybie edytowalnym na wypadek konieczności wprowadzenia poprawek w kodzie.
    7. W następnym wierszu polecenia upewnij się, że po znaku dolara znajduje się spacja, a następnie wpisz poniższą komendę, aby zmienić katalog na główny katalog z kodem źródłowym (patrz Rysunek 4C):
      cd "nuclei_counter"
    8. W następnym wierszu polecenia wpisz poniższą komendę. Jeśli używasz wersji innej niż 3, zastąp liczbę po Python odpowiednim numerem wersji. Następnie naciśnij Enter (patrz Rysunek 4C):
      python3 count_nuclei.py --img_dir "path/to/images" --output_dir " path/to/output" --save_images --output_count_filename "results.csv"
      gdzie path/to/images to ścieżka do folderu zawierającego obrazy do analizy (krok 1.14); path/to/output to ścieżka do folderu, w którym ma zostać zapisany plik .csv (domyślnie jest to bieżący katalog roboczy, jeśli nie podano ścieżki); a results.csv to nazwa pliku, w którym zostaną zapisane wyniki zliczeń (jeśli nie zostanie podana, domyślna nazwa pliku wyjściowego to count_results.csv).
      UWAGA: W wierszu polecenia wymagane są cudzysłowy. Upewnij się, że przed ścieżką do pliku, po cudzysłowie otwierającym, nie ma spacji. Skrypt Pythona odczyta pliki podanej ścieżki i uruchomi program do zliczania jąder dla wszystkich obrazów w katalogu (patrz Rysunek 4C). Wynikowe zliczenia zostaną zapisane w pliku results .csv w określonej lokalizacji.
    9. Gdy pojawi się następny wiersz polecenia, przetwarzanie jest zakończone (patrz Rysunek 4C). Kontury oraz arkusz z wynikami są teraz dostępne w lokalizacji określonej jako katalog wyjściowy w kroku 3.4.8 (tj. path/to/output).
  2. Wizualnie sprawdź kontury, aby zweryfikować jakość zliczeń. Wyniki mogą teraz posłużyć do normalizacji danych, zgodnie z opisem w Sekcji 4.
    UWAGA: Jeśli wydaje się, że kontury pominęły niektóre jądra (np. jądra są zbyt blade) lub grupują jądra w jeden obiekt (np. obraz prześwietlony, zbyt silne tło, artefakty), użytkownik powinien zapoznać się z Tabelą 1 i może być konieczny powrót do Sekcji 1 w celu optymalizacji akwizycji obrazów przed przejściem do Sekcji 4.

figure-protocol-4
Rysunek 4: Przykłady kluczowych etapów przepływu pracy dla sekcji 3 z wykorzystaniem systemu Mac OS. Po pobraniu kodu (patrz Rysunek 3A), (A) rozpakuj go, klikając w plik Zip (zaznaczony na niebiesko) i określając pożądane miejsce docelowe. (B) Po otwarciu terminala: przykłady poleceń dla kroków 3.4.4 (zmiana katalogu na repozytorium kodu) oraz 3.4.5 (instalacja pip). (C) Przykłady poleceń dla kroków 3.4.7 i 3.4.8, pasek postępu po wykonaniu kroku 3.4.8 oraz wiersz poleceń wskazujący na zakończenie w kroku 3.4.9. Kliknij tutaj, aby zobaczyć powiększoną wersję tego rysunku.

4. Wykorzystanie liczebności do normalizacji danych eksperymentalnych

  1. Otwórz plik results.csv łączący każdy obraz z ilościowym oznaczeniem jąder wykonanym za pomocą programu automatycznego.
  2. Wybierz metodę normalizacji: 1) dla każdego obrazu osobno (np. w przypadku wielobarwnej mikroskopii fluorescencyjnej), 2) normalizacja danych jako stosunek średniej liczby jąder na próbkę względem próbki referencyjnej (lub warunku), 3) normalizacja do liczby jąder na próbkę (np. ekstrapolacja całkowitej liczby jąder do powierzchni próbki). Zalecenia dotyczące wyboru metody normalizacji znajdują się w sekcji Discussion.
    1. Jeśli normalizacja ma być przeprowadzona dla każdego obrazu osobno, należy po prostu podzielić dane eksperymentalne dla każdego obrazu przez liczbę jąder na tym obrazie.
    2. Aby znormalizować dane jako stosunek, wykonaj poniższe kroki.
      1. Dla wszystkich próbek, w których pobrano wiele obrazów dla pojedynczego powtórzenia (np. 10-15 obrazów z jednej studzienki płytki 6-dołkowej), oblicz średnią liczbę jąder na obraz. Liczbę jąder przyjmuje się za liczbę komórek, zakładając, że komórki są jednojądrowe, lub za liczbę komórek połączonych w komórki wielojądrowe (np. w przypadku miotub).
      2. Wybierz próbkę referencyjną lub warunek referencyjny (np. średnia liczba jąder we wszystkich próbkach z warunku kontrolnego) i zanotuj tę wartość.
      3. Podziel liczbę jąder dla wszystkich próbek przez tę wartość referencyjną, aby otrzymać wartość normalizacji. Jeśli użyto próbki referencyjnej, wartość normalizacji dla tej próbki przyjmuje się jako 1.
        UWAGA: Jeśli użyto warunku referencyjnego, średnia wartość normalizacji dla tego warunku wyniesie teraz 1. Próbki z mniejszą liczbą jąder niż referencja (tzn. o mniejszej gęstości) będą miały wartości normalizacji mniejsze niż 1, a próbki z większą liczbą jąder niż referencja (tzn. o większej gęstości) będą miały wartości normalizacji większe niż 1.
      4. Podziel dane eksperymentalne dla każdej studzienki przez odpowiadającą im obliczoną wartość normalizacji.
    3. Aby znormalizować dane do liczby jąder na próbkę, wykonaj poniższe kroki.
      1. Dla wszystkich próbek, w których pobrano wiele obrazów dla pojedynczego powtórzenia (np. 10-15 obrazów z jednej studzienki płytki 6-dołkowej), oblicz średnią liczbę jąder na obraz. Liczbę jąder przyjmuje się za liczbę komórek, zakładając, że komórki są jednojądrowe, lub za liczbę komórek połączonych w komórki wielojądrowe (np. w przypadku miotub).
      2. Wyznacz powierzchnię preparatu (szkiełka nakrywkowe), studzienki lub naczynia, z których pobrano dane. Informacje te można znaleźć w specyfikacji na stronach internetowych producentów.
      3. Wyznacz powierzchnię każdego wykonanego obrazu. Informacja ta jest często dostępna w metadanych oprogramowania do obrazowania lub analizy.
      4. Upewnij się, że powierzchnia próbki i powierzchnia obrazu są wyrażone w tych samych jednostkach (np. mm2). Jeśli nie, dokonaj konwersji na pożądaną jednostkę.
      5. Oblicz całkowitą liczbę dla każdej próbki, korzystając z następującego równania:
        TC = AC • (SA/IA)
        gdzie TC to całkowita liczba (total count), AC to średnia liczba (average count), SA to powierzchnia próbki (surface area), a IA to powierzchnia obrazu (image area).
      6. Podziel dane eksperymentalne przez odpowiadające im TC dla danej próbki.
  3. Znormalizuj dane eksperymentalne i wykorzystaj je w analizach statystycznych w zależności od potrzeb.

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Wyniki

Każde uruchomienie przetwarzania wsadowego obrazów generuje: 1) zestaw plików obrazów z naniesionymi konturami pokazującymi obrysy zidentyfikowanych jąder komórkowych (Rysunek 5) oraz 2) plik .csv (arkusz kalkulacyjny) wiążący nazwy plików obrazów z powiązanymi liczbami zliczeń. Przeglądanie konturów pozwoli użytkownikowi na wizualną ocenę jakości zliczeń. W szczególności obrazy uzyskane zgodnie z sekcją 1 powinny zawierać wszystkie (lub prawie wszystkie...

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Dyskusja

Nasz program do kwantyfikacji jąder ma kilka zalet w porównaniu z istniejącymi opcjami: wymaga jedynie minimalnych umiejętności technologicznych, jest walidowany pod kątem konkretnego zadania kwantyfikacji jąder i jest open-source; W ten ostatni sposób pokonuje się bariery związane z kosztami. Ostatecznie, program ten zapewnia biologom komórkowym i molekularnym dodatkową opcję szybkiego i dokładnego oznaczania ilościowego jąder na obrazach zarejestrowanych za pomocą mikroskopii fluorescencyjnej. Obecnie dostępne programy...

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Oświadczenia

Autorzy deklarują brak konfliktu interesów.

Podziękowania

Finansowanie tej pracy zostało zapewnione przez National Institutes of Health/National Institute on Aging (R01AG084597; DEL i HYL) oraz przez fundusze start-upowe z Texas Tech University (DEL). Autorzy pragną podziękować programom Texas Tech University Undergraduate Research Scholars i TrUE Scholars za udzielenie wsparcia finansowego naukowcom licencjackim, którzy przyczynili się do tej pracy (REH, MRD, CJM, AKW). Dziękujemy również doktorom Lauren S. Gollahon i Michaelowi P. Massettowi za łaskawe podzielenie się swoją przestrzenią laboratoryjną i sprzętem.

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Materiały

Lista materiałów użytych w tym artykule
NazwaFirmaNumer katalogowyKomentarze
Komputer z dostępem do pliku wyników z metody 2 lub 3-patrz krok 2.6 (dla metody 2) lub krok 3.3.9 lub 3.4.9 (dla metody 3)
Komputer z dostępem do Internetu, nowoczesna przeglądarka-np. Google Chrome
Komputer z dostępem do Internetu, nowoczesną przeglądarką i systemem operacyjnym WindowsRóżniW przypadku komputerów Mac, Linux lub innych systemów operacyjnych użyj metody 3
Komputer z oprogramowaniem do przechwytywania obrazówZeissAxioVisionDopuszczalne jest inne oprogramowanie; musi być kompatybilny z mikroskopem fluorescencyjnym
Lokalizacja pliku wyjściowego (arkusz kalkulacyjny wyników i kontury obrazu)-Może to być nowy, pusty folder
Mikroskop fluorescencyjnyZeissAxiovert 200MInne mikroskopy fluorescencyjne są dopuszczalne; muszą być wyposażone w odpowiednie kostki filtrujące, pożądany obiektyw i kamerę 
Folder zawierający wszystkie obrazy do ilościowego określenia-patrz krok 1.12
Python w wersji 3.10 lub nowszejPython-dostępny do bezpłatnego pobrania i instalacji pod adresem https://www.python.org/downloads/ 
Próbki do obrazowania-utrwalone lub żywe, barwione lub barwione fluorescencyjnymi barwnikami DNA
Oprogramowanie do arkuszy kalkulacyjnychMicrosoftExcelDopuszczalne jest również podobne oprogramowanie do arkuszy kalkulacyjnych
się

Bibliografia

  1. Chacko, B. K., et al. The bioenergetic health index: A new concept in mitochondrial translational research. Clin Sci. 127 (6), 367-373 (2014).
  2. Desousa, B. R., et al. Calculation of ATP production rates using the Seahorse XF Analyzer. EMBO Rep. 24 (10), e56380(2023).
  3. Rayamajhi, M., Zhang, Y., Miao, E. A. detection of pyroptosis by measuring released lactate dehydrogenase activity. Inflammasome. 1040, 85-90 (2013).
  4. Baskic, D., Popovic, S., Ristic, P., Arsenijevic, N. Analysis of cycloheximide-induced apoptosis in human leukocytes: Fluorescence microscopy using annexin V/propidium iodide versus acridin orange/ethidium bromide. Cell Biol Int. 30 (11), 924-932 (2006).
  5. Duplanty, A. A., Siggins, R. W., Allerton, T., Simon, L., Molina, P. E. Myoblast mitochondrial respiration is decreased in chronic binge alcohol administered simian immunodeficiency virus-infected antiretroviral-treated rhesus macaques. Physiol Reps. 6 (5), e13625(2018).
  6. Levitt, D. E., Bourgeois, B. L., Rodríguez-Graciani, K. M., Molina, P. E., Simon, L. Alcohol impairs bioenergetics and differentiation capacity of myoblasts from Simian immunodeficiency virus-infected female Macaques. Int J Mol Sci. 25 (4), 2448(2024).
  7. Larsen, T. A., Goodsell, D. S., Cascio, D., Grzeskowiak, K., Dickerson, R. E. The structure of DAPI bound to DNA. J Biomol Str Dyn. 7 (3), 477-491 (1989).
  8. Bazhulina, N. P., et al. Binding of Hoechst 33258 and its derivatives to DNA. J Biomol Str Dyn. 26 (6), 701-718 (2009).
  9. Njoh, K. L., et al. Spectral analysis of the DNA targeting bisalkylaminoanthraquinone DRAQ5 in intact living cells. Cytomet A. 69A (8), 805-814 (2006).
  10. Hamada, S., Fujita, S. DAPI staining improved for quantitative cytofluorometry. Histochemistry. 79 (2), 219-226 (1983).
  11. Levitt, D. E., Chalapati, N., Prendergast, M. J., Simon, L., Molina, P. E. Ethanol-impaired myogenic differentiation is associated with decreased myoblast glycolytic function. Alcohol Clin Exp Res. 44 (11), 2166-2176 (2020).
  12. Levitt, D. E., et al. Skeletal muscle bioenergetic health and function in people living with HIV: association with glucose tolerance and alcohol use. Am J Physiol Regul, Integ Comp Physiol. 321 (5), R781-R790 (2021).
  13. Levitt, D. E., Adler, K. A., Simon, L. HEMA 3 staining: A simple alternative for the assessment of myoblast differentiation. Curr Prot Stem Cell Biol. 51 (1), e101(2019).
  14. Solem, J. E. Programming computer vision with Python. , O'Reilly. Sebastopol, CA. (2012).
  15. Delery, E. C., Levitt, D. E., Amedee, A. M., Molina, P. E., Simon, L. High fat, high sucrose diet promotes increased expression of ACE2 receptor in the SIV-infected host: implications for SARS-CoV-2 infection. Front Nutrition. 11, 1458106(2024).
  16. Corrà, M. F., et al. Advantages of an automated method compared with manual methods for the quantification of intraepidermal nerve fiber in skin biopsy. J Neuropathol Exp Neurol. 80 (7), 685-694 (2021).
  17. Neves, K., et al. The reliability of the isotropic fractionator method for counting total cells and neurons. J Neurosci Meth. 326, 108392(2019).
  18. Tiong, K. H., et al. QuickCount: a novel automated software for rapid cell detection and quantification. BioTechniques. 65 (6), 322-330 (2018).
  19. Koo, T. K., Li, M. Y. A guideline of selecting and reporting intraclass correlation coefficients for reliability research. J Chiropractic Med. 15 (2), 155-163 (2016).
  20. Kam, Y., Jastromb, N., Clayton, J., Held, P., Dranka, B. P. Normalization of Agilent Seahorse XF Data by in situ. cell counting using a BioTek Cytation 5. , https://www.agilent.com/cs/library/applications/5991-7908EN.pdf 5991-7908 (2017).
  21. Schneider, C. A., Rasband, W. S., Eliceiri, K. W. NIH image to imageJ: 25 years of image analysis. Nat Meth. 9 (7), 671-675 (2012).
  22. O'Brien, J., Hayder, H., Peng, C. Automated quantification and analysis of cell counting procedures using ImageJ plugins. J Vis Exp. (117), e54719(2016).
  23. Grishagin, I. V. Automatic cell counting with ImageJ. Anal Biochem. 473, 63-65 (2015).
  24. Carpenter, A. E., et al. CellProfiler: image analysis software for identifying and quantifying cell phenotypes. Genome Biol. 7 (10), R100(2006).
  25. Tollemar, V., et al. Quantitative chromogenic immunohistochemical image analysis in cellprofiler software. Cytometry A. 93 (10), 1051-1059 (2018).
  26. Chazotte, B. Labeling nuclear DNA using DAPI. Cold Spring Harbor. 2011 (1), (2011).
  27. Cole, R. Live-cell imaging. Cell Adhesion Migrat. 8 (5), 452-459 (2014).
  28. Rieger, A. M., Nelson, K. L., Konowalchuk, J. D., Barreda, D. R. Modified Annexin V/Propidium Iodide apoptosis assay for accurate assessment of cell death. J Vis Exp. (50), e2597(2011).
  29. Hernandez, J. J., Beaty, D. E., Fruhwirth, L. L., Lopes Chaves, A. P., Riordan, N. H. Dodging COVID-19 infection: low expression and localization of ACE2 and TMPRSS2 in multiple donor-derived lines of human umbilical cord-derived mesenchymal stem cells. J Transl Med. 19 (1), 149(2021).
  30. Bourgeois, B. L., et al. Extracellular vesicle miR-206 improves chronic binge alcohol-mediated decreased myoblast differentiation in SIV-infected female macaques. Am J Physiol Cell Physiol. 327 (6), C1626-C1637 (2024).
  31. Kumar, P., Nagarajan, A., Uchil, P. D. Analysis of cell viability by the lactate dehydrogenase assay. Cold Spring Harbor. 2018 (6), (2018).
  32. Hsu, S., et al. Effects of everolimus on macrophage-derived foam cell behavior. Cardiovasc Revasc Med Including Mol Intervent. 15 (5), 269-277 (2014).

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Przedruki i uprawnienia

Tagi

Zautomatyzowane zliczanie obiektówfluorescencyjne barwienia DNAanaliza komórek oparta na obrazowaniunormalizacja danychwizja komputerowa w języku Pythontesty komórkoweotwartoźródłowy przepływ pracyliczba komórek