protected void resizeImages( int workRegionSize ) { templateNew.reshape(workRegionSize, workRegionSize); template.reshape(workRegionSize, workRegionSize); cosine.reshape(workRegionSize,workRegionSize); k.reshape(workRegionSize,workRegionSize); kf.reshape(workRegionSize,workRegionSize); alphaf.reshape(workRegionSize,workRegionSize); newAlphaf.reshape(workRegionSize,workRegionSize); response.reshape(workRegionSize,workRegionSize); tmpReal0.reshape(workRegionSize,workRegionSize); tmpReal1.reshape(workRegionSize,workRegionSize); tmpFourier0.reshape(workRegionSize,workRegionSize); tmpFourier1.reshape(workRegionSize,workRegionSize); tmpFourier2.reshape(workRegionSize,workRegionSize); gaussianWeight.reshape(workRegionSize,workRegionSize); gaussianWeightDFT.reshape(workRegionSize,workRegionSize); }
/** * <p> * Converts an {@link boofcv.struct.image.GrayS8} into a {@link boofcv.struct.image.GrayF64}. * </p> * * @param input Input image which is being converted. Not modified. * @param output (Optional) The output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 convert(GrayS8 input, GrayF64 output) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertImage.convert(input, output); return output; }
/** * Converts a {@link InterleavedF64} into a {@link GrayF64} by computing the average value of each pixel * across all the bands. * * @param input (Input) The ImageInterleaved that is being converted. Not modified. * @param output (Optional) The single band output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 average( InterleavedF64 input , GrayF64 output ) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ConvertInterleavedToSingle.average(input, output); return output; }
/** * Converts a {@link Planar} into a {@link ImageGray} by computing the average value of each pixel * across all the bands. * * @param input Input Planar image that is being converted. Not modified. * @param output (Optional) The single band output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 average( Planar<GrayF64> input , GrayF64 output ) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertPlanarToGray.average(input, output); return output; }
/** * <p> * Converts an {@link boofcv.struct.image.GrayS32} into a {@link boofcv.struct.image.GrayF64}. * </p> * * @param input Input image which is being converted. Not modified. * @param output (Optional) The output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 convert(GrayS32 input, GrayF64 output) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertImage.convert(input, output); return output; }
/** * <p> * Converts an {@link boofcv.struct.image.GrayS64} into a {@link boofcv.struct.image.GrayF64}. * </p> * * @param input Input image which is being converted. Not modified. * @param output (Optional) The output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 convert(GrayS64 input, GrayF64 output) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertImage.convert(input, output); return output; }
/** * <p> * Converts an {@link boofcv.struct.image.GrayU8} into a {@link boofcv.struct.image.GrayF64}. * </p> * * @param input Input image which is being converted. Not modified. * @param output (Optional) The output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 convert(GrayU8 input, GrayF64 output) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertImage.convert(input, output); return output; }
/** * <p> * Converts an {@link boofcv.struct.image.GrayS16} into a {@link boofcv.struct.image.GrayF64}. * </p> * * @param input Input image which is being converted. Not modified. * @param output (Optional) The output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 convert(GrayS16 input, GrayF64 output) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertImage.convert(input, output); return output; }
/** * <p> * Converts an {@link boofcv.struct.image.GrayU16} into a {@link boofcv.struct.image.GrayF64}. * </p> * * @param input Input image which is being converted. Not modified. * @param output (Optional) The output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 convert(GrayU16 input, GrayF64 output) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertImage.convert(input, output); return output; }
/** * <p> * Converts an {@link boofcv.struct.image.GrayF32} into a {@link boofcv.struct.image.GrayF64}. * </p> * * @param input Input image which is being converted. Not modified. * @param output (Optional) The output image. If null a new image is created. Modified. * @return Converted image. */ public static GrayF64 convert(GrayF32 input, GrayF64 output) { if (output == null) { output = new GrayF64(input.width, input.height); } else { output.reshape(input.width,input.height); } ImplConvertImage.convert(input, output); return output; }
/** * Specifies input image. Gradient is computed immediately * @param input input image */ @Override public void setInput( Input input ) { super.setInput(input); orientation.reshape(input.width,input.height); magnitude.reshape(input.width,input.height); computePixelFeatures(); }
/** * Sets the gradient and precomputes pixel orientation and magnitude * * @param derivX image derivative x-axis * @param derivY image derivative y-axis */ public void setImageGradient(D derivX , D derivY ) { InputSanityCheck.checkSameShape(derivX,derivY); if( derivX.stride != derivY.stride || derivX.startIndex != derivY.startIndex ) throw new IllegalArgumentException("stride and start index must be the same"); savedAngle.reshape(derivX.width,derivX.height); savedMagnitude.reshape(derivX.width,derivX.height); imageDerivX.wrap(derivX); imageDerivY.wrap(derivY); precomputeAngles(derivX); }