diff --git a/meshroom/ui/reconstruction.py b/meshroom/ui/reconstruction.py index ee87a710..9706732f 100755 --- a/meshroom/ui/reconstruction.py +++ b/meshroom/ui/reconstruction.py @@ -213,7 +213,8 @@ class ViewpointWrapper(QObject): else: self._initialIntrinsics = self._reconstruction.getIntrinsic(self._viewpoint) try: - self._metadata = json.loads(self._viewpoint.metadata.value) if self._viewpoint.metadata.value else None + # When the viewpoint attribute has already been deleted, metadata.value becomes a PySide property (whereas a string is expected) + self._metadata = json.loads(self._viewpoint.metadata.value) if isinstance(self._viewpoint.metadata.value, str) and self._viewpoint.metadata.value else None except Exception as e: logging.warning("Failed to parse Viewpoint metadata: '{}', '{}'".format(str(e), str(self._viewpoint.metadata.value))) self._metadata = {}