Rétrécir une image par rapport à une définition donné

Fermé
DeaoniaSoul Messages postés 1 Date d'inscription jeudi 26 mai 2016 Statut Membre Dernière intervention 26 mai 2016 - 26 mai 2016 à 13:20
pkpkmépkpk Messages postés 341 Date d'inscription samedi 14 mai 2011 Statut Membre Dernière intervention 14 janvier 2018 - 26 mai 2016 à 19:27
Bonjour à toutes et à tous,

Voilà mon soucis :

Je suis actuellement entrain de transformer un programme en DLL mais il y a un erreur sur une partie du programme, comme le nom l'indique l'erreur se situe sur la fonction qui permet de rétrécir l'image.

Le but est des rétrécir une image (peut importe l'extension du fichier) par rapport à une définition donnée (définition = nombre de pixels en longueur x nombre de pixel en hauteur, pour ceux qui ne sont pas sûr ^^)

La fonction qui gère ce rétrécissement est la suivante :
if ( image.cols*image.rows > 1000000 )
{
   logan << "Redéfinition de la taille de l'image"<<endl;

   int Rapport0 = 1000000/sqrt(image.cols*image.rows);

   Mat taille = Mat::zeros( Rapport0*image.cols, Rapport0*image.rows, CV_8UC3 );

   resize(image, image, taille.size());

}


Ce que doit faire cette fonction est :
Rétrécir une image supérieur à une définition de 1 000 000 de pixels, calculer le rapport permettant de réduire la hauteur et la longueur de l'image pour que cette image est une définition inférieur à 1 000 000 de pixels.

Je commence à me tirer les cheveux ....

J'en appel donc à vos dons pour vos connaissances par rapport à OpenCV et aux maths XD

Merci d'avance pour votre aide ;)
A voir également:

1 réponse

pkpkmépkpk Messages postés 341 Date d'inscription samedi 14 mai 2011 Statut Membre Dernière intervention 14 janvier 2018 52
Modifié par pkpkmépkpk le 26/05/2016 à 19:28
Bonjour,

Le rapport est de
sqrt(1000000./(image.cols*image.rows))
.
0