-
Help developpement C++!
Bonjour,
Je souhaite developper un soft en C++ permettant de prendre plusieurs photos à la suite sous plusieur angle à l'aide d'une tête motorisée. seulement je peine à trouver une fonction ou un algorithme permettant de ne pas faire tourner la tête avant que la photo ne soit bien prise et nette.
En gros je souhaiterais, juste après que la commande "takepicture" soit lancée, savoir si elle a bien été enregistrée avant de continuer le programme.
Merci.
-
pour ça ta fonction perso "takepicture" doit retourner une variable, en général "0/1" 0 si pas d'erreur, 1 si erreur d'exécution, et en fonction de ce retour tu pourras faire ce que tu veux : recommencer la photo, tourner la tete etc ...
La question à se poser c'est comment estimer ton retour sans erreur (tu peux utiliser d'autres codes pour les différentes erreur"
0: pas de pb
1: pb de mise au point
2: pb de surexposition
...
ton pb sera de savoir quand une photo est "nette"/"bonne". A savoir, connecter ton boitier à ton soft pour lui remonter ces données or le boitier ne pourra que transmettre ce qu'il sait comme l'exposition, si AF effectué ou non, mais si la netteté est réussie (flou de bougé, mise au point sur le mauvais élément) ça reste difficile, à moins de passer en liveview et là tu passes en mode "traitement d'image"
-
Merci de ta réponse.
J'ai déjà essayé tout ce que tu m'as dis seulement j'ai beau ajouter la commande autofocus :
err=EdsSendCommand(this->cam,kEdsCameraCommand_DriveLensEvf,0);
ou la commande pour prendre la photo
err=EdsSendCommand(this->cam, kEdsCameraCommand_TakePicture, 0);
et le code d'erreur reste toujours "EDS_ERR_OK", même lorsque je met ma main devant l'objectif de l'appareil pour qu'il ne puisse pas faire la mise et au point et donc relancer la commande "takepicture". Je ne sais pas si c'est une faille du SDK ou alors une erreur dans mon programme.
-
J'ai oublié de préciser je souhaite régler l'appareil en "autofocus"