47#include "DetectorOp.h"
84 JammingOp(
double smoothnessThreshold = 5.0,
double distanceMin = 80.0,
double refit=
true,
int debugRow=-1) :
85 DetectorOp(__FUNCTION__,
"Detects broad lines caused by electromagnetic interference. Intensities should be smooth, increasing by distance.",
88 parameters.link(
"smoothnessThreshold", this->smoothnessThreshold = smoothnessThreshold,
"dBZ");
89 parameters.link(
"distanceMin", this->distanceMin = distanceMin,
"km");
90 parameters.link(
"refit", this->refit = refit,
"true|false");
99 double smoothnessThreshold;
144 return dBZ0 + distance*(0.016/1000.0) + 20.0*log10(distance);
165 int iLower = std::max(i-span, 0);
166 double zLower = src.
get<
double>(iLower,j);
168 int iUpper = std::min(i+span,
static_cast<int>(src.getWidth())-1);
169 double zUpper = src.
get<
double>(iUpper,j);
171 return (zUpper - zLower)/(odimIn.
rscale*
static_cast<double>(iUpper-iLower));
174 return std::numeric_limits<double>::max();
181 double derivativeDBZ_Modelled(
double yModelBase,
double range,
double rangeDifference){
T get(size_t i) const
Gets the intensity at location i. See address().
Definition ImageFrame.h:254
Class for multi-channel digital images. Supports dynamic typing with base types (char,...
Definition Image.h:184
Base class for anomaly detectors.
Definition DetectorOp.h:49
bool REQUIRE_STANDARD_DATA
Set to true if operator expects fixed background intensities instead of "nodata" defined by the Polar...
Definition DetectorOp.h:216
bool UNIVERSAL
If true, applies also to quantities str than the one used in detection. The detection and the accumul...
Definition DetectorOp.h:181
bool isValue(double x) const
Returns true for a valid measurement value, false for undetect and nodata marker values.
Definition EncodingODIM.h:223
A detector for widespread electromagnetic interference.
Definition JammingOp.h:64
static double modelledEmitter(double dBZ0, double distance)
Model for radar amplification of an external emitter.
Definition JammingOp.h:143
static double derivativeDBZ(const PolarODIM &odimIn, const Image &src, int i, int j, int span=10)
Returns the beam-oriented derivative of the dBZ field. In case of no-data, returns std::numeric_limit...
Definition JammingOp.h:164
int debugRow
Definition JammingOp.h:135
virtual void runDetector(const PlainData< PolarSrc > &srcData, PlainData< PolarDst > &dstProb) const
Process as sweep (data in one elevation angle)
Definition JammingOp.cpp:59
JammingOp(double smoothnessThreshold=5.0, double distanceMin=80.0, double refit=true, int debugRow=-1)
Definition JammingOp.h:84
Essential class for storing radar data.
Definition Data.h:300
Metadata structure for single-radar data (polar scans, volumes and products).
Definition PolarODIM.h:45
double & rscale
Beam-directional bin length [m].
Definition PolarODIM.h:77
Namespace for images and image processing tools.
Definition AccumulationArray.cpp:45
Definition DataSelector.cpp:44