MU-MIT
FPGA Based Distributed
Camera for Safety and
Security
Group Members
1. Araya Kiros
2. Hailay Hadush
3. W/kiros G/meskel
4. T/brhan Afera
Outline
 Introduction
 Motivation
 General Objective
 Specific Objective
 Project Scope
 Background and related work
 System Design and Implementation
 System Requirements
 Object detection and Tracking using Image Processing
 Object Detection Algorithms
 Object Tracking Algorithm
 Results and Discussions
 Conclusion and Future Work
 References
Introduction
 Smart camera is a camera that combines sensing, processing and
communication in a single embedded device .
 Distributed smart camera network is a network of cameras that
Performs image and video analysis in real time closely located at the sensor
and transfer only the results in collaboration with the other cameras in the
network.
 Object Tracking is the process of marking the position of a target of
interest in consecutive image frames of a video is called visual object
tracking.
Introduction Cont’d
 FPGA (Field Programmable Gate Array) is an IC in which its function
is defined by programmer.
 FPGA’S are:
 Low cost devices
 Flexible
 Devices that consume low power
 Devices that contain On-chip memory
 Needs special software called Xilinx ISE 14.6 for programming
purpose
Introduction Cont’d
Motivation
 need of flexible and high speed image processing results
 Mr Micheale Hadera –He recommended us to do this project
Introduction Cont’d
 General Objective
 Tracking an object of interest using a reconfigurable FPGA device
 Specific Objective
 To Surveillance systems
 To Traffic control
 To Sports Analytics
 To Medical Imaging
 To Mobile Robotics
 To Human Computer interaction
Introduction Cont’d
 Project Scope
 Studying the basic image processing algorithms
 Running the MATLAB codes to verify object tracking algorithms
 Code writing and understanding in Verilog
 Exploring features of the Spartan 3 starter board
Background and related work
Many hardware architectures for visual sensors network have been
proposed [3]. Most existing platforms are based on General Purpose
Processor (GPP) units [4] because this kind of architectures offers high
level programming and modern embedded processors provide good
performances. Despite this, embedded processors cannot meet real-time
processing constraints when image sensor resolution increases. On the
other side, FPGA-based architectures which offering more massive
computing capability than GPPs have been studied for implementing
image processing applications on smart camera nodes [1, 5]. However, if
the introduction of FPGAs can address some performance issues in smart
camera networks, it introduces new challenges concerning
programmability of nodes, hardware abstraction and network
management. This work presents a FPGA-based platform offering high
capacity for image processing, and also it is fully configurable and
updateable [2].
System Design and Implementation
 System Requirements
 Software Requirements
• Xilinx ISE 14.6
• MATLAB R2013a
 Hardware Requirements
• FPGA Spartan -3
• Camera
System Design and Implementation
The basic block diagram of the project
System Design and Implementation Cont’d
Object detection and Tracking using Image Processing
 Phases involved
 1. Object detection
 2. Tracking of the detected object
System Design and Implementation Cont’d
Object Detection Algorithms
 Grayscale Conversion
 Representing of an image using pixel
 Value of each pixel ranges from 0-255 and each pixel is of 8-
bits or 1 Byte
 Thresholding
 transforming a grayscale image to a binary image
 the pixel values are either 1 or 0 using a threshold value
System Design and Implementation Cont’d
Object Detection Algorithms
 Image Enhancement
 A technique used to manipulate and transform an image to a specific
requirement
 It may be
• Spatial Transformations
• Frequency Domain Transformations
 Edge Detection
 Identifying the points in an image where intensity of an image
changes suddenly
 Performed on a grayscale image
 2D Histogram
 Graphical representation of the intensity distribution in an image
 Plots number of pixels on the y-axis for intensity values on the x-axis
System Design and Implementation Cont’d
Object Tracking Algorithms
 Normalized Cross Correlation
 A measure of similarity of two images which are spaced
in time
 Selects the target object and cross correlate it with the
image samples
 Represented by the command normxcorr2.
 The command uses
• computes the cross correlation in the spatial or
frequency domain.
• Calculates local sums by pre-computing running sums
• the local sums to normalize the cross-correlation to get
correlation coefficients
Result and Discussion
 Software Simulations using MATLAB
 Simulation Result of basic image processing algorithms
1. Result of Gray Scale image processing
Gray Scaled ImageOriginal Image
2. Result of threshold image processing
Gray Scaled Image Thresholded Image
3. Result of edge detection processing
Gray Scaled Image Gray Scaled Image
Result of tracked object from the real
time image
Conclusion
 The aim of our thesis is real time object detection and tracking using
sequences of image processing algorithms which is helpful for applications
that need real time response. Object identification and tracking requires the
use of an efficient signal processing system. Although video processing is
achievable on serial processors, it can be beneficial to take advantage of the
parallelism, low cost, and low power consumption offered by FPGAs.
 We have got deep understanding of embedded system (Spartan 3) and related
software’s (Xilinx ISE, EDK) as well as image processing algorithms. But due to
time limit and incomplete FPGA hardware equipment we have only done:
 VGA display using Xilinx ISE design suite software
 Real time Object tracking in images using Matlab simulation
Future Work
 In this project we have done tracking of detected object using simulation
due to incomplete FPGA hardware equipment’s and time limit. The
following tasks will be done in the future (Final project):
 Database implementation that helps in storing detected objects together
with their Meta data and in connecting all modules of the system.
 Behavioral analysis of the detected objects to classify them as normal or
abnormal object
 User interface that helps for the monitoring person to interact with
system whenever there is anomaly object detection
References
[1] Ece.rice.edu, ‘Distributed Smart Cameras’, 2013. [Online]. Available:
http://www.ece.rice.edu/~av21/Documents/pre2011/Distributed%20Smart%20Cameras.pdf
[Accessed: 29-October- 2016].
[2] Techtarget.com, ‘field-programmable gate array (FPGA)’, 2014. [Online]. Available:
http://whatis.techtarget.com/definition/field-programmable-gate-array-FPGA [Accessed:
29-October- 2016].
[3] W. W. B. Rinner, Towards Pervasive Smart Camera Networks. Academic press, 2009.
[4] P. Chen, P. Ahammad, C. Boyer, S.-I. Huang, L. Lin, E. Lobaton, M. Meingast, S. Oh, S.
Wang, P. Yan, A. Yang, C. Yeo, L.-C. Chang, J. D. Tygar, and S. Sastry, “Citric: A low-
bandwidth wireless camera network platform,” in Distributed Smart Cameras, 2008. Second
ACM/IEEE International Conference on, 2008.
[5] E. Norouznezhad, A. Bigdeli, A. Postula, and B. Lovell, “A high resolution smart camera
with gige vision extension for surveillance applications,” in Distributed Smart Cameras,
2008. ICES 2008. Second ACM/IEEE International Conference on, 2008, pp. 1–8
[6]. Xilinx, MicroBlaze Processor Reference Guide, Embedded Development Kit EDK 14.6
URL: http://www.xilinx.com/support/documentation/sw_manuals/
xilinx14_6/mb_ref_guide.pdf
References Cont’d
[7].Xilinx, Embedded System Tools, Reference Manual, Embedded Development Kit URL:
https://www.xilinx.com/support/documentation/sw_manuals/edk10_est _rm.pdf
[8]. Xilinx, Application Note, “Using Block RAM in Spartan-3 Generation FPGAs”, XAPP463
(v2.0) March 1, 2005.
[9]. Xilinx, Application Note, “Digital Clock Manager (DCM) Module”, DS485 April 24,
2009.
[10]. Xilinx, “Spartan-3 FPGA Starter Kit Board User Guide”, UG230 (v1.2) January 20,
2011
[11]. Alper Yilmaz, “Object tracking: A survey”, University of Central Florida, ACM
Computing Surveys (CSUR) Surveys Homepage archive Volume 38 Issue 4, 2006
[12]. Rafael C. Gonzalez, Richard Eugene Woods, 2nd edition, “Digital Image processing”.
[13] Radi H.R., Caleb W.W.K., M.N.Shah Zainudin., M.Muzafar Ismail., “The Design and
Implementation of VGA Controller on FPGA”, University Teknikal Malaysia Melaka Hang
Tuah Jaya 76100 Durian Tunggal, Melaka, Malaysia.
Presentation for min project

Presentation for min project

  • 1.
    MU-MIT FPGA Based Distributed Camerafor Safety and Security
  • 2.
    Group Members 1. ArayaKiros 2. Hailay Hadush 3. W/kiros G/meskel 4. T/brhan Afera
  • 3.
    Outline  Introduction  Motivation General Objective  Specific Objective  Project Scope  Background and related work  System Design and Implementation  System Requirements  Object detection and Tracking using Image Processing  Object Detection Algorithms  Object Tracking Algorithm  Results and Discussions  Conclusion and Future Work  References
  • 4.
    Introduction  Smart camerais a camera that combines sensing, processing and communication in a single embedded device .  Distributed smart camera network is a network of cameras that Performs image and video analysis in real time closely located at the sensor and transfer only the results in collaboration with the other cameras in the network.  Object Tracking is the process of marking the position of a target of interest in consecutive image frames of a video is called visual object tracking.
  • 5.
    Introduction Cont’d  FPGA(Field Programmable Gate Array) is an IC in which its function is defined by programmer.  FPGA’S are:  Low cost devices  Flexible  Devices that consume low power  Devices that contain On-chip memory  Needs special software called Xilinx ISE 14.6 for programming purpose
  • 6.
    Introduction Cont’d Motivation  needof flexible and high speed image processing results  Mr Micheale Hadera –He recommended us to do this project
  • 7.
    Introduction Cont’d  GeneralObjective  Tracking an object of interest using a reconfigurable FPGA device  Specific Objective  To Surveillance systems  To Traffic control  To Sports Analytics  To Medical Imaging  To Mobile Robotics  To Human Computer interaction
  • 8.
    Introduction Cont’d  ProjectScope  Studying the basic image processing algorithms  Running the MATLAB codes to verify object tracking algorithms  Code writing and understanding in Verilog  Exploring features of the Spartan 3 starter board
  • 9.
    Background and relatedwork Many hardware architectures for visual sensors network have been proposed [3]. Most existing platforms are based on General Purpose Processor (GPP) units [4] because this kind of architectures offers high level programming and modern embedded processors provide good performances. Despite this, embedded processors cannot meet real-time processing constraints when image sensor resolution increases. On the other side, FPGA-based architectures which offering more massive computing capability than GPPs have been studied for implementing image processing applications on smart camera nodes [1, 5]. However, if the introduction of FPGAs can address some performance issues in smart camera networks, it introduces new challenges concerning programmability of nodes, hardware abstraction and network management. This work presents a FPGA-based platform offering high capacity for image processing, and also it is fully configurable and updateable [2].
  • 10.
    System Design andImplementation  System Requirements  Software Requirements • Xilinx ISE 14.6 • MATLAB R2013a  Hardware Requirements • FPGA Spartan -3 • Camera
  • 11.
    System Design andImplementation The basic block diagram of the project
  • 12.
    System Design andImplementation Cont’d Object detection and Tracking using Image Processing  Phases involved  1. Object detection  2. Tracking of the detected object
  • 13.
    System Design andImplementation Cont’d Object Detection Algorithms  Grayscale Conversion  Representing of an image using pixel  Value of each pixel ranges from 0-255 and each pixel is of 8- bits or 1 Byte  Thresholding  transforming a grayscale image to a binary image  the pixel values are either 1 or 0 using a threshold value
  • 14.
    System Design andImplementation Cont’d Object Detection Algorithms  Image Enhancement  A technique used to manipulate and transform an image to a specific requirement  It may be • Spatial Transformations • Frequency Domain Transformations  Edge Detection  Identifying the points in an image where intensity of an image changes suddenly  Performed on a grayscale image  2D Histogram  Graphical representation of the intensity distribution in an image  Plots number of pixels on the y-axis for intensity values on the x-axis
  • 15.
    System Design andImplementation Cont’d Object Tracking Algorithms  Normalized Cross Correlation  A measure of similarity of two images which are spaced in time  Selects the target object and cross correlate it with the image samples  Represented by the command normxcorr2.  The command uses • computes the cross correlation in the spatial or frequency domain. • Calculates local sums by pre-computing running sums • the local sums to normalize the cross-correlation to get correlation coefficients
  • 16.
    Result and Discussion Software Simulations using MATLAB  Simulation Result of basic image processing algorithms
  • 17.
    1. Result ofGray Scale image processing Gray Scaled ImageOriginal Image
  • 18.
    2. Result ofthreshold image processing Gray Scaled Image Thresholded Image
  • 19.
    3. Result ofedge detection processing Gray Scaled Image Gray Scaled Image
  • 20.
    Result of trackedobject from the real time image
  • 21.
    Conclusion  The aimof our thesis is real time object detection and tracking using sequences of image processing algorithms which is helpful for applications that need real time response. Object identification and tracking requires the use of an efficient signal processing system. Although video processing is achievable on serial processors, it can be beneficial to take advantage of the parallelism, low cost, and low power consumption offered by FPGAs.  We have got deep understanding of embedded system (Spartan 3) and related software’s (Xilinx ISE, EDK) as well as image processing algorithms. But due to time limit and incomplete FPGA hardware equipment we have only done:  VGA display using Xilinx ISE design suite software  Real time Object tracking in images using Matlab simulation
  • 22.
    Future Work  Inthis project we have done tracking of detected object using simulation due to incomplete FPGA hardware equipment’s and time limit. The following tasks will be done in the future (Final project):  Database implementation that helps in storing detected objects together with their Meta data and in connecting all modules of the system.  Behavioral analysis of the detected objects to classify them as normal or abnormal object  User interface that helps for the monitoring person to interact with system whenever there is anomaly object detection
  • 23.
    References [1] Ece.rice.edu, ‘DistributedSmart Cameras’, 2013. [Online]. Available: http://www.ece.rice.edu/~av21/Documents/pre2011/Distributed%20Smart%20Cameras.pdf [Accessed: 29-October- 2016]. [2] Techtarget.com, ‘field-programmable gate array (FPGA)’, 2014. [Online]. Available: http://whatis.techtarget.com/definition/field-programmable-gate-array-FPGA [Accessed: 29-October- 2016]. [3] W. W. B. Rinner, Towards Pervasive Smart Camera Networks. Academic press, 2009. [4] P. Chen, P. Ahammad, C. Boyer, S.-I. Huang, L. Lin, E. Lobaton, M. Meingast, S. Oh, S. Wang, P. Yan, A. Yang, C. Yeo, L.-C. Chang, J. D. Tygar, and S. Sastry, “Citric: A low- bandwidth wireless camera network platform,” in Distributed Smart Cameras, 2008. Second ACM/IEEE International Conference on, 2008. [5] E. Norouznezhad, A. Bigdeli, A. Postula, and B. Lovell, “A high resolution smart camera with gige vision extension for surveillance applications,” in Distributed Smart Cameras, 2008. ICES 2008. Second ACM/IEEE International Conference on, 2008, pp. 1–8 [6]. Xilinx, MicroBlaze Processor Reference Guide, Embedded Development Kit EDK 14.6 URL: http://www.xilinx.com/support/documentation/sw_manuals/ xilinx14_6/mb_ref_guide.pdf
  • 24.
    References Cont’d [7].Xilinx, EmbeddedSystem Tools, Reference Manual, Embedded Development Kit URL: https://www.xilinx.com/support/documentation/sw_manuals/edk10_est _rm.pdf [8]. Xilinx, Application Note, “Using Block RAM in Spartan-3 Generation FPGAs”, XAPP463 (v2.0) March 1, 2005. [9]. Xilinx, Application Note, “Digital Clock Manager (DCM) Module”, DS485 April 24, 2009. [10]. Xilinx, “Spartan-3 FPGA Starter Kit Board User Guide”, UG230 (v1.2) January 20, 2011 [11]. Alper Yilmaz, “Object tracking: A survey”, University of Central Florida, ACM Computing Surveys (CSUR) Surveys Homepage archive Volume 38 Issue 4, 2006 [12]. Rafael C. Gonzalez, Richard Eugene Woods, 2nd edition, “Digital Image processing”. [13] Radi H.R., Caleb W.W.K., M.N.Shah Zainudin., M.Muzafar Ismail., “The Design and Implementation of VGA Controller on FPGA”, University Teknikal Malaysia Melaka Hang Tuah Jaya 76100 Durian Tunggal, Melaka, Malaysia.