SlideShare une entreprise Scribd logo
1  sur  4
Télécharger pour lire hors ligne
V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering
Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949
1946 | P a g e
High Throughput Two- Dimensional Median Filters On FPGA
for Image Processing Applications
V. Satyanarayana1
, S. Srividya2
, U. Yedukondalu3
1
Senior Assistant Professor, (Department of Electronics and Communication Engineering, Aditya Engineering
College, Surampalem, Andhra Pradesh
2
Assistant Professor, (Department of Electronics and Communication Engineering, Aditya Engineering College,
Surampalem, Andhra Pradesh
3
Associate Professor, (Department of Electronics and Communication Engineering, Aditya Engineering College,
Surampalem, Andhra Pradesh
ABSTRACT
An efficient hardware implementation of
a median filter is presented. Input samples are
used to construct a cumulative histogram, which is
then used to find the median. The resource usage
of the design is independent of window size, but
rather, dependent on the number of bits in each
input sample. This offers a realizable way of
efficiently implementing large-windowed median
filtering, as required by transforms such as the
Trace Transform. The method is then extended to
weighted median filtering. The Median filter is an
effective method for the removal of impulse-based
noise from the images. This paper suggests an
optimized architecture for filter implementation
on FPGA. A 3x3 sliding window algorithm is used
as the base for filter operation. Partial
implementation is done via soft core processor.
The designs are synthesized for a Xilinx Spartan-3
EDK.
Keywords—FPGA, Median Filter, Soft Processor
Core, Parallelism, Pipelining
I. Introduction
Digital image processing is an ever
expanding and dynamic area with applications
reaching out into our everyday life such as medicine,
space exploration, surveillance, authentication,
automated industry inspection and many more areas.
In most of the cases captured images from image
sensors are affected by noise. The impulse noise is
the most frequently referred type of noise. This noise,
commonly also known as salt & pepper noise, is
caused by malfunctioning pixels in camera sensors,
faulty memory locations in hardware, or errors in the
data transmission.
Median filtering is considered a popular
method to remove impulse noise from images. This
non-linear technique is a good alternative to linear
filtering as it can effectively suppress impulse noise
while preserving edge information. The median filter
operates for each pixel of the image and assures it fits
with the pixels around it. It filters out samples that
are not representative of their surroundings; in other
words the impulses. Therefore, it is very useful in
filtering out missing or damaged pixels of the image.
The complexity in implementation of
median filter is due to the large amount of data
involved in representing image information in digital
format. General purpose processor as an
implementation option is easier to implement on but
not time-efficient due to additional constraints on
memory, I/O bandwidth and other peripheral devices.
Full custom hardware designs like Application
Specific Integrated Circuits (ASICs) provide the
highest speed to application but at the same time they
have very less scope for flexibility.
Digital Signal Processors (DSPs) and Field
Programmable Gate arrays (FPGAs) are two choices
under the category of semi custom hardware devices.
These devices give a balanced solution for
performance, flexibility and design complexity. DSPs
are best suited to computationally intensive
applications. FPGA has been chosen for our
application because of its various properties. FPGAs
are reconfigurable devices, which enables rapid
prototyping, simplifies debugging and verification.
Its parallel processing characteristic increases the
speed of implementation.
In section 2 details of median filter algorithm are
presented. In section 3 FPGA implementation of the
algorithm is discussed. In section 5 we provide the
simulation results. The discussion of the
implementation is concluded in the last section
II. Filter Algorithm
An image is stored in the form of 2D matrix
of pixel values. We have referred sliding window
algorithm described by R. Maheshwari and S.P.Rao
[2]. The median is defined as the middle of a group
of numbers when the numbers are sorted. The group
should contain odd number of elements. For the 2D
image, a standard median operation is implemented
by sliding a window of odd size (e.g. 3x3 windows)
over an image. A 3x3 window size is chosen which is
considered effective for most commonly used image
sizes. At each position of the window, the nine pixels
values inside that window are copied and sorted. The
value of the central pixel of the window is replaced
V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering
Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949
1947 | P a g e
with the median value of the nine pixels in the
window. When applied on Grayscale images, pixels
are ranked for their brightness. When applied on
Color scale images, the pixel whose red, green, and
blue components have the smallest sum of squared
differences from the color coordinates of its
neighbors is then chosen to replace the central pixel
of the neighborhood. The window shifts right by one
column after every clock cycle. Window-I is read in
three clock cycles. To read window-II, only the
fourth column has to be accessed and column two
and three can be retained from the previous window.
Fig.1 block diagram
III. Architecture
To build an embedded system on Xilinx
FPGAs, the embedded development kit (EDK) is
used to complete the reconfigurable design. Figure 1
shows the design flow.
Fig.2 design flow of EDK
Unlike the design flow in the traditional
software design using C/C++ language or hardware
design using hardware description languages, the
EDK enables the integration of both hardware and
software components of an embedded system. For the
hardware side, the design entry from VHDL/Verilog
is first synthesized into a gate-level netlist, and then
translated into the primitives, mapped on the specific
device resources such as Look-up tables, flip-flops,
and block memories. The location and
interconnections of these device resources are then
placed and routed to meet with the timing
Constraints. A downloadable .bit file is created for
the whole hardware platform. The software side
follows the standard embedded software flow to
compile the source codes into an executable and
linkable file (ELF) format. Meanwhile, a
microprocessor software specification (MSS) file and
a microprocessor hardware specification (MHS) file
are used to define software structure and hardware
connection of the system. The EDK uses these files
to control the design flow and eventually merge the
system into a single downloadable file. The whole
design runs on a real-time operating system (RTOS).
IV. Filtering Co−Processor
There are different ways to include
processors inside Xilinx FPGA for System-on-a-Chip
(SoC): PowerPC hard processor core, or Xilinx
MicroBlaze soft processor core, or user-defined soft
processor core in VHDL/Verilog. In this work, The
32-bit MicroBlaze processor is chosen because of the
flexibility. The user can tailor the processor with or
without advance features, based on the budget of
hardware. The advance features include memory
management unit, floating processing unit, hardware
multiplier, hardware divider, instruction and data
cache links etc. The architecture overview of the
system is shown in Figure 2. It can be seen that there
are two different buses (i.e., processor local bus
(PLB) and fast simplex link (FSLbus) used in the
system [5-6]. PLB follows IBM Core connect bus
architecture, which supports high bandwidth master
and slave devices, provides up to 128- bit data bus,
up to 64-bit address bus and centralized
busArbitration. It is a type of shared bus. Besides the
access overhead, PLB potentially has the risk of
hardware/software incoherent due to bus arbitration.
On the other hand, FSL supports point-to-point
unidirectional communication. A pair of FSL buses
(from processor to peripheral and from peripheral to
processor) can form a dedicated high speed bus
without arbitration mechanism. Xilinx provides C
and assembly language support for easy access.
Therefore, most of peripherals are connected to the
processor through PLB; the DWT coprocessor is
connected through FSL instead.
V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering
Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949
1948 | P a g e
Fig.3 system overview
The current system offers several methods
for distributing the data. These methods are a UART,
and VGA, and Ethernet controllers. The UART is
used for providing an interface to a host computer,
allowing user interaction with the system and
facilitating data transfer. The VGA core produces a
standalone real-time display. The Ethernet
connection allows a convenient way to export the
data for use and analysis on other systems. In our
work, to validate the DWT coprocessor, an image
data stream is formed using VISUAL BASIC, then
transmitted from the host computer to FPGA board
through UART port.
V. Experimental Results
Experiments are performed on gray level
images to verify the proposed method. These images
are represented by 8 bits/pixel and size is 128 x 128.
Image used for experiments are shown in below
figure.
Fig.4 input image
The measurands used for proposed method
are as follows:
The entropy (E) is defined as Where s is the
set of processed coefficients and p (e) is the
probability of processed coefficients. By using
entropy, number of bits required for compressed
image is calculated. An often used global objective
quality measure is the mean square error (MSE)
defined as
Where, nxm is the number of total pixels. f
(i,j) and f(i,j)’ are the pixel values in the original and
reconstructed image. The peak to peak signal to noise
ratio (PSNR in dB) [11-13] is calculated as
Fig.5 output image
Other Example:
Fig.6 input image
Fig.7: output image
V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering
Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com
Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949
1949 | P a g e
And the synthesis report is below
Fig.8 synthesis report
VI. Conclusion
In this paper, We have presented an
alternative implementation of median filtering for
arbitrarily large windows. The architecture is immune
to changes in window size, the area being determined
solely by the bit width. This allows for a flexible
window-size that can change from one calculation to
another and we finally presented the results which are
implemented on the Spartan-3 EDK evolution board.
References
[1] M. Karaman, L. Onural, and A. Atalar,
Design and implementation of a general-
purpose median filter unit in CMOS VLSI,
IEEE Journal of Solid-State Circuits, vol.
25, no. 2, pp. 505–13, 1990.
[2] D. Richards, VLSI median filters, IEEE
Transactions on Acoustics, Speech and
Signal Processing, vol. 38, no. 1, pp. 145–
53, 1990.
[3] G. Angelopoulos and I. Pitas, A fast
implementation of twodimensional weighted
median filters, in Proceedings of 12th
International Conference on Pattern
Recognition, 9-13 Oct. 1994, vol. vol.3.
Jerusalem, Israel: IEEE Comput. Soc. Press,
1994, pp. 140–2.
[4] L. Hayat, M. Fleury, and A. Clark, Two-
dimensional median filter algorithm for
parallel reconfigurable computers, IEE Proc.
Vision, Image and Signal Processing, vol.
142, no. 6, pp. 345–50, 1995.
[5] C.-T. Chen, L.-G. Chen, and J.-H. Hsiao,
VLSI implementation of a selective median
filter, IEEE Transactions on Consumer
Electronics, vol. 42, no. 1, pp. 33–42, 1996.
[6] G. Bates and S. Nooshabadi, FPGA
implementation of a median filter, in
Proceedings of IEEE TENCON ’97 IEEE
Region 10 Annual Conference. Speech and
Image Technologies for Computing and
Telecommunications, 2-4 Dec. 1997, vol.
vol.2. Brisbane, Qld., Australia: IEEE,
1997, pp. 437–40.
[7] H.-S. Yu, J.-Y. Lee, and J.-D. Cho, A fast
VLSI implementation of sorting algorithm
for standard median filters, in Twelfth
Annual IEEE International ASIC/SOC
Conference, 15-18 Sept. 1999. Washington,
DC, USA: IEEE, 1999, pp. 387–90.
[8] A. Kadyrov and M. Petrou, The Trace
Transform
and its applications, IEEE Transactions on
Pattern Analysis and Machine Intelligence,
vol. 23, no. 8, pp. 811–828, 2001.
[9] L. Breveglieri and V. Piuri, Digital median
filters, Journal of VLSI Signal Processing
Systems for Signal, Image, andVideo
Technology, vol. 31, no. 3, pp. 191–206,
2002.
[10] M. Petrou and A. Kadyrov, Affine invariant
features from the Trace Transform, IEEE
Transactions on Pattern Analysis and
Machine Intelligence., vol. 26, no. 1, pp. 30–
44, 2004.
[11] A. Burian and J. Takala, VLSI-efficient
implementation of full adder-based median
filter, in 2004 IEEE International
Symposium on Circuits and Systems, 23-26
May 2004, vol. Vol.2. Vancouver, BC,
Canada: IEEE, 2004, pp. 817–20.

Contenu connexe

Tendances

Optimized image processing and clustering to mitigate security threats in mob...
Optimized image processing and clustering to mitigate security threats in mob...Optimized image processing and clustering to mitigate security threats in mob...
Optimized image processing and clustering to mitigate security threats in mob...
TELKOMNIKA JOURNAL
 

Tendances (20)

Modified Distributive Arithmetic Based DWT-IDWT Processor Design and FPGA Imp...
Modified Distributive Arithmetic Based DWT-IDWT Processor Design and FPGA Imp...Modified Distributive Arithmetic Based DWT-IDWT Processor Design and FPGA Imp...
Modified Distributive Arithmetic Based DWT-IDWT Processor Design and FPGA Imp...
 
DECENTRALIZED SUPERVISION OF MOBILE SENSOR NETWORKS USING PETRI NET
DECENTRALIZED SUPERVISION OF MOBILE SENSOR NETWORKS USING PETRI NETDECENTRALIZED SUPERVISION OF MOBILE SENSOR NETWORKS USING PETRI NET
DECENTRALIZED SUPERVISION OF MOBILE SENSOR NETWORKS USING PETRI NET
 
Optimized image processing and clustering to mitigate security threats in mob...
Optimized image processing and clustering to mitigate security threats in mob...Optimized image processing and clustering to mitigate security threats in mob...
Optimized image processing and clustering to mitigate security threats in mob...
 
Computer graphics by bahadar sher
Computer graphics by bahadar sherComputer graphics by bahadar sher
Computer graphics by bahadar sher
 
Design and implementation of microprocessor trainer bus system
Design and implementation of microprocessor trainer bus systemDesign and implementation of microprocessor trainer bus system
Design and implementation of microprocessor trainer bus system
 
Computer networks
Computer networksComputer networks
Computer networks
 
Par com
Par comPar com
Par com
 
implementation of area efficient high speed eddr architecture
implementation of area efficient high speed eddr architectureimplementation of area efficient high speed eddr architecture
implementation of area efficient high speed eddr architecture
 
Choudhary2015
Choudhary2015Choudhary2015
Choudhary2015
 
Operating system
Operating systemOperating system
Operating system
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
 
Bcc network connection
Bcc network connectionBcc network connection
Bcc network connection
 
A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...
A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...
A LITERATURE SURVEY ON SECURE JOINT DATA HIDING AND COMPRESSION SCHEME TO STO...
 
IRJET- Offline Transcription using AI
IRJET-  	  Offline Transcription using AIIRJET-  	  Offline Transcription using AI
IRJET- Offline Transcription using AI
 
Reconfigurable computing
Reconfigurable computingReconfigurable computing
Reconfigurable computing
 
Data Acquisition and Control System for Real Time Applications
Data Acquisition and Control System for Real Time ApplicationsData Acquisition and Control System for Real Time Applications
Data Acquisition and Control System for Real Time Applications
 
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
Comparison study of 8-PPM, 8-DPIM, and 8-RDH-PIM modulator FPGA hardware desi...
 
Dynamic Simulation of Chemical Kinetics in Microcontroller
Dynamic Simulation of Chemical Kinetics in MicrocontrollerDynamic Simulation of Chemical Kinetics in Microcontroller
Dynamic Simulation of Chemical Kinetics in Microcontroller
 
Effective Compression of Digital Video
Effective Compression of Digital VideoEffective Compression of Digital Video
Effective Compression of Digital Video
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 

En vedette

Precentacion los iberos
Precentacion los iberosPrecentacion los iberos
Precentacion los iberos
Jhonny López
 
A prenda de Natal ideal
A prenda de Natal idealA prenda de Natal ideal
A prenda de Natal ideal
moodimagem
 
Modelo De Auto AvaliaçãO
Modelo De Auto AvaliaçãOModelo De Auto AvaliaçãO
Modelo De Auto AvaliaçãO
guest2ae31b
 
Factorización no. 4
Factorización no. 4Factorización no. 4
Factorización no. 4
profredy
 

En vedette (20)

Kz3419721974
Kz3419721974Kz3419721974
Kz3419721974
 
Lo3420902093
Lo3420902093Lo3420902093
Lo3420902093
 
Ln3420842089
Ln3420842089Ln3420842089
Ln3420842089
 
Lj3420632068
Lj3420632068Lj3420632068
Lj3420632068
 
Le3420152024
Le3420152024Le3420152024
Le3420152024
 
C33008012
C33008012C33008012
C33008012
 
Cd33488492
Cd33488492Cd33488492
Cd33488492
 
Precentacion los iberos
Precentacion los iberosPrecentacion los iberos
Precentacion los iberos
 
Workshop2009
Workshop2009Workshop2009
Workshop2009
 
Pauta 15
Pauta 15Pauta 15
Pauta 15
 
efood 2014 IRI el comprador de alimentacion on line
efood 2014 IRI el comprador de alimentacion on lineefood 2014 IRI el comprador de alimentacion on line
efood 2014 IRI el comprador de alimentacion on line
 
A prenda de Natal ideal
A prenda de Natal idealA prenda de Natal ideal
A prenda de Natal ideal
 
Modelo De Auto AvaliaçãO
Modelo De Auto AvaliaçãOModelo De Auto AvaliaçãO
Modelo De Auto AvaliaçãO
 
Hola
HolaHola
Hola
 
Planeacion administrar med.
Planeacion administrar med.Planeacion administrar med.
Planeacion administrar med.
 
Pobreza E ExclusãO Social
Pobreza E ExclusãO SocialPobreza E ExclusãO Social
Pobreza E ExclusãO Social
 
trabajo de la expo
trabajo de la expotrabajo de la expo
trabajo de la expo
 
Group discussion
Group discussion Group discussion
Group discussion
 
Audi r18 2013 le mans winnaar pdf
Audi r18 2013 le mans winnaar pdfAudi r18 2013 le mans winnaar pdf
Audi r18 2013 le mans winnaar pdf
 
Factorización no. 4
Factorización no. 4Factorización no. 4
Factorización no. 4
 

Similaire à Ku3419461949

Smartphone fpga based balloon payload using cots components
Smartphone fpga based balloon payload using cots componentsSmartphone fpga based balloon payload using cots components
Smartphone fpga based balloon payload using cots components
eSAT Journals
 

Similaire à Ku3419461949 (20)

imagefiltervhdl.pptx
imagefiltervhdl.pptximagefiltervhdl.pptx
imagefiltervhdl.pptx
 
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
IRJET- Autonomous Underwater Vehicle: Electronics and Software Implementation...
 
Basic signal processing system design on fpga using lms based adaptive filter
Basic signal processing system design on fpga using lms based adaptive filterBasic signal processing system design on fpga using lms based adaptive filter
Basic signal processing system design on fpga using lms based adaptive filter
 
Secure remote protocol for fpga reconfiguration
Secure remote protocol for fpga reconfigurationSecure remote protocol for fpga reconfiguration
Secure remote protocol for fpga reconfiguration
 
Secure remote protocol for fpga reconfiguration
Secure remote protocol for fpga reconfigurationSecure remote protocol for fpga reconfiguration
Secure remote protocol for fpga reconfiguration
 
IRJET - Positioning and Tracking of a Person using Embedded Controller in a D...
IRJET - Positioning and Tracking of a Person using Embedded Controller in a D...IRJET - Positioning and Tracking of a Person using Embedded Controller in a D...
IRJET - Positioning and Tracking of a Person using Embedded Controller in a D...
 
Designing of telecommand system using system on chip soc for spacecraft contr...
Designing of telecommand system using system on chip soc for spacecraft contr...Designing of telecommand system using system on chip soc for spacecraft contr...
Designing of telecommand system using system on chip soc for spacecraft contr...
 
Designing of telecommand system using system on chip soc for spacecraft contr...
Designing of telecommand system using system on chip soc for spacecraft contr...Designing of telecommand system using system on chip soc for spacecraft contr...
Designing of telecommand system using system on chip soc for spacecraft contr...
 
K0445660
K0445660K0445660
K0445660
 
Y4301127131
Y4301127131Y4301127131
Y4301127131
 
Smartphone fpga based balloon payload using cots components
Smartphone fpga based balloon payload using cots componentsSmartphone fpga based balloon payload using cots components
Smartphone fpga based balloon payload using cots components
 
Applications of Fuzzy Logic in Image Processing – A Brief Study
Applications of Fuzzy Logic in Image Processing – A Brief StudyApplications of Fuzzy Logic in Image Processing – A Brief Study
Applications of Fuzzy Logic in Image Processing – A Brief Study
 
Optimization of Latency of Temporal Key Integrity Protocol (TKIP) Using Graph...
Optimization of Latency of Temporal Key Integrity Protocol (TKIP) Using Graph...Optimization of Latency of Temporal Key Integrity Protocol (TKIP) Using Graph...
Optimization of Latency of Temporal Key Integrity Protocol (TKIP) Using Graph...
 
Background differencing algorithm for moving object detection using system ge...
Background differencing algorithm for moving object detection using system ge...Background differencing algorithm for moving object detection using system ge...
Background differencing algorithm for moving object detection using system ge...
 
Presentation for min project
Presentation for min projectPresentation for min project
Presentation for min project
 
IRJET - Wavelet based Image Fusion using FPGA for Biomedical Application
 IRJET - Wavelet based Image Fusion using FPGA for Biomedical Application IRJET - Wavelet based Image Fusion using FPGA for Biomedical Application
IRJET - Wavelet based Image Fusion using FPGA for Biomedical Application
 
DEEP LEARNING BASED BRAIN STROKE DETECTION
DEEP LEARNING BASED BRAIN STROKE DETECTIONDEEP LEARNING BASED BRAIN STROKE DETECTION
DEEP LEARNING BASED BRAIN STROKE DETECTION
 
An Investigation towards Effectiveness in Image Enhancement Process in MPSoC
An Investigation towards Effectiveness in Image Enhancement Process in MPSoC An Investigation towards Effectiveness in Image Enhancement Process in MPSoC
An Investigation towards Effectiveness in Image Enhancement Process in MPSoC
 
Fpga implementation of wireless data logger system
Fpga implementation of wireless data logger systemFpga implementation of wireless data logger system
Fpga implementation of wireless data logger system
 
Ls3520052009
Ls3520052009Ls3520052009
Ls3520052009
 

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

Ku3419461949

  • 1. V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949 1946 | P a g e High Throughput Two- Dimensional Median Filters On FPGA for Image Processing Applications V. Satyanarayana1 , S. Srividya2 , U. Yedukondalu3 1 Senior Assistant Professor, (Department of Electronics and Communication Engineering, Aditya Engineering College, Surampalem, Andhra Pradesh 2 Assistant Professor, (Department of Electronics and Communication Engineering, Aditya Engineering College, Surampalem, Andhra Pradesh 3 Associate Professor, (Department of Electronics and Communication Engineering, Aditya Engineering College, Surampalem, Andhra Pradesh ABSTRACT An efficient hardware implementation of a median filter is presented. Input samples are used to construct a cumulative histogram, which is then used to find the median. The resource usage of the design is independent of window size, but rather, dependent on the number of bits in each input sample. This offers a realizable way of efficiently implementing large-windowed median filtering, as required by transforms such as the Trace Transform. The method is then extended to weighted median filtering. The Median filter is an effective method for the removal of impulse-based noise from the images. This paper suggests an optimized architecture for filter implementation on FPGA. A 3x3 sliding window algorithm is used as the base for filter operation. Partial implementation is done via soft core processor. The designs are synthesized for a Xilinx Spartan-3 EDK. Keywords—FPGA, Median Filter, Soft Processor Core, Parallelism, Pipelining I. Introduction Digital image processing is an ever expanding and dynamic area with applications reaching out into our everyday life such as medicine, space exploration, surveillance, authentication, automated industry inspection and many more areas. In most of the cases captured images from image sensors are affected by noise. The impulse noise is the most frequently referred type of noise. This noise, commonly also known as salt & pepper noise, is caused by malfunctioning pixels in camera sensors, faulty memory locations in hardware, or errors in the data transmission. Median filtering is considered a popular method to remove impulse noise from images. This non-linear technique is a good alternative to linear filtering as it can effectively suppress impulse noise while preserving edge information. The median filter operates for each pixel of the image and assures it fits with the pixels around it. It filters out samples that are not representative of their surroundings; in other words the impulses. Therefore, it is very useful in filtering out missing or damaged pixels of the image. The complexity in implementation of median filter is due to the large amount of data involved in representing image information in digital format. General purpose processor as an implementation option is easier to implement on but not time-efficient due to additional constraints on memory, I/O bandwidth and other peripheral devices. Full custom hardware designs like Application Specific Integrated Circuits (ASICs) provide the highest speed to application but at the same time they have very less scope for flexibility. Digital Signal Processors (DSPs) and Field Programmable Gate arrays (FPGAs) are two choices under the category of semi custom hardware devices. These devices give a balanced solution for performance, flexibility and design complexity. DSPs are best suited to computationally intensive applications. FPGA has been chosen for our application because of its various properties. FPGAs are reconfigurable devices, which enables rapid prototyping, simplifies debugging and verification. Its parallel processing characteristic increases the speed of implementation. In section 2 details of median filter algorithm are presented. In section 3 FPGA implementation of the algorithm is discussed. In section 5 we provide the simulation results. The discussion of the implementation is concluded in the last section II. Filter Algorithm An image is stored in the form of 2D matrix of pixel values. We have referred sliding window algorithm described by R. Maheshwari and S.P.Rao [2]. The median is defined as the middle of a group of numbers when the numbers are sorted. The group should contain odd number of elements. For the 2D image, a standard median operation is implemented by sliding a window of odd size (e.g. 3x3 windows) over an image. A 3x3 window size is chosen which is considered effective for most commonly used image sizes. At each position of the window, the nine pixels values inside that window are copied and sorted. The value of the central pixel of the window is replaced
  • 2. V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949 1947 | P a g e with the median value of the nine pixels in the window. When applied on Grayscale images, pixels are ranked for their brightness. When applied on Color scale images, the pixel whose red, green, and blue components have the smallest sum of squared differences from the color coordinates of its neighbors is then chosen to replace the central pixel of the neighborhood. The window shifts right by one column after every clock cycle. Window-I is read in three clock cycles. To read window-II, only the fourth column has to be accessed and column two and three can be retained from the previous window. Fig.1 block diagram III. Architecture To build an embedded system on Xilinx FPGAs, the embedded development kit (EDK) is used to complete the reconfigurable design. Figure 1 shows the design flow. Fig.2 design flow of EDK Unlike the design flow in the traditional software design using C/C++ language or hardware design using hardware description languages, the EDK enables the integration of both hardware and software components of an embedded system. For the hardware side, the design entry from VHDL/Verilog is first synthesized into a gate-level netlist, and then translated into the primitives, mapped on the specific device resources such as Look-up tables, flip-flops, and block memories. The location and interconnections of these device resources are then placed and routed to meet with the timing Constraints. A downloadable .bit file is created for the whole hardware platform. The software side follows the standard embedded software flow to compile the source codes into an executable and linkable file (ELF) format. Meanwhile, a microprocessor software specification (MSS) file and a microprocessor hardware specification (MHS) file are used to define software structure and hardware connection of the system. The EDK uses these files to control the design flow and eventually merge the system into a single downloadable file. The whole design runs on a real-time operating system (RTOS). IV. Filtering Co−Processor There are different ways to include processors inside Xilinx FPGA for System-on-a-Chip (SoC): PowerPC hard processor core, or Xilinx MicroBlaze soft processor core, or user-defined soft processor core in VHDL/Verilog. In this work, The 32-bit MicroBlaze processor is chosen because of the flexibility. The user can tailor the processor with or without advance features, based on the budget of hardware. The advance features include memory management unit, floating processing unit, hardware multiplier, hardware divider, instruction and data cache links etc. The architecture overview of the system is shown in Figure 2. It can be seen that there are two different buses (i.e., processor local bus (PLB) and fast simplex link (FSLbus) used in the system [5-6]. PLB follows IBM Core connect bus architecture, which supports high bandwidth master and slave devices, provides up to 128- bit data bus, up to 64-bit address bus and centralized busArbitration. It is a type of shared bus. Besides the access overhead, PLB potentially has the risk of hardware/software incoherent due to bus arbitration. On the other hand, FSL supports point-to-point unidirectional communication. A pair of FSL buses (from processor to peripheral and from peripheral to processor) can form a dedicated high speed bus without arbitration mechanism. Xilinx provides C and assembly language support for easy access. Therefore, most of peripherals are connected to the processor through PLB; the DWT coprocessor is connected through FSL instead.
  • 3. V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949 1948 | P a g e Fig.3 system overview The current system offers several methods for distributing the data. These methods are a UART, and VGA, and Ethernet controllers. The UART is used for providing an interface to a host computer, allowing user interaction with the system and facilitating data transfer. The VGA core produces a standalone real-time display. The Ethernet connection allows a convenient way to export the data for use and analysis on other systems. In our work, to validate the DWT coprocessor, an image data stream is formed using VISUAL BASIC, then transmitted from the host computer to FPGA board through UART port. V. Experimental Results Experiments are performed on gray level images to verify the proposed method. These images are represented by 8 bits/pixel and size is 128 x 128. Image used for experiments are shown in below figure. Fig.4 input image The measurands used for proposed method are as follows: The entropy (E) is defined as Where s is the set of processed coefficients and p (e) is the probability of processed coefficients. By using entropy, number of bits required for compressed image is calculated. An often used global objective quality measure is the mean square error (MSE) defined as Where, nxm is the number of total pixels. f (i,j) and f(i,j)’ are the pixel values in the original and reconstructed image. The peak to peak signal to noise ratio (PSNR in dB) [11-13] is calculated as Fig.5 output image Other Example: Fig.6 input image Fig.7: output image
  • 4. V. Satyanarayana, S. Srividya, U. Yedukondalu / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 3, Issue 4, Jul-Aug 2013, pp.1946-1949 1949 | P a g e And the synthesis report is below Fig.8 synthesis report VI. Conclusion In this paper, We have presented an alternative implementation of median filtering for arbitrarily large windows. The architecture is immune to changes in window size, the area being determined solely by the bit width. This allows for a flexible window-size that can change from one calculation to another and we finally presented the results which are implemented on the Spartan-3 EDK evolution board. References [1] M. Karaman, L. Onural, and A. Atalar, Design and implementation of a general- purpose median filter unit in CMOS VLSI, IEEE Journal of Solid-State Circuits, vol. 25, no. 2, pp. 505–13, 1990. [2] D. Richards, VLSI median filters, IEEE Transactions on Acoustics, Speech and Signal Processing, vol. 38, no. 1, pp. 145– 53, 1990. [3] G. Angelopoulos and I. Pitas, A fast implementation of twodimensional weighted median filters, in Proceedings of 12th International Conference on Pattern Recognition, 9-13 Oct. 1994, vol. vol.3. Jerusalem, Israel: IEEE Comput. Soc. Press, 1994, pp. 140–2. [4] L. Hayat, M. Fleury, and A. Clark, Two- dimensional median filter algorithm for parallel reconfigurable computers, IEE Proc. Vision, Image and Signal Processing, vol. 142, no. 6, pp. 345–50, 1995. [5] C.-T. Chen, L.-G. Chen, and J.-H. Hsiao, VLSI implementation of a selective median filter, IEEE Transactions on Consumer Electronics, vol. 42, no. 1, pp. 33–42, 1996. [6] G. Bates and S. Nooshabadi, FPGA implementation of a median filter, in Proceedings of IEEE TENCON ’97 IEEE Region 10 Annual Conference. Speech and Image Technologies for Computing and Telecommunications, 2-4 Dec. 1997, vol. vol.2. Brisbane, Qld., Australia: IEEE, 1997, pp. 437–40. [7] H.-S. Yu, J.-Y. Lee, and J.-D. Cho, A fast VLSI implementation of sorting algorithm for standard median filters, in Twelfth Annual IEEE International ASIC/SOC Conference, 15-18 Sept. 1999. Washington, DC, USA: IEEE, 1999, pp. 387–90. [8] A. Kadyrov and M. Petrou, The Trace Transform and its applications, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 23, no. 8, pp. 811–828, 2001. [9] L. Breveglieri and V. Piuri, Digital median filters, Journal of VLSI Signal Processing Systems for Signal, Image, andVideo Technology, vol. 31, no. 3, pp. 191–206, 2002. [10] M. Petrou and A. Kadyrov, Affine invariant features from the Trace Transform, IEEE Transactions on Pattern Analysis and Machine Intelligence., vol. 26, no. 1, pp. 30– 44, 2004. [11] A. Burian and J. Takala, VLSI-efficient implementation of full adder-based median filter, in 2004 IEEE International Symposium on Circuits and Systems, 23-26 May 2004, vol. Vol.2. Vancouver, BC, Canada: IEEE, 2004, pp. 817–20.