jm.jigl
Class RealSignal

java.lang.Object
  |
  +--jm.jigl.RealSignal
All Implemented Interfaces:
Signal

public class RealSignal
extends java.lang.Object
implements Signal

A discrete signal is a 1-d of floats RealSignal implements Signal

See Also:
jigl.signal.RealSignal

Field Summary
protected  float[] data
          One dimensional float array
protected  int length
          Length of the Signal
 
Constructor Summary
RealSignal()
          Creates an empty one dimensional RealSignal with a height and width of zero
RealSignal(int x)
          Creates an empty one dimensional of length x
RealSignal(RealSignal s)
          Creates a one dimensional RealSignal (shallow copy) for a RealSignal
 
Method Summary
 RealSignal add(float v)
          Adds a value to all the samples in this signal
 RealSignal add(float v, ROI r)
          Adds a value to all the samples in in a Region of Interest
 void add(int x, float value)
          Adds a value to a single sample
 void add(int x, float value, ROI r)
          Adds a value to a single sample
 RealSignal add(RealSignal s)
          Adds another RealSignal to this signal
 RealSignal add(RealSignal s, ROI sourceSignal, ROI destSignal)
          Divides this signal's Region of Interest by a Region of Interest of another RealSignal
 RealSignal addbuffer(int w, int color)
          Makes a copy of this image with a buffer so the resulting image has a width x and height y
 void byteSize()
          Scales the range of this signal to byte (0..255)
 void byteSize(ROI r)
          Scales the range of a Region of Interest to byte (0..255)
 RealSignal clear()
          Clears the signal to zero
 RealSignal clear(float val)
          Clears to constant value
 RealSignal clear(float val, ROI r)
          Clears to constant value
 RealSignal clear(ROI r)
          Clears the signal to zero
 void clip(int min, int max)
          Clips the range of this signal to an arbitrary min/max
 void clip(int min, int max, ROI r)
          Clips the range of in a Region of Interest to an arbitrary min/max
 void convolve(RealSignal kernel)
          Performs convolution in place with a kernel signal on this signal.
 void convolve(RealSignal kernel, ROI r)
          Performs convolution in place with a kernel signal on a Region of Interest.
 Signal copy()
          Makes a deep copy of this signal
 Signal copy(ROI r)
          Makes a deep copy in a Region of Interest
 float[] data()
          Makes a shallow copy of a JIGL signal's sample buffer
 RealSignal diff(RealSignal s)
          Subtracts the second signal from the first and returns the absolute value
 RealSignal divide(float v)
          Divides all the samples in this signal by a value
 RealSignal divide(float v, ROI r)
          Divides all the samples in in a Region of Interest by a value
 void divide(int x, float value)
          Divides a single sample by a value
 void divide(int x, float value, ROI r)
          Divides a single sample by a value
 RealSignal divide(RealSignal s)
          Divides this signal by a RealSignal
 RealSignal divide(RealSignal s, ROI sourceSignal, ROI destSignal)
          Multiplies a Region of Interest of another RealSignal to a Region of Interest of this signal
 float get(int x)
          Returns the sample value at the given x, y value
 float get(int x, ROI r)
          Returns the sample value at the given x, y value
 int length()
          Returns the length of this signal
 float max()
          Finds the maximum value of this signal
 float max(ROI r)
          Finds the maximum value of in a Region of Interest
 void median(int size)
          Performs median filter on this signal
 void median(int size, ROI r)
          Performs median filter on a Region of Interest
 float min()
          Finds the minimum value of this signal
 float min(ROI r)
          Finds the minimum value of in a Region of Interest
 RealSignal multiply(float v)
          Multiplies all the samples in this signal by a value
 RealSignal multiply(float v, ROI r)
          Multiplies all the samples in in a Region of Interest by a value
 void multiply(int x, float value)
          Mutiplies a single sample by a value
 void multiply(int x, float value, ROI r)
          Mutiplies a single sample by a value
 RealSignal multiply(RealSignal s)
          Multiplies a RealSignal by this signal
 RealSignal multiply(RealSignal s, ROI sourceSignal, ROI destSignal)
          Subtracts a Region of Interest from another RealSignal from a Region of Interest of this signal
 void set(int x, float value)
          Sets the sample value at x, y to a given value
 void set(int x, float value, ROI r)
          Sets the sample value at x, y to a given value
 RealSignal subtract(float v)
          Subtracts a value from all the samples in this signal
 RealSignal subtract(float v, ROI r)
          Subtracts a value from all the samples in in a Region of Interest
 void subtract(int x, float value)
          Subtracts a value from a single sample
 void subtract(int x, float value, ROI r)
          Subtracts a value from a single sample
 RealSignal subtract(RealSignal s)
          Subtracts a RealSignal from this signal
 RealSignal subtract(RealSignal s, ROI sourceSignal, ROI destSignal)
          Adds a Region of Interest of another RealSignal to a Region of Interest of this signal
 java.lang.String toString()
          Prints the string in float format.
 java.lang.String toString(ROI r)
          Prints the string in float format.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

data

protected float[] data
One dimensional float array


length

protected int length
Length of the Signal

Constructor Detail

RealSignal

public RealSignal()
Creates an empty one dimensional RealSignal with a height and width of zero


RealSignal

public RealSignal(int x)
Creates an empty one dimensional of length x


RealSignal

public RealSignal(RealSignal s)
Creates a one dimensional RealSignal (shallow copy) for a RealSignal

Method Detail

copy

public Signal copy()
Makes a deep copy of this signal

Specified by:
copy in interface Signal
Returns:
a deep copy of RealSignal

length

public final int length()
Returns the length of this signal

Specified by:
length in interface Signal

data

public final float[] data()
Makes a shallow copy of a JIGL signal's sample buffer

Returns:
a pointer to RealSignal

get

public final float get(int x)
Returns the sample value at the given x, y value

Parameters:
x - the X coordinant

set

public final void set(int x,
                      float value)
Sets the sample value at x, y to a given value

Parameters:
x - the X coordinant
value - the value to set the sample to

clear

public final RealSignal clear()
Clears the signal to zero


clear

public final RealSignal clear(float val)
Clears to constant value

Parameters:
val - the value to "clear" the signal to

add

public final void add(int x,
                      float value)
Adds a value to a single sample

Parameters:
x - X-coordinant
value - the value to add to the sample

subtract

public final void subtract(int x,
                           float value)
Subtracts a value from a single sample

Parameters:
x - X-coordinant
value - the value to subtract from the sample

multiply

public final void multiply(int x,
                           float value)
Mutiplies a single sample by a value

Parameters:
x - X-coordinant
value - - the value to mutiply to the sample

divide

public final void divide(int x,
                         float value)
Divides a single sample by a value

Parameters:
x - X-coordinant
value - - the value to mutiply to the sample

min

public final float min()
Finds the minimum value of this signal

Returns:
an float containing the minimum value

max

public final float max()
Finds the maximum value of this signal

Returns:
an float containing the maximum value

add

public final RealSignal add(float v)
Adds a value to all the samples in this signal

Parameters:
v - value to be added to the samples
Returns:
this

addbuffer

public RealSignal addbuffer(int w,
                            int color)
Makes a copy of this image with a buffer so the resulting image has a width x and height y

Returns:
a deep copy of GrayImage

subtract

public final RealSignal subtract(float v)
Subtracts a value from all the samples in this signal

Parameters:
v - value to be added to the samples
Returns:
this

multiply

public final RealSignal multiply(float v)
Multiplies all the samples in this signal by a value

Parameters:
v - value to be added to the samples
Returns:
this

divide

public final RealSignal divide(float v)
Divides all the samples in this signal by a value

Parameters:
v - value to be added to the samples
Returns:
this

add

public final RealSignal add(RealSignal s)
Adds another RealSignal to this signal

Returns:
this

subtract

public final RealSignal subtract(RealSignal s)
Subtracts a RealSignal from this signal

Returns:
this

diff

public final RealSignal diff(RealSignal s)
Subtracts the second signal from the first and returns the absolute value


multiply

public final RealSignal multiply(RealSignal s)
Multiplies a RealSignal by this signal

Returns:
this

divide

public final RealSignal divide(RealSignal s)
Divides this signal by a RealSignal

Returns:
this

toString

public java.lang.String toString()
Prints the string in float format.
-Example of output on an signal with width 100 and height 120:
100 : 120
10 20 32 12 32 56 40 59 42 39 43 ...

Specified by:
toString in interface Signal
Overrides:
toString in class java.lang.Object

byteSize

public void byteSize()
Scales the range of this signal to byte (0..255)


clip

public final void clip(int min,
                       int max)
Clips the range of this signal to an arbitrary min/max

Parameters:
min - minimum value
max - maximum value

convolve

public void convolve(RealSignal kernel)
Performs convolution in place with a kernel signal on this signal.

Parameters:
kernel - kernel to perform the convolution with

median

public void median(int size)
Performs median filter on this signal

Parameters:
size - the size of the median filter

copy

public Signal copy(ROI r)
Makes a deep copy in a Region of Interest

Parameters:
r - Region of Interest
Returns:
a deep copy of a Region of Interest

get

public final float get(int x,
                       ROI r)
Returns the sample value at the given x, y value

Parameters:
x - the X coordinant

set

public final void set(int x,
                      float value,
                      ROI r)
Sets the sample value at x, y to a given value

Parameters:
x - the X coordinant
value - the value to set the sample to

clear

public final RealSignal clear(ROI r)
Clears the signal to zero

Parameters:
r - Region of Interest

clear

public final RealSignal clear(float val,
                              ROI r)
Clears to constant value

Parameters:
val - the value to "clear" the signal to
r - Region of Interest

add

public final void add(int x,
                      float value,
                      ROI r)
Adds a value to a single sample

Parameters:
x - X-coordinant
value - the value to add to the sample
r - Region of Interest

subtract

public final void subtract(int x,
                           float value,
                           ROI r)
Subtracts a value from a single sample

Parameters:
x - X-coordinant
value - the value to subtract from the sample
r - Region of Interest

multiply

public final void multiply(int x,
                           float value,
                           ROI r)
Mutiplies a single sample by a value

Parameters:
x - X-coordinant
value - - the value to mutiply to the sample
r - Region of Interest

divide

public final void divide(int x,
                         float value,
                         ROI r)
Divides a single sample by a value

Parameters:
x - X-coordinant
value - - the value to mutiply to the sample
r - Region of Interest

min

public final float min(ROI r)
Finds the minimum value of in a Region of Interest

Parameters:
r - Region of Interest
Returns:
an float containing the minimum value

max

public final float max(ROI r)
Finds the maximum value of in a Region of Interest

Parameters:
r - Region of Interest
Returns:
an float containing the maximum value

add

public final RealSignal add(float v,
                            ROI r)
Adds a value to all the samples in in a Region of Interest

Parameters:
v - value to be added to the samples
r - Region of Interest
Returns:
this

subtract

public final RealSignal subtract(float v,
                                 ROI r)
Subtracts a value from all the samples in in a Region of Interest

Parameters:
v - value to be added to the samples
r - Region of Interest
Returns:
this

multiply

public final RealSignal multiply(float v,
                                 ROI r)
Multiplies all the samples in in a Region of Interest by a value

Parameters:
v - value to be added to the samples
r - Region of Interest
Returns:
this

divide

public final RealSignal divide(float v,
                               ROI r)
Divides all the samples in in a Region of Interest by a value

Parameters:
v - value to be added to the samples
r - Region of Interest
Returns:
this

subtract

public final RealSignal subtract(RealSignal s,
                                 ROI sourceSignal,
                                 ROI destSignal)
Adds a Region of Interest of another RealSignal to a Region of Interest of this signal

Parameters:
s - the RealSignal to add
sourceSignal - Region of Interest for Source Signal
destSignal - Region of Interest for Destination Signal
Returns:
this

multiply

public final RealSignal multiply(RealSignal s,
                                 ROI sourceSignal,
                                 ROI destSignal)
Subtracts a Region of Interest from another RealSignal from a Region of Interest of this signal

Parameters:
s - the RealSignal to subtract
sourceSignal - Region of Interest for Source Signal
destSignal - Region of Interest for Destination Signal
Returns:
this

divide

public final RealSignal divide(RealSignal s,
                               ROI sourceSignal,
                               ROI destSignal)
Multiplies a Region of Interest of another RealSignal to a Region of Interest of this signal

Parameters:
s - the RealSignal to multiply
sourceSignal - Region of Interest for Source Signal
destSignal - Region of Interest for Destination Signal
Returns:
this

add

public final RealSignal add(RealSignal s,
                            ROI sourceSignal,
                            ROI destSignal)
Divides this signal's Region of Interest by a Region of Interest of another RealSignal

Parameters:
s - the RealSignal to divide
sourceSignal - Region of Interest for Source Signal
destSignal - Region of Interest for Destination Signal
Returns:
this

toString

public java.lang.String toString(ROI r)
Prints the string in float format.
-Example of output on an signal with length 100:
100
10 20 32 12 32 56 40 59 42 39 43 ...


byteSize

public void byteSize(ROI r)
Scales the range of a Region of Interest to byte (0..255)

Parameters:
r - Region of Interest

clip

public final void clip(int min,
                       int max,
                       ROI r)
Clips the range of in a Region of Interest to an arbitrary min/max

Parameters:
min - minimum value
max - maximum value
r - Region of Interest

convolve

public void convolve(RealSignal kernel,
                     ROI r)
Performs convolution in place with a kernel signal on a Region of Interest.

Parameters:
kernel - kernel to perform the convolution with
r - Region of Interest

median

public void median(int size,
                   ROI r)
Performs median filter on a Region of Interest

Parameters:
size - the size of the median filter
r - Region of Interest