4

Since I'm a beginner to SimpleCV, can somebody please guide me with the following application: The thing is that I'm working on a stereo project. I have two images, from left and right eyes.

  • First: I must display them side by side. (After using features and keypoints drawing it is able to show two images side by side but how can i do this manually?)

  • Second: I will track any mouse click event on any of these images. Then extract the point of click event and mark its location on the other image after a sift detection. (Since left and right views have an intersection, clicked pixel is most likely to be on the other with a little offset/shift). I may use sift features or any other similar method offered in SimpleCV. But by default features use SURF algorithm for detection. How can I switch to sift algorithm and use it? should I create a features object somewhere?

Thanks in advance.

dramaticlook
  • 653
  • 1
  • 12
  • 39

1 Answers1

4

To show two images side by side you can use

img1.sideBySide(img2)

For more information about it, start the SimpleCV shell,

$ simplecv
SimpleCV:1> help(Image.sideBySide)

This will show you the complete docs of sideBySide function.

KeyPoints:

You can use any of the following algorithms for keyPoints.

  • SURF
  • STAR
  • FAST
  • MSER
  • ORB
  • SIFT

img.findKeyPoints(flavour="SIFT")

Again for more info, just use help(Image.findKeyPoints) in SimpleCV shell.

Froyo
  • 17,947
  • 8
  • 45
  • 73
  • Thank you very much. That was useful. sideBySide is done. But how can I extract the custom keyPoint (where I clicked) on the other image using these algorithms? – dramaticlook Aug 13 '12 at 11:15
  • You can get the clicked points using pygame. What you can do is use findKeyPointMatch() which will return you a FeatureSet of Key Points. you can match those with the clicked ones. – Froyo Aug 13 '12 at 12:54
  • I had to use lowercase p with the American spelling of flavor: img.findKeypoints(flavor="SIFT") – Ben McCann May 09 '13 at 06:56