Comments (7)
See also imagej/ImageJ#60
from imagej-ops.
In general: The low-level operations really shouldn't work on Img/ImgPlus/... they should work on IterableInterval/RandomAccessibleInterval. The higher-level ops (e.g. Commands) should then be composed of several low-level ops and may base on Img/ImgPlus/Labeling.
from imagej-ops.
@dietzc: In some cases, yeah. But an Img
is an IterableInterval
as well as a RandomAccessibleInterval
so of course you can pass an Img
to any op with an input typed by those interfaces. This is good. The problem documented by this ticket is that ImageJ2's Dataset
is actually not an Img
or an ImgPlus
nor even an IterableInterval
. I mean, conceptually it isβit just doesn't implement those interfaces. Rather, it has an ImgPlus
which it wraps (i.e., composition rather than inheritance). But OPS relies on types using the inheritance pattern. For that reason (as well as lots of other reasons), it makes sense for Dataset
to implement the relevant interfaces here so it can be passed to an op without a clunky dataset.getImgPlus()
or dataset.getImgPlus().getImg()
unwrapping step.
from imagej-ops.
@ctrueden: correct. this way it makes sense (let dataset implement XY). wouldn't make sense to have dedicated ops for dataset.
from imagej-ops.
Yes, thanks for clarifying @ctrueden! @dietzc I only wanted to document the problem rather than the solution so that we know what to test after fixing it.
from imagej-ops.
This issue will be largely addressed by imagej/imagej-common#46.
from imagej-ops.
Closing, since it will be taken care of by the data model update of imagej/imagej-common#46.
from imagej-ops.
Related Issues (20)
- Median not returning mean of two middle values for even number of values HOT 8
- Add stats.mode op to compute modal value
- Confusing behavior for histogram HOT 2
- Quesrtion: Sobel filter HOT 3
- SobelRAI derivativeComputer array error prone if dimension mismatch HOT 5
- AbstractPadAndFFTFilter overrides OutOfBoundsFactory parameter of PadAndConvolveFFTF HOT 7
- Ops filter gauss does not respect the image dimensions HOT 1
- JOML version from parent pom conflicts with current scenery/sciview
- Repeated computation of co-occurrence matrix in haralick features
- Yen threshold differs from IJ1 HOT 4
- Fractal Dimension creates thousands of zombie threads that crash ImageJ HOT 4
- filter/addPoissonNoise hangs up with large pixel values
- Size inconsistencies for Polygon2Ds HOT 2
- Improve OpSearchResult to give limited type information in stringified op HOT 2
- OpListings ignore preallocated outputs
- DefaultGaussRAI.compute() reports cryptic IAE for sigma dimension mismatch HOT 1
- ClassCastException from ConstantToIIOutputII
- OpSearcher reduces OpListings too eagerly HOT 3
- CreateOutputFFTMethods requires a image creator that can take an ImgFactory HOT 1
- FrangiVesselness: Auto-fill the spacing field
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from imagej-ops.