Wednesday, February 17, 2010

Happy CNY to all the guests who are reading my blog.

Long time not updating my blog. Quite busy these time. At least I got some achievements last year. All my subjects got the highest marks. and I am quite proud of one of my projects finished last year.
It's an automatic scene categorizer which can automatically returns the scene type for the input images. The image dateset used in from the MIT indoor scene dataset: http://web.mit.edu/torralba/www/indoor.html. It contains 15620 indoor scene images and was divided into 5 main categories: shop, home, leisure, public spaces and working places. Those five categories were subdivided into 67 categories, for example for shop: bakery, grocery store, clothing store, deli, laundromat, jewllery shop, bookstore, video store, florist, shoe shop, mall and toystore.
I used matlab to generate the code. Local color moment was used to extract the infomation of the input image. A supporting vector machine is used to generate the model. I trained five models and for each input image I tested with all models and voted for majority. The result is not bad. For the best performer Casino, I achieved 73.6% accuarcy.
Steps for training part:
  1. Step 1: Image filtering and size normalization(for all training images) :
    • 60% of the whole image set were used to setup the training model;
    • Some of the images are grayscale and thus filtered;
    • All the filtered training images are normalized therefore either height or width is less than 300 pixel.
  2. Step 2: Local color moment feature extraction:
    • each traing image was segemented into 4x4 blocks.
    • for each block and each component (H, S, V), Local color moment feature was extracted in HSV color space. Average moment, variance and skewness were calculated.
    • concatenate 9 features in each block for 16 blocks to form feature vector, therefore 144 features for each image vector.
  3. Step 3: General class classification (5 classes):
    • Five main classes (store, home, leisure, public spaces and working place) were used for first level classification.
    • SVM was used to generate the main class model.
  4. Step 4: Sub‐class classification (5 independent groups):
    • For images belong to each main class, a sub class classification was done to further classify sub-class within each main class.
    • SVM was used to generate the sub-class models for each main class.

Steps for testing part:

  1. Step 1: Image filtering and size normalization(for all testing images):
    • The rest of 40% of the whole image set were used for testing.
    • Some of the images are grayscale and thus filtered.
    • All the filtered training images are normalized therefore either height or width is less than 300 pixel.
  2. Step 2: Local color moment feature extraction:
    • Each testing image was segmented into 4x4 blocks.
    • For each block and each component (H, S, V), Local color moment feature was extracted in HSV color space. Average moment, variance and skewness were calculated.
    • Concatenate 9 features in each block for 16 blocks to form feature vector, therefore 144 features for each image vector.
  3. Step 3: Decision level 0 (5 general classes):
    • First level decision for the five main classes.
    • SVM was used to test by using the training main_category_model ;
  4. Step 4: Decision level 1/2/3/4/5 (under the corresponding general class, do the sub‐class classification):
    • For images belong to each main class, a sub class classification test was done to further classify sub-class within each main class.
    • SVM was used to test by using sub-class models.



No comments:

Post a Comment