  Audio/visual recognition and retrieval applications have recently garnered
significant attention within Internet-of-Things (IoT) oriented services, given
that video cameras and audio processing chipsets are now ubiquitous even in
low-end embedded systems. In the most typical scenario for such services, each
device extracts audio/visual features and compacts them into feature
descriptors, which comprise media queries. These queries are uploaded to a
remote cloud computing service that performs content matching for
classification or retrieval applications. Two of the most crucial aspects for
such services are: (i) controlling the device energy consumption when using the
service; (ii) reducing the billing cost incurred from the cloud infrastructure
provider. In this paper we derive analytic conditions for the optimal coupling
between the device energy consumption and the incurred cloud infrastructure
billing. Our framework encapsulates: the energy consumption to produce and
transmit audio/visual queries, the billing rates of the cloud infrastructure,
the number of devices concurrently connected to the same cloud server, and the
statistics of the query data production volume per device. Our analytic results
are validated via a deployment with: (i) the device side comprising compact
image descriptors (queries) computed on Beaglebone Linux embedded platforms and
transmitted to Amazon Web Services (AWS) Simple Storage Service; (ii) the cloud
side carrying out image similarity detection via AWS Elastic Compute Cloud
(EC2) spot instances, with the AWS Auto Scaling being used to control the
number of instances according to the demand.
