SPx
Radar Processing and Display
Primary Radar Acquisition,
Processing and Display Solutions
Introducing SPx
SPx is a collection of software libraries and applications that provide advanced software solutions for primary radar
capture, processing, tracking and display. SPx provides system integrators with a field-proven collection of software
modules offering high-performance, easy-to-use solutions for radar processing.
System integrators can use SPx at the level of a software component or a complete application. For server applications,
SPx provides the choice of using one of its pre-built servers for radar video distribution, plot extraction or target tracking,
or else of building a custom server using the library modules of SPx.
For Radar Display requirements, SPx provides powerful software-based radar scan conversion to allow system integrators
to add radar display into new or existing Windows or Linux/X11-based applications. With an industry-leading feature set
and highly flexible software options that include a C++ library, a .NET interface, an application co-processor and an image
server, Cambridge Pixel offers solutions for all radar display problems.
Standard Cambridge Pixel Applications
(built using SPx Library)
Custom
Application RadarView SPx Server SPx RDC SPx RIS
Radar Visualisation Radar Video Server Radar Display Radar Image
Client display, Distribution, plot Co-process Server
Server Processing Client
extraction and
tracking
System Libraries
Graphics Libraries
Windows - (GDI, GDI+)
Linux - Xlib, Xt, GTK, MOTIF
etc
Radar Input SPx PPI Scan SPx Compression and SPx SPx Record and
HPx-100/150/200 Conversion Decompression Network Replay
Network Input Distribution
Test Generator SPx A-Scan
Scenario generator Display
Replay from file
SPx Video Processing SPx Target SPx Clutter
SPx B-Scan
Filtering (STC, FTC) Processing Processing
Display
Area-masking Plot Extraction Clutter Mapping
Thresholding Target Tracking Clutter Subtraction
CFAR Moving Platform Scan Integration
Range ring insertion
SPx Software Library LUT processing
Interference suppression
SPx Plugin Process
Windows XP/Vista/7
Support
and Linux
SPx for System Integrators
SPx provides system integrators with a powerful set of libraries, sample
applications, tools, comprehensive documentation and first-class technical
support. The software provides a modern, open, extensible framework that
can be used to build radar video servers, client applications or radar
processors. The ability to extend and customize SPx solutions gives system
integrators the capability to add value, provide localisation and maintain close
control of the solution for in-country support.
SPx delivers modules of radar processing and display into the application.
System integrators can maintain control of the application software, using SPx
to provide specific capabilities.
SPx is well suited for the upgrade of legacy radar systems. The combination of
flexible hardware interfacing and advanced software architecture options
means that SPx is cost-effective for radar upgrades. Many of the world’s
leading system integrators and radar manufacturers have already seen the
benefits of partnering with Cambridge Pixel.
SPx Solutions
SPx provides ready-to-run software products for radar visualization (RadarView), radar video distribution, plot
extraction and target tracking (SPx Server). These products are themselves built from the SPx library. For many
users, it is the underlying library of software components, which may be integrated into customized applications,
that is the attraction of SPx. A customized server application can be constructed from source code of a sample
framework supplied by Cambridge Pixel. This allows the basic functions of a server to be implemented very quickly,
with subsequent customization to implement the full requirements. By leveraging the existing toolbox of software
components, a user of the SPx library can combine standard and customized processing to gain the benefits of
COTS, without sacrificing the ability to customize, maintain and enhance the solution.
RadarView is a standard radar visualization SPx Server is a multi-function radar processor,
application for Windows. supporting distribution, plot extraction, tracking and
recording (license options).
SPx Software Library
The SPx radar processing capabilities are available as a Windows or Linux C++ class library. An application can
use a single SPx class, for example to provide radar capture or compression, or may combine a number of classes
into a server or client application. The flexibility of the solution comes from the ease-of-use of the class library and
the ability to modify and expand it with custom code. The standard SPx library provides the following capabilities:
HPx family interfacing
Polar interface module (PIM) Test and Simulation
Sector scan, random scan support
Radar interface buffer (RIB) For system test and validation, SPx provides a set of test and simulation
objects. Test patterns may be inserted into the video at the server or
Compression and decompression client stage and system performance verified. The SPx Scenario Generator
Network distribution supports the definition of moving targets.
Test generator for testing
Scenario generator for simulation
Radar processing functions: Navigation Data
Range blanking
When building applications for moving platforms, the SPx Scan Converter
Sector blanking
supports true and relative display modes. A class is available for receipt of
Thresholding NMEA navigation data, which may be used to maintain a heading-up
STC filter display as the platform moves.
CFAR thresholding
FTC filter
Averager Scan Conversion
A-Scan display The SPx Scan Converter provides a full range of capabilities from multi-
LUT conversion window, multi-channel PPI windows, through to parallax-compensated B-
Scan to scan integration Scan views for fire-control radars. A comprehensive collection of sample
applications with source code provide examples for most requirements.
PIM combine
Clutter mapping
Area-masking Plot Extraction
Range ring insertion
Record and replay The SPx Plot Extractor is a configurable module that identifies target-like
video in the input stream and generates plot descriptions characterised by
Plot extraction centroid, bounding box, size and time-stamp. These plots may then be
Trail history retention input to a tracker for correlation and filtering.
Scan conversion (PPI, B-Scan, A-Scan)
Radar display mixing with graphics
Navigation data (NMEA) interface Radar Video Compression
Plugin process management
The SPx library supports two types of radar video compression. The ZLIB
Server interface framework mode generally provides high compression, although requires a modest
Client interface framework level of CPU resource for compression and decompression. As an
.NET support classes alternative, Cambridge Pixel’s ORC (Open Radar Coding) provides good
compression with much lower CPU demands on both server and client.
ASTERIX Track Output
SPx Radar Scan Conversion
The SPx library supports industry-leading, software-based radar scan
conversion using a high-performance double transform method, which
ensures that all window pixels are filled from the best radar sample,
and that all radar samples contribute to the display picture. There are
no holes, no missing spokes and no missing data.
In 2007, Cambridge Pixel became the first company to introduce a
commercially available software scan converter that could work with
third party graphics applications. Working under Windows or Linux, the
SPx Scan Converter adds scan converted radar video into any graphic
application exploiting the full power of modern multi-core CPU and GPU
architectures. Our Radar Insertion technology allows radar to be added
into an existing Windows or Linux application with minimal changes to
the existing software. This is especially important when considering the
upgrade of existing legacy solutions that might have a considerable
investment in the application’s graphics. By leaving the existing
graphics application substantially unchanged, the costs of revalidation can be significantly reduced.
The current generation of the SPx Scan Converter is compatible with many different software architectures. As a
C++ library, the scan converter can be included into a client application using a simple class interface that takes
the client’s existing graphics window as an input and inserts scan converted video as an overlay or underlay. For
Microsoft .NET programmers, the scan converter can be accessed from any of the standard .NET programming
languages. In place of adding the scan conversion into the application process, it can be run as a separate
Windows/Linux process (see RDC below), with a simple socket interface used for exchanging message and status.
Radar Inserted into Unmodified
Windows application.
SPx Radar Insertion allows radar to be
inserted into any existing application. In
the example opposite, an airport map is
being displayed with the standard
Windows Photo Viewer application (left).
With Radar Insertion active, the running
application then has real-time radar
video inserted. The right-hand screen
shot is being updated with the rotating
radar sweep with no changes to the
graphics application.
Radar Display Co-processor (RDC)
One method of using the SPx library is to include the relevant Client Application
SPx classes directly into the application to gain access to
radar capture, processing and scan conversion capabilities. A
single application program (Windows or Linux) then handles
the radar and graphics. An alternate implementation is to use SPx
the Radar Display Co-processor (RDC), which is a software Command
Protocol
component of the SPx library. The RDC is supplied as a Graphics
ready-to-run application for Windows or Linux that handles Radar
Inputs RDC
radar receipt, processing and scan conversion. The RDC can
be viewed as a service that runs on the client processor as a S/C
Radar
co-process. The RDC is controlled from your application using Video
a simple API, which is responsible for sending commands to
the RDC process. The RDC scan converts the radar and Graphics Subsystem (Windows or X11)
updates the client’s nominated graphics window with the
radar image.
Network Socket
Proc
Connection
ess
Radar Image Server (RIS)
For cost-sensitive applications, or where scan conversion in each client console is not required, the SPx Radar Image Server (RIS)
may be used. The RIS implements scan conversion in a server application and delivers a bitmap of scan converted radar to any
number of clients over a UDP interface. Each client sees the same image, so there is no per-client control. The image shows a pre-
defined view and is updated in quadrants of radar rotation. The RIS supports multiple channels so that images may be distributed
for a selection of range scales and offsets. Client applications may choose to receive one or more channels of scan converted data.
When using the RIS a single software license is required for the server application, but no SPx client side licensing is required. The
SPx library provides a set of convenience classes to receive the bitmap data and allow the client application to handle display.
SPx Server – Radar Distribution, Plot Extraction and Tracking
SPx Server is a multi-function radar processor, which is available for Windows or Linux, and may be configured for
radar distribution, plot extraction and target tracking, according to license options. Radar video is received either
from a Radar Interface Card, or else direct from a network source. The video may be processed using a pre-defined
set of processing modules, with the additional option of a user-defined processing chain being provided as an
external plug-in. Video may be compressed and distributed to any number of client displays, where it may be scan
converted. In addition, the video may be further processed by SPx Server for target tracking.
The SPx Server GUI provides a detailed maintenance display of video, plots, tracks and system status. Although the
GUI typically does not form part of an operational system (the software can be used in minimal GUI mode), the
interface provides an invaluable tool during system configuration and set-up. Options are provided to see the raw
and processed video, as well as the details of each plot and track.
When extracted data is correlated from scan to scan, SPx Server uses multiple hypotheses to support ambiguous
interpretations of the radar video. The tracking filter uses position, size and historical measurements to correlate
existing tracks with new data, providing updated positions and dynamics, as well as a confidence estimate. Track
data may be output in SPx or Asterix formats.
SPx Licensing
SPx is a licensed software product. There are two type of
license, Development and Runtime.
SPx Development License
An SPx Development License is needed when
developing custom SPx applications, but is not
required when running standard applications,
such as SPx Server or RadarView. The
Development License is available for Windows or
Linux and for one, two or multiple developers
(site or project license). The Development License
provides the following:
The SPx development libraries and include
files, including the C++ class library and
.NET interface.
Printed documentation for the class library,
developer support manuals and tutorials.
Source code of sample applications,
framework solutions, test and demo
programs.
Programmed dongle (2 dongles supplied for
two seat or multi-user license) to be used
for testing of developed applications.
First-class technical support direct from
Cambridge Pixel engineers, available by
telephone or email. Cambridge Pixel
engineers offer a wealth of expertise and
practical experience in radar processing and
software engineering and this is available to
you for the duration of your project
development (see “Technical Support from
Cambridge Pixel” below).
Free software updates with access to all new
features.
Utility programs, including network record
and replay, test utilities, debug tools etc.
SPx Runtime License
When an SPx application has been developed
using the Development License, the software may
be deployed with a Runtime license. This is a
perpetual (never expires) software license that
enables the SPx capabilities on the deployed
hardware. There are different licenses for
deployed SPx capabilities, with the common ones
including:
SPx Server for Radar Distribution
SPx Server for Target Tracking
SPx Scan Conversion
SPx Record and Replay
The runtime licensing is enforced using one of a
number of methods, including dongle or MAC-
addressing.
SPx Case Studies
Case Study 1: Adding scan converted radar video
into a legacy graphics application
A customer wanted to add software radar scan
conversion into a legacy graphics application showing
maps and targets. The software scan converter would
replace an old hardware device that was obsolete and
expensive to maintain.
The SPx Scan Converter was able to insert its output
image into the graphics display of an existing
application. The legacy application remained unchanged
as far as the graphics handling was concerned. Changes Case Study 4: Radar Tracker with Distributed
to the legacy application were needed only to control the Video
presentation of the radar data as the displayed view and
window geometry changes. This was easily implemented A customer wanted a radar processor and tracker to
through a small number of API calls from the application interface to a radar sensor and report track
into the scan converter. information through a network to a client application.
In addition, the server needed to distribute radar
Licenses Needed: video, which would be scan converted independently
SPx Development: Yes on each of 10 client consoles.
SPx Runtime: Scan Conversion
The solution was to use the standard SPx Tracking
Server. The track reports were reported onto the
network and SPx client libraries were used to control
the server and receive the track reports. The same
SPx Server distributed the video to each client console
Case Study 2: Building a Custom Radar Server using multicast UDP. On the client systems, SPx
modules received the data, scan converted the data
A customer wanted a radar video server to capture and and presented a real-time radar update.
distribute radar video across a standard network.
License Needed:
Although the standard SPx Server met many of the SPx Development: Yes
requirements, the customer needed a number of custom SPx Runtime: Tracking Server, Client Scan Conversion
features in the server that were not part of the standard
SPx Server product. The solution was to use the SPx
modules to provide radar capture, compression,
distribution and local scan conversion, together with
custom code providing the features needed by the
project. The system integrator was free to concentrate
on the value-added components of the server, leaving
the core capabilities of the radar capture and processing
to the SPx library.
License Needed:
SPx Development: Yes
SPx Runtime: Distribution Server (Custom)
Case Study 3: Radar Tracker
A customer needed a radar processor and tracker to
interface to a radar sensor and report track information
in Asterix format through a network to a client
application.
The solution was to use the standard SPx Tracking
Server. The track reports were reported onto the
network and SPx client libraries were used to control the
server and receive the track reports.
License Needed:
SPx Development: No
SPx Runtime: Tracking Server
SPx Product Summary and Part Numbers
SPx Development Licenses 1 2 Project or Site
Developer Developers Development
Windows XP/Vista/7 110-050 110-060 110-070
Linux 110-052 110-062 110-072
Linux and Windows XP/Vista/7 110-059 110-069 110-079
Note: With a “1 Developer” license, a single software engineer is assumed to be working on the project and
that engineer is the point of contact with Cambridge Pixel’s support team. A single dongle is supplied. With a
“2 Developer” licese, there can be two software engineers actively using the software and requesting support
from Cambridge Pixel. With a Project or Site license, any number of engineers may be requesting support.
Two dongles are supplied for both the “2 Developer” and Project/Site license, although additional dongles can
be supplied at a nominal extra cost for the Project/Site license – consult Cambridge Pixel for details.
SPx Module Runtime Licenses Part Number
SPx Client Scan Conversion (HPx Input) 110-550
SPx Client Scan Conversion (Network Input) 110-540
SPx Distribution Server (Custom Developed) 110-732
SPx Plot Extraction Process 110-518
SPx Record and Replay 110-715
SPx Processing Library 110-530
SPx Application Runtime Licenses Part Number Notes
RadarView 110-560 For further details see RadarView brochure.
RadarView with Record/Replay 110-563
RadarView with B-Scan and Record/Replay 110-562
SPx Server (Radar Distribution), Linux 110-640 Radar input from HPx hardware or network
SPx Server (Radar Distribution), Windows 110-641 source. Supports pre-processing of radar video
prior to UDP network distribution to any number
of connected clients. Local GUI option for radar
viewing and server configuration. Client-side
licensing needed for radar receipt and scan
conversion.
SPx Server (Radar Distribution + Plot 110-710 Adds plot extraction capability to above server.
Extraction), Linux Plots output as SPx messages on UDP. Client-side
SPx Server (Radar Distribution + Plot 110-711 software provided to receive and decode these
Extraction), Windows plots. Plot extraction process fully configurable
and viewable through optional server GUI.
SPx Server (Radar Distribution + Plot Extraction 110-700 Add target tracking to above server. For further
+ Target Tracking), Static Radar, Linux details see SPx Tracker data sheet. Track outputs
SPx Server (Radar Distribution + Plot Extraction 110-701 as SPx or Asterix format. Client-side software
+ Target Tracking), Static Radar, Windows provided (no license needed) to receive and
decode tracks. Tracking process fully configurable
and viewable through optional server GUI. This
version is for static radar installations.
SPx Server (Radar Distribution + Plot Extraction 110-702 As above, but applicable for moving platforms
+ Target Tracking), Moving Platform, Linux (ships, aircraft). Navigation data input through
SPx Server (Radar Distribution + Plot Extraction 110-703 NMEA serial or network interface.
+ Target Tracking), Moving Platform, Windows
SPx Fusion Server 110-78x Combines tracks from two or more SPx Tracking
servers into single fused track source.
SPx Radar Image Server, Windows 110-751 May be used standalone (radar from HPx or
network) or with SPx Server for additional
processing. Supports up to 4 channels (different
views) which are distributed to any number of
clients over UDP.
Your Local Distributor
Cambridge Pixel Ltd.,
New Cambridge House,
Litlington, Royston,
Herts, SG8 0SS, UK
+44 (0) 1763 852749
enquiries@cambridgepixel.com
www.cambridgepixel.com
Document Number: CP-16-110-07 SPx Brochure, v2.0