Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

ORB model conversion from python to java

Hello, I've been working on a python software to classify pictures. The purpose is, we have a book of 180 pages, and we want to know, for a query picture, what page it is. To this end, I extract descriptors from reference pictures using ORB. For a query picture, I extract the descriptors, force match it with my reference descriptors, and assume that the reference picture with the highest number of matches is the same page as our query.

This gets very decent results, and I wanted to make an android application out of it, using therefore a java version of OpenCV. To avoid computation of reference descriptors every time the application starts, I want to compute them on python, using my first software, save them, and load them in java. The reference ORB descriptors database in python is a numpy array of approximately 90,000 descriptors, of length 32, and dtype uint8. I would like to be able to get it in java as a Mat of 90,000 rows, 32 cols and of type CV_8UC1, the uint8 equivalent.

However, I can't find any smooth way to do it. Is there any cross-language format I could use for easy save & load?

Please let me know if I'm unclear, or if you need further informations.