Kwiver

Latest version: v1.4.6

Safety actively analyzes 630523 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 2

1.1.1

------------------

General

* Fixed an issue in the generated setup_KWIVER.bat script in which the
PATH environment variable was being replaced with KWIVER paths rather
than appending those paths.

Sprokit

* Top level pipeline descriptions that are sourced from a stream do
not have a file name to use when relativepath config entries are
specified. The fix is to add an optional parameter supplying the
directory and file name that represent the location of the pipeline
definition and can be used to supply needed directory for
relativepath.

Vital

* Fixed problem 503 where relativepath modifier in a config entry
would not supply the correct directory. See MR 504.

1.1.0

Release Summary
------------------

This is a minor release of KWIVER that provides both new functionality and
fixes over the previous v1.0.0 release. There are numerous changes in this
release that have been motivated primarily by three different applications
of KWIVER. One is the use of KWIVER in MAP-Tk to provide 3D reconstruction
algorithms to the MAP-Tk tools and TeleSculptor GUI application. This
work has been largely sponsored by the US Air Force Research Laboratories.
A second driving factor is the use of KWIVER as an evaluation framework for
video surveillance applications in the upcoming IARPA DIVA program. The
third driving factor for improvements in this release is the use of KWIVER
as the basis for the VIAME toolkit for underwater image processing, supported
by NOAA. These project needs have improved the general processing framework
of KWIVER as well as specific algorithm improvements in 3D reconstruction
and object detection in video.

Vital, the core framework of KWIVER, has been updated in several ways in
this release. Previously there were multiple plugin loader mechanisms
stemming from the origins of KWIVER as the fusion of multiple projects.
In this release there is now a unified plugin loader framework that provides
a common mechanism for loading algorithm plugins (Arrows), process and cluster
plugins (Sprokit), loggers (Vital), and so on. There is also a single tool,
plugin_explorer, that allows introspection of these plugins of various types.
This release also has a new multi-threading API in Vital that provides an
interface for a thread pool with multiple back ends. The thread pool API
allows KWIVER algorithms to more easily leverage parallel processing without
being tied to a single thread management library. Additional back ends,
like Intel TBB, will be added in future releases. C and Python bindings for
Vital have also been extended considerably in this release.

Some other changes in Vital enhance the way image data is loaded and stored.
This release generalizes the image data structure to support images with
various pixel types. Previously Vital only supported 8-bit images. It now
supports many pixel types including 16 and 32 bit integers and single and
double precision floating point types. Also new in this release is a
video input API for reading image sequences directly from video sources.
There are implementations of this API in Arrows for reading video files
directly as well as lists of images. The video API also supports reading
video metadata that is encoded with the video.

In support of the MAP-Tk TeleSculptor application, many abstract algorithms
in Vital and their implementations in Arrows now support callbacks. These
callbacks allow the algorithms to report intermediate results or to signal the
algorithm to terminate early. These callback are used in GUI applications
to get live updates of processing results and to allow users to cancel
processing. This release also adds binary serialization for feature detectors
and descriptors, which allows algorithms to cache features and descriptors
on disk and load them back in later. The algorithms for matching features
have also been improved for better handling of very large images. Large images
are best matched by comparing features at a coarse scale before matching fine
scale features.

In support of the DIVA program, the Sprokit pipeline framework now supports
frame dropping and processing time-outs. These changes help prevent the
pipeline from falling behind in applications that need to keep up with real
team processing requirements. A pipeline can be configured to drop frames
if needed to catch up.

In support of the VIAME toolkit, this release adds new object detection
APIs and provides and implementation of those APIs use the Darknet YOLO
(You Only Look Once) network architecture.

There are many other smaller changes in this release. These are detailed in
the change log below.

1.0.0

------------------

Arrows

* Fixed plugin export symbols and include files to fix Windows build
issues. Generate separate include files for plugin stubs.

Arrows - Core

* The match_feature_homography class had a bug in which the feature matches
used in homography estimation indexed into the source features rather than
the filtered features. As a result, when a filter was used, the feature
locations where incorrect causing the algorithm to fail. The code has now
been corrected to properly use the filtered feature list.

Arrows - OpenCV

* Fixed a potential crash when wrapping a cv::Mat into a mat_image_memory
object. If the cv::Mat did not own its data and had no reference counter
the mat_image_memory would still try to increment it (OpenCV 2.4.X only).

* Reverted a previous workaround to the OpenCV BGR vs. RGB issue that was
reversing the color channels during every cv::Mat to vital::image conversion
This was error prone and missed some corner cases. The conversion will
be made explicitly elsewhere when needed.

Vital

* The C binding vital_image_new_from_data contained a weird hack that
convert BGR to RGB and copied data instead of simply calling the
corresponding C++ code. This has been removed. Another solution
should be found if this causes problems elsewhere.

* Moved list copy in detected_object_set to eliminate collisions in
select methods.

* Updated some outdated comments in feature_set and descriptor_set.

0.2

End to End Video Analytics
---------------------------

Release corresponding January 2016 Kitware Source Article [An End to End Video Analytics Toolkit](https://blog.kitware.com/kwiver-an-end-to-end-video-analytics-toolkit/)

Page 2 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.