Skip to content

don't raise unhandled exceptions in calibration #1054

Open
@rursprung

Description

@rursprung

various code in the calibration process throws exceptions which are then never handled. as a random example:

if self.pattern == Patterns.ChArUco:
if self.camera_model == CAMERA_MODEL.FISHEYE:
raise NotImplemented(
"Can't perform fisheye calibration with ChArUco board")

the big problem here is that this happens at the end, when you click "calibrate". in this specific case the exception is raised based on what the user has previously selected in the GUI with 0 indication beforehand for the user that this is not an acceptable option/combination. thus the whole calibration process (getting all the images) is completely lost and needs to be started again, creating a huge churn time for the user.

either the code never throws exceptions or the exceptions are handled by the GUI layer so that the message can be shown to the user without crashing the GUI. this then allows the user to select other options (or continue adding new data, etc.) without having to start over from scratch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions