PeekingDuck Versions Save

A modular framework built to simplify Computer Vision inference workloads.

1.3.0.post1

1 year ago

Documentation

1.3.0

1 year ago

Process

  • Change --verify_install from a runtime option to a CLI command verify-install.
  • Add --viewer to activate the new PeekingDuck Viewer (see User Interface below).

Features

  • Add new augment.undistort node to remove distortion from a wide-angle camera image.
  • Add new dabble.camera_calibration node to calculate the camera coefficients for removing image distortion, used by augment.undistort.
  • Add new instance segmentation model, with new model nodes model.mask_rcnn and model.yolact_edge. model.mask_rcnn supports ResNet50 and ResNet101 backbones. model.yolact_edge supports ResNet50, ResNet101 and MobileNetV2 backbones.
  • Add new draw.mask node to draw instance segmentation masks on image, can be used to mask out objects or background.
  • Add new TensorRT optimized models for model.movenet and model.yolox.
  • Add node config type checking for all pipeline nodes with user configurable parameters. Will throw a runtime error on wrong config type.

Deprecations and Removals

  • peekingduck run --verify_install is deprecated and replaced by peekingduck verify-install command instead.

Documentation

  • Add new use case Privacy Protection (People & Screens) using instance segmentation and blurring.
  • Add new Edge AI documentation on how to install and run TensorRT models, including performance benchmark charts.

Dependencies

  • Add typeguard library typeguard ≥ 2.13.3.

User Interface

  • Add PeekingDuck Viewer, a GUI built on TkInter that supports a playlist of multiple pipelines, callable via peekingduck run --viewer. Upon completion of a pipeline, the user may replay the output video or scrub to a specific frame of interest for analysis.

Refactor

  • Streamline peekingduck/cli.py by encapsulating source codes for CLI commands nodes, init, run and create-node under peekingduck/commands/ folder.
  • Add PeekingDuckLogo.png to setup.cfg and add setup.py to support older pip versions.
  • Add new model config field model_format for model.movenet and model.yolox to allow selection between the original models or the new TensorRT models.
  • Refactor model.movenet and model.yolox inference code to work with TensorRT models.
  • Define _get_config_types() method for all nodes with user configurable parameters. Relevant to most nodes under peekingduck/pipeline/nodes/ folder.
  • Use ThresholdCheckerMixin to check bounds in dabble.tracking.

1.3.0rc3

1 year ago

Third release candidate for 1.3.0 (third time's a charm as they say)

1.3.0rc2

1 year ago

Second release candidate for 1.3.0.

1.3.0rc1

1 year ago

First release candidate for 1.3.0.

1.2.3

1 year ago

Bug fixes

1.2.3rc1

1 year ago

First release candidate for 1.2.3

1.2.2

1 year ago

Process

Features

Deprecations and Removals

Dependencies

1.2.2rc1

1 year ago

First release candidate for 1.2.2

1.2.1

2 years ago

Process

  • Models now download individual weights files for each model type instead of an entire folder of all model types
  • Limit custom node directories to be created within src/

Bug Fixes

  • Fix input.visual issue where filename data type is not set if the source is a single image file
  • Fix input.visual issue where approximate progress shows 10% even when the folder has been fully processed

Improved Documentation

  • Add tutorial for using own models

Refactor

  • Redirect tqdm (used when downloading weights) to use stdout instead of stderr
  • Implement mixins for threshold checking and weights downloading