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

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

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

Views.unshear介绍

[英]Negative shear transform of a RandomAccessible using InverseShearTransform, i.e. c[ shearDimension ] = c[ shearDimension ] - c[ referenceDimension ]
[中]一个随机变量的负剪切变换可以使用逆剪切变换,即c[shearDimension]=c[shearDimension]-c[referenceDimension]

代码示例

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

  1. @Override
  2. public IntervalView<T> calculate(RandomAccessible<T> input) {
  3. return Views.unshear(input, interval, shearDimension, referenceDimension);
  4. }
  5. }

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

  1. @Override
  2. public TransformView<T> calculate(RandomAccessible<T> input) {
  3. return Views.unshear(input, shearDimension, referenceDimension);
  4. }

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

  1. /**
  2. * Negative shear transform of a RandomAccessible using
  3. * {@link InverseShearTransform}, i.e. c[ shearDimension ] = c[
  4. * shearDimension ] - c[ referenceDimension ]
  5. *
  6. * @param source
  7. * input, e.g. extended {@link RandomAccessibleInterval}
  8. * @param interval
  9. * original interval
  10. * @param shearDimension
  11. * dimension to be sheared
  12. * @param referenceDimension
  13. * reference dimension for shear
  14. *
  15. * @return {@link IntervalView} containing the result. The returned
  16. * interval's dimension are determined by applying the
  17. * {@link ShearTransform#transform} method on the input interval.
  18. */
  19. public static < T > IntervalView< T > unshear( final RandomAccessible< T > source, final Interval interval, final int shearDimension, final int referenceDimension )
  20. {
  21. final InverseShearTransform transform = new InverseShearTransform( source.numDimensions(), shearDimension, referenceDimension );
  22. return Views.interval( Views.unshear( source, shearDimension, referenceDimension ), transform.transform( new BoundingBox( interval ) ).getInterval() );
  23. }

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

  1. /**
  2. * Negative shear transform of a RandomAccessible using
  3. * {@link InverseShearTransform}, i.e. c[ shearDimension ] = c[
  4. * shearDimension ] - c[ referenceDimension ]
  5. *
  6. * @param source
  7. * input, e.g. extended {@link RandomAccessibleInterval}
  8. * @param interval
  9. * original interval
  10. * @param shearDimension
  11. * dimension to be sheared
  12. * @param referenceDimension
  13. * reference dimension for shear
  14. *
  15. * @return {@link IntervalView} containing the result. The returned
  16. * interval's dimension are determined by applying the
  17. * {@link ShearTransform#transform} method on the input interval.
  18. */
  19. public static < T > IntervalView< T > unshear( final RandomAccessible< T > source, final Interval interval, final int shearDimension, final int referenceDimension )
  20. {
  21. final InverseShearTransform transform = new InverseShearTransform( source.numDimensions(), shearDimension, referenceDimension );
  22. return Views.interval( Views.unshear( source, shearDimension, referenceDimension ), transform.transform( new BoundingBox( interval ) ).getInterval() );
  23. }

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

  1. @Test
  2. public void UnshearIntervalTest() {
  3. Img<DoubleType> img = new ArrayImgFactory<DoubleType>().create(new int[] { 2, 2 }, new DoubleType());
  4. Cursor<DoubleType> imgC = img.cursor();
  5. while (imgC.hasNext()) {
  6. imgC.next().set(1);
  7. }
  8. Cursor<DoubleType> il2 = Views
  9. .unshear(Views.shear(Views.extendZero(img), 0, 1), new FinalInterval(new long[] { 0, 0 }, new long[] { 3, 3 }), 0, 1)
  10. .cursor();
  11. RandomAccess<DoubleType> opr = ops.transform()
  12. .unshearView(Views.shear(Views.extendZero(img), 0, 1), new FinalInterval(new long[] { 0, 0 }, new long[] { 3, 3 }), 0, 1)
  13. .randomAccess();
  14. while (il2.hasNext()) {
  15. il2.next();
  16. opr.setPosition(il2);
  17. assertEquals(il2.get().get(), opr.get().get(), 1e-10);
  18. }
  19. }
  20. }

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

  1. @Test
  2. public void defaultUnshearTest() {
  3. Img<DoubleType> img = new ArrayImgFactory<DoubleType>().create(new int[] { 2, 2 }, new DoubleType());
  4. Cursor<DoubleType> imgC = img.cursor();
  5. while (imgC.hasNext()) {
  6. imgC.next().set(1);
  7. }
  8. TransformView<DoubleType> il2 = Views.unshear(Views.shear(Views.extendZero(img), 0, 1), 0, 1);
  9. TransformView<DoubleType> opr = ops.transform().unshearView(Views.shear(Views.extendZero(img), 0, 1), 0, 1);
  10. Cursor<DoubleType> il2C = Views.interval(il2, new FinalInterval(new long[] { 0, 0 }, new long[] { 3, 3 }))
  11. .cursor();
  12. RandomAccess<DoubleType> oprRA = Views
  13. .interval(opr, new FinalInterval(new long[] { 0, 0 }, new long[] { 3, 3 })).randomAccess();
  14. while (il2C.hasNext()) {
  15. il2C.next();
  16. oprRA.setPosition(il2C);
  17. assertEquals(il2C.get().get(), oprRA.get().get(), 1e-10);
  18. }
  19. }

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

  1. iv.transform( boundingBox );
  2. IntervalView<FloatType> viewTransformed = Views.unshear( extended, img, target, source );

相关文章