SMQTK v0.6.0 Release Notes¶
This minor release provides bug fixes and minor updates as well as Docker wrapping support for RESTful services, a one-button Docker initialization script for a directory of images, and timed IQR session expiration.
The docker
directory is intended to host container Dockerfile packages as
well as other associated scripts relating to docker use of SMQTK. With this
release, we provide a Dockerfile, with associated scripts and default
configurations, for a container that hosts a Caffe install for descriptor
computation, replete with AlexNet model files, as well as the NearestNeighbor
and IQR RESTful services. This container can be used with the
docker/smqtk_services.run_images.sh
for image directory processing, or with
existing model files and descriptor index.
The IQR Controller class has been updated to optionally time-out sessions and clean itself over time. This is required for any service that is going to stick around for any substantial length of time as resources would otherwise build up and the host machine would run out of RAM.
Updates / New Features since v0.5.0¶
CMake
Added scripts that were missing from install command.
Descriptor Index
Changed functions that used to take
*uuids
list expansion as an argument and changed them to take iterables, which no longer causes sequencification of input iterables and is already compatible with all included implementations except Solr.Update Solr implementation functions that used to take
*uuid
list expansion to properly handle input iterables of arbitrary sizes.DescriptorIndex instances, when iterated over, now yield DescriptorElement instances instead of just the UUID keys.
Docker
Added docker container formula for running SMQTK NearestNeighbor and IQR services.
Added a script to setup SMQTK web services over a directory of images, performing all necessary Docker setup and data processing. This is intended for demo purposes only and not for large scale processing.
IQR
Added optional session expiration feature to
IqrController
class to allow for long-term self clean-up.
Nearest Neighbors Index
Changed ITQ fit method to by default use multiprocessing over threading, which in general is faster (more through-put).
Utilities
Removed by-index access in
elements_to_matrix
, allowing arbitrary input as long as the __len__ and __iter__ functions are defined.Changed much of the debug messages in
smqtk.utils.parallel
to “trace” level (level 1).
Scripts
Simplified the
train_itq.py
script a little.
Web Apps
Added configuration of IqrController session expiration monitoring to IQR RESTful (ish) service.
Fixes since v0.5.0¶
Descriptor Index
Fixed PostgreSQL back-end bug when iterating over descriptors that caused inconsistent/duplicate elements in iterated values.
IQR
Fixed how IqrController used and managed session UUID values.
Utilities
Fixed bug in
int_to_vector
functions dealing with vector size estimation.
Web Apps
Fixed bugs in IQR classifier caching and refreshing from dirty state
Fixed how the NearestNeighbor service descriptor computation method errors regarding descriptor retrieval in order to not obfuscate the error.