本文整理了Java中net.imglib2.view.Views.extendMirrorSingle()
方法的一些代码示例,展示了Views.extendMirrorSingle()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Views.extendMirrorSingle()
方法的具体详情如下:
包路径:net.imglib2.view.Views
类名称:Views
方法名:extendMirrorSingle
[英]Extend a RandomAccessibleInterval with a mirroring out-of-bounds strategy. Boundary pixels are not repeated. Note that this requires that all dimensions of the source (F source) must be > 1.
[中]使用镜像越界策略扩展可随机访问的范围。边界像素不会重复。请注意,这要求震源(F震源)的所有维度都必须大于1。
代码示例来源:origin: net.preibisch/multiview-reconstruction
public void setImg( final RandomAccessibleInterval< R > img )
{
this.img = Views.extendMirrorSingle( img );
this.imgInterval = img;
this.fftImg = null;
}
代码示例来源:origin: net.imglib2/imglib2-algorithms-gpl
public void setImg( final RandomAccessibleInterval< R > img )
{
this.img = Views.extendMirrorSingle( img );
this.imgInterval = img;
this.fftImg = null;
}
代码示例来源:origin: imagej/imagej-ops
@Override
public ExtendedRandomAccessibleInterval<T, F> calculate(F input) {
return Views.extendMirrorSingle(input);
}
}
代码示例来源:origin: net.imglib2/imglib2-algorithm-gpl
public void setImg( final RandomAccessibleInterval< R > img )
{
this.img = Views.extendMirrorSingle( img );
this.imgInterval = img;
this.fftImg = null;
}
代码示例来源:origin: net.imglib2/imglib2-script
public ExtendMirrorSingle(final RandomAccessibleInterval<T> img) {
super(Views.interval(Views.extendMirrorSingle(img), img));
}
代码示例来源:origin: net.imglib2/imglib2-algorithm
public static enum ExtremaType
{
/**
* Bright blobs on dark background.
*/
MINIMA,
/**
* Dark blobs on bright background.
*/
MAXIMA
}
代码示例来源:origin: net.imglib2/imglib2
/**
* Expand a RandomAccessibleInterval as specified by border. Out of bounds
* pixels will be sampled by mirroring source. Boundary pixels are not
* repeated. Note that this requires that all dimensions of the source (F
* source) must be > 1.
*
* @param source
* the interval to expand.
* @return Expansion of the {@link RandomAccessibleInterval} source as
* specified by border.
*/
public static < T > IntervalView< T > expandMirrorSingle( final RandomAccessibleInterval< T > source, final long... border )
{
return interval( extendMirrorSingle( source ), Intervals.expand( source, border ) );
}
代码示例来源:origin: imglib/imglib2
/**
* Expand a RandomAccessibleInterval as specified by border. Out of bounds
* pixels will be sampled by mirroring source. Boundary pixels are not
* repeated. Note that this requires that all dimensions of the source (F
* source) must be > 1.
*
* @param source
* the interval to expand.
* @return Expansion of the {@link RandomAccessibleInterval} source as
* specified by border.
*/
public static < T > IntervalView< T > expandMirrorSingle( final RandomAccessibleInterval< T > source, final long... border )
{
return interval( extendMirrorSingle( source ), Intervals.expand( source, border ) );
}
代码示例来源:origin: net.preibisch/multiview-reconstruction
public static double[] computeCenter( final Img< FloatType > i, final double threshold ) throws IncompatibleTypeException
{
final Img<FloatType> copy = i.copy();
Gauss3.gauss( 2, Views.extendMirrorSingle( copy ), copy );
return centerofmass( copy, threshold );
}
代码示例来源:origin: fiji/Stitching
public ImageInterpolation( final Img< T > image, final InterpolatorFactory< T, RandomAccessible< T > > interpolatorFactory, final boolean mirror )
{
this.image = image;
this.interpolatorFactory = interpolatorFactory;
if ( mirror )
this.interpolated = Views.interpolate( Views.extendMirrorSingle( image ), interpolatorFactory );
else
this.interpolated = Views.interpolate( Views.extendZero( image ), interpolatorFactory );
}
代码示例来源:origin: net.imglib2/imglib2-algorithms-gpl
/**
* Compute a Fourier space based convolution
* The image will be extended by mirroring with single boundary, the kernel will be zero-padded.
*
* @param img - the image
* @param kernel - the convolution kernel
* @param output - the output
* @param factory - the {@link ImgFactory} to create the fourier transforms
*/
public FFTConvolution( final RandomAccessibleInterval< R > img, final RandomAccessibleInterval< R > kernel, final RandomAccessibleInterval< R > output, final ImgFactory< ComplexFloatType > factory )
{
this ( Views.extendMirrorSingle( img ), img, Views.extendValue( kernel, Util.getTypeFromInterval( kernel ).createVariable() ), kernel, output, factory );
}
代码示例来源:origin: net.imglib2/imglib2-algorithm-gpl
/**
* Compute a Fourier space based convolution The image will be extended by
* mirroring with single boundary, the kernel will be zero-padded.
*
* @param img
* - the image
* @param kernel
* - the convolution kernel
* @param output
* - the output
* @param factory
* - the {@link ImgFactory} to create the fourier transforms
* @param service
* - service providing threads for multi-threading
*/
public FFTConvolution( final RandomAccessibleInterval< R > img, final RandomAccessibleInterval< R > kernel, final RandomAccessibleInterval< R > output, final ImgFactory< ComplexFloatType > factory, final ExecutorService service )
{
this( Views.extendMirrorSingle( img ), img, Views.extendValue( kernel, Util.getTypeFromInterval( kernel ).createVariable() ), kernel, output, factory, service );
}
代码示例来源:origin: net.preibisch/multiview-reconstruction
public static Img< FloatType > extractLI( final Img< FloatType > img, final long[] dim, final double[] center )
{
final Img< FloatType > psf = new ArrayImgFactory< FloatType >().create( dim, new FloatType() );
final ArrayList< RealLocalizable > locations = new ArrayList<>();
locations.add( new RealPoint( center ) );
//locations.add( new RealPoint( new double[] { i.dimension( 0 ) / 2, i.dimension( 1 ) / 2, i.dimension( 2 ) / 2 } ) );
final RealRandomAccessible< FloatType > rra = Views.interpolate( Views.extendMirrorSingle( img ), new NLinearInterpolatorFactory<>() );
PSFExtraction.extractPSFLocal( rra, locations, psf );
return psf;
}
代码示例来源:origin: net.preibisch/multiview-reconstruction
public static Img< FloatType > extractNN( final Img< FloatType > img, final long[] dim, final double[] center )
{
final Img< FloatType > psf = new ArrayImgFactory< FloatType >().create( dim, new FloatType() );
final ArrayList< RealLocalizable > locations = new ArrayList<>();
locations.add( new RealPoint( center ) );
//locations.add( new RealPoint( new double[] { i.dimension( 0 ) / 2, i.dimension( 1 ) / 2, i.dimension( 2 ) / 2 } ) );
final RealRandomAccessible< FloatType > rra = Views.interpolate( Views.extendMirrorSingle( img ), new NearestNeighborInterpolatorFactory<>());
PSFExtraction.extractPSFLocal( rra, locations, psf );
return psf;
}
代码示例来源:origin: imagej/imagej-ops
@Override
public RandomAccessibleInterval<T> calculate(RandomAccessibleInterval<T> input) {
final long[] newDims = Intervals.dimensionsAsLongArray(in());
for (int i = 0; i < Math.min(scaleFactors.length, in().numDimensions()); i++) {
newDims[i] = Math.round(in().dimension(i) * scaleFactors[i]);
}
IntervalView<T> interval = Views.interval(Views.raster(RealViews.affineReal(
Views.interpolate(Views.extendMirrorSingle(input), interpolator),
new Scale(scaleFactors))), new FinalInterval(newDims));
return interval;
}
代码示例来源:origin: imagej/imagej-ops
/**
* @see MaxFilterOp
* @see DefaultMaxFilter
*/
@Test
public void testMaxFilter() {
ops.run(MaxFilterOp.class, out, in, shape, oobFactory);
byte max = Byte.MIN_VALUE;
NeighborhoodsIterableInterval<ByteType> neighborhoods =
shape.neighborhoods(Views.interval(Views.extendMirrorSingle(in), in));
for (ByteType t : neighborhoods.firstElement()) {
max = (byte) Math.max(t.getInteger(), max);
}
assertEquals(out.firstElement().get(), max);
}
代码示例来源:origin: imagej/imagej-ops
/**
* @see MinFilterOp
* @see DefaultMinFilter
*/
@Test
public void testMinFilter() {
ops.run(MinFilterOp.class, out, in, shape, oobFactory);
byte min = Byte.MAX_VALUE;
NeighborhoodsIterableInterval<ByteType> neighborhoods =
shape.neighborhoods(Views.interval(Views.extendMirrorSingle(in), in));
for (ByteType t : neighborhoods.firstElement()) {
min = (byte) Math.min(t.getInteger(), min);
}
assertEquals(min, out.firstElement().get());
}
代码示例来源:origin: imagej/imagej-ops
/**
* @see MeanFilterOp
* @see DefaultMeanFilter
*/
@Test
public void testMeanFilter() {
ops.run(MeanFilterOp.class, out, in, shape, oobFactory);
double sum = 0.0;
NeighborhoodsIterableInterval<ByteType> neighborhoods =
shape.neighborhoods(Views.interval(Views.extendMirrorSingle(in), in));
for (ByteType t : neighborhoods.firstElement()) {
sum += t.getRealDouble();
}
assertEquals(Util.round(sum / 9.0), out.firstElement().get());
}
代码示例来源:origin: imagej/imagej-ops
/**
* @see VarianceFilterOp
* @see DefaultVarianceFilter
*/
@Test
public void testVarianceFilter() {
ops.run(VarianceFilterOp.class, out, in, shape, oobFactory);
double sum = 0.0;
double sumSq = 0.0;
NeighborhoodsIterableInterval<ByteType> neighborhoods =
shape.neighborhoods(Views.interval(Views.extendMirrorSingle(in), in));
for (ByteType t : neighborhoods.firstElement()) {
sum += t.getRealDouble();
sumSq += t.getRealDouble()*t.getRealDouble();
}
assertEquals((byte)Util.round((sumSq - (sum * sum / 9)) / 8), out.firstElement().get());
}
代码示例来源:origin: imagej/imagej-ops
@Test
public void extendMirrorSingleTest() {
Img<DoubleType> img = new ArrayImgFactory<DoubleType>().create(new int[] { 10, 10 }, new DoubleType());
OutOfBounds<DoubleType> il2 = Views.extendMirrorSingle(img).randomAccess();
OutOfBounds<DoubleType> opr = ops.transform().extendMirrorSingleView(img).randomAccess();
il2.setPosition(new int[] { -1, -1 });
opr.setPosition(new int[] { -1, -1 });
assertEquals(il2.get().get(), opr.get().get(), 1e-10);
il2.setPosition(new int[] { 11, 11 });
opr.setPosition(new int[] { 11, 11 });
assertEquals(il2.get().get(), opr.get().get(), 1e-10);
}
内容来源于网络,如有侵权,请联系作者删除!