記述子(SurfDescriptorExtractor出力)とキーポイント(SurfFeatureDetector出力)の両方をXMLファイルに書き込んでいます。キーポイント(std :: vector)を書き込む前に、Matへの変換が行われます(これに続いて:キーポイントをmatに変換するか、テキストファイルopencvに保存します)。記述子は必須ではありませんが、すでにマットです。したがって、両方ともマットとして保存され、どちらも読むことに問題はありません。ただし、FlannBasedMatcherを使用してからdrawMatchesを使用する場合、このメソッドはキーポイントデータを要求します。
問題は、MatをKeypointのベクトルにどのように変換するか、そしてどちらが最良のアプローチであるかということです。