Voici quelques conseils généraux de haut niveau pour vous aider à démarrer.
Fondamentalement, ce que vous faites est un problème d'optimisation. Ces algorithmes sont utilisés pour un grand nombre de problèmes, et il existe plusieurs façons bien connues de procéder. Elles se résument à ceci
- Créez une fonction de notation qui puisse vous indiquer en un seul chiffre la qualité de votre résultat. Plus le chiffre est élevé, mieux c'est.
- Créez une fonction qui prend l'entrée et certains paramètres et produit une sortie qui peut être évaluée.
- Ceci est important : la fonction de notation doit être quelque peu continue en fonction des paramètres à #2. Si vous aviez deux paramètres et que vous traciez la fonction en 3D (param1, param2, score), cela ressemblerait à une surface bosselée avec de grandes collines.
- Votre travail consiste maintenant à trouver le maximum de la surface. Vous pouvez avoir plus de deux paramètres - dans ce cas, vous avez une surface N-D - mais l'idée est la même.
Recherchez les termes "Hill-climbing", "algorithmes génétiques" ou "problèmes d'optimisation". Un bon livre en python avec du code est "Programming Collective Intelligence" par Toby Segaran.
En général, l'escalade de colline est quelque chose comme :
- Faites une bonne estimation des paramètres
- Créer la sortie et le score
- Modifier légèrement un paramètre
- Noter le résultat
- Si c'est mieux, continuez dans cette direction, si c'est pire, changez de direction.
- Si vous êtes bloqué, allez ailleurs dans la surface et essayez là.
- Si vous trouvez un maximum local, mais qu'il n'est pas assez bon, allez ailleurs et essayez là-bas.
Consultez les algorithmes réels, ils sont un peu plus complexes que cela.
Une grande partie de la recherche se résume à l'élaboration d'une bonne fonction de notation et d'un bon moyen de savoir quels paramètres fonctionneront et comment les utiliser.
En utilisant ce schéma général, essayez simplement la luminosité/contraste comme fonction de génération de sortie (la luminosité et le contraste sont des entrées). Pour la notation, vous aurez besoin d'un moyen de comparer deux photos pour trouver une correspondance. Pour commencer, choisissez quelque chose de simple (peut-être en codant en dur une zone à vérifier).
Une fois que vous l'aurez mis en place, vous aurez une meilleure idée de la manière de procéder et vous pourrez vous reporter aux documents pour trouver des idées.