Đào tạo Trình mô tả OpenCV có thể tốn thời gian hoạt động nếu tập hợp hình ảnh đào tạo lớn. Vì vậy, có vẻ như tiết kiệm dữ liệu DescriptorMatcher được đào tạo vào đĩa để tải lại sau này sẽ là một điều khá rõ ràng để muốn làm.Lưu và tải FlannBasedMatcher
Rất tiếc, dường như không có giải pháp rõ ràng nào cho nhu cầu này.
Gần nhất tôi tìm thấy câu trả lời là this thread in the OpenCV discussion group. Chủ đề bắt đầu vào năm 2009 và mọi người vẫn đang tìm kiếm câu trả lời vào năm 2011!
Đoạn mã này được lấy từ chủ đề đó có vẻ như nó nên tải lại một chỉ số từ một tập tin:
FileStorage fs("data.xml",FileStorage::READ);
Mat data;
fs["mtx"] >> data;
flann::Index idx(data,"index.bin");
Nhưng tôi đã không thể tìm ra từ này như thế nào để thực hiện hoàn chỉnh tiết kiệm năng/tải.
Chỉ trong trường hợp nó có liên quan, tôi đang sử dụng OpenCV 2.3.1.
Lưu ý: như tôi đã hiểu, bản thân các bộ mô tả phải được tuần tự hóa/deserialized riêng biệt. Khi tải, _prior_ để gọi readIndex, các descriptor phải được deserialized và thêm vào (tức là, với FlannBasedMatcher :: add). – sircolinton