[Matlab -> C] calculer PSNR entre deux images

lucie - Modifié par BunoCS le 30/04/2015 à 09:02
Whismeril
Messages postés
17686
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
17 août 2022
- 30 avril 2015 à 09:29
Bonjour,

je m y connai pas dutout en langage C
je voudrai une aide pour reecrir de programme matlab en c

le programme sert a calculer PSNR entre deux images

formule de la PSNR
PSNR=10 log10 ( peakval2 / MSE)

function result=psnr(in1,in2)

z=mse(in1,in2);

result=10*log10(255.^2/z);

function z=mse(x,y)

x=double(x);

y=double(y);

[m,n]=size(x);

z=0;

for i=1:m

    for j=1:n

        z=z+(x(i,j)-y(i,j)).^2;

    end

end
z=z/(m*n);

EDIT: Ajout de la coloration syntaxique.

3 réponses

BunoCS
Messages postés
15277
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
26 juillet 2022
103
29 avril 2015 à 15:07
Bonjour,

Apparemment, MatLab peut générer du code C/C++
http://fr.mathworks.com/products/matlab-coder/

A voir ce que cela vaut...
0
Merci pour ta réponse Bruno , pour cela il faut que j'ai matlab , mais moi jai meme pas la lisence !!
0
BunoCS
Messages postés
15277
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
26 juillet 2022
103
30 avril 2015 à 09:04
Il n'y a pas beaucoup de personne maitrisant Matlab par ici.
2 solutions:
- soit trouver un forum adapté Matlab (ça se trouve très facilement)
- soit trouver (ou réfléchir sur) un code C/C++ directement
0
Whismeril
Messages postés
17686
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
17 août 2022
613
30 avril 2015 à 09:29
0