FEAT RE FEA ATURE
DISPLAYS &
YS & UIS AUTONOMOUS CROWD MONITORING
ADVANCES MODERN AGE OF HMI Muhammad Bilal & Dr. Shoab. A. Khan, Centre for Advanced Studies in Engineering investigate how the latest Xilinx FPGAs are advancing autonomous monitoring of crowds in busy public environments
C
rowd surveillance andmonitoring has gained crucial importance in recent
years. Governments and security agencies are looking formore advancedways to intelligentlymonitor human crowds across public places to detect any unusual activity before it is too late to react.
Manualmethods alone cannotmonitor all possible crowd activities from thousands of CCTV cameras across a whole city, 24 hours a day. However, intelligent cameras or vision systems that autonomouslymonitor the activities of human crowds through ad vanced video analytics techniques promise the ability to provide timely reports on any unusual event to a central control station. Such intellige
gent camera/vra/vision systems re
require powerful video processors on board to achieve
rd ve the high processing requirements
rformance-hungry applications. This is amply demonstrated by a newprototype for a human crow
of sophisticated video analytics techniques. FPGAs are ideally suited to such perf
owdmotion-classification and
monitoring systemusing VivadoHLS, Xilinx’s EmbeddedDevelopment Kit (EDK) and software-based EDA Design Suite.
rv DAtools fromthe ISE
Typical algorithms for crowd surveillance andmonitoring startwith detecting (or placing) interest points in the human crowd scenes, tracking themover time to collectmotion statistics. A template- matching scheme formotion estimation offers advantages over alternative
feature-tracking approach es. In particular, it excels overmotion estimation in cases of lowor varying contrast - albeit at the cost of a fewmore computations.
The video frame is divided into a grid of smaller rectangular patches, andmore than 900motion vectors are computed across thewhole image. The algorithm then computes statistical properties such as averagemotion vector length, number ofmotion vectors, dominant direction of motion and similarmetrics.
Statistical properties acrossmultiple frames allowthemotions to be classified. For example, ifmotion is ob rvserved to be high and there is a sudden change in momentumin the scenewhile the direction ofmotion is randomor out of the image
ge plane, then it can be classified as possible panic behaviour. 8 OC OB OCTOBER 201 2016 | ELEC RO ELECTRONICS CS FPGA MPLEMENTA FPGA I IMPLEMENTATIONATION
Key challenges for FPGA implementation include the integration of video input/output and frame buffering as part of FPGA-based design. A real-time video pipeline hides the complexmemorymanage
gement related to
video input/output and frame buffering from the user, and provides a simple interface for accessing video frame data for processing. A customised video pipeline built around the Xilinx EDK provides capture/display ports for handling video data and is easily configurable for other FPGA families. Video input and output ports are connected to the main peripheral bus of aMicroBlaze host processor,which handles video data traffic to and fromthemainmemory.
There are several benefits of using a MicroBlaze as a host processor to
interconnect various building blocks in the system. It is easy to interface awide range of externalmemories (SRAM, SDRA withMicroBlaze f video frame data DMAcontro
RA rollers can be used in the EDKfor transporting data between video ports and ge RAM, etc.)
fromvideo ports. Similarly, or loading or storing the
Figure 1: Figure 1:
Steps in computing motion vectors, starting with image capture (top)
Steps in computing
motion vectors, starting with image capture (top)
mainmemory.An ana gous approachis used to interf
logo rface customhardware rd
acceleratorswiththe processor. Themost time-consuming and
computationally intensive task here is to computemotion ve
vectors. Ahardware
accelerator, synthesised in RTL using Xilinx’s VivadoHLS in C/C++, produces highly optimised code. VivadoHLS synthesises array accesses (such as pixel data) into memory interfaces and automatically generates re
ge require red a dred resses by analysing
the code. It also analyses pre-computable offsets and constants to perf “strided”memory accesses. Eight Block RA
load and store video frame data in parallel. The hardware accelerator core can compute fourmotion vectors in parallel, and for this purpose it utilises all eight BRA
RAMs (BRAMs) are used to ra
RA RAMs.
The resulting hardware accelerator operates at 200MHz and all processing needed to computemotion vectors across thewhole image completes in less than 10ms, including all data transfers to and frommemory.
Implementing algo gorithmcontrol and
data flowin the Xilinx SDK brings a large degree of flexibility to design, because it is possible to design and integrate new hardware accelerators in the same fashion, andmodify necessary control and data flowto incorporate newhardware
accelerators. This approach combines the flexibility of all-software implementation with the high performance of an all- hardware implementation .
Comparison of the resulting FPGA GA-based
implementationwith an earlier desktop PC- based implementation has demonstrated identical results. Thiswas achieved using only 30percent of the Spart Progra
rtan-6LX45All
60percent of BRA DSP48Emultiplier re
rammable FPGA’s slice lookup tables, RAMand 12 percent of resources.
Such results showthe huge potential in implementing performance-critical
applications over FPGAs using these tools. The benefits of fast and efficient
development could be extended to traffic monitoring, patient observ
rvation in hospitals andmanymore applications. Xilinx
www.xilinx.com T: 01932 574600
www.xilinx.com / ELECTRONICS ELECTRONICS rformvery fast
Page 1 |
Page 2 |
Page 3 |
Page 4 |
Page 5 |
Page 6 |
Page 7 |
Page 8 |
Page 9 |
Page 10 |
Page 11 |
Page 12 |
Page 13 |
Page 14 |
Page 15 |
Page 16 |
Page 17 |
Page 18 |
Page 19 |
Page 20 |
Page 21 |
Page 22 |
Page 23 |
Page 24 |
Page 25 |
Page 26 |
Page 27 |
Page 28 |
Page 29 |
Page 30 |
Page 31 |
Page 32 |
Page 33 |
Page 34 |
Page 35 |
Page 36 |
Page 37 |
Page 38 |
Page 39 |
Page 40 |
Page 41 |
Page 42 |
Page 43 |
Page 44 |
Page 45 |
Page 46 |
Page 47 |
Page 48 |
Page 49 |
Page 50 |
Page 51 |
Page 52 |
Page 53 |
Page 54 |
Page 55 |
Page 56 |
Page 57 |
Page 58 |
Page 59 |
Page 60 |
Page 61 |
Page 62 |
Page 63 |
Page 64