Kannada handwritten and printed character separation

I want aa help to do my project for separating handwritten and printed character. can i achieve this by segmentation

Answers (2)

Yes you can. That's what segmentation is - identifying and separating separate distinct regions into a binary image that you can then label and measure, characterize, evaluate, or whatever.

13 Comments

please can you provide any best code for segmentation
please send me the code of similar project ... please send to k150horsapalya@gmail.com
Attached is one possibility. It may or may not work for your images. It's designed to get a good threshold for handwritten historical documents with noise and non-uniform background.
Thank you..., In our project we are taking a application form have least noise and bachground is white. I needed help to segment can suggest any code for line and word segment. Matlab is new to me so can you provide some explanation about the result i can get after the word segment (means which pixel iam getting what other information)
If your background is good, just apply a global threshold. See my Image Segmentation Tutorial: http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862&sort=downloads_desc for a full demo that will walk you through the process.
I tried the code and it is working but want to what and all the information we get on labeled image and where it stored
how this is cropped. can i get each entity height width and starting pixel. where exactly it stored.
Look where it's cropped out. That information will be there right where the cropping happens.
in that it labeles in vertically i want to do it in horizontally
If you want the labeling done in a particular order, you're going to have to get the centroids and sort them based on the centroids.
hello i am sorted based on the bounding box but i cant crop it
You can't sort like that because that BoundingBox is all the values of x, y, width, and height. You have to extract out each
bb = [blobMeasurements.BoundingBox];
% Get x
x = bb(1:4:end);
% Get y
y = bb(2:4:end);
% Get widths and heights
widths = bb(3:4:end);
heights = bb(4:4:end);
You might then want to pass the y into kmeans to find out which characters are in which line. Once you know that, then just march over with increasing x.
[classIndexes, clusterCenters] = kmeans(y, numberOfLines);
% Show what line the character is in
for k = 1 : length(classIndexes)
fprintf('Blob %d is in line #%d.\n', k, classIndexes(k));
end

Sign in to comment.

Categories

Asked:

on 15 Apr 2017

Commented:

on 21 Apr 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!