I need to identify the type of fish caught from fish images. How can I locate anchor points/landmark points to extract features from the image?

Namely, I want to locate eye position, dorsal and pelvic fin. Need to get Fish mouth length, Dorsal and Caudal fin length.

Right now I am trying with SIFT method to get key points.

Can someone suggest me how can I get the specific key points?

Example images can be found in Fish Recognition Based on Robust Features Extraction from Size and Shape Measurements Using Neural Network, 2010, Journal of Computer Science (online version).

  • 1
    $\begingroup$ Can you please post a representative image? $\endgroup$
    – A_A
    Commented Nov 1, 2016 at 8:48
  • $\begingroup$ @Laurent Duval. Here is the link to the paper. researchgate.net/publication/… $\endgroup$ Commented Nov 3, 2016 at 11:42
  • $\begingroup$ What is the size of the training data you have? $\endgroup$ Commented Nov 6, 2016 at 17:27

1 Answer 1


How can I get the specific key points?

I'm not sure but I think you are talking about Feature matching using SIFT.

  1. Extract keypoints using SIFT from reference images of what you are trying to match.
  2. Extract keypoints using SIFT from the test images.
  3. Try to match the keypoints from reference images to test images using algorithms like RANSAC to get the position of the features(in your case eye,dorsal and pelvic fin).

You can find more information here.

  • $\begingroup$ Not able to apply RANSAC on SIFT in MATLAB. Am using the following SIFT Matlab code:in.mathworks.com/matlabcentral/fileexchange/… and RANSAC Matlab code: in.mathworks.com/matlabcentral/fileexchange/… . But not able to pass the arguments to the RANSAC code. $\endgroup$ Commented Nov 14, 2016 at 8:50
  • $\begingroup$ With SIFT + RANSAC am getting very less matching percentage. Percentage is in the ratio 36% - 42% only. Why is it so? $\endgroup$ Commented Nov 18, 2016 at 5:11
  • $\begingroup$ Separate the images in which it is failing and see whether anything is in common between them.. $\endgroup$ Commented Nov 18, 2016 at 15:03
  • $\begingroup$ It's not taking the correct matching key points. Tentative matches are only 20-30 range. $\endgroup$ Commented Nov 22, 2016 at 3:34

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.