Skip to content

PythonVideoAnnotator crashes when removing the last video/object from the list after making a selection in the Tracking module. #53

Description

@miguelgaspar24

Bug description
PythonVideoAnnotator crashes when removing the last video/object from the list after making a selection in the Tracking module.

To Reproduce

  1. Load a project or open a video.

bug2 1_added_video_annot

  1. Open the "Track objects" module.

bug2 2_tracking_annot

  1. Check the box and left-click any one of the loaded project's videos to select it, then close the "Tracking object" window (4).

bug2 3_tracking_window_annot

  1. Remove each video/object one by one.

bug2 4_removing_last_video_from_project_annot

Output error trace:

Traceback (most recent call last):
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\pyforms_gui\controls\control_checkboxlist.py", line 100, in __itemSelectionChanged
self.selection_changed_event()
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\pythonvideoannotator_models_gui\dialogs\objects\objects.py", line 35, in __selection_changed_event
def __selection_changed_event(self): self.video_selection_changed_event()
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\pythonvideoannotator_models_gui\dialogs\datasets\datasets.py", line 47, in __video_selection_changed_event
self.video_selection_changed_event()
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\pythonvideoannotator_module_tracking\tracking_window.py", line 103, in __video_selection_changed_event
self._filter.video = video
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\pythonvideoannotator_module_tracking\module_mcvgui\dialogs\tracking_filter.py", line 135, in video
self.video_capture = value.video_capture if value is not None else None
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\mcvgui\dialogs\simple_filter\simple_filter.py", line 220, in video_capture
self._player.value = value
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\pyforms_gui\controls\control_player\control_player.py", line 449, in value
self.refresh()
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\pyforms_gui\controls\control_player\control_player.py", line 161, in refresh
frame = self.process_frame_event(self._current_frame.copy())
File "c:\users\miguel gaspar\desktop\my_virtual_environments\video_annotator\lib\site-packages\mcvgui\dialogs\simple_filter\simple_filter.py", line 142, in __process_frame
frame_index = self._player.video_index-1
TypeError: unsupported operand type(s) for -: 'NoneType' and 'int'

Expected behavior
The expectation would be for the program to not crash.

Desktop and Versioning Details

OS: Microsoft Windows 10 Pro x64
Virtual Environment Python: 3.6.2
Python Video Annotator and Modules:
Python-video-annotator 3.306
Python-video-annotator-models 0.8.82
Python-video-annotator-models-gui 0.7.63
Python-video-annotator-module-background-finder 0.5.21
Python-video-annotator-module-contours-images 0.5.28
Python-video-annotator-module-create-paths 0.5.15
Python-video-annotator-module-deeplab 0.902.21
Python-video-annotator-module-distances 0.5.18
Python-video-annotator-module-eventstats 0.5.15
Python-video-annotator-module-find-orientation 0.5.18
Python-video-annotator-module-import-export 0.5.23
Python-video-annotator-module-motion-counter 0.5.26
Python-video-annotator-module-path-editor 0.5.28
Python-video-annotator-module-path-map 0.6.16
Python-video-annotator-module-regions-filter 0.5.18
Python-video-annotator-module-smooth-paths 0.5.19
Python-video-annotator-module-timeline 0.6.26
Python-video-annotator-module-tracking 0.6.38
Python-video-annotator-module-virtual-object-generator 0.6.26

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions