Classificação de detectores, extratores e correspondentes

Eu sou novo na opencv e tentando implementar a correspondência de imagens entre duas imagens. Para isso, estou tentando entender a diferença entre descritores de recursos, extratores de descritores e correspondentes de descritores. Eu me deparei com muitos termos e tentei ler sobre eles no site de documentação da opencv, mas eu simplesmente não consigo entender meus conceitos. Eu entendi a diferença básica aqui.Diferença entre a detecção de recursos e a extração de descritores

Mas me deparei com os seguintes termos enquanto estudava sobre o assunto:

RÁPIDO, GFTT, SIFT, SURF, MSER, ESTRELA, ORB, BRISK, FREAK, BREVE

Eu entendo como o FAST, SIFT, SURF funciona, mas não consigo descobrir quais dos itens acima são apenas detectores e quais são extratores.

Depois, há os correspondentes.

FlannBased, BruteForce, knnMatch e provavelmente alguns outros.

Depois de algumas leituras, percebi que certos matchers só podem ser usados ​​com certos extratores, conforme explicado aqui.Como funciona o detector de recursos OpenCV ORB? A classificação dada é bastante clara, mas é apenas para alguns extratores e não entendo a diferença entre float e uchar.

Então, basicamente, alguém pode por favor

classificar os tipos de detectores, extratores e casadores baseados em float e uchar, como mencionado, ou algum outro tipo de classificação?explicar a diferença entre a classificação float e uchar ou qualquer classificação que esteja sendo usada?mencionar como inicializar (codificar) vários tipos de detectores, extratores e correspondentes?

Eu sei que está pedindo muito, mas eu serei muito grato. Obrigado.

questionAnswers(1)

yourAnswerToTheQuestion