ROIManager › Workflow · version 1
Finds the nuclear pores of the file, counts their corners and localizations, and fits the labelling efficiency, in one run.
The labelling efficiency of nuclear pores takes three steps in the ROI manager: find the pores, count each one's corners and localizations, and fit the efficiency to all of them. This runs the three in one go, on the file the ROI manager is showing, and shows the results of all three in one window.
It is a chain – the plugins it runs, one after the other, each with its own settings in a section of this panel – rather than a plugin of its own: NPC, NPC Corners and NPC Labeling Efficiency. Their pages explain the methods; this one only what running them together changes. Because it is a chain, it can be edited (edit steps), saved under another name, and run over many files in a batch.
Use it for the standard analysis, and the three plugins separately to look at one step more closely – the ROIs this one makes are ordinary ROIs, and can be walked through, judged and evaluated again in the ROI manager. It needs the localization precision (xy_err_nm).
1. Group. The layers step switches the first layer to grouped, one localization per blink, as the model expects; its filter stays as the Render tab has it.
2. Find the pores. The file's earlier NPC ROIs are removed (replace earlier pores is ticked in the find the pores section), and the pores are found with the settings of that section. ROIs drawn by hand, or made by another segmenter, are left alone.
3. Count. NPC Corners is run on every ROI the manager includes, with the settings of the NPC Corners section, before the next step starts: each pore's corners seen with the precise localizations, and its localizations. The numbers are stored with the ROIs, as an evaluation in the ROI manager stores them.
4. Fit. The labelling efficiency and the blinks per copy are fitted to all the counted ROIs with the settings of the labelling efficiency section.
The window shows the pores found, the segmenter's checks and the fit (the corner and localization histograms with the model).
An evaluator in a chain. A plugin that measures one ROI at a time (NPC Corners here) runs, as a chain step, over every ROI the manager includes – every one that is ticked use, whoever made it – and the chain goes on only when all are done. A ROI on which it fails (no localizations, say) loses its own row and is counted in the step's line, not the run.
The evaluation window is left alone. The counts are stored with the ROIs as an evaluation called NPC Corners, like any other, and the evaluation window's pipeline stays as it was set up – for this work or for another. A result belongs to its ROI, whoever ran it, so the site table shows the chain's counts beside the pipeline's numbers, and NPC Labeling Efficiency run again from the ROI tab finds them, with the cutoffs they were counted with. Running the chain again replaces its counts; to keep a second set beside the first – other cutoffs, to compare – rename the NPC Corners step (edit steps). The chain's analysis reads the chain's own counts, whatever else is on the ROIs; run from the ROI tab afterwards, it asks which evaluation to read when there are several.
Nothing changes until the end. The chain runs on a copy of the session, ROI manager included; the ROIs it found, the evaluation run and the pipeline reach the ROI manager only when the whole chain has succeeded. A step that fails leaves the ROI manager as it was.
Re-running. With replace earlier pores off, the pores of an earlier run stay, a new run adds only what is new (a candidate near an existing ROI is suppressed), and all of them are counted. Results that are still current – the same ROI, data and settings – are carried forward rather than measured again.
SMAP has no single counterpart: its NPC analysis is run as segmentNPC, then an evaluation with NPCLabelingQuantify_s in the ROI manager, then NPCLabelingEfficiency (Ries 2020).
| setting | default | what it does |
|---|---|---|
grouping (more)grouping | layer | Which table every step reads, unless the step says otherwise: layer leaves it to each layer, as the Render tab has it. Choices: layer; grouped; ungrouped |
| layers | ||
layerslayers.layers | {'grouped': True, 'start': 'keep', 'bounds': []} | One block per layer: its grouping, where its bounds start from, and rows of field, lo, hi (either may be empty); a quantile row takes lo and hi as fractions, resolved per file; a required row stops a file that lacks the field. |
remove filteredlayers.remove | off | Drop the localizations no layer keeps from the table, and so from the saved file. |
grouping (more)layers.use_grouping | auto | Which table this step reads: auto takes the chain's choice, or each layer's own. Choices: auto; grouped; ungrouped |
| find the pores | ||
radiusfind_the_pores.radius_nm | 55 nm | Radius of the pore: the ring the filter looks for and the one the band is drawn around. at least 1 nm |
ring widthfind_the_pores.ring_width_nm | 15 nm | Half the width of the ring band; also the width of the filter's ring. at least 1 nm |
min localizationsfind_the_pores.min_locs | 4 | Localizations a candidate needs in the ring band. at least 1 |
judge on precisionfind_the_pores.precision_nm | 20 nm | The checks use only localizations more precise than this. at least 0.1 nm |
min fitted radiusfind_the_pores.min_radius_nm | 40 nm | Smallest fitted radius that is a pore. |
max fitted radiusfind_the_pores.max_radius_nm | 70 nm | Largest fitted radius that is a pore. |
max farfind_the_pores.max_far | 0.01 | Largest fraction of localizations more than 3 of their precisions from the ring. 0 to 1 |
keep rejectedfind_the_pores.keep_rejected | off | Add candidates that fail the checks as ROIs that are not used, to look at them. |
replace earlier poresfind_the_pores.replace | on | Remove the ROIs this segmenter made on the file before finding the pores again. |
far test level (more)find_the_pores.radial_alpha | 0.05 | A candidate fails when its far ones are this unlikely for a pore. 1e-06 to 0.5 |
ring spread (more)find_the_pores.radial_extra_nm | 5 nm | Tilt and label, added to each precision in the far test. |
window (more)find_the_pores.window_nm | 100 nm | Radius around a candidate that is fitted and judged. at least 1 nm |
separation (more)find_the_pores.separation_nm | 120 nm | Reject a candidate this close to a stronger one or to an existing ROI. |
bin (more)find_the_pores.bin_nm | 10 nm | Pixel size of the density image that is filtered. at least 0.1 nm |
grouping (more)find_the_pores.use_grouping | auto | Which table this step reads: auto takes the chain's choice, or each layer's own. Choices: auto; grouped; ungrouped |
| NPC Corners | ||
radiusnpc_corners.radius_nm | 55 nm | Radius of the ring band the corners are counted in. at least 1 nm |
ring widthnpc_corners.ring_width_nm | 15 nm | Half the width of the ring band. at least 1 nm |
corner precisionnpc_corners.precision_nm | 20 nm | Corners are counted with the localizations more precise than this. at least 0.1 nm |
count precisionnpc_corners.n_precision_nm | 30 nm | The localizations per pore are those more precise than this. at least 0.1 nm |
count windownpc_corners.n_window_nm | 100 nm | ... and within this distance of the centre. at least 1 nm |
cornersnpc_corners.corners | 8 | Symmetry of the pore: segments around the ring. at least 2 |
min per corner (more)npc_corners.min_locs | 1 | Localizations a corner needs to count as seen. at least 1 |
grouping (more)npc_corners.use_grouping | auto | An evaluator sees what the ROI manager shows: the filter and grouping of the layer it follows. Choices: auto; grouped; ungrouped |
| labelling efficiency | ||
methodlabelling_efficiency.method | corners and localizations | The joint model of corners and localizations, or SMAP's corner histogram alone. Choices: corners and localizations; corners (SMAP) |
fit fromlabelling_efficiency.fit_min | 5 | Only pores with at least this many corners. |
results fromlabelling_efficiency.evaluation | auto | The evaluation whose results are analysed; auto: the only one there is, or the chain's own – asked when there are several. |
corners (more)labelling_efficiency.corners | 8 | Corners of a pore. at least 2 |
proteins per corner (more)labelling_efficiency.per_corner | 4 | Copies of the labelled protein in one corner. at least 1 |
fit to (more)labelling_efficiency.fit_max | 8 | Most corners in the fit range (SMAP's method). |
SMAP fit (more)labelling_efficiency.fit | maximum likelihood | How SMAP's method fits its histogram. Choices: maximum likelihood; SMAP's least squares |
bootstrap (more)labelling_efficiency.bootstrap | 100 | Resamplings of the sites for SMAP's error; 0: none. |
grouping (more)labelling_efficiency.use_grouping | auto | Which table this step reads: auto takes the chain's choice, or each layer's own. Choices: auto; grouped; ungrouped |