arthropod_describer package
Subpackages
- arthropod_describer.bin package
- arthropod_describer.common package
- Submodules
- arthropod_describer.common.blocking_operation module
- arthropod_describer.common.common module
- arthropod_describer.common.computations_scheduler module
- arthropod_describer.common.edit_command_executor module
- arthropod_describer.common.image_operation_binding module
- arthropod_describer.common.label_change module
- arthropod_describer.common.label_hierarchy module
- arthropod_describer.common.label_image module
- arthropod_describer.common.label_tree_model module
- arthropod_describer.common.label_tree_view module
- arthropod_describer.common.layer module
- arthropod_describer.common.local_photo module
- arthropod_describer.common.local_storage module
- arthropod_describer.common.photo module
- arthropod_describer.common.photo_layer module
- arthropod_describer.common.plugin module
- arthropod_describer.common.regions_cache module
- arthropod_describer.common.scale_setting_widget module
- arthropod_describer.common.state module
- arthropod_describer.common.storage module
- arthropod_describer.common.tool module
- arthropod_describer.common.undo_manager module
- arthropod_describer.common.units module
- arthropod_describer.common.user_params module
- arthropod_describer.common.utils module
- arthropod_describer.common.visualization_layer module
- Module contents
- arthropod_describer.label_editor package
- Submodules
- arthropod_describer.label_editor.computation_widget module
- arthropod_describer.label_editor.label_editor module
- arthropod_describer.label_editor.label_layer module
- arthropod_describer.label_editor.label_level_switch module
- arthropod_describer.label_editor.label_view_widget module
- arthropod_describer.label_editor.new_label_dialog module
- arthropod_describer.label_editor.ui_colormap_widget module
- arthropod_describer.label_editor.ui_computation module
- arthropod_describer.label_editor.ui_label_editor module
- arthropod_describer.label_editor.ui_new_label_dialog module
- Module contents
- arthropod_describer.measurements_viewer package
- Submodules
- arthropod_describer.measurements_viewer.measurement_assign_dialog module
- arthropod_describer.measurements_viewer.measurements_model module
- arthropod_describer.measurements_viewer.measurements_viewer module
- arthropod_describer.measurements_viewer.ui_measurement_assign_dialog module
- arthropod_describer.measurements_viewer.ui_measurements_viewer module
- Module contents
- arthropod_describer.plugins package
- arthropod_describer.resources package
- arthropod_describer.tools package
Submodules
arthropod_describer.app module
- class ArthropodDescriber[source]
Bases:
QMainWindow
- compute_regions3(reg_comp: RegionComputation, process_mode: ProcessType)[source]
- copying_finished = <PySide2.QtCore.Signal object>
- execute_general_action(action: GeneralAction, widget: Optional[QWidget] = None)[source]
- execute_general_action_or_show_settings(qaction: QAction)[source]
Executes a GeneralAction or shows a setting dialog if the given action provides some user parameters.
- Parameters
qaction (QAction) – The action that was triggered by the user.
- Returns
Nothing
- Return type
None
- handle_thumbnail_gui_rotate_request(widget: ThumbGUI, im_op: ImageOperation)[source]
- include_photos(temp_storage: TempStorage)[source]
- open_project(folder: Path, temp_storage: Optional[TempStorage])[source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- run_reg_comp_on_storage(reg_comp: RegionComputation, storage: Storage, progress_queue: Queue, send_photo: bool = True)[source]
arthropod_describer.color_tolerance_dialog module
arthropod_describer.custom_graphics_view module
- class CustomGraphicsView(state: State, parent: Optional[QWidget] = None)[source]
Bases:
QGraphicsView
- double_shift = <PySide2.QtCore.Signal object>
- escape_pressed = <PySide2.QtCore.Signal object>
- mouse_move = <PySide2.QtCore.Signal object>
- rubber_band_started = <PySide2.QtCore.Signal object>
- space_pressed = <PySide2.QtCore.Signal object>
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- tab_pressed = <PySide2.QtCore.Signal object>
- view_changed = <PySide2.QtCore.Signal object>
- view_dragging = <PySide2.QtCore.Signal object>
arthropod_describer.dbg_utils module
- class MockStorage(folder: Path, image_regex: Pattern = re.compile('.*\\.tif'))[source]
Bases:
LocalStorage
- classmethod create() MockStorage [source]
- classmethod load_from(folder: Path, image_regex: Pattern = re.compile('.*\\.tif')) MockStorage [source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
arthropod_describer.image_controls module
arthropod_describer.image_list_delegate module
- class ImageListDelegate(thumbnail_storage: ThumbnailStorage_, parent: Optional[QObject] = None)[source]
Bases:
ThumbnailDelegate
- paint(self, painter: PySide2.QtGui.QPainter, option: PySide2.QtWidgets.QStyleOptionViewItem, index: PySide2.QtCore.QModelIndex)[source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- tag_rects = {}
- tags_rect = PySide2.QtCore.QRect(0, 0, 0, 0)
- class ImageListView(parent: Optional[QWidget] = Ellipsis)[source]
Bases:
QListView
- hide_tag_ui = <PySide2.QtCore.Signal object>
- initialize(delegate: ImageListDelegate)[source]
- show_tag_ui = <PySide2.QtCore.Signal object>
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- view_left = <PySide2.QtCore.Signal object>
arthropod_describer.image_list_model module
- class ImageListModel(parent: Optional[QWidget] = None)[source]
Bases:
QAbstractListModel
- data(self, index: PySide2.QtCore.QModelIndex, role: int = PySide2.QtCore.Qt.ItemDataRole.DisplayRole) Any [source]
- initialize(image_paths: List[Path], thumbnail_storage: ThumbnailStorage_, processed_count: int, storage: Storage) bool [source]
- rowCount(self, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) int [source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
arthropod_describer.image_viewer module
- class ImageViewer(state: ~arthropod_describer.common.state.State, mode: ~arthropod_describer.image_viewer.ViewerMode = ViewerMode.Combined, parent: ~typing.Optional[~PySide2.QtWidgets.QWidget] = None, f: ~PySide2.QtCore.Qt.WindowFlags = <PySide2.QtCore.Qt.WindowFlags object>)[source]
Bases:
QWidget
- first_photo_requested = <PySide2.QtCore.Signal object>
- last_photo_requested = <PySide2.QtCore.Signal object>
- next_photo_requested = <PySide2.QtCore.Signal object>
- photo_switched = <PySide2.QtCore.Signal object>
- prev_photo_requested = <PySide2.QtCore.Signal object>
- rotate_ccw_requested = <PySide2.QtCore.Signal object>
- rotate_cw_requested = <PySide2.QtCore.Signal object>
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
arthropod_describer.import_dialog module
- class AssignedLabelImageItemDelegate(model: QAbstractItemModel, parent: Optional[QObject] = None)[source]
Bases:
QStyledItemDelegate
- createEditor(self, parent: PySide2.QtWidgets.QWidget, option: PySide2.QtWidgets.QStyleOptionViewItem, index: PySide2.QtCore.QModelIndex) PySide2.QtWidgets.QWidget [source]
- setModelData(self, editor: PySide2.QtWidgets.QWidget, model: PySide2.QtCore.QAbstractItemModel, index: PySide2.QtCore.QModelIndex)[source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- class ImageImportTableModel(parent: Optional[QObject] = None)[source]
Bases:
QAbstractTableModel
- columnCount(self, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) int [source]
- data(self, index: PySide2.QtCore.QModelIndex, role: int = PySide2.QtCore.Qt.ItemDataRole.DisplayRole) Any [source]
- headerData(self, section: int, orientation: PySide2.QtCore.Qt.Orientation, role: int = PySide2.QtCore.Qt.ItemDataRole.DisplayRole) Any [source]
- import_status_changed = <PySide2.QtCore.Signal object>
- rowCount(self, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) int [source]
- setData(self, index: PySide2.QtCore.QModelIndex, value: Any, role: int = PySide2.QtCore.Qt.ItemDataRole.EditRole) bool [source]
- set_storage(storage: TempStorage)[source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- class ImportAction(value)[source]
Bases:
IntEnum
An enumeration.
- CreateProject = 1
- ImportPhotos = 0
- class ImportDialog(parent: ~typing.Optional[~PySide2.QtWidgets.QWidget] = None, f: ~PySide2.QtCore.Qt.WindowFlags = <PySide2.QtCore.Qt.WindowFlags object>)[source]
Bases:
QDialog
- copying_finished = <PySide2.QtCore.Signal object>
- import_btn_clicked = <PySide2.QtCore.Signal object>
- import_photos = <PySide2.QtCore.Signal object>
- open_project = <PySide2.QtCore.Signal object>
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- create_table_widget_row(name: str, label_type: Union[str, int, LabelImgType], assigned: bool) List[QTableWidgetItem] [source]
arthropod_describer.import_utils module
- class ImportPhotoInfo(src_size: typing.Tuple[int, int], dst_size: typing.Tuple[int, int], src_path: pathlib.Path, dst_path: pathlib.Path, relative_path: pathlib.Path, resize_factor: float = 1.0, max_resize_factor: float = 1.0, scale_info: arthropod_describer.common.utils.ScaleSetting = <factory>, original_scale_info: arthropod_describer.common.utils.ScaleSetting = <factory>, temp_folder: pathlib.Path = <factory>, rotation: int = 0, scale_marker: typing.Union[PySide2.QtGui.QImage, NoneType] = None, include: bool = True)[source]
Bases:
object
- dst_path: Path
- dst_size: Tuple[int, int]
- include: bool = True
- max_resize_factor: float = 1.0
- original_scale_info: ScaleSetting
- relative_path: Path
- resize_factor: float = 1.0
- rotation: int = 0
- scale_info: ScaleSetting
- scale_marker: Optional[QImage] = None
- src_path: Path
- src_size: Tuple[int, int]
- temp_folder: Path
- class TempPhoto(folder: Path, img_name: str, subs: Subscriber, import_info: Optional[ImportPhotoInfo] = None)[source]
Bases:
LocalPhoto
- property image_path: Path
- property scale_setting: Optional[ScaleSetting]
- property tags: Set[str]
- class TempStorage(image_paths: List[Path], root_folder: Path, max_size: int = 0, parent: Optional[QObject] = None)[source]
Bases:
Storage
- PxPerCm
alias of
int
- property default_label_image: str
- property image_count: int
- property image_names: List[str]
- property image_paths: List[Path]
- property label_img_info: Dict[str, LabelImgInfo]
- property location: Path
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- property storage_name: str
arthropod_describer.plugin_manager module
- class PluginListModel(parent: Optional[QObject] = None)[source]
Bases:
QAbstractItemModel
- columnCount(self, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) int [source]
- data(self, index: PySide2.QtCore.QModelIndex, role: int = PySide2.QtCore.Qt.ItemDataRole.DisplayRole) Any [source]
- index(self, row: int, column: int, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) PySide2.QtCore.QModelIndex [source]
- parent(self) PySide2.QtCore.QObject [source]
- parent(self, child: PySide2.QtCore.QModelIndex) PySide2.QtCore.QModelIndex
- rowCount(self, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) int [source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- class PluginManager(state: State, parent: Optional[QWidget] = None)[source]
Bases:
QWidget
- apply_property_computation = <PySide2.QtCore.Signal object>
- apply_region_computation = <PySide2.QtCore.Signal object>
- set_show_prop_computation(prop_comp: PropertyComputation)[source]
- set_show_region_computation(reg_comp: RegionComputation)[source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- class ProcessType(value)[source]
Bases:
IntEnum
An enumeration.
- ALL_PHOTOS = 1
- ALL_UNSEGMENTED = 2
- SELECTED_PHOTOS = 0
- class RegionCompsListModel(parent: Optional[QObject] = None)[source]
Bases:
QAbstractItemModel
- add_computation(comp: Union[RegionComputation, PropertyComputation])[source]
- columnCount(self, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) int [source]
- property comps_list: Union[List[RegionComputation], List[PropertyComputation]]
- data(self, index: PySide2.QtCore.QModelIndex, role: int = PySide2.QtCore.Qt.ItemDataRole.DisplayRole) Any [source]
- index(self, row: int, column: int, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) PySide2.QtCore.QModelIndex [source]
- parent(self) PySide2.QtCore.QObject [source]
- parent(self, child: PySide2.QtCore.QModelIndex) PySide2.QtCore.QModelIndex
- rowCount(self, parent: PySide2.QtCore.QModelIndex = Invalid(PySide2.QtCore.QModelIndex)) int [source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- load_computations(comp_folder: Path) Union[List[RegionComputation], List[PropertyComputation], List[GeneralAction]] [source]
arthropod_describer.resources module
arthropod_describer.tag_filter_widget module
- class ActiveTagsList[source]
Bases:
QLineEdit
- hovered = <PySide2.QtCore.Signal object>
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
arthropod_describer.thumbnail_gui module
- class ThumbGUI(photo: ~arthropod_describer.common.photo.Photo, parent: ~typing.Optional[~PySide2.QtWidgets.QWidget] = None, f: ~PySide2.QtCore.Qt.WindowFlags = <PySide2.QtCore.Qt.WindowFlags object>)[source]
Bases:
QWidget
- ccw_icon = None
- cw_icon = None
- delete_icon = None
- delete_photo_requested = <PySide2.QtCore.Signal object>
- resize_icon = None
- resize_requested = <PySide2.QtCore.Signal object>
- resolution_icon = None
- resolution_setting_requested = <PySide2.QtCore.Signal object>
- rotate_requested = <PySide2.QtCore.Signal object>
- save_photo = <PySide2.QtCore.Signal object>
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
arthropod_describer.thumbnail_storage module
- class ThumbnailDelegate(thumbnails: ThumbnailStorage_, parent: Optional[QObject] = None)[source]
Bases:
QStyledItemDelegate
- paint(self, painter: PySide2.QtGui.QPainter, option: PySide2.QtWidgets.QStyleOptionViewItem, index: PySide2.QtCore.QModelIndex)[source]
- sizeHint(self, option: PySide2.QtWidgets.QStyleOptionViewItem, index: PySide2.QtCore.QModelIndex) PySide2.QtCore.QSize [source]
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- class ThumbnailStorage_(storage: Storage, thumbnail_size: Tuple[int, int] = (248, 128), parent: Optional[QObject] = None)[source]
Bases:
Storage
- property image_count: int
- property image_names: List[str]
- property image_paths: List[str]
- classmethod load_from(folder: Path, image_regex: Pattern = re.compile('.*\\.(png|PNG|tiff|TIFF|tif|TIF|jpg|JPG|jpeg|JPEG)$')) Optional[ThumbnailStorage_] [source]
- property location: Path
- staticMetaObject = <PySide2.QtCore.QMetaObject object>
- property storage_name: str