net.imglib2.view.Views.collapseReal()方法的使用及代码示例

x33g5p2x  于2022-02-01 转载在 其他  
字(8.1k)|赞(0)|评价(0)|浏览(126)

本文整理了Java中net.imglib2.view.Views.collapseReal()方法的一些代码示例,展示了Views.collapseReal()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Views.collapseReal()方法的具体详情如下:
包路径:net.imglib2.view.Views
类名称:Views
方法名:collapseReal

Views.collapseReal介绍

[英]Collapse the nth dimension of an n -dimensional RandomAccessible<T extends RealType<T>> into an (n-1)-dimensional RandomAccessible< RealComposite<T>>
[中]将n维RandomAccessible<T扩展RealType<T>>的nth维折叠为(n-1)维RandomAccessible<RealComposite<T>>

代码示例

代码示例来源:origin: imagej/imagej-ops

  1. @Override
  2. public CompositeView<T, RealComposite<T>> calculate(RandomAccessible<T> input) {
  3. return Views.collapseReal(input, numChannels);
  4. }

代码示例来源:origin: imagej/imagej-ops

  1. @Override
  2. public CompositeIntervalView<T, RealComposite<T>> calculate(RandomAccessibleInterval<T> input) {
  3. return Views.collapseReal(input);
  4. }

代码示例来源:origin: imagej/imagej-ops

  1. @Override
  2. public CompositeIntervalView<T, RealComposite<T>> calculate(RandomAccessibleInterval<T> input) {
  3. List<RandomAccessibleInterval<T>> derivatives = new ArrayList<>();
  4. for (int i = 0; i < derivativeFunctions.length; i++) {
  5. RandomAccessibleInterval<T> derivative = derivativeFunctions[i].calculate(input);
  6. derivatives.add(derivative);
  7. }
  8. RandomAccessibleInterval<T> stacked = Views.stack(derivatives);
  9. return Views.collapseReal(stacked);
  10. }
  11. }

代码示例来源:origin: imglib/imglib2

  1. /**
  2. * Compose a list of same {@link Interval} and same {@link RealType} A
  3. * {@link RandomAccessibleInterval RandomAccessibleIntervals} into a
  4. * {@link RandomAccessibleInterval} of some target {@link Type} B using a
  5. * {@link Converter} from {@link Composite} of A to B.
  6. *
  7. * @param components
  8. * @param composer
  9. * @param targetType
  10. * @return
  11. */
  12. final static public < A extends RealType< A >, B extends Type< B > > RandomAccessibleInterval< B > composeReal(
  13. final List< RandomAccessibleInterval< A > > components,
  14. final Converter< RealComposite< A >, B > composer,
  15. final B targetType )
  16. {
  17. return convert(
  18. Views.collapseReal( Views.stack( components ) ),
  19. composer,
  20. targetType );
  21. }

代码示例来源:origin: net.imglib2/imglib2

  1. /**
  2. * Compose a list of same {@link Interval} and same {@link RealType} A
  3. * {@link RandomAccessibleInterval RandomAccessibleIntervals} into a
  4. * {@link RandomAccessibleInterval} of some target {@link Type} B using a
  5. * {@link Converter} from {@link Composite} of A to B.
  6. *
  7. * @param components
  8. * @param composer
  9. * @param targetType
  10. * @return
  11. */
  12. final static public < A extends RealType< A >, B extends Type< B > > RandomAccessibleInterval< B > composeReal(
  13. final List< RandomAccessibleInterval< A > > components,
  14. final Converter< RealComposite< A >, B > composer,
  15. final B targetType )
  16. {
  17. return convert(
  18. Views.collapseReal( Views.stack( components ) ),
  19. composer,
  20. targetType );
  21. }

代码示例来源:origin: imagej/imagej-ops

  1. @Override
  2. public CompositeIntervalView<T, RealComposite<T>> calculate(RandomAccessibleInterval<T> input) {
  3. List<RandomAccessibleInterval<T>> derivatives = new ArrayList<>();
  4. for (int i = 0; i < derivativeComputers.length; i++) {
  5. RandomAccessibleInterval<T> derivative = createRAI.calculate(input);
  6. derivativeComputers[i].compute(input, derivative);
  7. for (int j = 0; j < derivativeComputers.length; j++) {
  8. RandomAccessibleInterval<T> out = createRAI.calculate(input);
  9. derivativeComputers[j].compute(derivative, out);
  10. derivatives.add(out);
  11. }
  12. }
  13. RandomAccessibleInterval<T> stackedDerivatives = Views.stack(derivatives);
  14. return Views.collapseReal(stackedDerivatives);
  15. }

代码示例来源:origin: sc.fiji/TrakEM2_

  1. public LinearIntensityMap( final RandomAccessibleInterval< T > source, final InterpolatorFactory< RealComposite< T >, RandomAccessible< RealComposite< T > > > interpolatorFactory )
  2. {
  3. this.interpolatorFactory = interpolatorFactory;
  4. final CompositeIntervalView< T, RealComposite< T > > collapsedSource = Views.collapseReal( source );
  5. dimensions = new FinalInterval( collapsedSource );
  6. final double[] shift = new double[ dimensions.numDimensions() ];
  7. for ( int d = 0; d < shift.length; ++d )
  8. shift[ d ] = 0.5;
  9. translation = new Translation( shift );
  10. final RandomAccessible< RealComposite< T > > extendedCollapsedSource = Views.extendBorder( collapsedSource );
  11. coefficients = Views.interpolate( extendedCollapsedSource, interpolatorFactory );
  12. }

代码示例来源:origin: net.imglib2/imglib2-algorithm

  1. private static < T extends RealType< T >, U extends RealType< U > > void transformAlongDimension(
  2. final RandomAccessible< T > source,
  3. final RandomAccessibleInterval< U > target,
  4. final Distance d,
  5. final int dim )
  6. {
  7. final int lastDim = target.numDimensions() - 1;
  8. final long size = target.dimension( dim );
  9. final RealComposite< DoubleType > tmp = Views.collapseReal( createAppropriateOneDimensionalImage( size, new DoubleType() ) ).randomAccess().get();
  10. // do not permute if we already work on last dimension
  11. final Cursor< RealComposite< T > > s = Views.flatIterable( Views.collapseReal( dim == lastDim ? Views.interval( source, target ) : Views.permute( Views.interval( source, target ), dim, lastDim ) ) ).cursor();
  12. final Cursor< RealComposite< U > > t = Views.flatIterable( Views.collapseReal( dim == lastDim ? target : Views.permute( target, dim, lastDim ) ) ).cursor();
  13. final RealComposite< LongType > lowerBoundDistanceIndex = Views.collapseReal( createAppropriateOneDimensionalImage( size, new LongType() ) ).randomAccess().get();
  14. final RealComposite< DoubleType > envelopeIntersectLocation = Views.collapseReal( createAppropriateOneDimensionalImage( size + 1, new DoubleType() ) ).randomAccess().get();
  15. while ( s.hasNext() )
  16. {
  17. final RealComposite< T > sourceComp = s.next();
  18. final RealComposite< U > targetComp = t.next();
  19. for ( long i = 0; i < size; ++i )
  20. {
  21. tmp.get( i ).set( sourceComp.get( i ).getRealDouble() );
  22. }
  23. transformSingleColumn( tmp, targetComp, lowerBoundDistanceIndex, envelopeIntersectLocation, d, dim, size );
  24. }
  25. }

代码示例来源:origin: net.imglib2/imglib2-algorithm

  1. private static < T extends RealType< T >, U extends ComplexType< U > > RandomAccessibleInterval< U > calculateEigenValuesImpl(
  2. final RandomAccessibleInterval< T > tensor,
  3. final RandomAccessibleInterval< U > eigenvalues,
  4. final EigenValues< T, U > ev )
  5. {
  6. final Cursor< RealComposite< T > > m = Views.iterable( Views.collapseReal( tensor ) ).cursor();
  7. final Cursor< NumericComposite< U > > e = Views.iterable( Views.collapseNumeric( eigenvalues ) ).cursor();
  8. while ( m.hasNext() )
  9. ev.compute( m.next(), e.next() );
  10. return eigenvalues;
  11. }

代码示例来源:origin: net.imglib2/imglib2-algorithm

  1. private static < T extends RealType< T >, U extends RealType< U > > void transformL1AlongDimension(
  2. final RandomAccessible< T > source,
  3. final RandomAccessibleInterval< U > target,
  4. final int dim,
  5. final double weight )
  6. {
  7. final int lastDim = target.numDimensions() - 1;
  8. final long size = target.dimension( dim );
  9. final RealComposite< DoubleType > tmp = Views.collapseReal( createAppropriateOneDimensionalImage( size, new DoubleType() ) ).randomAccess().get();
  10. // do not permute if we already work on last dimension
  11. final Cursor< RealComposite< T > > s = Views.flatIterable( Views.collapseReal( dim == lastDim ? Views.interval( source, target ) : Views.permute( Views.interval( source, target ), dim, lastDim ) ) ).cursor();
  12. final Cursor< RealComposite< U > > t = Views.flatIterable( Views.collapseReal( dim == lastDim ? target : Views.permute( target, dim, lastDim ) ) ).cursor();
  13. while ( s.hasNext() )
  14. {
  15. final RealComposite< T > sourceComp = s.next();
  16. final RealComposite< U > targetComp = t.next();
  17. for ( long i = 0; i < size; ++i )
  18. {
  19. tmp.get( i ).set( sourceComp.get( i ).getRealDouble() );
  20. }
  21. transformL1SingleColumn( tmp, targetComp, weight, size );
  22. }
  23. }

代码示例来源:origin: imagej/imagej-ops

  1. @Test
  2. public void defaultCollapseRealTest() {
  3. Img<DoubleType> img = new ArrayImgFactory<DoubleType>().create(new int[] { 10, 10 },
  4. new DoubleType());
  5. CompositeIntervalView<DoubleType, RealComposite<DoubleType>> il2 = Views
  6. .collapseReal((RandomAccessibleInterval<DoubleType>) img);
  7. CompositeIntervalView<DoubleType, RealComposite<DoubleType>> opr = ops.transform()
  8. .collapseRealView((RandomAccessibleInterval<DoubleType>) img);
  9. assertEquals(il2.numDimensions(), opr.numDimensions());
  10. CompositeView<DoubleType, RealComposite<DoubleType>> il2_2 = Views
  11. .collapseReal((RandomAccessible<DoubleType>) img, 1);
  12. CompositeView<DoubleType, RealComposite<DoubleType>> opr_2 = ops.transform()
  13. .collapseRealView((RandomAccessible<DoubleType>) img, 1);
  14. assertEquals(il2_2.numDimensions(), opr_2.numDimensions());
  15. }

相关文章