Обучение дескриптору OpenCVМатчер может занимать много времени, если набор обучающих изображений большой. Таким образом, кажется, что сохранение подготовленных данных дескриптораМатчера на диск для последующей перезагрузки было бы довольно очевидной задачей.Сохранение и загрузка FlannBasedMatcher
К сожалению, похоже, не существует очевидного решения этой проблемы.
Ближайший я пришел найти ответ this thread in the OpenCV discussion group. Тема началась в 2009 году, и люди все еще ищут ответ в 2011 году!
Этот фрагмент кода взят из этого потока выглядит, как он должен перезагрузить индекс из файла:
FileStorage fs("data.xml",FileStorage::READ);
Mat data;
fs["mtx"] >> data;
flann::Index idx(data,"index.bin");
Но я не мог понять, от этого, как реализовать полный сохранения/функциональности нагрузки.
На всякий случай это актуально, я использую OpenCV 2.3.1.
Примечание: как я понимаю, сами дескрипторы должны быть сериализованы/десериализованы отдельно. При загрузке _prior_ для вызова readIndex дескрипторы должны быть десериализованы и добавлены (т. Е. С помощью FlannBasedMatcher :: add). – sircolinton