

Algorithm improvement for Coca-Cola can shape recognition - sun123
http://stackoverflow.com/questions/10168686/algorithm-improvement-for-coca-cola-can-shape-recognition#

======
unwind
A gorgeous question, but also somewhat controversial.

Corresponding meta discussion, mentioned in the question:
[http://meta.stackoverflow.com/questions/129423/on-the-
bounda...](http://meta.stackoverflow.com/questions/129423/on-the-boundaries-
of-not-constructive-questions/130055#130055). I merely wonder why it's tagged
'java'.

------
tocomment
This computer vision stuff is so fascinating. Does anyone know what the career
prospects are like if you specialize in this? Is there much consulting demand?
What kind of fees do CV consultants charge?

~~~
strebler
The original post really highlights the "problem with computer vision" -
finding the coke can is fairly easy (SIFT), although the author goes off on
some other random approach that I doubt would work very well. The field
certainly has its share of Do-It-Yourselfers, plus it's also quite common to
outsource labour overseas.

As for fees, it's entirely reflective of a) how much money the problem is
costing the client and b) your ability to prove to them your value to the
client. Clients do not always respect the complexity of the problems they're
facing, so it's easier to work with those who have tried for themselves.

For what it's worth, we're hiring right now in this space (computer vision
software development), located in Ottawa, Canada:
<http://ca.indeed.com/job/software-engineer-71a851096a104223>

~~~
buq2
I don't see any problem with the original solution. It is classic (but little
bit old fashioned) way of detecting objects, far from random. I also think
that you oversimplify the SIFT solution. You use sift, then what? Match the
feature vectors, get bunch of possible correspondence points, prune outliers
using 3D model of a cylinder (or assume that the face of the can is flat plane
and just use homography) and robust fitting, validate fitting, find other
cans, if none found change parameters? No preprocessing? Ignore color? Etc.
Not so straight forward.

SIFT is faster than generalized HoughTF in this case, use of points instead of
whole objects/blobs gives you nice ways to validate using 3D model, etc., but
I would still not look down on some one who finds and implements this
solutions as a student.

~~~
strebler
You're right, it's ok for a project. I guess what I meant was it's quite easy
compared to the problems my company deals with every day. 30 images in 24
hours (I think it said) is kind of a problem.

Given the constraints of the asker (all available in OpenCV), the solution I
would suggest first is SIFT + homography, both easy to use and in OpenCV
(sample code is around). Yes, there's a lot of other possibilities, but this
would be an improvement over the original.

------
iroy
Okay, someone needs to create an open repo of all these recognition algos
before Apple or Google patents everything.

~~~
kabell
NOTE: SURF and SIFT are both already patented, btw, along with some other
things in OpenCV, so watch out with them.

