-
www.gjaet.com Page | 205
Global Journal of Advanced Engineering Technologies Volume 6,
Issue 3- 2017ISSN (Online): 2277-6370 & ISSN
(Print):2394-0921
SCALE INVARIANT FEATURE TRANSFORM ALGORITHM FOR IDENTIFICATION
OF QUALITY
OBJECTS FOR PALLETIZATION APPLICATIONJ.Sai Sirisha1, Mr.Mohammad
Khadir 2
1Student (M.Tech), Department of ECE, Institute Of Aeronautical
Engineering, Dundigal, Rangareddy, Telangana, India.2 Assistant
Professor ,Department of ECE, Institute Of Aeronautical
Engineering, Dundigal, Rangareddy, Telangana, India.
Abstract: This paper proposes a new approach forsolving
well-known industrial automation problemssuch as Quality Control
and Palletization (QCP). Anintelligent four-bar mechanism has been
designed as a mechanical Palletizer. It has been modeled as
asingular quadrilateral mechanism whose intelligence is sourced
from an image processing algorithm targeted for Field Programmable
Gate Array (FPGA) real-time processing system. In thisproposed
approach the algorithms are implementedusing MATLAB and Simulink
packages. The criticalsystem blocks of the Simulink model are the
serial pixel data generator and the thresh holder whose functions
is to compute threshold value of all pixels for binarization. All
the hardware description language (HDL) codes generated from the
Simulink model show no behavioral deviation from the original
MATLAB version of the algorithm. The recognition rate results are
high and the whole system is very fast at 50 MHz clock
frequency.Key words: FPGA; Mechanical Palletizer; EdgeDetection;
BLOB; Robotics and Automation
I. INTRODUCTIONIn Present days due the advancements in sensors
and digital technology, industries have been shifting their focus
towards full automation. Processes like Quality Control and
Palletization are among the most recurring routines in the
manufacturing industries. Palletizing refers to the process of
stacking boxes of products coming from a production line onto
pallets for the purpose of storage and distribution.. There are two
main types of pelletizes: mechanical and robotic palletizes.
Mechanical pelletizes are fast but inflexible, while robotic
palletizes are slower but offer higher flexibility. The challenge
in robotic palletizing is to make robotic pelletizes faster
operating, while maintaining their flexibility and availability.
Machine vision has been one of the hot research topics that have
received high level of attention in industrial applications. The
vision system in turn consists of huge calculations and processing
of the images of a process captured by high resolution industrial
Charged Couple
Device (CCD) image sensors. The need becomes even much high when
the application is performed in real-time where the stream of image
frames must be processed by the hardware and the result is passed
to the next process. Traditionally, General Purpose Processor (GPP)
based processing have been the norms for years, however with high
demands in speed to process colored images, GPP-based processing
grapples with so many challenges. FPGA to be used in many different
applications in real-time but for large designs, FPGAs
implementation is difficult then the System on Chip (SoC) design.
Now-a-days increasing of the low power and area
consumptionrequirements System on Chip (SoC) implementation is
designed instead of FPGA. SoC is an Integrated Circuit(IC) that
integrates all components of a computer or other electronic system
into a single chip. Due to integrating whole system design on a
single chip area and power will be reduced. SoCs are most common in
the mobile electronics market because of their low power
consumption a typical application in the area of VLSI systems and
embedded systems. For an efficient implementation of this process,
an FPGA hardware architectural design is proposed in this paper.
The rest of this paper is organized as follows: Section 2 presents
an overview of object recognition, CCA and mechanical palletizers.
Section 3 presents the proposed system and the implementation
methodologies. Section 4 demonstrates experimental results of the
object recognition and orientation computation. In Section 5
simulation results from mechanical Palletizer models are presented.
Finally, Section 6 concludes the findings.
II. THEOROTICAL OVER VIEWIn this paper, the critical areas
including the objectrecognition CCA, FPGA architecture and
theMechanical Palletizer modeling are presented. Usually,the object
recognition parts provide information forquality control actuators.
Results obtained from theCCA are used in the object recognition
classifier andgeometrical feature extractions to actuate the
-
www.gjaet.com Page | 206
Global Journal of Advanced Engineering Technologies Volume 6,
Issue 3- 2017ISSN (Online): 2277-6370 & ISSN
(Print):2394-0921
mechanical Palletizer. And the entire process isimplemented
using FPGA.A) Object RecognitionThe main advantage of any object
recognition algorithm is its ability to identify key points on the
object and the unique features surrounding those points.These
features are stored in feature vectors which are subsequently used
with a classifier to compare with an object of interest stored in
the database..Basically, classifiers are the final decision makers
of the algorithm and can either be rule-based or artificial
intelligence-based. The most familiar amongst the rule based
classifier is the cascaded one using Viola-Jones algorithm [8]. If
at any stage an object is classified negative, the classification
stops there and does not proceed to the next stage. An object is
reported positive at the current window location in the final stage
of the classifier only when the detector classifies the image
region to be positive. To train the classifier, a sufficient set of
positive and negative samples of the target object must be supplied
to the classifier. The number of positive samples (PS) required to
train each stage is computed by:
PS=floor
1)
B) Connected Component AnalysisConnected Component algorithms
are applied tocolored, grayscale and binary images. Initially,
theentire image is scanned pixel by pixel; row and columnwise from
the left top to the right bottom corners In a binary image, any
pixel encountered during the scan and found to have a value of 1,
is considered as anobject pixel while 0 values indicate non-object
pixels. In a certain grayscale range of intensity values (i.e. [0,
50] and [60,80]), to indicate an object pixel; any pixel with
intensity within that range can be assigned as an output object. If
any of the neighbors is logic 1, it will also be burnt and assigned
same label as the pixel K, whereas if all the neighboring pixels
are logic 1s, they all get burnt and get the same labeling as pixel
K. The operation continues until all the pixels are processed and
the second scan is performed to sort out connected objects into
equivalent classes each with distinct label. The algorithm is often
referred as Recursive Grass-FireAlgorithm [9]. Each labeled
connected component object is treated as a unique Binary Large
Object (BLOB) and stored in a vector with its labeled values and
indices [10]. Considering a BLOB whose minimum and maximum X and Y
coordinate of its pixels are denoted by Xmin, Ymin, X max and Y
max,
respectively, if the total number of pixels within that BLOB is
N, which is also equivalent to the BLOBs area, Eqns. (2) and (3)
compute both the bounding box area (BB) and centroid (C) of the
BLOB.
BB = (x max x min)*(y max y min) (2)
C=
(3)
The extracted geometrical features of the BLOB arehoused in
object feature vectors which does not onlyprovide statistics about
the BLOB but also become asimple classifier to identify the type
and nature of theBLOB we are dealing with. For instance,
circularitymeasure of BLOB in Eqn. (4) can help in
distinguishingbetween circular and non-circular objects.
Circularity=
(4)
C) Modelling of the Mechanical PalletizerA four-bar linkage
mechanism is modeled as themechanical Palletizer with planned
trajectory to achieveits purpose. It is a movable chain with four
linkagesconnected in series by four joints. Each joint has
onedegree of freedom and could either be Revolute orPrismatic. In a
planar quadrilateral linkage, as adoptedin this design, one link is
fixed and is designated as thefixed link or frame (r1). The other
two links connectedto both ends of the frame are the input (r2) and
theoutput links (r4), respectively. The link connecting theinput
and the output is the coupler link (r3). For a proper understanding
of the mechanism operation and the desired trajectory on the
conveyors plane, the linkslengths have to be synthesized so that
the angularpositions, speed and acceleration of joints B and C
arededuced. Consider Fig 2. Below, where P is any pointthat defines
the trajectory of the coupler link and itsdistance from joint B is
given as rp.
Figure 1: Schematic Diagram of a Four-bar Mechanism
-
www.gjaet.com Page | 207
Global Journal of Advanced Engineering Technologies Volume 6,
Issue 3- 2017ISSN (Online): 2277-6370 & ISSN
(Print):2394-0921
III. PROPOSED SYSTEM & METHODOLOGYThe prototype of the
proposed system is as depicted
in Fig. 2. The system consists of a network of three conveyor
belts. Each of the products A, B and B with defects is routed into
a separate conveyor after being analyzed. The images of the product
moving on the conveyor are captured by the camera C. Proximity
sensor S1 acknowledges the presence of objects. If the object
passing is identified from the image processing algorithm to be
product B or B with defect, Pneumatic Cylinder PC1 will be actuated
to push the product into the vertical conveyor. The Orientation
Device (OD) is only actuated if A is found to have distorted
orientation in respect to the x-axis. For the products pushed onto
the vertical conveyor, proximity sensor S2, detects their presence
and if it is a product B with defect, PC2 is activated to push it
into the horizontal conveyor that houses defected products,
whereas, if it is normal B it continues its journey to another
terminal.
Figure 2: Proposed System Diagram.A) SIFT ALGORITHMSIFT (Scale
Invariant Feature Transform) algorithm proposed by Lower is one of
the local image featuring algorithms. Although the scale of the
objects changes and rotates, its feature does not change easily.
For any object there are many features, interesting points on the
object that can be extracted to provide a "feature" description of
the object. This description can then be used when attempting to
locate the object in an image containing many other objects. SIFT
image features provide a set of features of an object that are
not
affected by many of the complications experienced in other
methods, such as object scaling and rotation.
Figure 3: Control Flow Chart
B) Gaussian KernelThe Gaussian kernel is defined in 1-D as,
(a) Where determines the width of kernel and is often referred
to as the inner scale or in short scale. In statistical terms it is
referred to as the standard deviation while the 2 is referred to as
the variance.
Figure 4: Example for Gaussian curve
-
www.gjaet.com Page | 208
Global Journal of Advanced Engineering Technologies Volume 6,
Issue 3- 2017ISSN (Online): 2277-6370 & ISSN
(Print):2394-0921
The term 1/ in front of the equation (a) is the normalization
constant and it comes due the fact that the integral over the
exponential function is not unity.Taking this constant in the
equation makes it a normalized kernel with the integral unity for
every an example for Gaussian curve with = 6.44 in 3 dimensional.C)
Difference of Gaussian (DoG)DoG referred as the subtraction of one
blurred version of an original image from another, less blurred
version of the original. In the simple case of grayscale images,
the blurred images are obtained by convolving the original
grayscale images with Gaussian kernels having differing standard
deviations. Once the Gaussian pyramid is constructed the next step
is to compute the DoG pyramid.D) Extrema Detection
Figure 5: Detection of local Maxima and MinimaCandidate features
are detected from the DoG scale-space by finding the local extrema.
In order to detect the local maxima or minima from D(x, y, ) each
sample in the DoG image is compared to its eight neighbors in the
current image and nine corresponding neighbors at the adjacent
scales. A sample point is selected as a candidate key point if it
is either larger or smaller than all these neighbors. These extrema
are
computed for all the octaves in the similar manner. Symbol x
corresponds to a key point.
IV. IMAGE PROCESSING & RESULTSThe Simulink model is
evaluated with ODE45
Simulink solver and conforms to the architecture, HDLcodes were
automatically generated. Confirmed theworkability of the model with
a negligible error. Theresults were obtained by averaging the
simulations with 10 independent runs. The model was targeted for
lowcost Altera Cyclone III EP3C120F780 FPGA with dualon-board
oscillators for generating 50 MHz and 125MHz clock speed. Even at
lower clock frequency of 50MHz, the resources of the hardware
utilization would be very low with an extremely fast
execution.Subsequently, it was correctly detected and extracted.
Its exact location in the image was determined as its inclination
with x-axis was computed as 31.1o. The lastresult was obtained when
the image contains non-targetobject used. For all the scenarios
tested, the detectionrate was always high and robust to the scaling
androtation of the input image.RTL Schematic:
Figure 6: Schematic for proposed systemSimulation Result:
Figure 7: Result of Proposed System
-
www.gjaet.com Page | 209
Global Journal of Advanced Engineering Technologies Volume 6,
Issue 3- 2017ISSN (Online): 2277-6370 & ISSN
(Print):2394-0921
VI.CONCLUSIONIn this project, a system is proposed for
identification of the quality objects using SIFT algorithm for the
Palletization process is designed in MATLAB using Xilinx System
Generator. The feature point extractions of the images using SIFT
algorithm is performed for different objects and the Verilog code
is generated for the whole system. The generated Verilog code is
compiled in Xilinx and obtained the simulation results.
REFERENCES[1] C. Diederichs and S. Fatikow, FPGA-based Object
Detection and Motion Tracking in Micro and Nano Robotics,
International Journal of IntelligentMechatronics and Robotics.
March 27,2013, vol3, no.1,pp.27-37.[2] I. A. Qader and M. Maddix,
Real-Time Edge Detection Using TMS320C6711 DSP, IEEE Transactions
onImage Processing, May 2004, vol. 3, pp.306-309.[3] R.
Harinarayan, R. Pannerselvam and M. Mubarak Ali, Feature Extraction
of Digital Aerial Images byFPGA Based Implementation of edge
detectionalgorithms.IEEE International Conference on Emerging
Trends in Electrical andComputer Technology, ICETECT, Sept
2011,pp.131-135.[4] G. Orchard, J. G. Martin and R. J Vogelstein
FastNeuro-mimetic Object Recognition Using FPGAOutperforms GPU
Implementations, IEEE Transactions on Neural Networks and Learning
Systems, August 2013, vol. 24, no. 8, pp. 1239 .[5] H. Yu, J. Shan
and X. Zhu, Off line Programing and Remote Control for a
Palletizing Robot'', IEEEInternational Conference on Computer
Science and Automation Engineering, CSAE, 2011, vol.2,pp.58-589.[6]
P. Dzitac and A. M Mazid, An Efficient ControlConfiguration
Development for a High-speed RoboticPalletizing System, IEEE
Conference on Robotics,Automation and Mechatronics, 2008, pp. 140 -
145.[7] A. Sultana and M. Meenakshi, Design and Development of FPGA
based Adaptive Thresholder for Image Processing Applications, 2011
IEEE Relevant Advances in Intelligence 2011, pp. 633-637.[8] Z.
Wang, H. Xiao, W. He and F. Wen, Real-time SIFTbased Object
Recognition System,Proceedings of 2013 IEEE International
Conference on Mechatronics and Automation, August 4-7, 2013, vol 5,
pp.1361-1366.[9] S. Milan; H. Vaclav; and B. Roger.2008.
ImageProcessing, Analysis and Machine Vision. Thompson.
Toronto,USA.[10] B. Alexander, H. Herpers and B.K. Kenneth,
Hardware Acceleration of BLOB Detection for Image Processing, Third
Internatinal Conference on Advances in Circuits, Electronics And
Micro-electronics,2010,pp.28-33.[11] Z. Guo, W. Xu and Z. Chai,
Image Edge Detection Based on FPGA, IEEE Ninth International
Symposium on Distributed Computing and Applications to Business,
Engineering and Science, Feb. 10, 2010, vol. 5, pp. 169-171.
AUTHOR DETAILS
Mr. MOHAMMAD KHADIRis an Assistant Professor in Institute Of
AeronauticalEngineering.
J.Sai Sirisha is currently a PG scholar of VLSI System Design in
ECE Department. She received B.TECH degree from JNTU.