imagej / imagej/imagej-ops

Nested Namespaces and their names

Open
#355 6 comments 0 reactions 1 assignee Claimed by @ctrueden View on GitHub
2016-07-hackathon question
Dominant language
Java
Stars
94
Forks
44
PR merge metrics
No merged PRs in 30d

Description

Hi all,

@ctrueden is currently working on "nested namespace". I think now it would be a good time to discuss our `Namespace`s a bit more in detail, i.e. which `Namespace` do we want and how to we want to nest them. Currently, our `Namespace` names are somehow mixed: `ImageNamespace` describes on what kind of input it operates, however for example the `FilterNamespace` describes more what it does.

Current `Namespaces`:
- `ConvertNamespace`, `CopyNamespace`, `CreateNamespace`, `DeconvolveNamespace`, `FilterNamespace`, `GeomNamespace`, `HaralickNamespace`, `ZernikeNamespace`, `ImageMomentsNamespace`, `ImageNamespace`, `LabelingNamespace`, `LBPNamespace`, `LogicNamespace`, `MathNamespace`, `StatsNamespace`, `TamuraNamespace`, `ThreadNamespace`, `Thresholdnamespace`

Here is one suggestions to start the discussion (I added some `Namespace`s):
- `Math`
*\* `FFT`
*\* `Logic`
*\* `Statistics`
*\* `Arithmetic`
- `Processing`
*\* `Thresholding`
*\* `Filters`
*\* `Morphological`
*\* `Convolution`
*\* `Deconvolution`
- `Features`
*\* `Pixel`
*\* `Object`
**\* `Intensity`
***\* `Haralick`, `Tamura`, `ImageMoments`, `Stats`, `Zernike`, `LBP`.
**\* `Geometric`
- `Transforms`
*\* `Convert`
*\* `Affine`
*\* `Dimensionality` (e.g. `Crop`, `RemoveDim`, etc).
- `Create`
*\* `Labeling`
*\* `Image`
*\* `Kernel`
*\* `Copy`
- `Control` (bad name)
*\* `Mappings`
*\* `Loops`
*\* ...
- `Segmentation` (in the future `CCA`, `Watershed`, `GraphCuts`, etc...).
- `Registration`
- `Threads` (?)

I've no idea if this is a good suggestion, but maybe it's good to get started.

Christian

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.