One of the beauties of image processing
is its wide range of end applications
from autonomous drones and cars, to
medical and scientific imaging. This
diverse range of applications brings
with it a diverse range of requirements
and solutions, from embedding the
intelligence at the edge, to leveraging
the power of the cloud. In either case,
for their image processing system,
users will face several challenges.
This article looks at what these
challenges are and how they can be
addressed using an acceleration
stack based approach.
Challenges
Applications processing at both the
Edge andCloud initially face a common
problem, which is the implementation
of the image processing algorithm
such that it meets its overall system
requirements. There will, in most
cases, be a difference as to what that
driving overall system requirement is.
For an edge based implementation it
may be the latency of the algorithm
as the system may be required to
make decisions based on information
contained within. While a cloud
based image processing solution
may be driven by the requirement for
exceptional accuracy as scientific or
medical decisions may be based upon
this.
Both implementations will also heavily
rely upon deep machine learning
and artificial intelligence, although
in different manners. Edge based
processing will use the classifiers
generated by deep machine learning
within the cloud to implement its object
detection algorithms. While cloud
based solution will use deep machine
learning and Neural Networks to both
generate the classifiers and then use
these classifiers within its application.
It can be seen then, that both
implementations require the capability
to work with modern frameworks
such as OpenCV, OpenVX, Caffe
and FFmpeg to achieve their
image processing requirement.
But what about other requirements
which dominate in these different
implementations, these requirements
must also be considered and
addressed.
Processing within the Edge brings
with it not only the need for real time
processing and decision making
but also its applications are often
autonomous which brings other
challenges. Autonomous operation
brings a need for both a secure
system and secure communications
channels (when available) back to
its operations centre. Autonomous
systems are also often battery
Stack based solutions for image processing
at the Edge and Cloud
Nick Ni & Adam Taylor, XILINX
26 l New-Tech Magazine Europe