feat(controller_detection): implement class DetectionTask
This commit is contained in:
parent
c6a0e6da83
commit
cac04b31f2
1 changed files with 22 additions and 0 deletions
|
|
@ -11,3 +11,25 @@ class DetectionTaskSignals(QObject):
|
|||
status = Signal(str)
|
||||
finished = Signal(object, object, object)
|
||||
failed = Signal(str)
|
||||
|
||||
|
||||
# DetectionTask: class definition for ScanSlicer behavior.
|
||||
class DetectionTask(QRunnable):
|
||||
# __init__: function definition for ScanSlicer behavior.
|
||||
def __init__(self, autoslicer):
|
||||
super().__init__()
|
||||
self.autoslicer = autoslicer
|
||||
self.signals = DetectionTaskSignals()
|
||||
|
||||
# run: function definition for ScanSlicer behavior.
|
||||
def run(self):
|
||||
try:
|
||||
boxes, filter_preview_image = self.autoslicer.autodetect_slices(
|
||||
self.signals.status.emit,
|
||||
preview_filter_output=True,
|
||||
)
|
||||
normal_preview_image = cv2.cvtColor(self.autoslicer.image, cv2.COLOR_BGR2RGB)
|
||||
self.signals.finished.emit(boxes, filter_preview_image, normal_preview_image)
|
||||
except Exception as exc:
|
||||
details = f"{exc}\n\n{traceback.format_exc()}"
|
||||
self.signals.failed.emit(details)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue