2
$\begingroup$

I have 1,000 photoshoot-quality images of pianos on white background with very little noise (people in the background, etc). How would I go about finding the piano image that looks most like the others? Alternatively, how would I find five pianos that look most like the "average" piano. I'm particularly looking for python libraries that may be helpful (I'm currently looking at skimage).

$\endgroup$
3
$\begingroup$

Find a low-dimensional emdedding of the images using a nonlinear dimensionality reduction method like autoencoding, then select the image closest to the centroid in the embedding space.

$\endgroup$
  • $\begingroup$ For high-level objects like pianos how deep a network and how many days of training will be needed? Maybe quicker to use the top layer of already trained network such as GoogleNet? $\endgroup$ – Valentas Oct 22 '15 at 12:29
  • $\begingroup$ Do you have a link to an example / code for reducing dimensionality of images? $\endgroup$ – user2726995 Oct 22 '15 at 13:01
  • $\begingroup$ It depends on your hardware, of course, Valentas. And sure, there's no harm in starting with a pretrained network. @user2726995: deeplearning.net/tutorial/dA.html $\endgroup$ – Emre Oct 22 '15 at 15:03
2
$\begingroup$

You could use the OpenCV library, specifically, the Haar-Cascade technique . The OpenCV is a computer vision library that have a python interface. You could take a look in this tutorial to start.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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