Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## ij.process
Class FHT

    java.lang.Object
      ij.process.ImageProcessor
          ij.process.FloatProcessor
              ij.process.FHT

public class FHT
extends FloatProcessor

This class contains a Java implementation of the Fast Hartley Transform. It is based on Pascal code in NIH Image contributed by Arlo Reeves (http://rsb.info.nih.gov/ij/docs/ImageFFT/). The Fast Hartley Transform was restricted by U.S. Patent No. 4,646,256, but was placed in the public domain by Stanford University in 1995 and is now freely available.

Field Summary
`int` | `originalBitDepth` Used by the FFT class.
`java.awt.image.ColorModel` | `originalColorModel` Used by the FFT class.
`int` | `originalHeight` Used by the FFT class.
`int` | `originalWidth` Used by the FFT class.
`boolean` | `quadrantSwapNeeded` Used by the FFT class.
`ColorProcessor` | `rgb` Used by the FFT class.

Fields inherited from class ij.process.ImageProcessor
`antialiasedText, baseCM, BLACK, BLACK_AND_WHITE_LUT, bLUT1, bLUT2, boldFont, CENTER_JUSTIFY, clipXMax, clipXMin, clipYMax, clipYMin, cm, cm2, cTable, cx, cy, defaultColorModel, drawingColor, font, fontMetrics, gLUT1, gLUT2, height, histogramMax, histogramMin, histogramSize, image, img, interpolate, inversionTested, invertedLut, justification, LEFT_JUSTIFY, lineWidth, lutAnimation, lutUpdateMode, maxThreshold, minThreshold, newPixels, NO_LUT_UPDATE, NO_THRESHOLD, OVER_UNDER_LUT, raster, RED_LUT, RIGHT_JUSTIFY, rLUT1, rLUT2, roiHeight, roiWidth, roiX, roiY, sampleModel, snapshotHeight, snapshotWidth, source, width, xMax, xMin, yMax, yMin`

Constructor Summary
`FHT(ImageProcessor ip)` Constructs a FHT object from an ImageProcessor.

Method Summary
`FHT` | `conjugateMultiply(FHT fht)` Returns the image resulting from the point by point Hartley conjugate multiplication of this image and the specified image.
`void` | `dfht3(float[] x, int base, boolean inverse, int maxN)` Performs an optimized 1D FHT.
`FHT` | `divide(FHT fht)` Returns the image resulting from the point by point Hartley division of this image by the specified image.
`ImageStack` | `getComplexTransform()` Converts this FHT to a complex Fourier transform and returns it as a two slice stack.
`FHT` | `getCopy()` Returns a clone of this FHT.
`ImageProcessor` | `getPowerSpectrum()` Returns an 8-bit power spectrum, log-scaled to 1-254.
`void` | `inverseTransform()` Performs an inverse transform, converting this image into the space domain.
`FHT` | `multiply(FHT fht)` Returns the image resulting from the point by point Hartley multiplication of this image and the specified image.
`boolean` | `powerOf2Size()` Returns true of this FHT contains a square image with a width that is a power of two.
`void` | `rc2DFHT(float[] x, boolean inverse, int maxN)` Performs a 2D FHT (Fast Hartley Transform).
`void` | `setShowProgress(boolean showProgress)` Enables/disables display of the progress bar during transforms.
`void` | `swapQuadrants()` Swap quadrants 1 and 3 and 2 and 4 of the image contained in this FHT.
`void` | `swapQuadrants(ImageProcessor ip)` Swap quadrants 1 and 3 and 2 and 4 of the specified ImageProcessor so the power spectrum origin is at the center of the image.
`java.lang.String` | `toString()` Returns a string containing information about this FHT.
`void` | `transform()` Performs a foreward transform, converting this image into the frequency domain.

Methods inherited from class ij.process.FloatProcessor
`abs, add, add, and, applyTable, autoThreshold, convolve, convolve3x3, copyBits, createImage, createProcessor, crop, dilate, drawPixel, duplicate, erode, exp, fill, fill, filter, findMinAndMax, flipVertical, gamma, get, get, getf, getf, getHistogram, getInterpolatedPixel, getMax, getMin, getPixel, getPixel, getPixels, getPixelsCopy, getPixelValue, getSnapshotPixels, invert, log, max, maxValue, medianFilter, min, minValue, multiply, noise, or, putPixel, putPixel, putPixelValue, reset, reset, resetMinAndMax, resize, rotate, scale, set, set, setBackgroundValue, setColor, setf, setf, setMinAndMax, setPixels, setPixels, setSnapshotPixels, setThreshold, setValue, snapshot, sqr, sqrt, threshold, toFloat, xor`

Methods inherited from class ij.process.ImageProcessor
`convertToByte, convertToFloat, convertToRGB, convertToShort, drawDot, drawDot2, drawLine, drawOval, drawPolygon, drawRect, drawString, drawString, fillOval, fillPolygon, findEdges, flipHorizontal, getAutoThreshold, getAutoThreshold, getBestIndex, getCalibrationTable, getColorModel, getColumn, getCurrentColorModel, getDefaultColorModel, getFloatArray, getFontMetrics, getHeight, getHistogramMax, getHistogramMin, getHistogramSize, getIndexSampleModel, getIntArray, getInterpolate, getInterpolatedValue, getLine, getLutUpdateMode, getMask, getMaskArray, getMaxThreshold, getMinThreshold, getNChannels, getPixelCount, getRoi, getRow, getStringWidth, getWidth, hideProgress, insert, invertLut, isColorLut, isInvertedLut, isKillable, isPseudoColorLut, lineTo, makeDefaultColorModel, maskSizeError, moveTo, putColumn, putRow, resetBinaryThreshold, resetRoi, resetThreshold, resize, rotateLeft, rotateRight, setAntialiasedText, setCalibrationTable, setClipRect, setColor, setColorModel, setFloatArray, setFont, setHistogramRange, setHistogramSize, setIntArray, setInterpolate, setJustification, setLineWidth, setLutAnimation, setMask, setProgressBar, setRoi, setRoi, setRoi, setRoi, setSnapshotCopyMode, sharpen, showProgress, smooth`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### quadrantSwapNeeded

    public boolean quadrantSwapNeeded

  Used by the FFT class.

### rgb

    public ColorProcessor rgb

  Used by the FFT class.

### originalWidth

    public int originalWidth

  Used by the FFT class.

### originalHeight

    public int originalHeight

  Used by the FFT class.

### originalBitDepth

    public int originalBitDepth

  Used by the FFT class.

### originalColorModel

    public java.awt.image.ColorModel originalColorModel

  Used by the FFT class.

Constructor Detail

### FHT

    public FHT(ImageProcessor ip)

  Constructs a FHT object from an ImageProcessor. Byte, short and RGB images are converted to float. Float images are duplicated.

Method Detail

### powerOf2Size

    public boolean powerOf2Size()

  Returns true of this FHT contains a square image with a width that is a power of two.

### transform

    public void transform()

  Performs a foreward transform, converting this image into the frequency domain. The image contained in this FHT must be square and its width must be a power of 2.

### inverseTransform

    public void inverseTransform()

  Performs an inverse transform, converting this image into the space domain. The image contained in this FHT must be square and its width must be a power of 2.

### rc2DFHT

    public void rc2DFHT(float[] x,
                        boolean inverse,
                        int maxN)

  Performs a 2D FHT (Fast Hartley Transform).

### dfht3

    public void dfht3(float[] x,
                      int base,
                      boolean inverse,
                      int maxN)

  Performs an optimized 1D FHT.

### getPowerSpectrum

    public ImageProcessor getPowerSpectrum()

  Returns an 8-bit power spectrum, log-scaled to 1-254. The image in this FHT is assumed to be in the frequency domain.

### getComplexTransform

    public ImageStack getComplexTransform()

  Converts this FHT to a complex Fourier transform and returns it as a two slice stack.

### swapQuadrants

    public void swapQuadrants(ImageProcessor ip)

  Swap quadrants 1 and 3 and 2 and 4 of the specified ImageProcessor so the power spectrum origin is at the center of the image.

                          2 1
                          3 4

### swapQuadrants

    public void swapQuadrants()

  Swap quadrants 1 and 3 and 2 and 4 of the image contained in this FHT.

### multiply

    public FHT multiply(FHT fht)

  Returns the image resulting from the point by point Hartley multiplication of this image and the specified image. Both images are assumed to be in the frequency domain. Multiplication in the frequency domain is equivalent to convolution in the space domain.

### conjugateMultiply

    public FHT conjugateMultiply(FHT fht)

  Returns the image resulting from the point by point Hartley conjugate multiplication of this image and the specified image. Both images are assumed to be in the frequency domain. Conjugate multiplication in the frequency domain is equivalent to correlation in the space domain.

### divide

    public FHT divide(FHT fht)

  Returns the image resulting from the point by point Hartley division of this image by the specified image. Both images are assumed to be in the frequency domain. Division in the frequency domain is equivalent to deconvolution in the space domain.

### setShowProgress

    public void setShowProgress(boolean showProgress)

  Enables/disables display of the progress bar during transforms.

### getCopy

    public FHT getCopy()

  Returns a clone of this FHT.

### toString

    public java.lang.String toString()

  Returns a string containing information about this FHT.

  Overrides:
    `toString` in class `ImageProcessor`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD