Skip to content

Commit

Permalink
2.08.2024: README update
Browse files Browse the repository at this point in the history
  • Loading branch information
wisstock committed Aug 2, 2024
1 parent bd343aa commit b035de8
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 6 deletions.
17 changes: 16 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Registration of four-channel image stacks, including two excitation wavelengths
### Multichannel stack preprocessing
- `stack order` - represents the order of axes in the input data array: T (time), C (color), X, and Y (image dimensions). If the input image stack has four dimensions (time, channel, x-axis, y-axis), channels will be split into individual three-dimensional images (time, x-axis, y-axis), each labeled with the `_ch%index%` suffix.
- `median filter` - provides frame-by-frame image smoothing with a kernel of size specified in `median kernel`.
- `background subtraction` - compensates for background fluorescence intensity. Background intensity is estimated frame by frame as the 1st percentile of frame intensity.
- `background subtraction` - compensates for background fluorescence intensity. Background intensity is estimated frame by frame as the 0.5 percentile of frame intensity.
- If the `photobleaching correction` option is selected, the image will undergo correction using either an exponential (method `exp`) or bi-exponential (method `bi_exp`) fitting.
- Image stacks can be cropped according to start and stop indexes specified in `frames range` if `drop frames` is selected.

Expand Down Expand Up @@ -82,6 +82,20 @@ Extension of __Up Masking__ widget. Detects regions with increasing (`masking mo
![](https://raw.githubusercontent.com/wisstock/domb-napari/master/images/int_masking.png)


### Dots patterns masking
Creates labels for bright dot elements on an image, such as pre- and postsynaptic fluorescence markers (e.g., Bassoon/Synaptobrevin for presynapses, PSD-95/Homer for postsynapses, etc.). It returns a labels layer with the `dots-labels` suffix.

The widget detects the location on the MIP (Maximum Intensity Projection) of the input time series image and applies simple round masks to each detected dot. Watershed segmentation is then used to prevent the merging of overlapping masks.

Parameters:

- `background_level` - Background level for filtering out low-intensity elements. This is specified as a percentile of the MIP intensity.
- `detection_level` - Minimum intensity of dots, specified as a percentile of the MIP's maximum intensity.
- `mask_diameter` - Diameter in pixels for the round mask of each individual dot.
- `minimal_distance` - Minimum distance in pixels between the centers of individual round masks.

![](https://raw.githubusercontent.com/wisstock/domb-napari/master/images/dots_making.png)

---


Expand All @@ -102,6 +116,7 @@ This method utilizes default values for `a` and `d` coefficients and the `G`-fac
- Acceptor excitation wavelength 505 nm

Parameters:

- `DD img` - donor emission channel image acquired with the donor excitation wavelength.
- `AD img` - acceptor emission channel image acquired with the donor excitation wavelength.
- `AA img` - acceptor emission channel image acquired with the acceptor excitation wavelength.
Expand Down
Binary file added images/dots_making.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 5 additions & 5 deletions src/domb_napari/_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -327,14 +327,14 @@ def _der_series():


@magic_factory(call_button='Build Dots Mask',
background_level={"widget_type": "FloatSlider", 'min':5.0, 'max': 100.0, 'step':5.0},
detection_level={"widget_type": "FloatSlider",'min':5.0, 'max': 100.0, 'step':5.0},)
def dot_mask_calc(viewer: Viewer, img:Image, mask_diamets:int=5, minimal_distance:int=2,
background_level:float=95.0, detection_level:float=25.0):
background_level={"widget_type": "FloatSlider", 'min':50.0, 'max': 99.0, 'step':1.0},
detection_level={"widget_type": "FloatSlider",'min':1.0, 'max': 100.0, 'step':1.0},)
def dot_mask_calc(viewer: Viewer, img:Image, background_level:float=75.0, detection_level:float=25.0,
minimal_distance:int=2, mask_diamets:int=5):
if input is not None:
if img.data.ndim != 3:
raise ValueError('The input image should have 3 dimensions!')
labels_name = img.name + '_dot-labels'
labels_name = img.name + '_dots-labels'

def _save_dot_labels(params):
lab = params[0]
Expand Down

0 comments on commit b035de8

Please sign in to comment.