2017-05-15 3 views
0

J'ai utilisé Microsoft Paint pour créer une image couleur unie 15248 x 6552. Je l'ai enregistré en tant que .png et .jpg et je m'attendais à ce que le .jpg soit plus petit que .png, mais ce n'était pas le cas. Le fichier .jpg est 1.49MB, tandis que le .png est 391KB. Should jpeg étant une compression avec perte être techniquement plus petit en taille? J'ai lu quelque part que .png est meilleur pour les couleurs solides etc, donc j'ai téléchargé une image à partir du web (pas une couleur unie) et utilisé de la peinture pour l'enregistrer dans les deux formats. Cette fois le jpeg était plus petit que png. Est-ce uniquement dû au gradient de couleurs? si oui, alors pourquoi?Mon fichier .jpg est plus grand que .png?

Même si l'image est une couleur unie, l'encodage jpg devrait-il être capable de le compresser encore mieux?

+1

L'erreur peut être de supposer que MS Paint est sensible, rationnel, optimal ... –

+0

Voulez-vous dire une image qui est entièrement une couleur? – user3344003

+0

oui une image avec seulement 1 couleur. – user3616470

Répondre

0

Il est naturel de s'attendre à ce que le format PNG fonctionne mieux que le format JPEG ici.

Comme indiqué dans les autres réponses, PNG effectue une prédiction de pixel par ligne, suivie par la compression ZLIB. Si l'image a une seule couleur, la prédiction produira une valeur nulle constante pour tous les pixels, à l'exception du début de chaque ligne. D'où la compression sera très efficace. Je parie que si l'image était "paysage" (6552 x 15248 au lieu de 15248 x 6552) la compression serait encore un peu meilleure. JPEG, tente d'ignorer les informations de haute fréquence en blocs de 8x8 pixels. Cela fonctionne bien pour les photograps "naturels" (photographiques ou similaires), mais pas pour une image comme celle-ci.

Voir some comparisons here.

1

Pas nécessairement.

PNG est un algorithme basé sur la prédiction, ce qui signifie qu'il essaie de déduire la valeur d'un pixel sur la base de pixels précédemment codés. Je parie que la prédiction est vraiment précise pour une image solide, d'où les très bons résultats. JPEG accepte différents "niveaux de qualité" qui déterminent la taille de votre fichier compressé. Les différences de taille entre votre expérience et la version Web sont probablement dues à cela (sauf si vous téléchargez une image différente, bien sûr!).

Notez que JPEG peut présenter certains artefacts d'image car il s'agit d'un algorithme avec perte, alors que PNG récupérera l'image d'entrée exacte pour vous.