MATLAB Answers


How to do cursive character segmentation?

Asked by Spondon
on 3 Apr 2014
Latest activity Commented on by Mehak Naz Mangoli on 15 Feb 2016

I am doing a project on Cursive character recognition, I wanted to know of steps to perform cursive character segmentation.

I will be obliged if someone can help in elucidating the steps of writing the code

I have tried vertical profiling but the threshold has to change according to every image, Is there any other method, or if Vertical profiling is to be pursued, how can I proceed?

Thank you


I have same question as above. Please answer

Mehak Naz Mangoli, there are hundreds of postings on this topic. See

Sir please help me with complete code for character recognition in cursive handwritten text.

Log in to comment.

2 Answers

Answer by Image Analyst
on 3 Apr 2014

I don't know what you're starting with. Do you have a nice binary image already? Or are you not even to that step? I have some code to segment out characters on a varying background if you have that and can't get a good binary image yet.


My apologies sir for not being specific, hereby i am attaching the code used so far, it has been based on your previous thread on character segmentation

grid on;
hold on;
grid on;
darkpixels=verticalproj<4; % thsi value has been arrived at by trial
[lableledregions noofregions]= bwlabel(darkpixels);
fprintf('number of regions =%d\n',noofregions);
% 0 where there is background, 1 where there are letters
letterLocations = verticalproj > 0;
% Find Rising and falling edges
d = diff(letterLocations);
startingColumns = find(d>0);
endingColumns = find(d<0);
% Extract each region
for k = 1 : length(startingColumns)
  % Get sub image of just one character...
  subImage = x(:, startingColumns(k):endingColumns(k));

I am getting different subimages based on this but it is not separate characters as expected,

l would like to know how to proceed after this for proper chaarcetr segmentation

It should would be a heck of a lot easier if I had thirteen.bmp.

There are 3 connected components in your image. If you want to get 8, one for each letter, then you'll need to look at the algorithms published and listed here:,%20Document%20Analysis%20and%20Character%20Recognition%20Systems Handwriting, Cursive Script Recognition Systems Cursive Script, Word Level Recognition, Word Spotting, Language Model Cursive Script, Text Line Segmentation, Script Line, Segmentation, Text Line Extraction On-Line Cursive Script Recognition Systems On-Line Signatures, Online Signatures Off Line Signature Analysis 

I do not do handwriting OCR nor have any code for you. I have not read any of the papers on it either. My research has never required that I learn how to do cursive OCR, unlike you. Good luck.

Log in to comment.

Answer by Spondon
on 4 Apr 2014


Hey....even i am working on the similar project..please help me with the code..

Hi! Spondon i am working the similar project, did u find the solution? i mean are you now able to segment the connected characters if yes then please share the code or algorithm with me, thanks in advance

Log in to comment.

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today