edgeIQ Release Notes

Release 1.5.0

Released November 8, 2021

New Features

  • Add analytics publishing features.

  • Add RtspVideoWriter to host an RTSP server with a variable number of H264-encoded streams.

  • Add GStreamerCustomVideoStream to enable custom GStreamer pipelines as input to your application.


  • Add non-blocking frame read to all video streams.

  • Add min_inertia to Object Tracking to reduce tracking false detections.

Release 1.4.0

Released August 23, 2021

New Features

  • Introduce MOG2 background subtraction utility

  • Add contours utility functions

  • Add serialization utility function for core CV services

Bug Fixes

  • Fix image rotation utility

Release 1.3.2

Released June 24, 2021


  • Add enter and exit callbacks to KalmanTracker.

Release 1.3.1

Released June 8, 2021


  • Added type annotations for edgeIQ as described in PEP 561.

Bug Fixes

  • Resolved an issue where FileVideoStream.read would occasionally return None.

Release 1.3.0

Released May 10, 2021

New Features

  • Add Kalman Tracker to track objects between frames using a Kalman filter-based tracker.

Bug Fixes

  • Resolved an issue where the model ID is not correctly displayed on Windows.

Release 1.2.2

Released May 4, 2021

New Features


  • Upgrade OpenCV to 4.5.1 and OpenVINO to 2021.2.

  • Upgrade to Python 3.7 across the platform.

  • Speedup of YOLOv3 post processing on DNN backend.

Release 1.2.1

Released April 6, 2021


  • Improve OAK camera API (OAK API).

Bug Fixes

  • Resolve an issue with restarting camera video streams.

Release 1.2.0

Released March 12, 2021

New Features

  • Add support for OAK-D camera (OAK API).

  • Replace existing CorrelationTracker that provides a dictionary of objects organized by ID. The interface has changed so any code utilizing CorrelationTracker will need to be updated. See additional details in the Object Tracking Section.


  • Improve mode selection for JetsonVideoStream with JetsonCameraMode.

Release 1.1.0

Released February 24, 2021

New Features

  • Add Oak to capture frames and to execute models on Oak cameras.

Release 1.0.1

Released February 19, 2021

Bug Fixes

  • Fix an issue where Object Detection on Tensor RT would fail due to incorrect resize of input image.

Release 1.0.0

Released February 15, 2021

New Features

  • Support for production mode deployment.

  • Support for YOLO on TensorRT.

Release 0.17.1

Released December 16, 2020

Bug Fixes

  • Resolve an issue where the Streamer would crash due to mismatching socketIO versions.

Release 0.17.0

Released December 10, 2020

New Features

  • Add MjpgVideoWriter to host a MJPG video streaming server on the device.

  • Add EyeCloud to capture frames and to execute models on a EyeCloud cameras.


  • Update RealSense API to improve usability. This is a breaking change so users should update their applications to match the new API.

Known Issues

  • EyeCloud: delay in the video feed when running on the Raspberry Pi 4.

  • EyeCloud.get_model_result: the sequence_index of the image that comes with the result objects may be inaccurate. Use the sequence_index attribute of the result object directly.

Release 0.16.1

Released October 5, 2020

New Features

  • Add ObjectDetection support for TensorRT.

Bug Fixes

  • Resolve an issue where FileVideoStream fails to exit on crash.

Release 0.16.0

Released September 9, 2020

New Features

  • Upgrade JetPack to 4.4 for NVIDIA Jetson devices. The base docker image works on all Jetson devices and is tagged alwaysai/edgeiq:jetson-0.16.0. The image requires JetPack 4.4 to run. Make sure to reconfigure (aai app configure) your app after you upgrade your Jetson device.

  • Add support for NVIDIA Jetson Xavier NX, and add is_jetson_xavier_nx() tool to check if running on Xavier NX.


  • Improve performance of PoseEstimation on edge devices.

Release 0.15.1

Released August 21, 2020

New Features

  • Add tools for working on Jetson devices: is_jetson(), is_jetson_nano(), and is_jetson_tx2().

Release 0.15.0

Released August 6, 2020

New Features

  • Upgrade OpenCV version to 4.4.0 and OpenVINO version to 2020.4. OpenVINO version 2020.4 has dropped support for NCS1, therefore NCS1 is no longer supported on alwaysAI. The find_ncs1() tool is no longer available.

  • Update Dockerfile naming to be more specific. This only impacts users who have hardcoded their docker image FROM line for a specific architecture. Here are the changes:

    • arm -> armv7hf

    • arm64 -> aarch64


  • FileVideoStream now restarts when start() is called a second time.

  • Support for OPENVINO engine on CPU dropped due to uneven support across devices.

Known Issues

  • OpenCV + OpenVINO on armv7hf docker image still at 4.1.2 + 2019_R3.1 due to issues with OpenVINO on 32 bit systems.

Release 0.14.2

Released June 10, 2020

New Features

  • Enable RealSense cameras for Mac OSX and Windows.

Release 0.14.1

Released June 5, 2020

New Features

  • Add RealSense.compute_distance_between_objects to compute the distance between two detected objects in 3D space.

Bug Fixes

  • Fix TensorRT memory leak.

Release 0.14.0

Released May 19, 2020

New Features

  • Pose Estimation on all platforms.

  • RealSense depth camera support.

  • Pose Estimation using TensorRT Engine, optimization for NVIDIA GPUs.

  • Support OPENVINO engine on Intel CPUs.

Bug Fixes

  • Fix windows DLL import error

Known Issues

  • The Intel Neural Compute Stick is not supported running directly on Mac OSX or Windows.

Release 0.13.0

Released April 28, 2020

New Features

  • Add edgeiq.overlay_image to combine foreground and background images based on an input mask.

  • Support for NVIDIA Jetson TX2. Docker containers are tagged as alwaysai/edgeiq:tx2-x.x.x.

  • NVIDIA Jetson Nano containers upgraded to Jetpack 4.3/L4T 32.3.1.

  • Mac OSX installer for Mojave and Catalina.


  • Added debug logs to EventVideoWriter.

  • Reduced network load when using Streamer.

  • Improved Streamer shutdown process.

  • Jetson CSI cameras are now supported by the CLI.

  • Improved exception handling for cameras.

Bug Fixes

  • Fix a bug in VideoWriter where a None object is called and throws an exception.

  • Fix a bug in FileVideoStream to handle no frame exception.

Known Issues

  • The Intel Neural Compute Stick is not supported running directly on Mac OSX.

Release 0.12.0

Released March 13, 2020

New Features

  • Add filtering by class to Semantic Segmentation (SemanticSegmentation.build_object_map(self, class_map, class_list)).

  • Add JetsonVideoStream() for Jetson Nano CSI camera support. Note that the alwaysAI CLI does not support the Jetson Nano CSI camera at the time of this release.


  • Add edgeiq.Accelerator.NVIDIA_FP16 to run models on an NVIDIA GPU compressed to 16 bit floating point.

  • Detect when NCS devices are not attached when using edgeiq.Accelerator.MYRIAD.

Known Issues

  • The alwaysai/enet model is currently not supported on edgeiq.Accelerator.NVIDIA_FP16.

Release 0.11.1

Released February 13, 2020


  • Install OpenCV C++ headers so that 3rd party libraries can use them.

  • Usability and performance improvements in Pose Estimation.

        .-""`""-.    |(@ @)
     _/`oOoOoOoOo`\_ \ \-/
    '.-=-=-=-=-=-=-.' \/ \
      `-=.=-.-=.=-'    \ /\
         ^  ^  ^       _H_ \

Release 0.11.0

Released January 29, 2020

New Features

  • Add support for the NVIDIA Jetson Nano. The GPU on the Jetson Nano can be used by starting your Dockerfile with FROM alwaysai/edgeiq:nano-0.11.0 docker image, and using edgeiq.engine.DNN_CUDA as the engine and edgeiq.accelerator.NVIDIA as the accelerator.


  • Split off GStreamerVideoStream from WebcamVideoStream to enable more flexibility on gstreamer inputs. The gstreamer parameter is no longer available in WebcamVideoStream.

  • Add repr to results objects to easily print the contents.

  • Updated to Python 3.6 in Docker images and Windows native.

  • Update OpenCV to version 4.1.2 in Linux docker images and Windows native.

  • Update OpenVINO to version 2019 R3.1 in Linux docker images.

Known Issues

  • The Intel Neural Compute Stick is not supported running directly on Windows.

Release 0.10.0

Released January 14, 2020

New Features

  • Add SemanticSegmentation to classify and label each individual pixel in an image. Try out this new feature with one of the following starter apps:

    • semantic_segmentation_cityscape

    • semantic_segmentation_voc.

  • Add IPVideoStream to capture data from cameras and videos streaming over the internet.


  • Update FileVideoStream to support simulating real time video playback.

Release 0.9.0

Released December 5, 2019

New Features

  • Add support for CSI cameras with GStreamer. Set the gstreamer flag to True when instantiating a WebcamVideoStream object to use this feature.


  • Host Web Streamer libraries locally to enable using the Streamer without an internet connection.

Release 0.8.0

Released November 8, 2019

New Features

  • Add PoseEstimation for characterizing human poses in images and video. Try it out with the realtime_pose_estimator starter app. Currently, PoseEstimation is only supported on Linux using MYRIAD accelerators (NCS1/NCS2).

  • Add blur_objects() utility to blur a list of detected objects in an image.

  • Add transparent_overlay_boxes() utility to overlay colored boxes on detected objects in an image.

  • Add detect_simple_camera_blockage() to detect camera blockages in some simplistic cases.

Bug Fixes

  • Fix issue with installing edgeIQ autocomplete helper on Raspberry Pi.

Release 0.7.20

Released October 17, 2019


  • Improve bash prompt styling when using aai app shell.

  • Improve error logs for FileVideoStream.

Bug Fixes

  • Resolve pip install failure on Raspberry Pi when using requirements.txt.

Release 0.7.0

Released September 17, 2019.

New Features

  • Add EventVideoWriter to enable recording video clips based on event triggers. The class supports pre-roll and post-roll recording to capture video before and after the event occurs.

    • The obsolete EventWriter class was removed.

  • Add button on Streamer to stop a running app. For realtime apps, use the check_exit() function to break out of your main loop.

  • Add g++ and cmake to edgeIQ Docker image to enable building wheels from requirements.txt.


  • Update FPS interface to better reflect function action:

    • elapsed() changed to get_elapsed_seconds().

    • fps() changed to compute_fps().

Release 0.6.3

Released September 10, 2019.


  • Pass exceptions that occur in Streamer up to the top level app using the send_data() function.

  • Improve FPS class to compute an approximate FPS value without calling the fps.stop() function.

  • Visual improvements to Streamer, including expanding the output text box width and displaying the current edgeIQ version.

Bug Fixes

  • Resolve issue with displaying a single image on the Streamer in slideshow mode.

Release 0.6.2

Released August 27, 2019.


  • Add additional console logs and Streamer text data to Starter Applications.

Bug Fixes

  • Resolve “divide by 0” error seen when using cutout_image() with ObjectDetection.detect_objects() output.

Release 0.6.0

Released August 13, 2019.

New Features

  • Add Correlation Tracker for tracking objects across frames between detections

  • Add Centroid Tracker for tracking unique objects between two detections.

  • Add MYRIAD support across arm32, arm64, and amd64 architectures.

  • Add utilities to work with bounding boxes, including computing overlap and intersection between boxes as well as cutting out image segments.

  • Add edgeIQ abstract package for desktop autocomplete support.


  • Improve Streamer performance in poor network conditions.