Exemple #1
0
 def run(self, device):
     if not get_property_value(self, "file_path"):
         raise RuntimeError(f"No file path specified in {self.name} node!")
     self.cap = cv2.VideoCapture(get_property_value(self, "file_path"))
     while self._running and self.cap.isOpened():
         read_correctly, frame = self.cap.read()
         if read_correctly:
             print("sending video frame...")
             self.send("frame", frame)
             print("video frame sent...")
             time.sleep(0.01)
Exemple #2
0
 def run(self, device):
     if not get_property_value(self, "dir_path"):
         raise RuntimeError(
             f"No directory path specified in {self.name} node!")
     Path(get_property_value(self, "dir_path")).mkdir(parents=True,
                                                      exist_ok=True)
     while self._running:
         in_data = self.queue.get()
         if in_data is not None:
             cv2.imwrite(
                 f'{get_property_value(self, "dir_path")}/{int(time.time() * 10000)}.png',
                 in_data['data'])
Exemple #3
0
 def run(self, device):
     if not get_property_value(self, "file_path"):
         raise RuntimeError(f"No file path specified in {self.name} node!")
     with open(get_property_value(self, "file_path"),
               get_property_value(self, "file_mode")) as file:
         while self._running:
             in_data = self.queue.get()
             if in_data is not None:
                 if hasattr(in_data, 'getData'):
                     data = in_data['data'].getData()
                 else:
                     data = in_data['data']
                 data.tofile(file)
Exemple #4
0
 def build_pipeline(self, pipeline):
     import depthai
     cam = pipeline.createColorCamera()
     w = get_property_value(self, "prev_width")
     h = get_property_value(self, "prev_height")
     if None not in (w, h) and w > 0 and h > 0:
         cam.setPreviewSize(w, h)
     cam.setResolution(getattr(
         depthai.ColorCameraProperties.SensorResolution,
         get_property_value(self, "resolution", "THE_1080_P")
     ))
     cam.setInterleaved(get_property_value(self, "interleaved"))
     cam.setCamId(self.getId())
     self.connection_map["preview"] = cam.preview
     self.connection_map["video"] = cam.video
Exemple #5
0
 def run(self, device):
     color_map = getattr(cv2, get_property_value(self, 'color_map'),
                         cv2.COLORMAP_JET)
     while self._running:
         in_data = self.queue.get()
         if in_data is None:
             continue
         self.send("result", cv2.applyColorMap(in_data['data'], color_map))
 def build_pipeline(self, pipeline):
     import depthai
     cam = pipeline.createMonoCamera()
     cam.setResolution(
         getattr(depthai.MonoCameraProperties.SensorResolution,
                 get_property_value(self, "resolution", "THE_720_P")))
     cam.setCamId(self.getId())
     self.connection_map["out"] = cam.out
 def build_pipeline(self, pipeline):
     detection_nn = pipeline.createNeuralNetwork()
     path = get_property_value(self, "blob")
     if path is None or len(path) == 0:
         raise RuntimeError(
             f"Blob file path must be set in the {self.name} node")
     detection_nn.setBlobPath(str(Path(path).resolve().absolute()))
     self.connection_map["out"] = detection_nn.out
     self.connection_map["in"] = detection_nn.input
Exemple #8
0
 def run(self, device):
     while self._running:
         in_data = self.queue.get()
         if in_data is not None:
             data = in_data['data']
             arr = np.array(data.getFirstLayerFp16())
             arr = arr[:np.where(arr == -1)[0][0]]
             arr = arr.reshape((arr.size // 7, 7))
             arr = arr[arr[:,
                           2] > get_property_value(self, "threshold")][:,
                                                                       3:7]
             self.send("bbox", arr)
             if DEBUG:
                 print(f"{self.name} updated.")
Exemple #9
0
 def build_pipeline(self, pipeline):
     import depthai
     encoder = pipeline.createVideoEncoder()
     if not get_property_value(self, "width"):
         raise RuntimeError(
             f"Encoder frame width is not specified in {self.name} node!")
     if not get_property_value(self, "height"):
         raise RuntimeError(
             f"Encoder frame height is not specified in {self.name} node!")
     if not get_property_value(self, "fps"):
         raise RuntimeError(
             f"Encoder FPS is not specified in {self.name} node!")
     encoder.setDefaultProfilePreset(
         get_property_value(self, "width"),
         get_property_value(self, "height"),
         get_property_value(self, "fps"),
         getattr(depthai.VideoEncoderProperties.Profile,
                 get_property_value(self, "profile", "H264_MAIN")))
     self.connection_map["input"] = encoder.input
     self.connection_map["bitstream"] = encoder.bitstream
    def run(self, device):
        color = hex_to_rgb(get_property_value(self, "color_hex"))
        bboxes = []
        frame = None

        while self._running:
            in_data = self.queue.get()
            if in_data is None:
                continue
            if in_data['name'] == "frame":
                frame = in_data['data']
            elif in_data['name'] == "bbox":
                bboxes = in_data['data']

            if frame is None:
                continue

            frame = frame.copy()
            for raw_bbox in bboxes:
                bbox = frame_norm(frame, raw_bbox)
                cv2.rectangle(frame, (bbox[0], bbox[1]), (bbox[2], bbox[3]), color, 2)
            self.send("result", frame)
Exemple #11
0
 def build_pipeline(self, pipeline):
     xout = pipeline.createXLinkOut()
     xout.setStreamName(get_property_value(self, "streamName"))
     self.connection_map["input"] = xout.input
Exemple #12
0
python_filename = sys.argv[0]
print('python_filename')
print(python_filename)
environment = sys.argv[1]
print('environment')
print(environment)

import common

common.check_environment(environment)

properties_file_name = common.get_properties_file_name(environment)
print('properties_file_name')
print(properties_file_name)

log_folder = common.get_property_value(properties_file_name, 'log_folder')
print('log_folder')
print(log_folder)
common.find_folder_name(log_folder)

logging_filename = common.get_logging_filename(python_filename, log_folder)
print('logging_filename')
print(logging_filename)

# set up logging to file
import logging
import datetime as dt


class MyFormatter(logging.Formatter):
    converter = dt.datetime.fromtimestamp
Exemple #13
0
python_filename = sys.argv[0]
print('python_filename')
print(python_filename)
environment = sys.argv[1]
print('environment')
print(environment)

import common
common.check_environment(environment)

properties_file_name = common.get_properties_file_name(environment)
print('properties_file_name')
print(properties_file_name)

log_folder = common.get_property_value(properties_file_name, 'log_folder')
print('log_folder')
print(log_folder)
common.find_folder_name(log_folder)

logging_filename = common.get_logging_filename(python_filename, log_folder)
print('logging_filename')
print(logging_filename)

# set up logging to file
import logging
import datetime as dt


class MyFormatter(logging.Formatter):
    converter = dt.datetime.fromtimestamp
Exemple #14
0
python_filename = sys.argv[0]
print('python_filename')
print(python_filename)
environment = sys.argv[1]
print('environment')
print(environment)

import common
common.check_environment(environment)

properties_file_name = common.get_properties_file_name(environment)
print('properties_file_name')
print(properties_file_name)

log_folder = common.get_property_value(properties_file_name, 'log_folder')
print('log_folder')
print(log_folder)
common.find_folder_name(log_folder)

logging_filename = common.get_logging_filename(python_filename, log_folder)
print('logging_filename')
print(logging_filename)

# set up logging to file
import logging
import datetime as dt


class MyFormatter(logging.Formatter):
    converter = dt.datetime.fromtimestamp
Exemple #15
0
 def run(self, device):
     while self._running:
         data = get_property_value(self, "data")
         self.send("out", eval(data))
Exemple #16
0
python_filename = sys.argv[0]
print('python_filename')
print(python_filename)
environment = sys.argv[1]
print('environment')
print(environment)

import common
common.check_environment(environment)

properties_file_name = common.get_properties_file_name(environment)
print('properties_file_name')
print(properties_file_name)

log_folder = common.get_property_value(properties_file_name, 'log_folder')
print('log_folder')
print(log_folder)
common.find_folder_name(log_folder)

logging_filename = common.get_logging_filename(python_filename, log_folder)
print('logging_filename')
print(logging_filename)

# set up logging to file
import logging
import datetime as dt


class MyFormatter(logging.Formatter):
    converter = dt.datetime.fromtimestamp
Exemple #17
0
environment = sys.argv[1]
print('environment')
print(environment)
report = sys.argv[2]
print('report')
print(report)

import common
common.check_environment(environment)
common.check_report(report)

properties_file_name = common.get_properties_file_name(environment)
print('properties_file_name')
print(properties_file_name)

log_folder = common.get_property_value(properties_file_name,'log_folder')
print('log_folder')
print(log_folder)
common.find_folder_name(log_folder)

logging_filename = common.get_logging_filename(python_filename,log_folder)
print('logging_filename')
print(logging_filename)

# set up logging to file
import logging
import datetime as dt

class MyFormatter(logging.Formatter):
    converter=dt.datetime.fromtimestamp
    def formatTime(self, record, datefmt=None):
Exemple #18
0
python_filename = sys.argv[0]
print('python_filename')
print(python_filename)
environment = sys.argv[1]
print('environment')
print(environment)

import common
common.check_environment(environment)

properties_file_name = common.get_properties_file_name(environment)
print('properties_file_name')
print(properties_file_name)

log_folder = common.get_property_value(properties_file_name, 'log_folder')
print('log_folder')
print(log_folder)
common.find_folder_name(log_folder)

logging_filename = common.get_logging_filename(python_filename, log_folder)
print('logging_filename')
print(logging_filename)

# set up logging to file
import logging
import datetime as dt


class MyFormatter(logging.Formatter):
    converter = dt.datetime.fromtimestamp
Exemple #19
0
python_filename = sys.argv[0]
print('python_filename')
print(python_filename)
environment = sys.argv[1]
print('environment')
print(environment)

import common
common.check_environment(environment)

properties_file_name = common.get_properties_file_name(environment)
print('properties_file_name')
print(properties_file_name)

log_folder = common.get_property_value(properties_file_name, 'log_folder')
print('log_folder')
print(log_folder)
common.find_folder_name(log_folder)

logging_filename = common.get_logging_filename(python_filename, log_folder)
print('logging_filename')
print(logging_filename)

# set up logging to file
import logging
import datetime as dt


class MyFormatter(logging.Formatter):
    converter = dt.datetime.fromtimestamp
Exemple #20
0
 def build_pipeline(self, pipeline):
     xin = pipeline.createXLinkIn()
     xin.setStreamName(get_property_value(self, "streamName"))
     self.connection_map["out"] = xin.out