Class ImageFanMaker

java.lang.Object
tritechgemini.imagedata.ImageFanMaker
Direct Known Subclasses:
FanPicksFromData

public abstract class ImageFanMaker extends Object
Functions to convert an array or raw sonar data into a fan shaped image. Well, Not actually an image, but an array of numbers that can be put into an image.
If image data specified, it can be processed data, e.g. after some sort of background subtraction, otherwise it will be taken as the raw image data from within the data record
Author:
Doug Gillespie
  • Constructor Details

    • ImageFanMaker

      public ImageFanMaker()
  • Method Details

    • createFanData

      public FanImageData createFanData(SonarImageRecordI sonarRecord)
      Create fan data from a GeminiRecord with default sizes, probably a width equal to the number of beams and a height scaled accordingly.
      Parameters:
      sonarRecord -
      Returns:
      Fan image data
    • createFanData

      public FanImageData createFanData(SonarImageRecordI sonarRecord, byte[] imageData)
      Create fan data from a GeminiRecord with default sizes, probably a width equal to the number of beams and a height scaled accordingly.
      This function is most useful if you've modified the image data from a sonar record in some way (e.g. background subtraction) and want an image of the modified data.
      Parameters:
      sonarRecord - Gemini record
      raw - image data
      Returns:
      Fan image data
    • createFanData

      public FanImageData createFanData(SonarImageRecordI sonarRecord, int nXbins)
      Create fan data using the raw data from the record and the given number of x pixels. Number of y pixels calculated automatically.
      Parameters:
      sonarRecord - Gemini record
      nXbins - number of x pixels
      Returns:
      Fan image data
    • createFanData

      public FanImageData createFanData(SonarImageRecordI sonarRecord, int nPixX, byte[] imageData)
      Create fan image with the given width. height will be scaled according to the range of the bearing table
      Parameters:
      sonarRecord - Gemini data record
      nPixX - number of X pixels
      raw - image data
      Returns:
      Fan image data
    • createFanData

      public FanImageData createFanData(SonarImageRecordI sonarRecord, int nPixX, int nPixY)
      n width. height will be scaled according to the range of the bearing table
      Parameters:
      sonarRecord - Gemini data record
      nPixX - number of X pixels
      nPixY - number of Y pixels
      Returns:
      Fan image data
    • createFanData

      public abstract FanImageData createFanData(SonarImageRecordI sonarRecord, int nPixX, int nPixY, byte[] imageData)
      n width. height will be scaled according to the range of the bearing table
      Parameters:
      sonarRecord - Gemini data record
      nPixX - number of X pixels
      nPixY - number of Y pixels
      raw - image data
      Returns:
      Fan image data
    • getDefaultXbins

      public int getDefaultXbins(SonarImageRecordI sonarRecord)
      Get the default number of X bins. Default default is the number of beams but this may be overridden by methods which want a tighter image.
      Parameters:
      sonarRecord - Gemini data record
      Returns:
      default image width
    • clearTables

      public abstract void clearTables()
      Most image makers will contain a load of lookup tables to get data in the right place this will clear the tables so that they can be rebuilt on the next call to createFanData