Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Short docs #37

Closed
haesleinhuepf opened this issue Oct 10, 2024 · 2 comments
Closed

Short docs #37

haesleinhuepf opened this issue Oct 10, 2024 · 2 comments

Comments

@haesleinhuepf
Copy link
Owner

We need to write a short document about all functions in init.py which have the decorator @register_function. For each function we need a bullet poinnt with a short sentence and below a single line of code demonstrating how the function works.

Examples:

  • Takes a binary image and draws cuts in the objects similar to the ImageJ watershed algorithm
    nsbatwm.split_touching_objects(binary_image)

  • Applies Otsu's threshold selection method to an intensity image and returns a binary image.
    nsbatwm.threshold_otsu(image)

  • Apply a median filter to an image to remove noise while preserving edges.
    nsbatwm.median_filter(image)

Now, do this for all the specified functions.

git-bob comment

Copy link

This message was generated by git-bob (version: 0.6.6, model: gpt-4o-2024-08-06, Run details), an experimental AI-based assistant. It can make mistakes and has limitations. Check its messages carefully.

To address the issue of creating a short documentation for functions with the @register_function decorator in __init__.py, I've generated a list similar to your examples:

  • Splits touching objects in a binary image using the ImageJ watershed algorithm.

    nsbatwm.split_touching_objects(binary_image)
  • Applies Otsu's method to binarize an intensity image.

    nsbatwm.threshold_otsu(image)
  • Binarizes an image using Yen's method.

    nsbatwm.threshold_yen(image)
  • Binarizes an image using the IsoData method.

    nsbatwm.threshold_isodata(image)
  • Binarizes using Li's method.

    nsbatwm.threshold_li(image)
  • Binarizes using the Mean method.

    nsbatwm.threshold_mean(image)
  • Binarizes using the Minimum method.

    nsbatwm.threshold_minimum(image)
  • Binarizes using Triangle method.

    nsbatwm.threshold_triangle(image)
  • Inverts a binary image.

    nsbatwm.binary_invert(binary_image)
  • Labels connected components in a binary image.

    nsbatwm.connected_component_labeling(binary_image)
  • Applies seeded watershed segmentation using labeled nuclei and bright membranes.

    nsbatwm.seeded_watershed(membranes, labeled_nuclei)
  • Segments blob-like structures using Voronoi-Otsu labeling.

    nsbatwm.voronoi_otsu_labeling(image)
  • Applies Gauss-Otsu labeling for nucleus segmentation.

    nsbatwm.gauss_otsu_labeling(image)
  • Applies Gaussian blur for noise reduction.

    nsbatwm.gaussian_blur(image)
  • Applies median filter to reduce noise while preserving edges.

    nsbatwm.median_filter(image)
  • Correct labels using a mode filter.

    nsbatwm.mode_filter(labels)
  • Applies a percentile filter.

    nsbatwm.percentile_filter(image)
  • Removes bright regions using white top-hat filter.

    nsbatwm.white_tophat(image)
  • Removes dark regions using black top-hat filter.

    nsbatwm.black_tophat(image)
  • Applies local minimum filtering.

    nsbatwm.minimum_filter(image)
  • Applies local maximum filtering.

    nsbatwm.maximum_filter(image)
  • Enhances edges via morphological gradient.

    nsbatwm.morphological_gradient(image)
  • Subtracts background using the rolling ball algorithm.

    nsbatwm.subtract_background(image)
  • Removes labels on image borders.

    nsbatwm.remove_labels_on_edges(label_image)
  • Expands labels by a specified distance.

    nsbatwm.expand_labels(label_image)
  • Segments using seeded watershed with local minima as seeds.

    nsbatwm.local_minima_seeded_watershed(image)
  • Watershed labeling with local minima as seeds and intensity threshold.

    nsbatwm.thresholded_local_minima_seeded_watershed(image)
  • Sums two images with optional scaling factors.

    nsbatwm.sum_images(image1, image2)
  • Multiplies two images.

    nsbatwm.multiply_images(image1, image2)
  • Divides one image by another.

    nsbatwm.divide_images(image1, image2)
  • Inverts an image.

    nsbatwm.invert_image(image)
  • Skeletonizes labeled objects.

    nsbatwm.skeletonize(image)
  • Rescales an image using specified scale factors.

    nsbatwm.rescale(image)
  • Resizes an image to new dimensions.

    nsbatwm.resize(image)
  • Manually merges selected labels.

    nsbatwm.Manually_merge_labels(labels_layer, points_layer, viewer)
  • Manually splits selected labels.

    nsbatwm.Manually_split_labels(labels_layer, points_layer, viewer)
  • Applies a Butterworth filter to an image.

    nsbatwm.butterworth(image)
  • Relabels an image sequentially.

    nsbatwm.relabel_sequential(label_image)
  • Extracts a specific slice from an image.

    nsbatwm.extract_slice(image, slice_index, axis)
  • Sub-samples every nth pixel.

    nsbatwm.sub_sample(image)
  • Removes axes with length 1.

    nsbatwm.squeeze(image)
  • Applies grayscale erosion with a given radius.

    nsbatwm.grayscale_erosion(image)
  • Applies binary erosion with a given radius.

    nsbatwm.binary_erosion(binary_image)
  • Applies grayscale dilation with a given radius.

    nsbatwm.grayscale_dilation(image)
  • Applies binary dilation with a given radius.

    nsbatwm.binary_dilation(binary_image)
  • Applies grayscale opening with a given radius.

    nsbatwm.grayscale_opening(image)
  • Applies binary opening with a given radius.

    nsbatwm.binary_opening(binary_image)
  • Applies grayscale closing with a given radius.

    nsbatwm.grayscale_closing(image)
  • Applies binary closing with a given radius.

    nsbatwm.binary_closing(binary_image)

This listing should help in documentation by providing a concise description along with a code snippet for each function.

@haesleinhuepf
Copy link
Owner Author

included into the code in ebc23d5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant