koronascript 0.2.1__tar.gz → 3.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- koronascript-3.0.0/KoronaScript/Configuration.py +3 -0
- {koronascript-0.2.1 → koronascript-3.0.0}/KoronaScript/Modules.py +24 -18
- {koronascript-0.2.1 → koronascript-3.0.0}/KoronaScript/__init__.py +28 -4
- koronascript-3.0.0/MANIFEST.in +1 -0
- koronascript-3.0.0/PKG-INFO +52 -0
- koronascript-3.0.0/README.md +38 -0
- koronascript-3.0.0/koronascript.egg-info/PKG-INFO +52 -0
- {koronascript-0.2.1 → koronascript-3.0.0}/koronascript.egg-info/SOURCES.txt +2 -0
- koronascript-3.0.0/koronascript.egg-info/requires.txt +5 -0
- koronascript-3.0.0/setup.cfg +28 -0
- koronascript-3.0.0/setup.py +3 -0
- koronascript-3.0.0/tests/test_examples.py +26 -0
- koronascript-0.2.1/KoronaScript/Configuration.py +0 -3
- koronascript-0.2.1/PKG-INFO +0 -81
- koronascript-0.2.1/README.md +0 -72
- koronascript-0.2.1/koronascript.egg-info/PKG-INFO +0 -81
- koronascript-0.2.1/setup.cfg +0 -7
- koronascript-0.2.1/setup.py +0 -14
- koronascript-0.2.1/tests/test_examples.py +0 -15
- {koronascript-0.2.1 → koronascript-3.0.0}/KoronaScript/KoronaModule.py +0 -0
- {koronascript-0.2.1 → koronascript-3.0.0}/koronascript.egg-info/dependency_links.txt +0 -0
- {koronascript-0.2.1 → koronascript-3.0.0}/koronascript.egg-info/not-zip-safe +0 -0
- {koronascript-0.2.1 → koronascript-3.0.0}/koronascript.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
# Auto-generated, do not edit directly
|
|
2
|
+
# see genmodule.py
|
|
3
|
+
modules_spec = {'AngleDeletion': {'Active': True, 'Comment': ''}, 'BroadbandNotchFilter': {'Active': True, 'Comment': ''}, 'BroadbandSplitter': {'Active': True, 'Comment': '', 'AutoSplit': False, 'SplitCount': 3, 'SplitBandwidth': '', 'StopBandDistance': 1.0, 'MinBandwidth': 10.0, 'Downsampling': 'FACTOR', 'DownsamplingFactor': 1, 'DownsamplingSampleSize': 0.01, 'ComputeAngles': True, 'ComputationalMethod': 'BANDPASS_FILTERING', 'FftWindowSize': 2.0}, 'BubblSpikeFilter': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': False, 'StartDepth': 10.0, 'EndDepth': 2500.0, 'TotalDelta': 15.0, 'VerticalDelta': 15.0, 'Debug': False, 'VerticalUnit': 'DURATION', 'VerticalMedianSearchHeight': 50, 'WindowMedianSearchHeight': 35, 'VerticalMedianSearchDuration': 2.0, 'WindowMedianSearchDuration': 4.4, 'VerticalMedianSearchDistance': 1.9, 'WindowMedianSearchDistance': 6.6}, 'Categorization': {'Active': True, 'Comment': '', 'CategoryCount': 3, 'ActiveFeatures': [], 'ActiveCategories': [], 'Categorizer': 'Gauss', 'Discriminant': 'Aposteriori', 'ContextualCorrection': 'ICM', 'ContextualIterations': 3, 'UseMinLogSv': True, 'MinLogSv': -100.0}, 'CdsViewer': {'Active': True, 'Comment': ''}, 'ChannelDataRemoval': {'Active': True, 'Comment': '', 'Channels': '', 'ChannelsFromEnd': '', 'Frequencies': '', 'DataType': '', 'TransmitMode': '', 'PingId': '', 'KeepSpecified': False}, 'ChannelRemoval': {'Active': True, 'Comment': '', 'Channels': '', 'ChannelsFromEnd': '', 'Frequencies': '', 'DataType': '', 'TransmitMode': '', 'PingId': '', 'KeepSpecified': False}, 'Combination': {'Active': True, 'Comment': '', 'FirstOperandKhz': 0, 'SecondOperandKhz': 0, 'FirstOperandChannel': 1, 'SecondOperandChannel': 2, 'LogarithmicOperands': False, 'Operation': 'mean'}, 'Comment': {'Active': True, 'Comment': '', 'GroupStart': False, 'GroupCollapsed': False, 'LineBreak': False, 'VerticalSpace': 8, 'Label': ''}, 'ComplexToReal': {'Active': True, 'Comment': '', 'ComputeAngles': True, 'KeepBroadband': False}, 'DataReduction': {'Active': True, 'Comment': '', 'BlindZone': False, 'MinRange': '', 'MinDepth': '', 'TransducerRange': True, 'MaxRange': '', 'MaxDepth': '', 'MaxBelowBottom': ''}, 'DepthDependentResampling': {'Active': True, 'Comment': '', 'MinFrequency': 150.0, 'SampleDistanceAtRange100': 0.0}, 'Depth': {'Active': True, 'Comment': '', 'Algorithm': 'EK500', 'MinDepthLimit': 10.0, 'MinDepthValueFraction': 0.001, 'SignalStrengthThreshold': -31.0, 'MinimumDepthThresholdFactor': 0.99, 'MaxRangeFactor': 1.5, 'AlwaysDetectBottom': True, 'MinBottomDepth': 0.0, 'MaxBottomDepth': 9999.0, 'PreferredKHz': '', 'MinKHz': 0.0, 'MaxKHz': 9999.0, 'DoNotUseKHz': ''}, 'Dilate': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'VertResolution': 1}, 'Downsampling': {'Active': True, 'Comment': '', 'Downsampling': 'FACTOR', 'DownsamplingFactor': 1, 'DownsamplingSampleSize': 0.01}, 'ES60Correction': {'Active': True, 'Comment': '', 'ReliabilityDetectionWindow': 5, 'PerformScan': False, 'ContinueAcrossFiles': False}, 'EchoLineCompression': {'Active': True, 'Comment': '', 'Threshold': -82.0}, 'EdgeDetection': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'ScaleFactor': 1.0, 'VertResolution': 1}, 'EmptyPingRemoval': {'Active': True, 'Comment': ''}, 'ErodeLowValues': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'Threshold': -70.0, 'ReplacementValue': -120.0, 'VerticalExtent': 1.0}, 'Erode': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'VertResolution': 1}, 'Expression': {'Active': True, 'Comment': '', 'Expression': ['C1']}, 'FillMissingData': {'Active': True, 'Comment': ''}, 'Filter3X3': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'FilterType': 'User defined', '00': 1.0, '01': 1.0, '02': 1.0, '10': 1.0, '11': 1.0, '12': 1.0, '20': 1.0, '21': 1.0, '22': 1.0}, 'FiskViewDisplay': {'Active': True, 'Comment': ''}, 'GroupEnd': {'Active': True, 'Comment': ''}, 'HorizontalOffsetCorrection': {'Active': True, 'Comment': ''}, 'Isolation': {'Active': True, 'Comment': '', 'Category': ''}, 'Median': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0}, 'NetcdfWriter': {'Active': True, 'Comment': '', 'DirName': 'netcdf', 'MainFrequency': '38', 'WriterType': 'GRIDDED', 'GriddedOutputType': 'SV_AND_ANGLES', 'ChannelGroupOutputType': 'PULSE_COMPRESSION', 'DeltaRange': '', 'MaxRange': '', 'FftWindowSize': 2.0, 'DeltaFrequency': 1.0, 'WriteAngels': True}, 'NoiseAcceptance': {'Active': True, 'Comment': '', 'NoiseFraction': {'min': 0.25, 'max': 4.0}, 'UseFileNoiseFile': True, 'UseDayNoiseFile': True, 'UseSurveyNoiseFile': True, 'UseSurveyLowNoiseFile': True}, 'NoiseMedianQuantification': {'Active': True, 'Comment': '', 'PingHistory': 10, 'NoiseSamplesPerBeam': 100, 'DetectionDistance': 50.0, 'InnermostDistance': False}, 'NoiseQuantification': {'Active': True, 'Comment': '', 'Smooth': 'running averager', 'SmoothInterval': 5, 'Mask': 'dynamic', 'MinimumQuality': 60.0, 'ThresholdMasking': False, 'Threshold': -80.0, 'Histogram': 'geometric', 'UseTimeStepBuffer': True, 'TimeStepBufferMaxSize': 50, 'HistogramInitializationCellCount': 500, 'HistogramMaximumCellCount': 2000, 'HistogramInitializationSampleCount': 1000, 'HistogramMinimumSampleCount': 25000, 'HistogramSmooth': True, 'HistogramSmoothFactor': 100.0, 'SdevMasking': False, 'Sdev': 10.0, 'SNMasking': False, 'SNRatio': 10.0, 'UseFallbackNoiseQuantile': False, 'FallbackNoiseQuantile': 5.0, 'FallbackNoiseChannels': 'true', 'WritePlotParameters': False}, 'NoiseRemover': {'Active': True, 'Comment': '', 'RemoveNoiseFromStart': True, 'MaxBufferSize': 10, 'SampleSizeCorrection': ''}, 'NoiseVisualization': {'Active': True, 'Comment': '', 'TimeSeriesLength': 200, 'HistogramSpan': 3.0, 'MedianSampleCount': 500}, 'PingCollapsing': {'Active': True, 'Comment': ''}, 'PingThinning': {'Active': True, 'Comment': '', 'PingsToSkipInitially': 0, 'PingsToSkip': 0}, 'PlanktonInversion': {'Active': True, 'Comment': '', 'VerticalUnit': 'SAMPLES', 'PingsPerBin': 7, 'DepthSamplesPerBin': 30, 'DepthDurationPerBin': 4.0, 'DepthDistancePerBin': 6.0, 'Use global noise threshold': True, 'Noise threshold': -90.0, 'Use min depth': False, 'Min depth': 20.0, 'Use max depth': False, 'Max depth': 110.0, 'CategoriesUsedForInversion': [], 'UseAllFrequencies': True, 'ActiveFrequencies': [], 'MinResidualErrorThreshold': 0.01, 'MaxResidualErrorThreshold': 0.2, 'LevenbergMarquardtFactor': 0.0005, 'MaxIter': 4, 'HardShelled': True, 'HardShelledR': 0.5, 'GaseousSphere': True, 'GasSphereG': 0.0012, 'GasSphereH': 0.22, 'FluidSpheriod': True, 'FluidSpheriodG': 1.043, 'FluidSpheriodH': 1.052, 'FluidSpheriodBeta': 5.0, 'FluidBent': True, 'FluidBentR': 0.058, 'FluidBentS': 0.1, 'FluidBentBeta': 11.0, 'FluidBent2': False, 'FluidBentR2': 0.058, 'FluidBentS2': 0.1, 'FluidBentBeta 2': 11.0, 'SDWBA': False, 'SDWBA coeff': 'N(0, 30)', 'SDWBA2': False, 'SDWBA 2 coeff': 'N(0, 30)', 'SDWBA3': False, 'SDWBA 3 coeff': 'N(0, 30)', 'SDWBA4': False, 'SDWBA 4 coeff': 'N(0, 30)', 'SDWBA5': False, 'SDWBA 5 coeff': 'N(0, 30)', 'SDWBAS': False, 'SDWBA smooth coeff': 'N(4, 2)', 'PlotResolution': 0.01, 'PlotMaxRange': 5.0}, 'Plugin': {'Active': True, 'Comment': '', 'Example': '', 'Implementation': ''}, 'PulseCompressionFilter': {'Active': True, 'Comment': ''}, 'RemoveBottom': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'UseNeighbours': False, 'Above': 0, 'Below': 100, 'RemoveAboveBottom': False, 'RemoveBottom': True, 'RemoveBelowBottom': False, 'PixelValue': -120.0}, 'Rescale': {'Active': True, 'Comment': '', 'RescaleChannels': 'all', 'DesiredMinimum': -85.0, 'DesiredMaximum': -30.0, 'MinMaxFraction': 0.05, 'InitializationDatagramCount': 10, 'InitializationMaxPingCount': 100}, 'SchoolCategorization': {'Active': True, 'Comment': '', 'UseCellCategorization': True, 'Horizontal cell size': 16, 'Vertical cell size': 50, 'Upper sample offset': 5, 'Lower sample offset': 5, 'HorizontalOffset': 0, 'SecondaryCategoryFraction': 0.1, 'Fill factor for cells': 0.5, 'MinFractionCategorizedCells': 0.5, 'MinCells': 3, 'SchoolCategorizationDistribution': 'CELL', 'EnableUncategorizedCategory': False, 'EnableUnknownCategory': False}, 'SchoolDetection': {'Active': True, 'Comment': '', 'ProcessLast': True, 'Channel': 1, 'MinDepth': '', 'MaxDepth': '', 'Threshold': -62.0, 'Density': {'min': -120.0, 'max': -20.0}, 'MaxSv': {'min': '-Infinity', 'max': 'Infinity'}, 'Length': {'min': 25.0, 'max': 1000000.0}, 'Thickness': {'min': 10.0, 'max': 1000000.0}, 'Area': {'min': 75.0, 'max': 1000000.0}, 'Compactness': {'min': '-Infinity', 'max': 'Infinity'}, 'FillHoles': True}, 'Smoother': {'Active': True, 'Comment': '', 'OnlyLastChannel': False, 'MaskPelagic': False, 'MaskBottom': True, 'MaskSecondBottom': True, 'MaskNoise': False, 'MaskRegion': 'none', 'MaskTrack': 'none', 'MinPing': 0, 'MaxPing': 10, 'HorizontalKernelType': 'gaussian', 'VerticalKernelType': 'gaussian', 'HorizontalWidth': 8.0, 'VerticalWidth': 0.5, 'LogarithmicValues': False}, 'SpikeFilter': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': False, 'StartDepth': 10.0, 'EndDepth': 2500.0, 'TotalDelta': 15.0, 'VerticalDelta': 15.0, 'Debug': False, 'VerticalUnit': 'DURATION', 'VerticalMedianSearchHeight': 7, 'WindowMedianSearchHeight': 35, 'VerticalMedianSearchDuration': 0.9, 'WindowMedianSearchDuration': 4.4, 'VerticalMedianSearchDistance': 1.3, 'WindowMedianSearchDistance': 6.6}, 'SpotNoise': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': False, 'StartDepth': 10.0, 'EndDepth': 2500.0, 'Delta': 20.0, 'Debug': False}, 'TemporaryComputationsBegin': {'Active': True, 'Comment': ''}, 'TemporaryComputationsEnd': {'Active': True, 'Comment': ''}, 'ThresholdAllChannels': {'Active': True, 'Comment': '', 'Criterion': 'BELOW', 'Threshold': -70.0, 'Replacement': -120.0, 'MinFrequency': '', 'MaxFrequency': ''}, 'Threshold': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'Threshold': -70.0, 'CutBelow': False, 'CutAbove': False, 'BelowVal': -120.0, 'AboveVal': 0.0}, 'TimeInterval': {'Active': True, 'Comment': '', 'StartDateString': '', 'EndDateString': '', 'StartRelativePingNumber': '', 'EndRelativePingNumber': ''}, 'Towfish': {'Active': True, 'Comment': '', 'TowfishBlindZone': 0.0, 'TowfishEchosounderTimeAddition': 0.0, 'DistBehindFunction': 'PYTAGORAS'}, 'TrackFilter': {'Active': True, 'Comment': '', 'MaxBufferSize': 50, 'KeepValid': True}, 'Tracking': {'Active': True, 'Comment': '', 'TrackerType': 'Aggregation', 'kHz': 38, 'PlatformMotionType': 'Floating', 'MinTS': -66.0, 'PulseLengthDeterminationLevel': 6.0, 'MinEchoLength': 0.01, 'MaxEchoLength': 1.8, 'MaxGainCompensation': 6.0, 'DoPhaseDeviationCheck': True, 'MaxPhaseDevSteps': 8.0, 'MaxTS': 0.0, 'MaxDepth': '', 'MaxAlongshipAngle': 10.0, 'MaxAthwartshipAngle': 10.0, 'InitiationGateFunction': [{'id': 'Alpha', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Beta', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Range', 'description': '', 'unit': 'm', 'defaultValue': 0.1}, {'id': 'TS', 'description': 'dB', 'unit': 'dB', 'defaultValue': 20.0}], 'InitiationMinLength': 1, 'GateFunction': [{'id': 'Alpha', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Beta', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Range', 'description': '', 'unit': 'm', 'defaultValue': 0.1}, {'id': 'TS', 'description': 'dB', 'unit': 'dB', 'defaultValue': 20.0}], 'AlphaBetaEstimator': [{'id': 'Alpha', 'description': '', 'allowedValuesDescription': '[0, 1]', 'defaultValue': 0.5}, {'id': 'Beta', 'description': '', 'allowedValuesDescription': '[0, 1]', 'defaultValue': 0.5}], 'MaxMissingPings': 4, 'MaxMissingSamples': 2, 'MaxMissingPingsFraction': 0.5, 'MinTrackLength': 8, 'MinSampleToLengthFraction': 2.0}, 'TsDetection': {'Active': True, 'Comment': '', 'DetectorType': 'SED', 'MinTS': -66.0, 'PulseLengthDeterminationLevel': 6.0, 'MinEchoLength': 0.01, 'MaxEchoLength': 1.8, 'MaxGainCompensation': 6.0, 'DoPhaseDeviationCheck': True, 'MaxPhaseDevSteps': 8.0, 'MaxDepth': ''}, 'VerticalOffsetCorrection': {'Active': True, 'Comment': ''}, 'Writer': {'Active': True, 'Comment': '', 'FileName': '', 'UseRelativeDirectory': False, 'RelativeDirectory': '', 'DirectoryName': ''}}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Auto-generated, do not edit directly
|
|
2
2
|
# see genmodule.py
|
|
3
|
-
|
|
3
|
+
from .Configuration import modules_spec
|
|
4
4
|
from .KoronaModule import KoronaModule
|
|
5
5
|
|
|
6
6
|
class AngleDeletion(KoronaModule):
|
|
@@ -24,7 +24,7 @@ class BubblSpikeFilter(KoronaModule):
|
|
|
24
24
|
super().__init__('BubblSpikeFilter', **parameters)
|
|
25
25
|
|
|
26
26
|
class Categorization(KoronaModule):
|
|
27
|
-
"""
|
|
27
|
+
"""Categorizes each pixel using the configured training data"""
|
|
28
28
|
def __init__(self, **parameters):
|
|
29
29
|
super().__init__('Categorization', **parameters)
|
|
30
30
|
|
|
@@ -44,7 +44,7 @@ class ChannelRemoval(KoronaModule):
|
|
|
44
44
|
super().__init__('ChannelRemoval', **parameters)
|
|
45
45
|
|
|
46
46
|
class Combination(KoronaModule):
|
|
47
|
-
"""
|
|
47
|
+
"""Generates combination echograms"""
|
|
48
48
|
def __init__(self, **parameters):
|
|
49
49
|
super().__init__('Combination', **parameters)
|
|
50
50
|
|
|
@@ -69,7 +69,7 @@ class DepthDependentResampling(KoronaModule):
|
|
|
69
69
|
super().__init__('DepthDependentResampling', **parameters)
|
|
70
70
|
|
|
71
71
|
class Depth(KoronaModule):
|
|
72
|
-
"""
|
|
72
|
+
"""Detects the bottom depth"""
|
|
73
73
|
def __init__(self, **parameters):
|
|
74
74
|
super().__init__('Depth', **parameters)
|
|
75
75
|
|
|
@@ -88,6 +88,11 @@ class ES60Correction(KoronaModule):
|
|
|
88
88
|
def __init__(self, **parameters):
|
|
89
89
|
super().__init__('ES60Correction', **parameters)
|
|
90
90
|
|
|
91
|
+
class EchoLineCompression(KoronaModule):
|
|
92
|
+
"""Keeps only data above a given threshold"""
|
|
93
|
+
def __init__(self, **parameters):
|
|
94
|
+
super().__init__('EchoLineCompression', **parameters)
|
|
95
|
+
|
|
91
96
|
class EdgeDetection(KoronaModule):
|
|
92
97
|
"""Detects edges by using Sobel horizontal and vertical filter"""
|
|
93
98
|
def __init__(self, **parameters):
|
|
@@ -109,22 +114,22 @@ class Erode(KoronaModule):
|
|
|
109
114
|
super().__init__('Erode', **parameters)
|
|
110
115
|
|
|
111
116
|
class Expression(KoronaModule):
|
|
112
|
-
"""
|
|
117
|
+
"""Generates combination echograms by a specified expression"""
|
|
113
118
|
def __init__(self, **parameters):
|
|
114
119
|
super().__init__('Expression', **parameters)
|
|
115
120
|
|
|
116
121
|
class FillMissingData(KoronaModule):
|
|
117
|
-
"""
|
|
122
|
+
"""Adds missing channel data"""
|
|
118
123
|
def __init__(self, **parameters):
|
|
119
124
|
super().__init__('FillMissingData', **parameters)
|
|
120
125
|
|
|
121
126
|
class Filter3X3(KoronaModule):
|
|
122
|
-
"""
|
|
127
|
+
"""Applies a 3×3 filter"""
|
|
123
128
|
def __init__(self, **parameters):
|
|
124
129
|
super().__init__('Filter3X3', **parameters)
|
|
125
130
|
|
|
126
131
|
class FiskViewDisplay(KoronaModule):
|
|
127
|
-
"""
|
|
132
|
+
"""Displays an echogram for each channel"""
|
|
128
133
|
def __init__(self, **parameters):
|
|
129
134
|
super().__init__('FiskViewDisplay', **parameters)
|
|
130
135
|
|
|
@@ -148,13 +153,18 @@ class Median(KoronaModule):
|
|
|
148
153
|
def __init__(self, **parameters):
|
|
149
154
|
super().__init__('Median', **parameters)
|
|
150
155
|
|
|
156
|
+
class NetcdfWriter(KoronaModule):
|
|
157
|
+
"""Writes to a .nc file"""
|
|
158
|
+
def __init__(self, **parameters):
|
|
159
|
+
super().__init__('NetcdfWriter', **parameters)
|
|
160
|
+
|
|
151
161
|
class NoiseAcceptance(KoronaModule):
|
|
152
|
-
"""
|
|
162
|
+
"""Compares detected noise with values recorded in files"""
|
|
153
163
|
def __init__(self, **parameters):
|
|
154
164
|
super().__init__('NoiseAcceptance', **parameters)
|
|
155
165
|
|
|
156
166
|
class NoiseMedianQuantification(KoronaModule):
|
|
157
|
-
"""
|
|
167
|
+
"""Produces noise quantification datagrams using the median of selected sample values"""
|
|
158
168
|
def __init__(self, **parameters):
|
|
159
169
|
super().__init__('NoiseMedianQuantification', **parameters)
|
|
160
170
|
|
|
@@ -189,7 +199,7 @@ class PlanktonInversion(KoronaModule):
|
|
|
189
199
|
super().__init__('PlanktonInversion', **parameters)
|
|
190
200
|
|
|
191
201
|
class Plugin(KoronaModule):
|
|
192
|
-
"""
|
|
202
|
+
"""For writing Java code that implements an API interface for KORONA module computations"""
|
|
193
203
|
def __init__(self, **parameters):
|
|
194
204
|
super().__init__('Plugin', **parameters)
|
|
195
205
|
|
|
@@ -199,7 +209,7 @@ class PulseCompressionFilter(KoronaModule):
|
|
|
199
209
|
super().__init__('PulseCompressionFilter', **parameters)
|
|
200
210
|
|
|
201
211
|
class RemoveBottom(KoronaModule):
|
|
202
|
-
"""
|
|
212
|
+
"""Assigns a specified value to samples close to the detected bottom"""
|
|
203
213
|
def __init__(self, **parameters):
|
|
204
214
|
super().__init__('RemoveBottom', **parameters)
|
|
205
215
|
|
|
@@ -249,12 +259,12 @@ class ThresholdAllChannels(KoronaModule):
|
|
|
249
259
|
super().__init__('ThresholdAllChannels', **parameters)
|
|
250
260
|
|
|
251
261
|
class Threshold(KoronaModule):
|
|
252
|
-
"""Masks out values in
|
|
262
|
+
"""Masks out values in a specified range on individual channels"""
|
|
253
263
|
def __init__(self, **parameters):
|
|
254
264
|
super().__init__('Threshold', **parameters)
|
|
255
265
|
|
|
256
266
|
class TimeInterval(KoronaModule):
|
|
257
|
-
"""
|
|
267
|
+
"""Processes only the pings in a specified time interval"""
|
|
258
268
|
def __init__(self, **parameters):
|
|
259
269
|
super().__init__('TimeInterval', **parameters)
|
|
260
270
|
|
|
@@ -288,7 +298,3 @@ class Writer(KoronaModule):
|
|
|
288
298
|
def __init__(self, **parameters):
|
|
289
299
|
super().__init__('Writer', **parameters)
|
|
290
300
|
|
|
291
|
-
class NetcdfWriter(KoronaModule):
|
|
292
|
-
"""Writes to a .nc file"""
|
|
293
|
-
def __init__(self, **parameters):
|
|
294
|
-
super().__init__('NetcdfWriter', **parameters)
|
|
@@ -10,12 +10,33 @@ import subprocess
|
|
|
10
10
|
import tempfile
|
|
11
11
|
import os
|
|
12
12
|
import sys
|
|
13
|
+
from zipfile import ZipFile
|
|
14
|
+
import importlib.resources as resources
|
|
15
|
+
import requests
|
|
13
16
|
|
|
14
17
|
from .KoronaModule import global_spec
|
|
15
18
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
+
CURRENT_LSSS = 'lsss-3.0.0-20250204-0841'
|
|
20
|
+
|
|
21
|
+
if os.getenv('LSSS') is not None:
|
|
22
|
+
lsss = os.getenv('LSSS')
|
|
23
|
+
print(f'KoronaScript: Using external LSSS from variable $LSSS={lsss}.')
|
|
24
|
+
else:
|
|
25
|
+
myos = sys.platform
|
|
26
|
+
lsss = str(resources.files('KoronaScript').joinpath('lsss-3.0.0'))
|
|
27
|
+
if not os.path.exists(lsss):
|
|
28
|
+
basedir = os.path.dirname(lsss)
|
|
29
|
+
print(f'{lsss} does not exist, downloading it.')
|
|
30
|
+
resp = requests.get(f'https://www.marec.no/downloads/{CURRENT_LSSS}/{CURRENT_LSSS}-{myos}.zip')
|
|
31
|
+
resp.raise_for_status()
|
|
32
|
+
with open(f'{basedir}/{CURRENT_LSSS}.zip', 'wb') as f:
|
|
33
|
+
f.write(resp.content)
|
|
34
|
+
with ZipFile(f'{basedir}/{CURRENT_LSSS}.zip', 'r') as z:
|
|
35
|
+
z.extractall(basedir)
|
|
36
|
+
with ZipFile(f'{os.path.dirname(lsss)}/{CURRENT_LSSS}/lsss-3.0.0-{myos}.zip') as z:
|
|
37
|
+
z.extractall(basedir)
|
|
38
|
+
os.chmod(f'{lsss}/jre/bin/java', 0o755)
|
|
39
|
+
|
|
19
40
|
|
|
20
41
|
class KoronaScript():
|
|
21
42
|
'''Construct, store, and run a set of Korona modules'''
|
|
@@ -80,7 +101,10 @@ class KoronaScript():
|
|
|
80
101
|
cmd = [java] + javaopts + ['no.imr.korona.main.KoronaCliMain', 'batch', '--cfs', cfsname, '--source', src, '--destination', dst]
|
|
81
102
|
if debug: print('Running:\n ', cmd)
|
|
82
103
|
res = subprocess.run(cmd, capture_output=True, text=True)
|
|
83
|
-
if debug:
|
|
104
|
+
if debug:
|
|
105
|
+
print(res.stdout)
|
|
106
|
+
print()
|
|
107
|
+
print(res.stderr)
|
|
84
108
|
if res.returncode != 0:
|
|
85
109
|
err_str = f'Korona subprocess returned an error code: {res.returncode}\n' + '----------------------------------------\n' + res.stderr
|
|
86
110
|
raise Exception(err_str)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
recursive-include KoronaScript/lsss-3.0.0 *
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: koronascript
|
|
3
|
+
Version: 3.0.0
|
|
4
|
+
Summary: Wrapper around Korona modules for processing echosounder data
|
|
5
|
+
Home-page: https://github.com/CRIMAC-WP4-Machine-learning/CRIMAC-KoronaScript
|
|
6
|
+
Author: Ketil Malde
|
|
7
|
+
Author-email: ketil@malde.org
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
Requires-Dist: matplotlib
|
|
10
|
+
Requires-Dist: netCDF4
|
|
11
|
+
Requires-Dist: xarray
|
|
12
|
+
Requires-Dist: pytest
|
|
13
|
+
Requires-Dist: requests
|
|
14
|
+
|
|
15
|
+
# Running Korona through Python
|
|
16
|
+
|
|
17
|
+
## Prerequisites
|
|
18
|
+
|
|
19
|
+
KoronaScript depends on LSSS and Korona version 3.0.0. The `LSSS`
|
|
20
|
+
environment variable can be set to point to an existing installation,
|
|
21
|
+
otherwise, the LSSS distribution will be automatically downloaded from
|
|
22
|
+
the Marec web pages and installed as part of this package.
|
|
23
|
+
|
|
24
|
+
# Usage
|
|
25
|
+
|
|
26
|
+
Import the modules:
|
|
27
|
+
|
|
28
|
+
import KoronaScript as ks
|
|
29
|
+
import KoronaScript.Modules as ksm
|
|
30
|
+
|
|
31
|
+
Create a script object:
|
|
32
|
+
|
|
33
|
+
ks = ks.KoronaScript(Categorization='categorization.xml',
|
|
34
|
+
HorizontalTransducerOffsets='HorizontalTransducerOffsets.xml')
|
|
35
|
+
|
|
36
|
+
Add some modules:
|
|
37
|
+
|
|
38
|
+
ks.add(ksm.EmptyPingRemoval())
|
|
39
|
+
ks.add(ksm.Comment(LineBreak='false', Label='CW_0256ms'))
|
|
40
|
+
ks.add(ksm.ChannelRemoval(Channels=[1,5,9,13,17],KeepSpecified='true'))
|
|
41
|
+
ks.add(ksm.Writer(RelativeDirectory='CW_0256ms'))
|
|
42
|
+
|
|
43
|
+
Write out the resulting configuration:
|
|
44
|
+
|
|
45
|
+
ks.write()
|
|
46
|
+
|
|
47
|
+
Run the script:
|
|
48
|
+
|
|
49
|
+
ks.run(src="input_dir", dst="output_dir")
|
|
50
|
+
|
|
51
|
+
The list of modules and their parameters can be found in the
|
|
52
|
+
[configuration/korona-info.json](configuration/korona-info.json) file.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Running Korona through Python
|
|
2
|
+
|
|
3
|
+
## Prerequisites
|
|
4
|
+
|
|
5
|
+
KoronaScript depends on LSSS and Korona version 3.0.0. The `LSSS`
|
|
6
|
+
environment variable can be set to point to an existing installation,
|
|
7
|
+
otherwise, the LSSS distribution will be automatically downloaded from
|
|
8
|
+
the Marec web pages and installed as part of this package.
|
|
9
|
+
|
|
10
|
+
# Usage
|
|
11
|
+
|
|
12
|
+
Import the modules:
|
|
13
|
+
|
|
14
|
+
import KoronaScript as ks
|
|
15
|
+
import KoronaScript.Modules as ksm
|
|
16
|
+
|
|
17
|
+
Create a script object:
|
|
18
|
+
|
|
19
|
+
ks = ks.KoronaScript(Categorization='categorization.xml',
|
|
20
|
+
HorizontalTransducerOffsets='HorizontalTransducerOffsets.xml')
|
|
21
|
+
|
|
22
|
+
Add some modules:
|
|
23
|
+
|
|
24
|
+
ks.add(ksm.EmptyPingRemoval())
|
|
25
|
+
ks.add(ksm.Comment(LineBreak='false', Label='CW_0256ms'))
|
|
26
|
+
ks.add(ksm.ChannelRemoval(Channels=[1,5,9,13,17],KeepSpecified='true'))
|
|
27
|
+
ks.add(ksm.Writer(RelativeDirectory='CW_0256ms'))
|
|
28
|
+
|
|
29
|
+
Write out the resulting configuration:
|
|
30
|
+
|
|
31
|
+
ks.write()
|
|
32
|
+
|
|
33
|
+
Run the script:
|
|
34
|
+
|
|
35
|
+
ks.run(src="input_dir", dst="output_dir")
|
|
36
|
+
|
|
37
|
+
The list of modules and their parameters can be found in the
|
|
38
|
+
[configuration/korona-info.json](configuration/korona-info.json) file.
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: koronascript
|
|
3
|
+
Version: 3.0.0
|
|
4
|
+
Summary: Wrapper around Korona modules for processing echosounder data
|
|
5
|
+
Home-page: https://github.com/CRIMAC-WP4-Machine-learning/CRIMAC-KoronaScript
|
|
6
|
+
Author: Ketil Malde
|
|
7
|
+
Author-email: ketil@malde.org
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
Requires-Dist: matplotlib
|
|
10
|
+
Requires-Dist: netCDF4
|
|
11
|
+
Requires-Dist: xarray
|
|
12
|
+
Requires-Dist: pytest
|
|
13
|
+
Requires-Dist: requests
|
|
14
|
+
|
|
15
|
+
# Running Korona through Python
|
|
16
|
+
|
|
17
|
+
## Prerequisites
|
|
18
|
+
|
|
19
|
+
KoronaScript depends on LSSS and Korona version 3.0.0. The `LSSS`
|
|
20
|
+
environment variable can be set to point to an existing installation,
|
|
21
|
+
otherwise, the LSSS distribution will be automatically downloaded from
|
|
22
|
+
the Marec web pages and installed as part of this package.
|
|
23
|
+
|
|
24
|
+
# Usage
|
|
25
|
+
|
|
26
|
+
Import the modules:
|
|
27
|
+
|
|
28
|
+
import KoronaScript as ks
|
|
29
|
+
import KoronaScript.Modules as ksm
|
|
30
|
+
|
|
31
|
+
Create a script object:
|
|
32
|
+
|
|
33
|
+
ks = ks.KoronaScript(Categorization='categorization.xml',
|
|
34
|
+
HorizontalTransducerOffsets='HorizontalTransducerOffsets.xml')
|
|
35
|
+
|
|
36
|
+
Add some modules:
|
|
37
|
+
|
|
38
|
+
ks.add(ksm.EmptyPingRemoval())
|
|
39
|
+
ks.add(ksm.Comment(LineBreak='false', Label='CW_0256ms'))
|
|
40
|
+
ks.add(ksm.ChannelRemoval(Channels=[1,5,9,13,17],KeepSpecified='true'))
|
|
41
|
+
ks.add(ksm.Writer(RelativeDirectory='CW_0256ms'))
|
|
42
|
+
|
|
43
|
+
Write out the resulting configuration:
|
|
44
|
+
|
|
45
|
+
ks.write()
|
|
46
|
+
|
|
47
|
+
Run the script:
|
|
48
|
+
|
|
49
|
+
ks.run(src="input_dir", dst="output_dir")
|
|
50
|
+
|
|
51
|
+
The list of modules and their parameters can be found in the
|
|
52
|
+
[configuration/korona-info.json](configuration/korona-info.json) file.
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
MANIFEST.in
|
|
1
2
|
README.md
|
|
2
3
|
setup.cfg
|
|
3
4
|
setup.py
|
|
@@ -9,5 +10,6 @@ koronascript.egg-info/PKG-INFO
|
|
|
9
10
|
koronascript.egg-info/SOURCES.txt
|
|
10
11
|
koronascript.egg-info/dependency_links.txt
|
|
11
12
|
koronascript.egg-info/not-zip-safe
|
|
13
|
+
koronascript.egg-info/requires.txt
|
|
12
14
|
koronascript.egg-info/top_level.txt
|
|
13
15
|
tests/test_examples.py
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
[metadata]
|
|
2
|
+
name = koronascript
|
|
3
|
+
version = 3.0.0
|
|
4
|
+
author = Ketil Malde
|
|
5
|
+
author_email = ketil@malde.org
|
|
6
|
+
description = Wrapper around Korona modules for processing echosounder data
|
|
7
|
+
long_description = file: README.md
|
|
8
|
+
long_description_content_type = text/markdown
|
|
9
|
+
url = https://github.com/CRIMAC-WP4-Machine-learning/CRIMAC-KoronaScript
|
|
10
|
+
|
|
11
|
+
[options]
|
|
12
|
+
packages = find:
|
|
13
|
+
include_package_data = True
|
|
14
|
+
zip_safe = False
|
|
15
|
+
install_requires =
|
|
16
|
+
matplotlib
|
|
17
|
+
netCDF4
|
|
18
|
+
xarray
|
|
19
|
+
pytest
|
|
20
|
+
requests
|
|
21
|
+
|
|
22
|
+
[flake8]
|
|
23
|
+
ignore = E302,E501,E203,E701
|
|
24
|
+
|
|
25
|
+
[egg_info]
|
|
26
|
+
tag_build =
|
|
27
|
+
tag_date = 0
|
|
28
|
+
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
import os
|
|
3
|
+
|
|
4
|
+
sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
|
|
5
|
+
|
|
6
|
+
from examples import channelRemoval as CR
|
|
7
|
+
from examples import pulseCompression as PC
|
|
8
|
+
from examples import tracking as T
|
|
9
|
+
from examples import tsDetection as TS
|
|
10
|
+
|
|
11
|
+
TESTDATA = 'testdata'
|
|
12
|
+
|
|
13
|
+
def test_channelRemoval():
|
|
14
|
+
"""This fails to fail if no data is present"""
|
|
15
|
+
CR.ksi.run(TESTDATA, 'test_out/cr_out')
|
|
16
|
+
|
|
17
|
+
def test_pulseCompression():
|
|
18
|
+
PC.ksi.run(TESTDATA, 'test_out/pc_out')
|
|
19
|
+
|
|
20
|
+
def test_tracking():
|
|
21
|
+
"""This fails to fail if no data is present"""
|
|
22
|
+
T.ksi.run(TESTDATA, 'test_out/t_out')
|
|
23
|
+
|
|
24
|
+
def test_tsDetection():
|
|
25
|
+
"""This fails to fail if no data is present"""
|
|
26
|
+
TS.ksi.run(TESTDATA, 'test_out/ts_out')
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
# Auto-generated, do not edit directly
|
|
2
|
-
# see genmodule.py
|
|
3
|
-
modules_spec = {'AngleDeletion': {'Active': True, 'Comment': ''}, 'BroadbandNotchFilter': {'Active': True, 'Comment': ''}, 'BroadbandSplitter': {'Active': True, 'Comment': '', 'AutoSplit': False, 'SplitCount': 3, 'StopBandDistance': 1.0, 'MinBandwidth': 10.0, 'Downsampling': 'FACTOR', 'DownsamplingFactor': 1, 'DownsamplingSampleSize': 0.01, 'ComputeAngles': True, 'ComputationalMethod': 'BANDPASS_FILTERING', 'FftWindowSize': 2.0}, 'BubblSpikeFilter': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': False, 'StartDepth': 10.0, 'EndDepth': 2500.0, 'TotalDelta': 15.0, 'VerticalDelta': 15.0, 'Debug': False, 'VerticalUnit': 'DURATION', 'VerticalMedianSearchHeight': 50, 'WindowMedianSearchHeight': 35, 'VerticalMedianSearchDuration': 2.0, 'WindowMedianSearchDuration': 4.4, 'VerticalMedianSearchDistance': 1.9, 'WindowMedianSearchDistance': 6.6}, 'Categorization': {'Active': True, 'Comment': '', 'CategoryCount': 3, 'ActiveFeatures': [], 'ActiveCategories': [], 'Categorizer': 'Gauss', 'Discriminant': 'Aposteriori', 'ContextualCorrection': 'ICM', 'ContextualIterations': 3, 'UseMinLogSv': True, 'MinLogSv': -100.0}, 'CdsViewer': {'Active': True, 'Comment': ''}, 'ChannelDataRemoval': {'Active': True, 'Comment': '', 'Channels': '', 'ChannelsFromEnd': '', 'Frequencies': '', 'KeepSpecified': False}, 'ChannelRemoval': {'Active': True, 'Comment': '', 'Channels': '', 'ChannelsFromEnd': '', 'Frequencies': '', 'KeepSpecified': False}, 'Combination': {'Active': True, 'Comment': '', 'FirstOperandKhz': 0, 'SecondOperandKhz': 0, 'FirstOperandChannel': 1, 'SecondOperandChannel': 2, 'LogarithmicOperands': False, 'Operation': 'mean'}, 'Comment': {'Active': True, 'Comment': '', 'GroupStart': False, 'GroupCollapsed': False, 'LineBreak': False, 'VerticalSpace': 8, 'Label': ''}, 'ComplexToReal': {'Active': True, 'Comment': '', 'ComputeAngles': True, 'KeepBroadband': False}, 'DataReduction': {'Active': True, 'Comment': '', 'BlindZone': False, 'MinRange': '', 'MinDepth': '', 'TransducerRange': True, 'MaxRange': '', 'MaxDepth': ''}, 'DepthDependentResampling': {'Active': True, 'Comment': '', 'MinFrequency': 150.0, 'SampleDistanceAtRange100': 0.0}, 'Depth': {'Active': True, 'Comment': '', 'Algorithm': 'EK500', 'MinDepthLimit': 10.0, 'MinDepthValueFraction': 0.001, 'SignalStrengthThreshold': -31.0, 'MinimumDepthThresholdFactor': 0.99, 'MaxRangeFactor': 1.5, 'AlwaysDetectBottom': True, 'MinBottomDepth': 0.0, 'MaxBottomDepth': 9999.0, 'MinKHz': 0.0, 'MaxKHz': 9999.0, 'DoNotUseKHz': ''}, 'Dilate': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'VertResolution': 1}, 'Downsampling': {'Active': True, 'Comment': '', 'Downsampling': 'FACTOR', 'DownsamplingFactor': 1, 'DownsamplingSampleSize': 0.01}, 'ES60Correction': {'Active': True, 'Comment': '', 'ReliabilityDetectionWindow': 5, 'PerformScan': False, 'ContinueAcrossFiles': False}, 'EdgeDetection': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'ScaleFactor': 1.0, 'VertResolution': 1}, 'EmptyPingRemoval': {'Active': True, 'Comment': ''}, 'ErodeLowValues': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'Threshold': -70.0, 'ReplacementValue': -120.0, 'VerticalExtent': 1.0}, 'Erode': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'VertResolution': 1}, 'Expression': {'Active': True, 'Comment': '', 'Expression': ['C1']}, 'FillMissingData': {'Active': True, 'Comment': ''}, 'Filter3X3': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'FilterType': 'User defined', '00': 1.0, '01': 1.0, '02': 1.0, '10': 1.0, '11': 1.0, '12': 1.0, '20': 1.0, '21': 1.0, '22': 1.0}, 'FiskViewDisplay': {'Active': True, 'Comment': ''}, 'GroupEnd': {'Active': True, 'Comment': ''}, 'HorizontalOffsetCorrection': {'Active': True, 'Comment': ''}, 'Isolation': {'Active': True, 'Comment': '', 'Category': ''}, 'Median': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0}, 'NoiseAcceptance': {'Active': True, 'Comment': '', 'NoiseFraction': {'min': 0.25, 'max': 4.0}, 'UseFileNoiseFile': True, 'UseDayNoiseFile': True, 'UseSurveyNoiseFile': True, 'UseSurveyLowNoiseFile': True}, 'NoiseMedianQuantification': {'Active': True, 'Comment': '', 'PingHistory': 10, 'NoiseSamplesPerBeam': 100, 'DetectionDistance': 50.0, 'InnermostDistance': False}, 'NoiseQuantification': {'Active': True, 'Comment': '', 'Smooth': 'running averager', 'SmoothInterval': 5, 'Mask': 'dynamic', 'MinimumQuality': 60.0, 'ThresholdMasking': False, 'Threshold': -80.0, 'Histogram': 'geometric', 'UseTimeStepBuffer': True, 'TimeStepBufferMaxSize': 50, 'HistogramInitializationCellCount': 500, 'HistogramMaximumCellCount': 2000, 'HistogramInitializationSampleCount': 1000, 'HistogramMinimumSampleCount': 25000, 'HistogramSmooth': True, 'HistogramSmoothFactor': 100.0, 'SdevMasking': False, 'Sdev': 10.0, 'SNMasking': False, 'SNRatio': 10.0, 'UseFallbackNoiseQuantile': False, 'FallbackNoiseQuantile': 5.0, 'FallbackNoiseChannels': 'true', 'WritePlotParameters': False}, 'NoiseRemover': {'Active': True, 'Comment': '', 'RemoveNoiseFromStart': True, 'MaxBufferSize': 10}, 'NoiseVisualization': {'Active': True, 'Comment': '', 'UpdatePeriod': 20, 'TimeSeriesLength': 200, 'HistogramSpan': 3.0, 'MedianSampleCount': 500}, 'PingCollapsing': {'Active': True, 'Comment': ''}, 'PingThinning': {'Active': True, 'Comment': '', 'PingsToSkipInitially': 0, 'PingsToSkip': 0}, 'PlanktonInversion': {'Active': True, 'Comment': '', 'VerticalUnit': 'SAMPLES', 'PingsPerBin': 7, 'DepthSamplesPerBin': 30, 'DepthDurationPerBin': 4.0, 'DepthDistancePerBin': 6.0, 'Use global noise threshold': True, 'Noise threshold': -90.0, 'Use min depth': False, 'Min depth': 20.0, 'Use max depth': False, 'Max depth': 110.0, 'CategoriesUsedForInversion': [], 'UseAllFrequencies': True, 'ActiveFrequencies': [], 'MinResidualErrorThreshold': 0.01, 'MaxResidualErrorThreshold': 0.2, 'LevenbergMarquardtFactor': 0.0005, 'MaxIter': 4, 'HardShelled': True, 'HardShelledR': 0.5, 'GaseousSphere': True, 'GasSphereG': 0.0012, 'GasSphereH': 0.22, 'FluidSpheriod': True, 'FluidSpheriodG': 1.043, 'FluidSpheriodH': 1.052, 'FluidSpheriodBeta': 5.0, 'FluidBent': True, 'FluidBentR': 0.058, 'FluidBentS': 0.1, 'FluidBentBeta': 11.0, 'FluidBent2': False, 'FluidBentR2': 0.058, 'FluidBentS2': 0.1, 'FluidBentBeta 2': 11.0, 'SDWBA': False, 'SDWBA coeff': 'N(0, 30)', 'SDWBA2': False, 'SDWBA 2 coeff': 'N(0, 30)', 'SDWBA3': False, 'SDWBA 3 coeff': 'N(0, 30)', 'SDWBA4': False, 'SDWBA 4 coeff': 'N(0, 30)', 'SDWBA5': False, 'SDWBA 5 coeff': 'N(0, 30)', 'SDWBAS': False, 'SDWBA smooth coeff': 'N(4, 2)', 'PlotResolution': 0.01, 'PlotMaxRange': 5.0}, 'Plugin': {'Active': True, 'Comment': '', 'Example': '', 'Implementation': ''}, 'PulseCompressionFilter': {'Active': True, 'Comment': ''}, 'RemoveBottom': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'UseNeighbours': False, 'Above': 0, 'Below': 100, 'RemoveAboveBottom': False, 'RemoveBottom': True, 'RemoveBelowBottom': False, 'PixelValue': -120.0}, 'Rescale': {'Active': True, 'Comment': '', 'RescaleChannels': 'all', 'DesiredMinimum': -85.0, 'DesiredMaximum': -30.0, 'MinMaxFraction': 0.05, 'InitializationDatagramCount': 10, 'InitializationMaxPingCount': 100}, 'SchoolCategorization': {'Active': True, 'Comment': '', 'UseCellCategorization': True, 'Horizontal cell size': 16, 'Vertical cell size': 50, 'Upper sample offset': 5, 'Lower sample offset': 5, 'HorizontalOffset': 0, 'SecondaryCategoryFraction': 0.1, 'Fill factor for cells': 0.5, 'MinFractionCategorizedCells': 0.5, 'MinCells': 3, 'SchoolCategorizationDistribution': 'CELL', 'EnableUncategorizedCategory': False, 'EnableUnknownCategory': False}, 'SchoolDetection': {'Active': True, 'Comment': '', 'ProcessLast': True, 'Channel': 1, 'MinDepth': '', 'MaxDepth': '', 'Threshold': -62.0, 'Density': {'min': -120.0, 'max': -20.0}, 'MaxSv': {'min': '-Infinity', 'max': 'Infinity'}, 'Length': {'min': 25.0, 'max': 1000000.0}, 'Thickness': {'min': 10.0, 'max': 1000000.0}, 'Area': {'min': 75.0, 'max': 1000000.0}, 'Compactness': {'min': '-Infinity', 'max': 'Infinity'}, 'FillHoles': True}, 'Smoother': {'Active': True, 'Comment': '', 'OnlyLastChannel': False, 'MaskPelagic': False, 'MaskBottom': True, 'MaskSecondBottom': True, 'MaskNoise': False, 'MaskRegion': 'none', 'MaskTrack': 'none', 'MinPing': 0, 'MaxPing': 10, 'HorizontalKernelType': 'gaussian', 'VerticalKernelType': 'gaussian', 'HorizontalWidth': 8.0, 'VerticalWidth': 0.5, 'LogarithmicValues': False}, 'SpikeFilter': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': False, 'StartDepth': 10.0, 'EndDepth': 2500.0, 'TotalDelta': 15.0, 'VerticalDelta': 15.0, 'Debug': False, 'VerticalUnit': 'DURATION', 'VerticalMedianSearchHeight': 7, 'WindowMedianSearchHeight': 35, 'VerticalMedianSearchDuration': 0.9, 'WindowMedianSearchDuration': 4.4, 'VerticalMedianSearchDistance': 1.3, 'WindowMedianSearchDistance': 6.6}, 'SpotNoise': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': False, 'StartDepth': 10.0, 'EndDepth': 2500.0, 'Delta': 20.0, 'Debug': False}, 'TemporaryComputationsBegin': {'Active': True, 'Comment': ''}, 'TemporaryComputationsEnd': {'Active': True, 'Comment': ''}, 'ThresholdAllChannels': {'Active': True, 'Comment': '', 'Criterion': 'BELOW', 'Threshold': -70.0, 'Replacement': -120.0, 'MinFrequency': '', 'MaxFrequency': ''}, 'Threshold': {'Active': True, 'Comment': '', 'LogarithmicValues': True, 'ShowDetails': False, 'OnlyLast': False, 'ChannelsToProcess': -1, 'AutomaticDepthRange': True, 'StartDepth': 10.0, 'EndDepth': 1000.0, 'Threshold': -70.0, 'CutBelow': False, 'CutAbove': False, 'BelowVal': -120.0, 'AboveVal': 0.0}, 'TimeInterval': {'Active': True, 'Comment': '', 'StartDateString': '', 'EndDateString': '', 'StartRelativePingNumber': '', 'EndRelativePingNumber': ''}, 'Towfish': {'Active': True, 'Comment': '', 'TowfishBlindZone': 0.0, 'TowfishEchosounderTimeAddition': 0.0, 'DistBehindFunction': 'PYTAGORAS'}, 'TrackFilter': {'Active': True, 'Comment': '', 'MaxBufferSize': 50, 'KeepValid': True}, 'Tracking': {'Active': True, 'Comment': '', 'TrackerType': 'Aggregation', 'kHz': 38, 'PlatformMotionType': 'Floating', 'MinTS': -66.0, 'PulseLengthDeterminationLevel': 6.0, 'MinEchoLength': 0.01, 'MaxEchoLength': 1.8, 'MaxGainCompensation': 6.0, 'DoPhaseDeviationCheck': True, 'MaxPhaseDevSteps': 8.0, 'MaxTS': 0.0, 'MaxDepth': '', 'MaxAlongshipAngle': 10.0, 'MaxAthwartshipAngle': 10.0, 'InitiationGateFunction': [{'id': 'Alpha', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Beta', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Range', 'description': '', 'unit': 'm', 'defaultValue': 0.1}, {'id': 'TS', 'description': 'dB', 'unit': 'dB', 'defaultValue': 20.0}], 'InitiationMinLength': 1, 'GateFunction': [{'id': 'Alpha', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Beta', 'description': '', 'unit': 'degree', 'defaultValue': 2.8}, {'id': 'Range', 'description': '', 'unit': 'm', 'defaultValue': 0.1}, {'id': 'TS', 'description': 'dB', 'unit': 'dB', 'defaultValue': 20.0}], 'AlphaBetaEstimator': [{'id': 'Alpha', 'description': '', 'allowedValuesDescription': '[0, 1]', 'defaultValue': 0.5}, {'id': 'Beta', 'description': '', 'allowedValuesDescription': '[0, 1]', 'defaultValue': 0.5}], 'MaxMissingPings': 4, 'MaxMissingSamples': 2, 'MaxMissingPingsFraction': 0.5, 'MinTrackLength': 8, 'MinSampleToLengthFraction': 2.0}, 'TsDetection': {'Active': True, 'Comment': '', 'DetectorType': 'SED', 'MinTS': -66.0, 'PulseLengthDeterminationLevel': 6.0, 'MinEchoLength': 0.01, 'MaxEchoLength': 1.8, 'MaxGainCompensation': 6.0, 'DoPhaseDeviationCheck': True, 'MaxPhaseDevSteps': 8.0, 'MaxDepth': ''}, 'VerticalOffsetCorrection': {'Active': True, 'Comment': ''}, 'Writer': {'Active': True, 'Comment': '', 'FileName': '', 'UseRelativeDirectory': False, 'RelativeDirectory': '', 'DirectoryName': ''}, 'NetcdfWriter': {'Active': True, 'Comment': '', 'DirName': 'netcdf', 'MainFrequency': 38, 'WriterType': 'GRIDDED', 'DeltaRange': '', 'MaxRange': '', 'GriddedOutputType': 'SV_AND_ANGLES', 'WriteAngels': True, 'FftWindowSize': 2.0, 'DeltaFrequency': 1.0, 'ChannelGroupOutputType': 'PULSE_COMPRESSION'}}
|
koronascript-0.2.1/PKG-INFO
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: koronascript
|
|
3
|
-
Version: 0.2.1
|
|
4
|
-
Summary: Wrapper around Korona modules for processing echosounder data
|
|
5
|
-
Home-page: https://github.com/CRIMAC-WP4-Machine-learning/CRIMAC-KoronaScript
|
|
6
|
-
Author: Ketil Malde
|
|
7
|
-
Author-email: ketil@malde.org
|
|
8
|
-
Description-Content-Type: text/markdown
|
|
9
|
-
|
|
10
|
-
# Running Korona through Python
|
|
11
|
-
|
|
12
|
-
## Prerequisites
|
|
13
|
-
|
|
14
|
-
### Install LSSS/Korona.
|
|
15
|
-
|
|
16
|
-
This version of the KoronaScript is tested against lsss-2.16.0-alpha
|
|
17
|
-
version. LSSS and korona is usually placed at
|
|
18
|
-
`~/lsss/lsss-2.16.0-alpha` or a similar directory.
|
|
19
|
-
|
|
20
|
-
Download the appropriate version from here:
|
|
21
|
-
|
|
22
|
-
https://marec.no/tmp/lsss-2.16.0-alpha-20230922-1417-linux.zip
|
|
23
|
-
|
|
24
|
-
https://marec.no/tmp/lsss-2.18.0-alpha-20240918-0847-linux.zip
|
|
25
|
-
|
|
26
|
-
https://marec.no/tmp/lsss-2.16.0-alpha-20230922-1417-windows.zip
|
|
27
|
-
|
|
28
|
-
https://marec.no/tmp/lsss-2.18.0-alpha-20240918-0847-windows.zip
|
|
29
|
-
|
|
30
|
-
If you run linux you need to install the netcdf separately:
|
|
31
|
-
|
|
32
|
-
`apt-get install libnetcdf` or `sudo apt install libnetcdf-dev`
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
### Add license
|
|
36
|
-
|
|
37
|
-
You need an LSSS licence. The licence have to be added according to the LSSS manual. the licence files are typically placed at the `~/marec/license` directory.
|
|
38
|
-
|
|
39
|
-
### Set system variables
|
|
40
|
-
|
|
41
|
-
The `LSSS` environment variable should point to the root directory of your
|
|
42
|
-
LSSS installation. It can be set at run time either by setting the LSSS environment
|
|
43
|
-
variable in the shell
|
|
44
|
-
~~~
|
|
45
|
-
export LSSS=~/lsss-2.16.0-alpha
|
|
46
|
-
~~~
|
|
47
|
-
before running your script, or by adding it manually from inside Python:
|
|
48
|
-
~~~
|
|
49
|
-
lsss = '~/lsss-2.16.0-alpha'
|
|
50
|
-
os.environ["LSSS"] = lsss
|
|
51
|
-
~~~
|
|
52
|
-
|
|
53
|
-
# Usage
|
|
54
|
-
|
|
55
|
-
Import the modules:
|
|
56
|
-
|
|
57
|
-
import KoronaScript as ks
|
|
58
|
-
import KoronaScript.Modules as ksm
|
|
59
|
-
|
|
60
|
-
Create a script object:
|
|
61
|
-
|
|
62
|
-
ks = ks.KoronaScript(Categorization='categorization.xml',
|
|
63
|
-
HorizontalTransducerOffsets='HorizontalTransducerOffsets.xml')
|
|
64
|
-
|
|
65
|
-
Add some modules:
|
|
66
|
-
|
|
67
|
-
ks.add(ksm.EmptyPingRemoval())
|
|
68
|
-
ks.add(ksm.Comment(LineBreak='false', Label='CW_0256ms'))
|
|
69
|
-
ks.add(ksm.ChannelRemoval(Channels=[1,5,9,13,17],KeepSpecified='true'))
|
|
70
|
-
ks.add(ksm.Writer(RelativeDirectory='CW_0256ms'))
|
|
71
|
-
|
|
72
|
-
Write out the resulting configuration:
|
|
73
|
-
|
|
74
|
-
ks.write()
|
|
75
|
-
|
|
76
|
-
Run the script:
|
|
77
|
-
|
|
78
|
-
ks.run(src="input_dir", dst="output_dir")
|
|
79
|
-
|
|
80
|
-
The list of modules and their parameters can be found in the
|
|
81
|
-
[configuration/korona-info.json](configuration/korona-info.json) file.
|
koronascript-0.2.1/README.md
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
# Running Korona through Python
|
|
2
|
-
|
|
3
|
-
## Prerequisites
|
|
4
|
-
|
|
5
|
-
### Install LSSS/Korona.
|
|
6
|
-
|
|
7
|
-
This version of the KoronaScript is tested against lsss-2.16.0-alpha
|
|
8
|
-
version. LSSS and korona is usually placed at
|
|
9
|
-
`~/lsss/lsss-2.16.0-alpha` or a similar directory.
|
|
10
|
-
|
|
11
|
-
Download the appropriate version from here:
|
|
12
|
-
|
|
13
|
-
https://marec.no/tmp/lsss-2.16.0-alpha-20230922-1417-linux.zip
|
|
14
|
-
|
|
15
|
-
https://marec.no/tmp/lsss-2.18.0-alpha-20240918-0847-linux.zip
|
|
16
|
-
|
|
17
|
-
https://marec.no/tmp/lsss-2.16.0-alpha-20230922-1417-windows.zip
|
|
18
|
-
|
|
19
|
-
https://marec.no/tmp/lsss-2.18.0-alpha-20240918-0847-windows.zip
|
|
20
|
-
|
|
21
|
-
If you run linux you need to install the netcdf separately:
|
|
22
|
-
|
|
23
|
-
`apt-get install libnetcdf` or `sudo apt install libnetcdf-dev`
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
### Add license
|
|
27
|
-
|
|
28
|
-
You need an LSSS licence. The licence have to be added according to the LSSS manual. the licence files are typically placed at the `~/marec/license` directory.
|
|
29
|
-
|
|
30
|
-
### Set system variables
|
|
31
|
-
|
|
32
|
-
The `LSSS` environment variable should point to the root directory of your
|
|
33
|
-
LSSS installation. It can be set at run time either by setting the LSSS environment
|
|
34
|
-
variable in the shell
|
|
35
|
-
~~~
|
|
36
|
-
export LSSS=~/lsss-2.16.0-alpha
|
|
37
|
-
~~~
|
|
38
|
-
before running your script, or by adding it manually from inside Python:
|
|
39
|
-
~~~
|
|
40
|
-
lsss = '~/lsss-2.16.0-alpha'
|
|
41
|
-
os.environ["LSSS"] = lsss
|
|
42
|
-
~~~
|
|
43
|
-
|
|
44
|
-
# Usage
|
|
45
|
-
|
|
46
|
-
Import the modules:
|
|
47
|
-
|
|
48
|
-
import KoronaScript as ks
|
|
49
|
-
import KoronaScript.Modules as ksm
|
|
50
|
-
|
|
51
|
-
Create a script object:
|
|
52
|
-
|
|
53
|
-
ks = ks.KoronaScript(Categorization='categorization.xml',
|
|
54
|
-
HorizontalTransducerOffsets='HorizontalTransducerOffsets.xml')
|
|
55
|
-
|
|
56
|
-
Add some modules:
|
|
57
|
-
|
|
58
|
-
ks.add(ksm.EmptyPingRemoval())
|
|
59
|
-
ks.add(ksm.Comment(LineBreak='false', Label='CW_0256ms'))
|
|
60
|
-
ks.add(ksm.ChannelRemoval(Channels=[1,5,9,13,17],KeepSpecified='true'))
|
|
61
|
-
ks.add(ksm.Writer(RelativeDirectory='CW_0256ms'))
|
|
62
|
-
|
|
63
|
-
Write out the resulting configuration:
|
|
64
|
-
|
|
65
|
-
ks.write()
|
|
66
|
-
|
|
67
|
-
Run the script:
|
|
68
|
-
|
|
69
|
-
ks.run(src="input_dir", dst="output_dir")
|
|
70
|
-
|
|
71
|
-
The list of modules and their parameters can be found in the
|
|
72
|
-
[configuration/korona-info.json](configuration/korona-info.json) file.
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: koronascript
|
|
3
|
-
Version: 0.2.1
|
|
4
|
-
Summary: Wrapper around Korona modules for processing echosounder data
|
|
5
|
-
Home-page: https://github.com/CRIMAC-WP4-Machine-learning/CRIMAC-KoronaScript
|
|
6
|
-
Author: Ketil Malde
|
|
7
|
-
Author-email: ketil@malde.org
|
|
8
|
-
Description-Content-Type: text/markdown
|
|
9
|
-
|
|
10
|
-
# Running Korona through Python
|
|
11
|
-
|
|
12
|
-
## Prerequisites
|
|
13
|
-
|
|
14
|
-
### Install LSSS/Korona.
|
|
15
|
-
|
|
16
|
-
This version of the KoronaScript is tested against lsss-2.16.0-alpha
|
|
17
|
-
version. LSSS and korona is usually placed at
|
|
18
|
-
`~/lsss/lsss-2.16.0-alpha` or a similar directory.
|
|
19
|
-
|
|
20
|
-
Download the appropriate version from here:
|
|
21
|
-
|
|
22
|
-
https://marec.no/tmp/lsss-2.16.0-alpha-20230922-1417-linux.zip
|
|
23
|
-
|
|
24
|
-
https://marec.no/tmp/lsss-2.18.0-alpha-20240918-0847-linux.zip
|
|
25
|
-
|
|
26
|
-
https://marec.no/tmp/lsss-2.16.0-alpha-20230922-1417-windows.zip
|
|
27
|
-
|
|
28
|
-
https://marec.no/tmp/lsss-2.18.0-alpha-20240918-0847-windows.zip
|
|
29
|
-
|
|
30
|
-
If you run linux you need to install the netcdf separately:
|
|
31
|
-
|
|
32
|
-
`apt-get install libnetcdf` or `sudo apt install libnetcdf-dev`
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
### Add license
|
|
36
|
-
|
|
37
|
-
You need an LSSS licence. The licence have to be added according to the LSSS manual. the licence files are typically placed at the `~/marec/license` directory.
|
|
38
|
-
|
|
39
|
-
### Set system variables
|
|
40
|
-
|
|
41
|
-
The `LSSS` environment variable should point to the root directory of your
|
|
42
|
-
LSSS installation. It can be set at run time either by setting the LSSS environment
|
|
43
|
-
variable in the shell
|
|
44
|
-
~~~
|
|
45
|
-
export LSSS=~/lsss-2.16.0-alpha
|
|
46
|
-
~~~
|
|
47
|
-
before running your script, or by adding it manually from inside Python:
|
|
48
|
-
~~~
|
|
49
|
-
lsss = '~/lsss-2.16.0-alpha'
|
|
50
|
-
os.environ["LSSS"] = lsss
|
|
51
|
-
~~~
|
|
52
|
-
|
|
53
|
-
# Usage
|
|
54
|
-
|
|
55
|
-
Import the modules:
|
|
56
|
-
|
|
57
|
-
import KoronaScript as ks
|
|
58
|
-
import KoronaScript.Modules as ksm
|
|
59
|
-
|
|
60
|
-
Create a script object:
|
|
61
|
-
|
|
62
|
-
ks = ks.KoronaScript(Categorization='categorization.xml',
|
|
63
|
-
HorizontalTransducerOffsets='HorizontalTransducerOffsets.xml')
|
|
64
|
-
|
|
65
|
-
Add some modules:
|
|
66
|
-
|
|
67
|
-
ks.add(ksm.EmptyPingRemoval())
|
|
68
|
-
ks.add(ksm.Comment(LineBreak='false', Label='CW_0256ms'))
|
|
69
|
-
ks.add(ksm.ChannelRemoval(Channels=[1,5,9,13,17],KeepSpecified='true'))
|
|
70
|
-
ks.add(ksm.Writer(RelativeDirectory='CW_0256ms'))
|
|
71
|
-
|
|
72
|
-
Write out the resulting configuration:
|
|
73
|
-
|
|
74
|
-
ks.write()
|
|
75
|
-
|
|
76
|
-
Run the script:
|
|
77
|
-
|
|
78
|
-
ks.run(src="input_dir", dst="output_dir")
|
|
79
|
-
|
|
80
|
-
The list of modules and their parameters can be found in the
|
|
81
|
-
[configuration/korona-info.json](configuration/korona-info.json) file.
|
koronascript-0.2.1/setup.cfg
DELETED
koronascript-0.2.1/setup.py
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
from setuptools import setup
|
|
2
|
-
|
|
3
|
-
setup(name='koronascript',
|
|
4
|
-
version='0.2.1',
|
|
5
|
-
description='Wrapper around Korona modules for processing echosounder data',
|
|
6
|
-
long_description=open('README.md').read(),
|
|
7
|
-
long_description_content_type='text/markdown',
|
|
8
|
-
url='https://github.com/CRIMAC-WP4-Machine-learning/CRIMAC-KoronaScript',
|
|
9
|
-
author='Ketil Malde',
|
|
10
|
-
author_email='ketil@malde.org',
|
|
11
|
-
packages=['KoronaScript'],
|
|
12
|
-
package_data={'': ['configuration/korona-info.json']},
|
|
13
|
-
include_package_data=True,
|
|
14
|
-
zip_safe=False)
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
import examples.channelRemoval as CR
|
|
3
|
-
|
|
4
|
-
TESTDATA = 'test_data/EK60'
|
|
5
|
-
|
|
6
|
-
def test_get_data():
|
|
7
|
-
if not os.path.exists(TESTDATA):
|
|
8
|
-
# Get test data from pyEchoLab examples:
|
|
9
|
-
os.system('mkdir -p test_data && cd test_data && wget --recursive --no-parent -nH --cut-dirs=6 ftp://ftp.ngdc.noaa.gov/pub/outgoing/mgg/wcd/pyEcholab_data/examples/EK60')
|
|
10
|
-
|
|
11
|
-
def test_channelRemoval():
|
|
12
|
-
"""This fails to fail if no data is present"""
|
|
13
|
-
CR.ks.run('test_data/EK60', 'test_out/cr_out')
|
|
14
|
-
|
|
15
|
-
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|