1. Kies datasets en directory
- Als u gegevenssets wilt selecteren voor analyse, klikt u op de knop Gegevenssets zoeken (afbeelding 2A, rood vak 1)om naar de map te navigeren waar gegevens worden gedeponeerd (bijvoorbeeld de map RawData). Gegevensbestanden vullen de gegevensbestanden automatisch in als een lijst. Er kan meer dan één gegevensset in de map staan.
- Klik op de knop Directory kiezen en selecteer de map (bijv. Test) waar geanalyseerde bestanden worden gedeponeerd (figuur 2A, rood vak 2) . Een set mappen en voltooide analysebestanden en tussenliggende tijdelijke afbeeldingen worden in deze map gemaakt wanneer de knop Analyse wordt ingedrukt. Er worden fouten geproduceerd als er geen map wordt gekozen.
2. Stel de pixelgrootte en framerate in
- Vul de juiste framesnelheid en pixelgrootte van de afbeeldingen in het juiste vak "Framerate" of "pixelgrootte" in (figuur 2A, groen vak). Als er geen waarden worden opgegeven (ze zijn ingesteld op de standaardwaarde "0"), wordt in het programma gezocht naar de metagegevens die aan het bestand zijn gekoppeld op framerate en pixelgrootte. Als deze waarden niet kunnen worden gevonden, wordt standaard per pixel gebruikt voor meting en per frame voor tijdspunten.
OPMERKING: In het opgegeven voorbeeld is de framerate 100 en de pixelgrootte 0,08.
3. Maskers kiezen of maken
- Gebruik de knop Mask Maker om automatisch celmaskers te maken voor de gegevens in de lijst met bestandsgegevenssets (figuur 2A, blauw vak). Na gebruik van de knop Mask Maker wordt een nieuwe map in de gekozen map gemaakt met de naam MaskFiles. De "Run indicator" wordt geel tijdens het hardlopen en keert terug naar groen wanneer deze is voltooid.
OPMERKING: Een masker voor elk bestand in de lijst Gegevensbestanden wordt gemaakt van de eerste 10 frames van het afbeeldingsbestand (of van alle frames als er minder dan 10 in het afbeeldingsbestand staan) en in de map MaskFiles gedeponeerd met behulp van het juiste naamgevingsschema (hieronder beschreven).
- Zorg ervoor dat de maskerbestanden automatisch de lijst Maskerbestanden vullen. De gebruiker kan rechtstreeks overgaan tot de analyse.
OPMERKING: Controleer maskerbestanden altijd visueel en bevestig dat ze de hele interesseregio vastleggen. Het eerste frame van het gegevensbestand en het maskerbestand worden weergegeven in de gebruikersinterface wanneer deze is geselecteerd. (Figuur 2B). De Mask Maker kan fouten veroorzaken in het geval van een laag signaal naar ruis, dus het valideren dat maskerbestanden geschikt zijn, is van cruciaal belang voor kwaliteitscontrole.
- Als alternatief voor het gebruik van Mask Maker, als het signaal naar ruis van afbeeldingen onvoldoende is, maakt u maskers handmatig in ImageJ.
- Open eerst het onbewerkte afbeeldingsbestand in ImageJ (figuur 3A).
- Klik op de knop Polygoonselectie en klik om een masker rond de cel te tekenen. Als u klaar bent, dubbelklikt u op het laatste punt om de veelhoek te voltooien.
- Als u klaar bent, navigeert u naar bewerken | Selectie | Masker maken (figuur 3B). Er wordt een nieuw omgekeerd masker gemaakt op basis van de polygoontekening. Sla maskers op in een aangewezen map MaskFiles in de gekozen map. Het naamgevingsschema voor maskerbestanden moet overeenkomen met de bijbehorende afzonderlijke gegevensbestanden, gevolgd door "_mask_file". Als een gegevensbestand bijvoorbeeld de naam "VAMP2_488_WT_1.tif" heeft, moet het bijbehorende maskerbestand de naam "VAMP2_488_WT_1_mask_file.tif" krijgen.
- Gebruik de knop Maskfiles zoeken om naar de gekozen map met gedeponeerde aangepaste maskerbestanden te navigeren. De maskers vullen de maskerbestanden als een lijst.
OPMERKING: Het is belangrijk om voor elk gegevensbestand een masker te hebben voordat u de analyse uitvoert.
4. Analyse en functie-extractie
- Nadat de map is gekozen en de lijst Gegevensbestanden en Maskerbestanden zijn ingevuld, klikt u op de knop Analyse (figuur 4A). Als de classificatie van exocytische gebeurtenissen vereist is, gaat u naar stap 5.
OPMERKING: De klik op de knop Analyse voert een reeks geautomatiseerde taken uit om de gegevens te analyseren. Het maakt afzonderlijke mappen in de gekozen map om geanalyseerde gegevens te deponeren. Tijdens het hardlopen verandert de "run indicator" van groen naar geel (figuur 4A, rood vak). Nadat de analyse is voltooid, verandert dit weer in groen.
- Zoek een map DataFiles (Figuur 4B) met de volledige set analysebestanden (evenals functie-extractiebestanden, die later in classificatie moeten worden gebruikt) met de naam volgens elk gegevensbestand (Figuur 4C).
OPMERKING: Een beschrijving van deze analysebestanden vindt u hieronder in de sectie Representatieve resultaten.
5. Classificatie van exocytische gebeurtenissen
- Als u gelijktijdige classificatie van exocytische gebeurtenissen met geautomatiseerde detectie wilt uitvoeren, schakelt u het selectievakje Classificatie in voordat u op de knop Analyse klikt. Wijs voor elke exocytische gebeurtenis een waarschijnlijkheidsscore toe tussen 0-1 voor elke klasse. Een exocytische gebeurtenis wordt beschouwd als een van de vier klassen als de waarschijnlijkheidsscore voor die klasse > 0,5 is.
OPMERKING: Zodra de analyse is voltooid, verschijnt er een nieuwe map met gegevensbestanden in de gekozen map. De map bevat analysebestanden die overeenkomen met elk afbeeldingsbestand.
6. Spatiotemporale analyse van exocytose met behulp van Ripley's K-waarden
- Maak een apart maskerbestand "neurite" en "soma". Segmenteer eerst de soma uit de neuriet. Er is geen onpartijdige methode om de soma van de neurieten te segmenteren, dus de gebruiker moet verblind worden voor het conditioneringsexperiment en het beste oordeel gebruiken; een ellipsoïde zonder duidelijke neurietextensies wordt voorgesteld.
- Open ImageJ/Fiji.
- Sleep het maskerbestand en laat het vallen of gebruik File | Open en selecteer vervolgens het maskerbestand.
- Gebruik het gereedschap Kleurkiezer en klik op een van de zwarte pixels op de achtergrond van het masker om de kleur in te stellen op zwart.
- Gebruik het gereedschap polygoonselectie of uit de vrije hand om een omtrek rond de soma te tekenen en deze te scheiden van de neurieten. Dit vereist handmatige besluitvorming.
- Klik op Bewerken | Selectie | Masker maken. Er wordt een nieuwe afbeelding geopend met de omcirkelde soma gesegmenteerd van de rest van de afbeelding. Hiermee wordt een somamaskerbestand gemaakt.
- Zonder het getekende gebied te verplaatsen, klikt u op de koptekst van het oorspronkelijke maskerbestand.
- Klik op Bewerken | Vul in om de omcirkelde soma in te vullen, zodat alleen de neurieten het masker blijven.
- Zodra afzonderlijke neurite- en maskerbestanden zijn verkregen, slaat u beide maskerbestanden op.
- Open "neurite_2D_network" in Matlab.
- Navigeer in MATLAB naar de map met alle analysegegevens.
- Wijzig het pad "maskernaam" in de naam van het neurietmasker, d.w.z. "MaskFiles/VAMP2pHluorin_488_wt_4_mask_file_neurite.tif"
- Wijzig de "csv_file_name" naar waar fluorescent_traces.csv bestand zich bevindt, d.w.z. "MaskFiles/VAMP2pHluorin_488_wt_4_mask_file_neurite.csv".
- Klik op Uitvoeren om het neurietmaskerbestand te skeletoniseren. Hiermee wordt een geskeletiseerde versie van het neurite-maskerbestand gemaakt en wordt het als CSV-bestand onder de map maskfiles gedeponeerd.
- Genereer vervolgens een CSV-bestand voor de soma. Open "CSV_mask_creator.m" in Matlab.
- Zet in het pad voor de "maskernaam" naar de naam van het somamasker, d.w.z. "MaskFiles/VAMP2phLuorin_488_wt_4_mask_file_soma.tif
- Wijzig de "writematrix" in csv-bestandsnaam die moet worden gemaakt, d.w.z. "MaskFiles/VAMP2pHluorin_488_wt_4_mask_file_soma.csv"
- Klik op Uitvoeren. Hiermee wordt het nieuwe VAMP2pHluorin_488_wt_4_mask_file_soma.csv bestand gemaakt.
- Herhaal 6.14 voor elk maskerbestand.
7. RStudio setup
- Open Rstudio en open ripleys_k_analysis. R-bestand.
- Installeer het pakket "spatstat" in RStudio door naar Tools | Installeer pakketten en typ "spatstat" in, gevolgd door op Installerente klikken.
OPMERKING: Dit hoeft slechts één keer per Rstudio-installatie te worden uitgevoerd.
- Voer de bibliotheek spatstat uit aan het begin van elke sessie.
- Let in dit geval op twee hoofdvariabelen: 'neuron_mask' en 'neuron_datapoints'. Neuron Mask verwijst naar de set maskerbestanden die moeten worden uitgevoerd, d.w.z. soma-maskerbestanden."
OPMERKING: Voer alle soma-maskerbestanden samen uit, los van Neurite-maskerbestanden en vice versa.
- Lees in de .csv van de maskerbestanden voor elk van de te analyseren neuronen.
- Voer meerdere bestanden tegelijk uit door extra neuron_mask_n+1 te kopiëren. Dit maakt het mogelijk om ripley's analyse samen te voegen, met behulp van het script beschreven in sectie 8.
- Controleer nu de tweede variabele, "neuron_datapoints".
- Lees in de." X_fluorescent_traces.csv" bestand gegenereerd door het analyseprogramma (door alle extracted_R bestand) met de x,y,t posities van de exocytische gebeurtenissen, evenals het neurite-specifieke bestand van de x,y posities voor het 2D-netwerk. Dit gaat in de "neuron_datapoints" positie.
- In RStudio Code selecteren | Regio | uitvoeren Voer alles uit. Dit genereert verschillende plots, waaronder de gegroepeerde Ripley's K-waarden en dichtheidspercelen.
- Sla plots op door naar export | te gaan Afbeelding opslaan als | Selecteer de juiste afbeeldingsindeling en map en voer de juiste bestandsnaam in en klik op Opslaan.
OPMERKING: De plotfunctie voor de heatmaps wordt in het script aangeroepen met behulp van "plot(density(soma_data,0.4)". Het getal "0.4" geeft hier aan hoe glad de dichtheidsfunctie moet zijn. Het kan worden gewijzigd om gebruikersgegevens op een zinvolle manier aan te passen, maar als vergelijkingen moeten worden uitgevoerd tussen verschillende heatmaps, moet het aantal tussen hen hetzelfde zijn.
-
Afbeelding exporteren of opslaan vanuit Rstudio. Als een heatmap verder moet worden bewerkt, kiest u een geschikt bestandstype (SVG of EPS).
8. Ripley's analyse
OPMERKING: De Ripleys_k_analysis. R-bestand genereerde ook automatisch Ripley's k-waardeplots. Als u het volledige script uitvoert, worden automatisch de onderstaande functies uitgevoerd, maar het wordt in detail opgenomen als u elk deel van het script afzonderlijk wilt uitvoeren of wijzigingen in de analyse wilt aanbrengen.
- Voer eerst de envelopfunctie voor elke cel uit. Deze functie simuleerde volledige ruimtelijke willekeur (CSR) om de Ripley's K-waarde van het exocytische gebeurtenispuntpatroon te testen.
Data_envelope_1 = envelop(soma_data_1, Kest, nsim = 19, savefuns = WAAR)
Data_envelope_2 = envelop(soma_data_2, Kest, nsim = 19, savefuns = WAAR)
- Bundel vervolgens deze enveloppen en maak één schatting van MVO voor de groep:
Pool_csr = zwembad(Data_envelope_1, Data_envelop_2,...)
Voer vervolgens de Functie Ripley's K uit voor alle gegevenspunten.
Data_ripleys_k_1 = Kest(soma_data_1, ratio = WAAR)
Data_ripleys_k_2 = Kest(soma_data_2, ratio = WAAR)
- Zodra u klaar bent, bundelt u de K-waarden van de Ripley samen en start u hun betrouwbaarheidsintervallen op met de volgende opdracht:
Gegevensgroep = pool(Data_ripleys_k_1, Data_ripleys_k_2,...)
- Bootstrap met de volgende opdracht:
Final_Ripleys_K = varblock(fun = Kest, Data_pool)
- Plot de gegevens.
- Als een hard-statistisch verschil vereist is, wordt de studentized permutatietest opgenomen in het spatstat-pakket om te testen op een verschil tussen groepen puntpatronen:
Test_difference = studpermu.test(all_points_to_test, exocytic_events ~ groep, nperm = np).