Updated by Alexander Shishkov about 13 years ago
At the moment the features2d module cannot be used without the highgui module. And it should be possible as the features2d is an algorithm module not a gui module. The highui module brings dependencies to GTK which unnecessary increases the file size and creates problems if the application uses other user interface library.
At the moment the only dependencies between feautures2d and highgui are in oneway.cpp
cvSaveImage in OneWayDescriptor::Save() [[OneWayDescriptor]]::Save()
cvLoadImage in loadPCAFeatures()
Surely they can be replaced with something else.
There is another question altogether why cvSaveImage and cvLoadImage are in the highgui library. Image load/save should be a core functionality not put in the gui library.
At the moment the only dependencies between feautures2d and highgui are in oneway.cpp
cvSaveImage in OneWayDescriptor::Save() [[OneWayDescriptor]]::Save()
cvLoadImage in loadPCAFeatures()
Surely they can be replaced with something else.
There is another question altogether why cvSaveImage and cvLoadImage are in the highgui library. Image load/save should be a core functionality not put in the gui library.