Problem in image classification

Hi,Im new to the area of image processing. I want to classify an image into different categories(into different classes).How it should be done ?

Answers (1)

Walter Roberson
Walter Roberson on 11 Apr 2011
That topic has kept entire teams of PhD's busy for decades and is likely to take more decades yet.
If you are willing to restrict the varieties of images and what you want to classify them as, then people might be able to offer some more-specific suggestions.

6 Comments

I want to divide the image into 4 or 5 portions according to the intensity value of image.
What properties do the portions need to have? e.g., rectangular? ellipse? Have to touch each other? Must together occupy the entire image? Convex? Must not have any "holes" ??
There is no certain shape. It should have properties regarding to different components in the image.And I think the portions should touch each other.
Thank you.
What classes are the images to be classified into and how many are there? Just to get some idea of the scope of your problem. This will determine the image properties you will need to extract.
I want to classify an image into different classes . And these classes should have the properties according to image intensities. We know that components of images are in different intensities. So these classes should indicate each components of image. For an example if an image has 2 components with bright area and dark area, then we should classify the image into to categories.
Thank you..
You just need to find the _number_ of components? Or you need to identify which components are present, and the selection of components for any one image will be used to decide which class it falls in to? Or do you need to find the boundaries within each image of components with known properties? Or do you need the program to automatically figure out the "best" number of components _and_ the location of those components??
If you knew the number of components ahead of time, N, then
[X,map] = rgb2ind( repmat(rgb2gray(IMAGE),[1,1,3]), N );
This would quantize the intensities of the pixels to the "best" (least squared error) N intensities. The result would, however, have no pretense of having the N different values connected together, but perhaps it is enough to give you a good start. For example, you could bw1 = bwlabel(X==1); rp1 = regionprops(bw1); and then go through and remove "small" regions from consideration -- though imerode() might be better for that particular purpose.

Sign in to comment.

Asked:

on 11 Apr 2011

Community Treasure Hunt

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

Start Hunting!