We have used a derivative of the P-hash algorithm to determine similar images when the user selects an image.

This allows the customer to check out very similar looking photos together. It has also helped us cluster pictures.

When the user selects an image, we would like to show him/her how each of the similar images is different from the selected image, by highlighting the difference, and by classifying the difference.

(eg: this is the hard cover version of the book; The font is different on this cover; original dress in black: same dress in blue, green and yellow )

I'm unsure what kind of annotated training data would be useful for Tensorflow. Could someone please point us in the right direction?

My problem is that we have successfully been able to classify single pictures and even do a bit of object detection by drawing bounded boxes, but we are unable to do pairwise difference identification.


In order for you to do pairwise difference, you need to do the following:

  1. Generate Ground truth data by drawing bounding boxes on elements you need comparison for and label them i.e if you want to compare text on the hard cover, you need to mark the text region and add a label to it like font type.
  2. Once you have ground truth data, you can then use object detection networks like different variants of Yolo to identify multi class objects in each document.

This should provide you a starting point to solving the problem at hand.

|improve this answer|||||
  • $\begingroup$ Thank you for replying. What you're saying is, that in the end I will start comparing labels generated by the ML model. Once I can see the differences in the labels, I can classify the differences. This sounds perfect! One question, I can see Yolo, and Yolo 9000 on github, what would you recommend as of Feb '18? $\endgroup$ – CP3O Feb 13 '18 at 18:36
  • $\begingroup$ There are other object detection, I would recommend TinyYolo. I would also definitely suggest you to evaluate various architecture based on your evaluation. And I think it would be appropriate to mark this answered, if your question has been answered. $\endgroup$ – Nischal Hp Feb 13 '18 at 20:50
  • $\begingroup$ HI Nishchal I was wondering if you knew of any good out of the box tensorflow based algorithms like tensorbox: github.com/Russell91/TensorBox Yolo will actually cause to have far too many dependencies. $\endgroup$ – CP3O Feb 14 '18 at 7:49
  • $\begingroup$ Hello cp30, I am not aware of tensorbox but there are lots of open source repositories with tensorflow code for Yolo architecture $\endgroup$ – Nischal Hp Feb 15 '18 at 7:31

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.