Earlier this year Nick Bourdakos posted a series of tweets demoing drinks bottle detection and labelling using IBM's cloud annotation tool (built on top of Tensorflow)
https://mobile.twitter.com/bourdakos1/status/1090731521265356800
I'd be interested in views from experts on this forum as to how close we could get to these results in OpenCV without machine learning. Note this is purely for personal interest / curiosity, I don't have an actual use-case where I need to implement this.
I conducted a few initial experiments and found that I could identify and label bottles pretty easily based or the label or bottle colour. However, extending a bounding box around the whole bottle rather than just the coloured region proves tricky. I also considered using edge detection and identifying bottle or "not bottle" based on width / height ratio but due to the bottles being "held" it seems difficult to separate the hand to get a solid bottle edge.
If anyone has any further thoughts, I'd be eager to know more!
Thanks.