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

DeaoniaSoul Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
pkpkmépkpk Messages postés 341 Date d'inscription   Statut Membre Dernière intervention   -
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   Statut Membre Dernière intervention   52
 
Bonjour,

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