object CalibrationE extends CalibrationBase
reads the calibration information from the JSON config file, and instantiate the transform matrix, ROI etc per sensor
this is alternative to Calibration and used for Euclidean space, the config is broadcast to each of the executors
example usage
dataset // of Message .map(msg => CalibrationE.transform(msg, config)) .filter(msg => CalibrationE.pointInPolygon(msg.`object`.location, msg.sensor.id, config)) //
- Alphabetic
- By Inheritance
- CalibrationE
- CalibrationBase
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
lazy val
appConfig: Config
- Definition Classes
- CalibrationBase
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
lazy val
cameraSet: Set[String]
camera set
camera set
- Definition Classes
- CalibrationBase
- Annotations
- @transient()
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
var
config: Map[String, String]
for performance reason, while running in spark, singleton Calibration is used in a given executor
for performance reason, while running in spark, singleton Calibration is used in a given executor
while running outside of spark the below config needs to be set before running any operations
- Definition Classes
- CalibrationBase
-
def
contains(sensorId: String, c: Map[String, String] = Map.empty): Boolean
checks if cameraSet contains the given sensor
checks if cameraSet contains the given sensor
- Definition Classes
- CalibrationE → CalibrationBase
- def delete(calibration: String): Unit
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
euclideanDistance(p1: Point, p2: Point): Double
function to compute euclidean distance between two points
function to compute euclidean distance between two points
- Definition Classes
- CalibrationBase
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
gethomographyMap: Map[String, (Location, Mat, Any)]
- Definition Classes
- CalibrationE → CalibrationBase
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
haversineDistance(p1: Location, p2: Location): Double
function to compute great circle distance between two points(lat, lon)
function to compute great circle distance between two points(lat, lon)
- Definition Classes
- CalibrationBase
-
lazy val
homographyMap: Map[String, (Location, Mat, Map[String, Shape])]
Map containing sensor-id -> (Location, HMatrix, roi_polygons) HMatrix, transform matrix, maps camera coordinates to global coordinates (in meters) Location, lat-lon representation of the origin (0.0) on which global coordinates are based on roi_polygons, defines the roi/s for a given camera, points falling outside roi/road will be discarded
Map containing sensor-id -> (Location, HMatrix, roi_polygons) HMatrix, transform matrix, maps camera coordinates to global coordinates (in meters) Location, lat-lon representation of the origin (0.0) on which global coordinates are based on roi_polygons, defines the roi/s for a given camera, points falling outside roi/road will be discarded
- Annotations
- @transient()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
main(args: Array[String]): Unit
used for testing
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
pointInPolygon(loc: Location, sensorId: String, configbc: Map[String, String]): Boolean
checks if the given Location falls within the ROI for the given intersection
checks if the given Location falls within the ROI for the given intersection
- Definition Classes
- CalibrationE → CalibrationBase
-
def
pointInPolygon(loc: Coordinate, sensorId: String, configbc: Map[String, String] = Map.empty): Boolean
checks if the given point falls within the ROI for the given intersection
checks if the given point falls within the ROI for the given intersection
- Definition Classes
- CalibrationE → CalibrationBase
-
def
reProjectionError(imageP: Point, expected: Point, hMatrix: Mat): Double
re projection error
re projection error
- Definition Classes
- CalibrationE → CalibrationBase
-
def
sensorMap: Map[String, Sensor]
lookup table/map for id -> Sensor
lookup table/map for id -> Sensor
- Definition Classes
- CalibrationE → CalibrationBase
-
lazy val
sensors: Array[Sensor]
array of sensors/sensors, read from the configuration file
array of sensors/sensors, read from the configuration file
- Definition Classes
- CalibrationBase
- Annotations
- @transient()
- lazy val spatialContext: JtsSpatialContext
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
tranformBbox(bbox: Bbox, sensorId: String): (Coordinate, Location)
Transform 4 corners of bbox image coordinates to a single real world coordinates based on Homography Matrix for a given sensor-id
Transform 4 corners of bbox image coordinates to a single real world coordinates based on Homography Matrix for a given sensor-id
Also transform real world coordinates (cartesian) to lat-lon, with respect to a given origin. The transformation matrix and the origin are initialized from an external configuration if transformation matrix is not present, it will return image coordinates- Definition Classes
- CalibrationE → CalibrationBase
- def tranformPoint(p: Point, sensorId: String, configbc: Map[String, String] = Map.empty): Point
-
def
transform(msg: Message, configuration: Map[String, String] = Map.empty): Message
transform image coordinates to real world coordinates Also updates the location/place based on configuration
transform image coordinates to real world coordinates Also updates the location/place based on configuration
- Definition Classes
- CalibrationBase
-
def
transformF(frame: Frame, configuration: Map[String, String] = Map.empty): FrameMessage
transform, enhance frames with ROI, FOV count, proximity detection
-
def
transformFList(frames: List[Frame], configuration: Map[String, String] = Map.empty): List[FrameMessage]
transform, enhance frames with ROI, FOV count, proximity detection
- def update(calibration: String): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated