0
$\begingroup$

I want to do boat detection in almost real time around 2-3 frames/sec and my computation power is not very high. I want to keep the computations as low as possible. Which is the best method to do it? Here are some examples of images where I want to detect the boat.

$\endgroup$

2 Answers 2

3
$\begingroup$

You can use Caffe's deep convulutional net that was trained on the ImageNet DB to extract some very strong features:

http://caffe.berkeleyvision.org/

The Caffe framework is implemented in C++ and runs very fast. It enables you to extract features that are much more powerful than LBP or HOG for example.

Extract features from a training set and use them to train a classifier, for example and SVM. Then, in the detection phase - given an input image, extract features from it, using the pre-trained net and feed those features to the pre-trained classidfier.

$\endgroup$
1
$\begingroup$

As for the simplest algorithm, you can try detecting Water in each image, and any occlusion in that area of Water, will be considered as a boat. You can try grabcut, with water as background, and ship/boat as foreground object.

$\endgroup$
3
  • $\begingroup$ GrabCut is interactive. I don't want any user intervention. $\endgroup$ Commented Jun 12, 2014 at 6:50
  • $\begingroup$ Well, the main thing is to tell the algorithm about the sea/water region and Boat/Non water region. Whether you tell it by UI, or some RGB Approximate values. i.e., you can run some initial thresholding to roughly segment out the water region, then find its centroid or some point that is surely in water region, then invert it to get some other point in Boat region. Then you can use RegionGrowing. I also looked upon some other implementations that might need you to first segment out the Non-water,Non-boat part, i.e. City region visible above the horizon, etc. Then, run Chan-Vese Segmentation. $\endgroup$
    – shreelock
    Commented Jun 12, 2014 at 7:25
  • $\begingroup$ Here's the link to its implementation on IPOL, with a demo image as you are required. $\endgroup$
    – shreelock
    Commented Jun 12, 2014 at 7:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.