Skip to content

Releases: aisingapore/PeekingDuck

1.2.1rc1

31 May 00:29
8cf1be8
Compare
Choose a tag to compare
1.2.1rc1 Pre-release
Pre-release

First release candidate for 1.2.1

1.2.0

29 Mar 00:39
ae4fbd3
Compare
Choose a tag to compare

Process

  • Rename run_config.yml to pipeline_config.yml. Running PeekingDuck without the --config_path flag would be successful if either config file is present.
  • Re-ran MacBook Pro FPS benchmarks on VM with 2.8 GHz 4-Core Intel Xeon (2020, Cascade Lake) CPU and 16GB RAM
  • Add --verify_install flag for verifying PeekingDuck installation
  • Add --num_iter flag to stop the pipeline after running a number of iterations

Features

  • Add 6th category of node types - augment
  • Add new categories of object tracking and crowd counting models
  • Add augment.brightness, augment.contrast, dabble.statistics, dabble.tracking, draw.heat_map, input.visual, model.csrnet, model.fairmot, model.jde, model.movenet, model.yolox nodes
  • Add option to select object detection classes by name in addition to ID
  • Add obj_attrs and density_map data types

Deprecations and Removals

  • Deprecate run_config.yml default config file - replaced by pipeline_config.yml
  • Deprecate obj_tags and obj_groups data types - replaced by obj_attrs
  • Deprecate draw.image_processor node - replaced by augment.brightness and augment.contrast
  • Deprecate input.live and input.recorded nodes - replaced by input.visual

Bug Fixes

  • Add missing RGB conversion to model.yolo and model.efficientdet, and re-ran accuracy benchmarks
  • Fix model.mtcnn returning negative bounding box coordinates by clipping returned bboxes data type to [0,1] for all model nodes

Improved Documentation

  • Update license and license headers to 2022
  • Revamp Read the Docs layout for greater readability and accessibility
  • Update standard and custom installation instructions
  • Add tutorials, glossary for all built-in data types, FAQ and Troubleshooting page
  • Add crowd counting, people counting (over time), and object counting (over time) use cases
  • Categorise use cases into privacy protection, smart counting and COVID-19 prevention and control
  • Add Jupyter Notebook for reference

Dependencies

  • Add support for Python 3.9
  • Add Pytorch torch == 1.10.0 and torchvision == 0.11.1
  • Limit TensorFlow version to >= 2.2, <2.8
  • Upgrade OpenCV opencv-contrib-python >= 4.5.2.54

Refactor

  • Refactor draw.legend and draw.tag nodes for more flexibility
  • Refactor dabble.check_large_groups, dabble.group_bbox_and_tag, draw.tag nodes to take in the obj_attrs data type
  • Refactor dabble.check_nearby_objs, dabble.group_nearby_objs nodes to return the obj_attrs data type
  • Simplify config names for model.mtcnn, model.yolo, model.yolo_face, model.yolo_license_plate nodes

1.2.0rc3

24 Mar 06:21
Compare
Choose a tag to compare
1.2.0rc3 Pre-release
Pre-release

Third release candidate for 1.2.0.

1.2.0rc2

17 Mar 02:17
914025e
Compare
Choose a tag to compare
1.2.0rc2 Pre-release
Pre-release

Second release candidate for 1.2.0

1.2.0rc1

07 Mar 09:38
Compare
Choose a tag to compare
1.2.0rc1 Pre-release
Pre-release

First release candidate for 1.2.0

v1.1.1

29 Nov 01:06
28bc820
Compare
Choose a tag to compare

Process

  • Add option to create custom nodes via CLI, simplifying the process

Features

  • Update threading feature for input.live to be used in Linux
  • Add buffer_frames feature for input.live to allow usage with output.media_writer to produce smooth output video without losing video frames
  • Add threading and buffer_frames features for input.recorded for potential speed-up
  • Update draw.mosaic_bbox to run faster
  • Add --log_level CLI parameter to allow changing of log level
  • Add option to customise where model weights are to be downloaded via the weights_parent_dir configuration

Deprecations and Removals

  • Remove size configuration for all YOLO models from Read the Docs as it is not changeable

Improved Documentation

  • Rename misleading Python API feature to Import PeekingDuck as a Module
  • Adopt collapsible navigation bar in Read the Docs to reduce clutter
  • Revamp model section of Read the Docs to have separate sections for Object Detection and Pose Estimation

Dependencies

  • Reduce required dependencies by only installing them if the node is used. These optional dependencies are listed in optional_requirements.txt.

Refactor

  • Change Python code formatter to Black and update code
  • Update coding conventions and CONTRIBUTING.md

v1.1.1rc1

29 Nov 00:27
28bc820
Compare
Choose a tag to compare
v1.1.1rc1 Pre-release
Pre-release

First release candidate for v1.1.1

v1.1.0

26 Oct 08:55
1768c30
Compare
Choose a tag to compare

Process

  • Rename generated folder for storing model weights from weights to peekingduck_weights to avoid possible conflicts with other installed packages
  • Update setup.cfg to only allow installation if Python version is 3.6, 3.7 or 3.8

Features

  • Add use case: Privacy Protection (Faces)
  • Add use case: Privacy Protection (License Plates)
  • Add use case: Face Mask Detection
  • Add model.mtcnn node
  • Add model.yolo_face node
  • Add model.yolo_license_plate node
  • Add draw.mosaic_bbox node
  • Add draw.blur_bbox node

Improved Documentation

  • Add installation instructions for M1 Mac
  • Fix sample code snippet in docs for custom nodes
  • Add documentation badge linking to Read the Docs on README.md

v1.1.0rc1

26 Oct 08:08
1768c30
Compare
Choose a tag to compare
v1.1.0rc1 Pre-release
Pre-release

First release candidate for v1.1.0

v1.0.3

14 Oct 09:32
9147fa1
Compare
Choose a tag to compare

Process

  • Model weights and sample videos for download moved from Microsoft Azure to Google Cloud Storage

Features

  • Add colours to logging output (e.g. yellow for warning, red for errors)
  • Add peekingduck nodes CLI command to display available nodes and links to docs

Improved Documentation

  • Replace Discord server communication channel with AI Singapore's community page
  • Add draw.bbox node config show_labels in docs