Ejemplo n.º 1
0
    def __init__(self, data, table_name, presence_table):
        MessageSending.__init__(self, table_name, presence_table)
        self.buffer = {}
        self.value = []
        self.sent = []

        #checkpoint code
        self.checkpoint_interval = 60
        f_stop = threading.Event()
        self.f(f_stop)
Ejemplo n.º 2
0
    def __init__(self, data, table_name, presence_table):
        MessageSending.__init__(self, table_name, presence_table)
        TempSending.__init__(self, )

        self.data = data  # {pk: [R0,R1]} -> {R0: [pk,pj,pl]}
        self.delta = 1 / cloudconfig.infer_fps
        self.count = 0
        self.idle_orch = False
        self.frame_count = 0

        self.removeduplicates = []

        #checkpoint code
        self.activitycheckpoint = 500
        self.checkpoint_history = {
        }  # mapping of Object id -> Region -> [ [frameids], [frametimes], [type of object or list types of keypoints]
        self.checkpoint_idle = {}
        self.last_flush_frame = 0
        self.hysterisis_length = cloudconfig.posepresence_hysteresis

        self.thresholds = {
            "Liquid": 0.8,
            "Label": 0.8,
            "Monitor": 0.5,
            "L1S1": 1.0,
            "L1S2": 1.0,
            "R7": 0.6
        }
        # self.checkpoint_interval = 30
        # f_stop = threading.Event()
        # self.f(f_stop)

        self.object_type_mappings = {
            'pallet': 'pl',
            'forklift': 'fl',
            'Person': 'p',
            0: 'pa',
            1: 'pb',
            2: 'pc',
            3: 'pd',
            4: 'pe',
            5: 'pf',
            6: 'pg',
            7: 'ph',
            8: 'pi',
            9: 'pj',
            10: 'pk',
            11: 'pl',
            12: 'pm',
            13: 'pn',
            14: 'po',
            15: 'pp',
            16: 'pq',
            17: 'pr'
        }
Ejemplo n.º 3
0
    def __init__(self, data, table_name, presence_table):
        MessageSending.__init__(self, table_name, presence_table)
        self.bool = False
        self.lights = {
        }  #mapping between light id and [hysteresis,type,timestamp]
        self.hysteresis = 100  # CHANGEABLE; number of state before i declate it as that state

        self.buffer = {}
        self.sent = []

        #checkpoint code
        self.checkpoint_interval = 60
        f_stop = threading.Event()
        self.f(f_stop)
Ejemplo n.º 4
0
    def __init__(self, data, table_name, presence_table):
        MessageSending.__init__(self, table_name, presence_table)

        self.data = data
        self.clip_input = True

        #this will create a buffer for the past some minutes to capture the state
        self.buffer = {}
        self.sent = []
        self.frame_threshold = 100
        self.delta = 1 / cloudconfig.infer_fps

        #checkpoint code
        self.checkpoint_interval = 300
        f_stop = threading.Event()
        self.f(f_stop)
Ejemplo n.º 5
0
    def __init__(self,data,table_name,presence_table):
        """
        Clean this up where I remove the unused stuff
        https://stackoverflow.com/questions/51509808/how-to-measure-distances-in-a-image-with-python
        """
        MessageSending.__init__(self,table_name,presence_table)
        #data input with reges
        self.data = data

        self.width = 1920
        #this will tell me what objects to capture the idle state for
        #self.regex = idle_regex
        #create a mapping between id's and their last observed keypoint
        self.mappings_last_keypoint = {}
        #mappings between keypoints and their last centroid, timestamp
        self.mappings_last_distance = {}
        #create a mapping between ids and their object type
        self.mappings = {}
Ejemplo n.º 6
0
    def __init__(self,
                region,
                lines,
                rule,
                rule_map,
                commands,
                table_name,
                presence_table,
                region_presence_state,
                region_presence_regex,
                pose_presence_state,
                pose_presence_regex,
                ergonomic_state,
                ergonomic_regex,
                pose=False): # if pose=false, we want pose


        Geometry.__init__(self,region,lines)
        MessageSending.__init__(self,table_name,presence_table)
        Regex.__init__(self,rule,rule_map)
        Database.__init__(self,table_name)
        self.commands = commands

        #Region: Hardcoded Track id
        self.apriori_regions = cloudconfig.region_to_trackid_hardcode

        # self.apriori_regions = {
        #     'Sort' : 1,
        #     'Pack' : 1,
        #     'Base' : 1,
        #     'Cover' : 1
        # } 
        self.kp_rule_map = rule_map
        self.pose_flag = pose
        #this determines if the presence state if it sgood to do the presence region
        self.region_presence_flag = region_presence_state
        self.region_presence = PersonFinder(region_presence_regex,table_name,presence_table) if self.region_presence_flag else False
        #this will create the flags for the pose presence
        self.pose_resgion_flag = pose_presence_state
        self.pose_presence = PoseFinder(pose_presence_regex,table_name,presence_table) if self.pose_resgion_flag else False
        # this will create the flags for ergonomics
        self.ergonomic_flag = ergonomic_state
        self.ergonomic = Ergonomics(ergonomic_regex,table_name,
                                           presence_table) if self.ergonomic_flag else False
Ejemplo n.º 7
0
    def __init__(self, data, table_name, presence_table):
        MessageSending.__init__(self, table_name, presence_table)
        self.window_size = 30
        self.values = []
        self.sum = 0
        self.rules = data  # maps from threeKP (tuple) to [angleCompare,angleThresh,tmin]
        self.delta = 1 / cloudconfig.infer_fps
        self.counter = 0
        self.checkpoint_history = {}  #checkpoint
        self.last_flush_frame = 0
        self.hysteresis_length = cloudconfig.ergo_hysteresis
        self.frame_count = 0

        self.object_type_mappings = {
            'pallet': 'pl',
            'forklift': 'fl',
            'Person': 'p',
            0: 'pa',
            1: 'pb',
            2: 'pc',
            3: 'pd',
            4: 'pe',
            5: 'pf',
            6: 'pg',
            7: 'ph',
            8: 'pi',
            9: 'pj',
            10: 'pk',
            11: 'pl',
            12: 'pm',
            13: 'pn',
            14: 'po',
            15: 'pp',
            16: 'pq',
            17: 'pr'
        }
Ejemplo n.º 8
0
 def __init__(self, data, table_name, presence_table):
     MessageSending.__init__(self, table_name, presence_table)
     self.data = data
     self.prev_region_mappings = {}
     self.current_frame_objectids = []