Re,
Yolo, TensorFlow et R-CNN si j'ai bien compris redimensionnent des parties d'intérêt de l'image pour ensuite les faire passer dans un réseau neuronal convolutif, j'ai l'impréssion que ces méthodes ne diffèrent pas beaucoup des CNN simples où il est nécessaire de redimensionner manuellement les images.
L'algorithme SIFT et d'autres basés dessus d'après ce que j'en ai compris ne supporte pas forcément bien les distorsions marqué de l'image et aurait des problèmes de généralisation des objets donc problème de classification.
Ça dépend de ce que tu veux dire par "une seule image la contenant complètement", j'ai un peu de mal à comprendre.
Mais si c'est bien ce que je pense (enregistrer une image propre, comme la couverture d'un livre, et pouvoir ensuite repérer la couverture de ce livre dans n'importe quel environnement) alors oui c'est possible. SIFT le fait, ORB, SURF, et pas mal d'autres aussi.
Par exemple je donne en entrée de l'algorithme une unique image d'un objet à reconnaître, ensuite j'agrandis l'image de telle façon que l'image ne puisse pas complètement être perçu par le champ de vision de l'algorithme de sorte que l'algorithme s'il veut s'assurer avec une bonne fiabilité que l'image est celle qu'il a apprise va devoir faire défiler l'image d'un endroit à un autre qui déterminera de lui même. L'algortihme n'a en conséquence pas toute l'information en une fois mais va devoir faire des liens dans le temps et l'espace pour reconnaître l'image.
Ce que je reproche principalement aux CNN c'est qu'ils considèrent deux objets identiques mais de tailles différentes présentés en entrée comme deux objets complètement différents en sortie. A priori le SIFT n'a pas ce défaut mais en contreparti perd tous les avantages du CNN.