We write Java routines for processing the positive label tags and drawing bounding boxes on the training images:
 |
| LRO image with positive examples labeled. |
 |
| LRO image with some positive examples labeled. |
 |
| A15 image with positive examples labeled. |
To avoid Java's ImageIO.write(..) flattening rectangle colors, the images are all converted to maximum quality JPEG files using Photoshop batch processing. This problem is addressed in this
StackOverflow post.
The contest rules specify minimum and maximum crater sizes. The larger A15 images appear to have nearly all possible craters labeled, while the smaller LRO images in the training set do not. An explanation is that the training data is simply meant to provide positive instances. This suggests that image resolution is not a good predictor for the number of craters, and that clearly unlabeled craters should not be used as negative training examples.
The most apparent distinguishing features are circular shape and strong contrast gradient. The light source is primarily from the right, but there are no guarantees about the test data. To generalize the classifier, an idea is to train the classifier on rotated versions of the image.
From the problem statement:
ReplyDelete"Note that images in LRO directory are labeled for craters such that:
- max{width, height} > 25;
- min{width, height} <= 200.
Here width is the width of the crater's bounding rectangle (i.e., xr - xl + 1) and height is its height (yb - yt + 1). Craters that do not satisfy to these conditions are not included into the ground truth file for LRO directory. However, these restrictions are not in place for images in A15 directory."