Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1988 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  Compression jepg

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Compression jepg

n°847828
Skywash
Posté le 11-09-2004 à 17:50:05  profilanswer
 

Bonjour  
Voilà j'ai réalisé ce prog de compression jpeg sous matlab mais il ne marche pas à savoir que l'image jpeg créee en sortie est vide (aucun apercu disponible)  
Voilà le code  
Si vous pouviez me filer un coup de pousse pour trouver ce qui cloche car là je suis perdu, ce serait vraiment sympa.  
Merci d'avance  
a+  
 
 
%Programme principal de compression d'une image bmp en pseudo jpg
%arguments d'entree:
% - nom de l'image source qui doit etre au format bmp
%   - nom du fichier créé au format pseudo jpg
%   - qualite de la conversion de l'image bmp
%argument de sortie:
%   - temps du traitement en seconde
function[duree_traitement]=main_compression(nom_bmp_source, nom_jpg,  
qualite)
 
t_debut = cputime;
 
%lecture bmp
BMP = lecture_bmp(nom_bmp_source);
 
%conversion de la matrice : application de la DCT sur la matrice
JPG = conversion(BMP, qualite);
 
%ecriture de la matrice traitee par la DCT dans un fichier
ecriture_jpg(JPG, nom_jpg,qualite);
 
t_fin = cputime;
duree_traitement = t_fin - t_debut;
 
%************************************************************************
 
function[RGBdouble]=lecture_bmp(nom_fichier)
 
%lecture du fichier au format unsigned integer de 8 bits
RGBuint8 = imread(nom_fichier,'bmp');
%conversion des coefficients au format double
RGBdouble = double(RGBuint8);
 
%************************************************************************
 
function [a]=maDCT2(m)
%Fonction calculant une dct sur une matrice
%argument d'entree:
% - m matrice 8*8 sur laquelle sera appliquée la DCT
%argument de sortie: a
%    - a matrice 8*8 correspondant à la DCT appliquée sur m
 
%recuperation de la taille de la matrice m
[M,M]=size(m);
%declaration d'une matrice nulle de meme dimension que m
 
a=zeros(M,M);
 
%Calcul des coefficients de a tranformes de la  dct
%u,v sont les indices de la nouvelle matrice a
%i,j sont les indices de la matrice m
for u=0:M-1
    for v=0:M-1
        for i=0:M-1
            for j=0:M-1
                %Test permettant de determiner la valeur des variables C1 et  
C2
                if u==0
                    c1=1/sqrt(2);
                else
                    c1=1;
                end;
                if v==0
                    c2=1/sqrt(2);
                else
                    c2=1;
                end
                 
a(u+1,v+1)=a(u+1,v+1)+1/sqrt(2*M)*c1*c2*m(i+1,j+1)*cos(pi*u/M*(i+1/2))*cos(pi*v/M*(j+1/2));
            end;
        end;
    end;
end;
 
%*********************************************************************************
 
%fonction qui permet d'ajouter ou de retrancher une certaine valeur à tous
%les coefficients d'une matrice
%parametres d'entree
%   -m la matrice sur laquelle va porter le calcul
%   -valeur la valeur a ajouter (ou retrancher si nombre negatif)
%parametres de sortie
%   -res la matrice du resultat
function[res]=ajoute(m,valeur)
 
%recuperation de la taille de la matrice
taille = size(m);
%construction d'une matrice que l'on va ajouter à m
temp = ones(taille(1),taille(2)) * valeur;
 
res = m + temp;
 
%*********************************************************************************
 
%fonction qui fabrique la matrice de quantification
%a partir de l'indice de qualite, on construit une matrice 8x8 que la
%fonction retourne
function[Q]=mat_quant(Fq)
 
for i=1:8

mood
Publicité
Posté le 11-09-2004 à 17:50:05  profilanswer
 

n°1369400
klezzz
Posté le 18-05-2006 à 10:18:47  profilanswer
 

up


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  Compression jepg

 

Sujets relatifs
[Matlab] Programme de compression JPEG[Matlab] Programme de compression JPEG
compression de texte : algo efficace même sur peu de données[PHP] compression de plusieurs fichiers -> en zip
PclZip : compression de plusieurs fichiers = problème ![Compression DivX En Système Répartis] Multiple thread listener ?
[c] librairie de compression ANSI C?compression gif
Petit logiciel de compression, besoin d'aide pour structurer méthodesos compression d image png en c++
Plus de sujets relatifs à : Compression jepg


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR