Introduction
What is PeekingDuck?
PeekingDuck is an open-source, modular framework in Python, built for Computer Vision (CV) inference. The name “PeekingDuck” is a play on: “Peeking” in a nod to CV; and “Duck” in duck typing used in Python.
Features
Build realtime CV pipelines
PeekingDuck enables you to build powerful CV pipelines with minimal lines of code.
Leverage on SOTA models
PeekingDuck comes with various state of the art (SOTA) object detection, pose estimation, object tracking, crowd counting, and instance segmentation models. Mix and match different nodes to construct solutions for various use cases.
Create custom nodes
You can create custom nodes to meet your own project’s requirements. PeekingDuck can also be imported as a library to fit into your existing workflows.
How PeekingDuck Works
Nodes are the building blocks of PeekingDuck. Each node is a wrapper for a pipeline function, and contains information on how other PeekingDuck nodes may interact with it.
PeekingDuck has 6 types of nodes:
A pipeline governs the behavior of a chain of nodes. The diagram below shows a sample pipeline.
Nodes in a pipeline are called in sequential order, and the output of one
node will be the input to another. For example, input.visual
produces img, which is taken
in by model.yolo
, and model.yolo
produces bboxes, which is taken in by
draw.bbox
. For ease of visualization, not all the inputs and outputs of these nodes are
included in this diagram.
Acknowledgements
This project is supported by the National Research Foundation, Singapore under its AI Singapore Programme (AISG-RP-2019-050). Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not reflect the views of the National Research Foundation, Singapore.
License
PeekingDuck is under the open source Apache License 2.0 (:
Even so, your organization may require legal proof of its right to use PeekingDuck, due to circumstances such as the following:
Your organization is using PeekingDuck in a jurisdiction that does not recognize this license
Your legal department requires a license to be purchased
Your organization wants to hold a tangible legal document as evidence of the legal right to use and distribute PeekingDuck
Contact us if any of these circumstances apply to you.