risk-weaver-0.1.0.1: A DSL for Risk-oriented Object Detection Requirements
Safe HaskellSafe-Inferred
LanguageGHC2021

RiskWeaver.DSL.Core

Documentation

class BoundingBox a where Source #

Associated Types

type Detection a :: Type Source #

type ClassG a :: Type Source #

type ClassD a :: Type Source #

data ErrorType a :: Type Source #

type InterestArea a :: Type Source #

type InterestObject a :: Type Source #

data Env a :: Type Source #

type Idx a :: Type Source #

type Risk a :: Type Source #

Methods

riskE :: Env a -> Risk a Source #

interestArea :: Env a -> InterestArea a Source #

interestObject :: Env a -> InterestObject a Source #

groundTruth :: Env a -> Vector a Source #

detection :: Env a -> Vector (Detection a) Source #

confidenceScoreThresh :: Env a -> Double Source #

ioUThresh :: Env a -> Double Source #

scoreD :: Detection a -> Double Source #

sizeD :: Detection a -> Double Source #

classD :: Detection a -> ClassG a Source #

idD :: Detection a -> Idx a Source #

isFrontD :: Detection a -> Detection a -> Bool Source #

isBackD :: Detection a -> Detection a -> Bool Source #

isLeftD :: Detection a -> Detection a -> Bool Source #

isRightD :: Detection a -> Detection a -> Bool Source #

isTopD :: Detection a -> Detection a -> Bool Source #

isBottomD :: Detection a -> Detection a -> Bool Source #

isBackGroundD :: ClassD a -> Bool Source #

detectD :: Env a -> Detection a -> Maybe a Source #

errorType :: Env a -> Detection a -> Maybe (ErrorType a) Source #

sizeG :: a -> Double Source #

classG :: a -> ClassG a Source #

angle :: a -> Detection a -> Double Source #

idG :: a -> Idx a Source #

ioU :: a -> Detection a -> Double Source #

ioG :: a -> Detection a -> Double Source #

ioD :: a -> Detection a -> Double Source #

detectG :: Env a -> a -> Maybe (Detection a) Source #

isInIeterestAreaD :: InterestArea a -> Detection a -> Bool Source #

isInIeterestAreaG :: InterestArea a -> a -> Bool Source #

riskD :: Env a -> Detection a -> Risk a Source #

riskBB :: Env a -> Risk a Source #

confusionMatrixRecallBB :: Env a -> Map (ClassG a, ClassD a) Double Source #

confusionMatrixAccuracyBB :: Env a -> Map (ClassD a, ClassG a) Double Source #

confusionMatrixRecallBB' :: Env a -> Map (ClassG a, ClassD a) [Idx a] Source #

confusionMatrixAccuracyBB' :: Env a -> Map (ClassD a, ClassG a) [Idx a] Source #

errorGroupsBB :: Env a -> Map (ClassG a) (Map (ErrorType a) [Idx a]) Source #

Instances

Instances details
BoundingBox BoundingBoxGT Source # 
Instance details

Defined in RiskWeaver.DSL.BDD

Methods

riskE :: Env BoundingBoxGT -> Risk BoundingBoxGT Source #

interestArea :: Env BoundingBoxGT -> InterestArea BoundingBoxGT Source #

interestObject :: Env BoundingBoxGT -> InterestObject BoundingBoxGT Source #

groundTruth :: Env BoundingBoxGT -> Vector BoundingBoxGT Source #

detection :: Env BoundingBoxGT -> Vector (Detection BoundingBoxGT) Source #

confidenceScoreThresh :: Env BoundingBoxGT -> Double Source #

ioUThresh :: Env BoundingBoxGT -> Double Source #

scoreD :: Detection BoundingBoxGT -> Double Source #

sizeD :: Detection BoundingBoxGT -> Double Source #

classD :: Detection BoundingBoxGT -> ClassG BoundingBoxGT Source #

idD :: Detection BoundingBoxGT -> Idx BoundingBoxGT Source #

isFrontD :: Detection BoundingBoxGT -> Detection BoundingBoxGT -> Bool Source #

isBackD :: Detection BoundingBoxGT -> Detection BoundingBoxGT -> Bool Source #

isLeftD :: Detection BoundingBoxGT -> Detection BoundingBoxGT -> Bool Source #

isRightD :: Detection BoundingBoxGT -> Detection BoundingBoxGT -> Bool Source #

isTopD :: Detection BoundingBoxGT -> Detection BoundingBoxGT -> Bool Source #

isBottomD :: Detection BoundingBoxGT -> Detection BoundingBoxGT -> Bool Source #

isBackGroundD :: ClassD BoundingBoxGT -> Bool Source #

detectD :: Env BoundingBoxGT -> Detection BoundingBoxGT -> Maybe BoundingBoxGT Source #

errorType :: Env BoundingBoxGT -> Detection BoundingBoxGT -> Maybe (ErrorType BoundingBoxGT) Source #

sizeG :: BoundingBoxGT -> Double Source #

classG :: BoundingBoxGT -> ClassG BoundingBoxGT Source #

angle :: BoundingBoxGT -> Detection BoundingBoxGT -> Double Source #

idG :: BoundingBoxGT -> Idx BoundingBoxGT Source #

ioU :: BoundingBoxGT -> Detection BoundingBoxGT -> Double Source #

ioG :: BoundingBoxGT -> Detection BoundingBoxGT -> Double Source #

ioD :: BoundingBoxGT -> Detection BoundingBoxGT -> Double Source #

detectG :: Env BoundingBoxGT -> BoundingBoxGT -> Maybe (Detection BoundingBoxGT) Source #

isInIeterestAreaD :: InterestArea BoundingBoxGT -> Detection BoundingBoxGT -> Bool Source #

isInIeterestAreaG :: InterestArea BoundingBoxGT -> BoundingBoxGT -> Bool Source #

riskD :: Env BoundingBoxGT -> Detection BoundingBoxGT -> Risk BoundingBoxGT Source #

riskBB :: Env BoundingBoxGT -> Risk BoundingBoxGT Source #

confusionMatrixRecallBB :: Env BoundingBoxGT -> Map (ClassG BoundingBoxGT, ClassD BoundingBoxGT) Double Source #

confusionMatrixAccuracyBB :: Env BoundingBoxGT -> Map (ClassD BoundingBoxGT, ClassG BoundingBoxGT) Double Source #

confusionMatrixRecallBB' :: Env BoundingBoxGT -> Map (ClassG BoundingBoxGT, ClassD BoundingBoxGT) [Idx BoundingBoxGT] Source #

confusionMatrixAccuracyBB' :: Env BoundingBoxGT -> Map (ClassD BoundingBoxGT, ClassG BoundingBoxGT) [Idx BoundingBoxGT] Source #

errorGroupsBB :: Env BoundingBoxGT -> Map (ClassG BoundingBoxGT) (Map (ErrorType BoundingBoxGT) [Idx BoundingBoxGT]) Source #

loopG :: forall a m b. (BoundingBox a, Monad m) => (b -> b -> b) -> b -> (a -> ReaderT (Env a) m b) -> ReaderT (Env a) m b Source #

loopD :: forall a m b. (BoundingBox a, Monad m) => (b -> b -> b) -> b -> (Detection a -> ReaderT (Env a) m b) -> ReaderT (Env a) m b Source #