Beispiel #1
0
    def start_scan(self):
        self._logger.info("Scan started")
        self._stop_scan = False
        self.hardwareController.laser.off()
        self.hardwareController.turntable.stop_turning()
        self.hardwareController.turntable.enable_motors()
        self.hardwareController.camera.device.startStream()
        self._resolution = int(self.settings.resolution)
        self._laser_positions = int(self.settings.laser_positions)
        self._is_color_scan = bool(self.settings.color)

        self._number_of_pictures = 3200 / int(self.settings.resolution)
        self.current_position = 0

        #TODO: rename prefix to scan_id
        self._prefix = datetime.datetime.fromtimestamp(
            time.time()).strftime('%Y%m%d-%H%M%S')
        self.point_cloud = FSPointCloud(self._is_color_scan)
        self.image_processor = ImageProcessor(self.config, self.settings)

        if self._is_color_scan:
            self._total = self._number_of_pictures * 2
            self.actor_ref.tell(
                {FSEvents.COMMAND: 'SCAN_NEXT_TEXTURE_POSITION'})
        else:
            self._total = self._number_of_pictures
            self.actor_ref.tell(
                {FSEvents.COMMAND: 'SCAN_NEXT_OBJECT_POSITION'})
Beispiel #2
0
 def __init__(self):
     super(FSSettingsPreviewProcessor, self).__init__()
     self.hardwareController = HardwareController.instance()
     self.eventManager = FSEventManager.instance()
     self.config = Config.instance()
     self.settings = Settings.instance()
     self._image_processor = ImageProcessor(self.config, self.settings)
Beispiel #3
0
    def __init__(self, settings, config, image_task_q, event_q):
        super(FSImageWorkerProcess, self).__init__(group=None)
        self.image_task_q = image_task_q
        self.settings = settings
        self.config = config
        self.exit = False
        self.event_q = event_q

        self.log = logging.getLogger('IMAGE_PROCESSOR THREAD')
        self.log.setLevel(logging.DEBUG)
        self.image_processor = ImageProcessor(self.config, self.settings)
        self._logger = logging.getLogger(__name__)
        self._logger.setLevel(logging.DEBUG)
Beispiel #4
0
    def __init__(self):
        self.config = Config.instance()
        self.settings = Settings.instance()

        self.camera = None
        self._image_processor = ImageProcessor(self.config, self.settings)
        self.camera = FSCamera()
        self.serial_connection = FSSerialCom()

        self.turntable = Turntable(self.serial_connection)

        self.laser = Laser(self.serial_connection)
        self.led = Led(self.serial_connection)

        self.laser.off()
        self.led.off()
        self.turntable.stop_turning()
        self.turntable.disable_motors()