<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>SVM Based Offline Handwritten Gurmukhi Character Recognition</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Munish Kumar</string-name>
          <email>munishcse@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>M. K. Jindal</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>R. K. Sharma</string-name>
          <email>rksharma@thapar.edu</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Assistant Professor, Computer Science Department, GGS College for Women</institution>
          ,
          <addr-line>Chandigarh</addr-line>
          ,
          <country country="IN">INDIA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Associate Professor, Department of Computer Science and Applications, Panjab University Regional Centre</institution>
          ,
          <addr-line>Muktsar</addr-line>
          ,
          <country country="IN">INDIA</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Professor, School of Mathematics &amp; Computer Applications, Thapa r University</institution>
          ,
          <addr-line>Patiala</addr-line>
          ,
          <country country="IN">INDIA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Support Vector Machines (SVMs) have successfully been used in recognizing printed characters. In the present work, we have used this classification technique to recognize handwritten characters. Recognition of handwritten characters is a difficult task owing to various writing styles of individuals. A scheme for offline handwritten Gurmukhi character recognition based on SVMs is presented in this paper. The system first prepares a skeleton of the character, so that feature information about the character is extracted. Features of a character have been computed based on statistical measures of distribution of points on the bitmap image of character. SVM based approach has been used to classify a character based on the extracted features. In this work, we have taken the samples of offline handwritten Gurmukhi characters from one hundred different writers. The partition strategy for selecting the training and testing patterns has also been experimented in this work. We have used in all 3500 images of Gurmukhi characters for the purpose of training and testing. We have used diagonal and; intersection and open end points feature extraction techniques in order to find the feature sets for a given character. The proposed system achieves a maximum recognition accuracy of 94.29% with 90% training data and 10% testing data using intersection and open end points as features and SVM with polynomial kernel.</p>
      </abstract>
      <kwd-group>
        <kwd>Handwritten character recognition</kwd>
        <kwd>Feature extraction</kwd>
        <kwd>Diagonal features</kwd>
        <kwd>Intersection and open end points features</kwd>
        <kwd>SVM</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Most of the published work on Indian scripts recognition deals with printed
documents and very few articles deal with handwritten script problem. This has
motivated us to consider the handwritten script recognition for Gurmukhi script.
Handwritten Character Recognition, usually abbreviated as HCR, is the process of
converting handwritten text into machine processable format. HCR is the field of
research in pattern recognition and artificial intelligence. HCR can be online or
offline. In online handwriting recognition, data are captured during the writing
process with the help of a special pen and an electronic surface. Offline documents
are scanned images of prewritten text, generally on a sheet of paper. Offline
handwriting recognition is significantly different from online handwriting recognition,
because here, stroke information is not available [1, 2]. In this work, we have
proposed a recognition system for offline handwritten Gurmukhi characters. A
recognition system consists of the activities, namely, digitization, preprocessing,
features extraction and classification. These activities in such a system have a close
proximity with printed characters recognition system. A good number of researchers
have already worked on the recognition problem of offline printed characters. For
example, a printed Gurmukhi script recognition system has been proposed by Lehal
and Singh [3]. Wen et al. [
        <xref ref-type="bibr" rid="ref1">4</xref>
        ] have proposed handwritten Bangla numerals recognition
system for automatic letter sorting machine. Swethalakshmi et al. [
        <xref ref-type="bibr" rid="ref2">5</xref>
        ] have proposed
handwritten Devanagri and Telugu character recognition system using SVM. The
input to their recognition system consists of features of the stroke information in each
character and SVM based stroke information module has been considered for
generalization capability. Pal et al. [
        <xref ref-type="bibr" rid="ref3 ref4">6, 7</xref>
        ] have presented a technique for off-line
Bangla handwritten compound characters recognition. They have used modified
quadratic discriminant function for feature extraction. Pal et al. [
        <xref ref-type="bibr" rid="ref5">8</xref>
        ] have also used
curvature feature for recognizing Oriya characters. Hanmandlu et al. [
        <xref ref-type="bibr" rid="ref6">9</xref>
        ] have reported
grid based features for handwritten Hindi numerals. They have divided the input
image into 24 zones. After that, they have computed the vector distance for each pixel
position in the grid from the bottom left corner and normalized these distances to [0,
1] in order to obtain the features.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Gurmukhi script and data collection</title>
      <p>Gurmukhi script is the script used for writing Punjabi language and is derived from
the old Punjabi term “Guramukhi”, which means “from the mouth of the Guru”.
Gurmukhi script has three vowel bearers, thirty two consonants, six additional
consonants, nine vowel modifiers, three auxiliary signs and three half characters.
Gurmukhi script is 12th most widely used script in the world. Writing style of
Gurmukhi script is from top to bottom and left to right. In Gurmukhi script, there is
no case sensitivity. The character set of Gurmukhi script is given in Figure 1. In
Gurmukhi script, most of the characters have a horizontal line at the upper part called</p>
      <p>The Consonants
headline and characters are connected with each other through this line.
਷ ਸ ਕ ਖ ਗ ਘ ਙ ਚ ਛ ਜ ਝ ਞ ਟ ਠ ਡ ਢ ਣ ਤ ਥ ਦ ਧ ਨ ਩ ਪ ਫ ਬ ਭ ਮ ਯ ਰ
The Vowel Bearers</p>
      <p>ਵ ੇ
ੳ ਅ ੲ
The Additional Consonants (Multi Component Characters)</p>
      <p>The Vowel Modifiers
ਸ਼ ੆ ੄ ੈ
੅</p>
      <p>਼ਹਰ</p>
      <p>Auxiliary Signs
਼ਿ
਼ੀ ਻਼
਼਼਼਺
਼਽ ਼਼ੁਾ</p>
      <p>਼ੂ
The Half Characters
਼ ਼
਼੃ਯ
਼੃ਵ਼੃ਸ</p>
      <p>਼</p>
      <p>For this work, a sample of 100 writers was selected from schools, colleges,
government offices and other places. These writers were requested to write each
Gurmukhi character. A sample of five handwritten Gurmukhi characters by five
different writers (W1, W2, …, W5) is given in Figure 2.</p>
    </sec>
    <sec id="sec-3">
      <title>3. The proposed recognition system</title>
      <p>The proposed recognition system consists of the phases, namely, digitization,
preprocessing, feature extraction and classification. The block diagram of proposed
recognition system is given in Figure 3.</p>
      <p>Handwritten Character</p>
      <p>Digitization</p>
      <p>Preprocessing
Feature Extraction</p>
      <p>Classification</p>
      <p>Recognized Character</p>
      <sec id="sec-3-1">
        <title>3.1 Digitization</title>
        <p>Digitization is the process of converting the paper based handwritten document
into electronic form. The electronic conversion is accomplished using a process
whereby a document is scanned and an electronic representation of the original
document, in the form of a bitmap image, is produced. Digitization produces the
digital image, which is fed to the pre-processing phase.</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2 Preprocessing</title>
        <p>Preprocessing is a series of operations performed on the digital image.
Preprocessing is the initial stage of character recognition. In this phase, the
character image is normalized into a window of size 100×100. After normalization,
we produce bitmap image of normalized image. Now, the bitmap image is
transformed into a contour image.</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3 Feature extraction</title>
        <p>The feature extraction stage analyzes a handwritten character image and selects a
set of features that can be used for uniquely classifying the character. In this phase,
the features of input characters are extracted. The performance of recognition
system greatly depends on features that are being extracted. The extracted features
should be able to classify each character uniquely. We have used diagonal and
intersection and open end points features for recognition of offline handwritten
Gurmukhi characters.</p>
      </sec>
      <sec id="sec-3-4">
        <title>3.3.1 Diagonal feature extraction</title>
        <p>Diagonal features are playing an important role in order to achieve higher
accuracy of the recognition system. Here, the skeletonized image of a character is
divided into n (=100) zones. Now, diagonal features are extracted from the pixels
of each zone by moving along its diagonals as shown in Figure 4. The steps that
have been used to extract these features are given below.</p>
        <p>Step I: Divide the skeletonized image into n (=100) number of zones, each of size
10×10 pixels.</p>
        <p>Step II: Each zone has 19 diagonals; foreground pixels present along each
diagonal is summed up in order to get a single sub-feature.</p>
        <p>Step III: These 19 sub-feature values are averaged to form a single value and
placed in corresponding zone as its feature.</p>
        <p>Step IV: Corresponding to the zones whose diagonals do not have a foreground
pixel, the feature value is taken as zero.</p>
        <sec id="sec-3-4-1">
          <title>These steps will give a feature set with n elements.</title>
        </sec>
      </sec>
      <sec id="sec-3-5">
        <title>3.3.2 Intersection and open end points feature extraction</title>
        <p>We have also extracted intersection and open end points for a character. An
intersection point is the pixel that has more than one pixel in its neighborhood and
an open end point is the pixel that has only one pixel in its neighborhood.
Following steps have been implemented for extracting these features.
Step I: Divide the skeletonized image of a character into n (=100) zones, each
of size 10×10 pixels (Figure 5).</p>
        <p>Step II: Calculate number of intersection and open end points for each zone.</p>
        <sec id="sec-3-5-1">
          <title>Open</title>
          <p>end points</p>
        </sec>
        <sec id="sec-3-5-2">
          <title>Intersection</title>
        </sec>
        <sec id="sec-3-5-3">
          <title>This will give us 2n features for a character image.</title>
        </sec>
      </sec>
      <sec id="sec-3-6">
        <title>3.4 Classification</title>
        <p>Classification phase is the decision making phase of an HCR engine. This phase uses
the features extracted in the previous stage for deciding the class membership. In this
work, we have used Support Vector Machine (SVM) classifier for recognition. The
SVM is a very useful technique for data classification. The SVM is a learning
machine, which has been widely applied in pattern recognition. SVMs are based on
statistical learning theory that uses supervised learning. In supervised learning, a
machine is trained instead of programmed to perform a given task on a number of
inputs/outputs pairs.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Experimental results and discussion</title>
      <p>In this section, the results of recognition system for offline handwritten Gurmukhi
characters are presented. The results are based on two feature extraction techniques,
namely, diagonal and; intersection and open end point features. As stated earlier, we
have also experimented some partitioning strategies while using the SVM as a
classifier. We have divided the data set using five partitioning strategies. In the first
strategy (strategy a), we have taken 50% data in training set and other 50% data in the
testing set. In the second strategy (strategy b), we have considered 60% data in
training set and remaining 40% data in the testing set. Strategy c has 70% data in
training set and 30% data in testing set. Similarly, strategy d has 80% data in training
set and 20% in testing set. Strategy e is formulated by taking 90% data in training set
and remaining 10% data in testing set. SVM classifier has also been considered with
three different kernels, namely, linear kernel, polynomial kernel and RBF kernel.
Feature-wise experimental results of testing are presented in the following
subsections.</p>
      <sec id="sec-4-1">
        <title>4.1 Diagonal features</title>
        <p>In this section, the diagonal features have been considered to be taken as input to
three types of SVM classifier, namely, SVM with linear kernel, SVM with
polynomial kernel and SVM with RBF kernel.</p>
        <sec id="sec-4-1-1">
          <title>4.1.1 Recognition accuracy using SVM with linear kernel</title>
          <p>In this sub-section, we have presented recognition results of five partitioning
strategies (a, b, c, d and e) based on the diagonal features using SVM with linear
kernel. Using this approach, i.e., diagonal features and SVM with linear kernel, we
achieved an accuracy of 81.83% when we use strategy a and achieved an accuracy of
90.29% when we used the strategy e. These results are depicted in Figure 6.
4.1.2 Recognition accuracy using SVM with polynomial kernel
When we use SVM with polynomial kernel, the results are not that encouraging. In
partitioning strategy a, the accuracy that could be achieved was minimum at 43.6%
and in strategy e, the accuracy achieved was maximum at 60.29%. These results are
given in Figure 7.
4.1.3 Recognition accuracy using SVM with RBF kernel
In this sub-section, recognition results using five partitioning strategies and based on
the diagonal features using SVM with RBF kernel are presented. Here, partitioning
strategy a gives the minimum accuracy (71.14%) and partitioning strategy e gives the
maximum accuracy (84.29%). These results are given in Figure 8.</p>
        </sec>
      </sec>
      <sec id="sec-4-2">
        <title>4.2 Intersection and open end points features</title>
        <p>In this subsection, the intersection and open end points features have been considered
for inputting the classifier. Again three types of SVM as taken in 4.1 have been
considered with these features.</p>
        <sec id="sec-4-2-1">
          <title>4.2.1 Recognition accuracy using SVM with linear kernel</title>
          <p>For the features under consideration and the SVM classifier with linear kernel, the
minimum accuracy achieved is 81.26% in partitioning strategy a and the maximum
accuracy achieved is 91.43% in partitioning strategy e. The results for this case are
depicted in Figure 9.
4.2.2 Recognition accuracy using SVM with polynomial kernel
In this sub-section, recognition results of five strategies and the SVM with polynomial
kernel are presented. Again, the minimum accuracy is achieved when we use strategy
a and the accuracy achieved is 82.69%. Maximum accuracy is again achieved when
we use strategy e and the maximum accuracy achieved is 94.29%. These results are
depicted in Figure 10.</p>
        </sec>
        <sec id="sec-4-2-2">
          <title>4.2.3 Recognition accuracy using SVM with RBF kernel</title>
          <p>In this sub-section, recognition results of five partitioning strategies using SVM with
RBF kernel are presented. Minimum accuracy achieved is 6% while using strategy d
and maximum accuracy achieved is 22.23% while using strategy a. These results are
depicted in Figure 11.</p>
        </sec>
      </sec>
      <sec id="sec-4-3">
        <title>4.3 Diagonal and intersection &amp; open end points features</title>
        <p>In this subsection, the diagonal and; intersection and open end points features
simultaneously have been considered for inputting the classifier. Here, also again
three types of SVM as taken in 4.1 have been considered with these features.</p>
        <sec id="sec-4-3-1">
          <title>4.3.1 Recognition accuracy using SVM with linear kernel</title>
          <p>In this sub-section, we have presented recognition results of five partitioning
strategies based on the two features taken from 4.1 and 4.2 simultaneously using
SVM with linear kernel. Using this approach, i.e., SVM with linear kernel, we
achieved an accuracy of 81.26% when we use strategy a and achieved an accuracy of
91.43% when we used the strategy e. These results are depicted in Figure 12.
4.3.2 Recognition accuracy using SVM with polynomial kernel
In this sub-section, recognition results of five partitioning strategies and the SVM
with polynomial kernel are presented. In partitioning strategy a, the accuracy that
could be achieved was minimum at 82.69% and in strategy e, the accuracy achieved
was maximum at 94.29%. These results are given in Figure 13.</p>
        </sec>
        <sec id="sec-4-3-2">
          <title>4.3.3 Recognition accuracy using SVM with RBF kernel</title>
          <p>In this sub-section, recognition results of five partitioning strategies using SVM with
RBF kernel are presented. Minimum accuracy achieved is 3.29% while using strategy
d and maximum accuracy achieved is 19.37% while using strategy a. The results are
depicted in Figure 14.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusion</title>
      <p>The work presented in this paper proposes an offline handwritten Gurmukhi character
recognition system. The features of a character that have been considered in this work
include diagonal features and; intersection and open end points features. The classifier
that has been employed in this work is SVM with three flavors, i.e., SVM with linear
kernel, SVM with polynomial kernel and SVM with RBF kernel. The features have
been inputted to the classifiers individually and have also been inputted
simultaneously. The maximum recognition accuracy of 94.29% is achieved in this
work for the case when we input the two features simultaneously to the SVM
classifier with polynomial kernel. This accuracy can probably be increased by
considering a larger data set while training the classifier. This work can also be
extended for offline handwritten character recognition of other Indian scripts.
6. References
[1] Lorigo, L. M., and Govindaraju, V.: Offline Arabic handwriting recognition: a
survey. IEEE Transactions on PAMI, 28, 5 (2006) 712-724
[2] Plamondon, R. and Srihari, S. N.: On-line and off- line handwritten character
recognition: A comprehensive survey, IEEE Transactions on PAMI, 22, 1 (2000),
63-84
[3] Lehal, G. S. and Singh, C.: A Gurmukhi script recognition system, In Proceedings
of 15th ICPR, 2 (2000), 557-560</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Wen</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lu</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Shi</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Handwritten Bangla numeral recognition system and its application to postal automation</article-title>
          ,
          <source>Pattern Recognition</source>
          ,
          <volume>40</volume>
          (
          <year>2007</year>
          ),
          <fpage>99</fpage>
          -
          <lpage>107</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Swethalakshmi</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jayaraman</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chakravarthy</surname>
            ,
            <given-names>V. S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Sekhar</surname>
            ,
            <given-names>C. C.</given-names>
          </string-name>
          :
          <article-title>Online handwritten character recognition of Devanagari and Telugu characters using support vector machine</article-title>
          ,
          <source>In Proceedings of 10th IWFHR</source>
          , (
          <year>2006</year>
          ),
          <fpage>367</fpage>
          -
          <lpage>372</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Pal</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wakabayashi</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Kimura</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A system for off-line Oriya handwritten character recognition using curvature feature</article-title>
          ,
          <source>In Proceedings of 10th ICIT</source>
          , (
          <year>2007</year>
          ),
          <fpage>227</fpage>
          -
          <lpage>229</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [7]
          <string-name>
            <surname>Hanmandlu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grover</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Madasu</surname>
            ,
            <given-names>V. K.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Vasikarla</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Input fuzzy for the recognition of handwritten Hindi numeral</article-title>
          ,
          <source>In Proceedings of ITNG</source>
          , (
          <year>2007</year>
          ),
          <fpage>208</fpage>
          -
          <lpage>213</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Rajashekararadhya</surname>
            ,
            <given-names>S. V.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Ranjan</surname>
            ,
            <given-names>S. V.</given-names>
          </string-name>
          :
          <article-title>Zone based Feature Extraction algorithm for Handwritten Numeral Recognition of Kannada Script</article-title>
          ,
          <source>In Proceedings of IACC</source>
          , (
          <year>2009</year>
          ),
          <fpage>525</fpage>
          -
          <lpage>528</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Tripathy</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          :
          <article-title>Reconstruction of Oriya alphabets using Zernike Moments</article-title>
          ,
          <source>International Journal of Computer Applications</source>
          ,
          <volume>8</volume>
          ,
          <issue>8</issue>
          (
          <year>2010</year>
          ),
          <fpage>26</fpage>
          -
          <lpage>32</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Jindal</surname>
            ,
            <given-names>M. K.</given-names>
          </string-name>
          :
          <article-title>Degraded Text Recognition of Gurmukhi Script”</article-title>
          ,
          <source>PhD Thesis</source>
          , Thapar University, Patiala, India,
          <year>2008</year>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>