public class SidescanUtil
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
static double[] |
applyNormalizationAndTVG(double[] data,
double range,
SidescanParameters sidescanParams)
Applies normalization and TVG to data.
|
static double |
calcHeightFrom2XIndexesOfSidescanLine(int xIndex1,
int xIndex2,
SidescanLine line)
Calculates the height of an object by the two indexes of the shadow.
|
static double |
calcHorizontalDistanceFrom2XIndexesOf2SidescanLines(int xIndexLine1,
SidescanLine line1,
int xIndexLine2,
SidescanLine line2)
Calculates the horizontal distance from two x indexes (
SidescanLine.getData() ) of two
SidescanLine s. |
static double |
calcSlantDistanceFrom2XIndexesOf2SidescanLines(int xIndexLine1,
SidescanLine line1,
int xIndexLine2,
SidescanLine line2)
Calculates the slant distance (2D) from two x indexes (
SidescanLine.getData() ) of two
SidescanLine s. |
static LocationType |
convertImagePointXToLocation(int imageMouseX,
SidescanLine sidescanLine,
boolean slantRangeCorrection,
java.awt.image.BufferedImage image)
Method to convert from mouse click x point in the image to sidescan x point.
|
static int |
convertImagePointXToSidescanLinePointX(int imageMouseX,
SidescanLine sidescanLine,
java.awt.image.BufferedImage image)
Method to convert from mouse click x point in the image to sidescan x point.
|
static SidescanPoint |
convertImagePointXToSidescanPoint(int imageMouseX,
SidescanLine sidescanLine,
boolean slantRangeCorrection,
java.awt.image.BufferedImage image)
Method to convert from mouse click x point in the image to sidescan x point.
|
static int |
convertSidescanLinePointXToImagePointX(int sidescanLineX,
SidescanLine sidescanLine,
java.awt.image.BufferedImage image)
Method to convert from sidescan x point to mouse click x point in the image.
|
static double[] |
getData(byte[] data,
double scaleFactor,
short bitsPerPoint)
Takes the data byte array transforms it to a double array applying the scale factor.
|
static SidescanLine |
getSidescanLine(pt.lsts.imc.IMCMessage sonarData,
SystemPositionAndAttitude pose)
Converts a SonarData
IMCMessage into a SidescanLine without any extra conversion. |
static SidescanLine |
getSidescanLine(pt.lsts.imc.IMCMessage sonarData,
SystemPositionAndAttitude pose,
SidescanParameters sidescanParams)
|
static SidescanLine |
getSidescanLine(pt.lsts.imc.SonarData sonarData,
SystemPositionAndAttitude pose)
Converts a
SonarData into a SidescanLine without any extra conversion. |
static SidescanLine |
getSidescanLine(pt.lsts.imc.SonarData sonarData,
SystemPositionAndAttitude pose,
SidescanParameters sidescanParams)
|
static long[] |
transformData(byte[] data,
short bitsPerPoint)
Transform a byte array into long (little-endian) according with bitsPerPoint.
|
public static int convertSidescanLinePointXToImagePointX(int sidescanLineX, SidescanLine sidescanLine, java.awt.image.BufferedImage image)
sidescanLineX
- The x index of the sidescan (middle is half of the data size)sidescanLine
- The sidescan lineimage
- The full image for sidescan line as painted in the viewer.public static int convertImagePointXToSidescanLinePointX(int imageMouseX, SidescanLine sidescanLine, java.awt.image.BufferedImage image)
imageMouseX
- The image x index from imagesidescanLine
- The sidescan lineimage
- The full image for sidescan line as painted in the viewer.public static SidescanPoint convertImagePointXToSidescanPoint(int imageMouseX, SidescanLine sidescanLine, boolean slantRangeCorrection, java.awt.image.BufferedImage image)
imageMouseX
- The image x index from imagesidescanLine
- The sidescan lineimage
- The full image for sidescan line as painted in the viewer.public static LocationType convertImagePointXToLocation(int imageMouseX, SidescanLine sidescanLine, boolean slantRangeCorrection, java.awt.image.BufferedImage image)
imageMouseX
- The image x index from imagesidescanLine
- The sidescan lineslantRangeCorrection
- To overwrite what is on sidescanLineimage
- The full image for sidescan line as painted in the viewer.public static double calcHorizontalDistanceFrom2XIndexesOf2SidescanLines(int xIndexLine1, SidescanLine line1, int xIndexLine2, SidescanLine line2)
SidescanLine.getData()
) of two
SidescanLine
s.xIndexLine1
- line1
- xIndexLine2
- line2
- public static double calcSlantDistanceFrom2XIndexesOf2SidescanLines(int xIndexLine1, SidescanLine line1, int xIndexLine2, SidescanLine line2)
SidescanLine.getData()
) of two
SidescanLine
s.xIndexLine1
- line1
- xIndexLine2
- line2
- public static double calcHeightFrom2XIndexesOfSidescanLine(int xIndex1, int xIndex2, SidescanLine line)
xIndex1
- xIndex2
- line
- public static long[] transformData(byte[] data, short bitsPerPoint)
data
- bitsPerPoint
- public static double[] getData(byte[] data, double scaleFactor, short bitsPerPoint)
data
- scaleFactor
- bitsPerPoint
- public static SidescanLine getSidescanLine(pt.lsts.imc.SonarData sonarData, SystemPositionAndAttitude pose, SidescanParameters sidescanParams)
SonarData
into a SidescanLine
and applies the SidescanParameters
.
MRA to be able to use a larger range of IMC versions should not use typed messages,
call getSidescanLine(SonarData, SystemPositionAndAttitude, SidescanParameters)
or getSidescanLine(IMCMessage, SystemPositionAndAttitude)
.sonarData
- pose
- sidescanParams
- public static SidescanLine getSidescanLine(pt.lsts.imc.IMCMessage sonarData, SystemPositionAndAttitude pose, SidescanParameters sidescanParams)
sonarData
- pose
- sidescanParams
- public static SidescanLine getSidescanLine(pt.lsts.imc.SonarData sonarData, SystemPositionAndAttitude pose)
SonarData
into a SidescanLine
without any extra conversion.
MRA to be able to use a larger range of IMC versions should not use typed messages,
call getSidescanLine(SonarData, SystemPositionAndAttitude, SidescanParameters)
or getSidescanLine(IMCMessage, SystemPositionAndAttitude)
.sonarData
- pose
- public static SidescanLine getSidescanLine(pt.lsts.imc.IMCMessage sonarData, SystemPositionAndAttitude pose)
IMCMessage
into a SidescanLine
without any extra conversion.sonarData
- pose
- public static double[] applyNormalizationAndTVG(double[] data, double range, SidescanParameters sidescanParams)
data
- range
- sidescanParams
- Copyright © 2004-2020 FEUP-LSTS and Neptus developers. All Rights Reserved.