Il s'agit de la commande pvrg-jpeg qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
pvrg-jpeg - Compression et décompression JPEG
SYNOPSIS
pvrg-jpeg -je Largeur de l'image -ih Hauteur de l'image [-JFIF] [-q(l) Facteur Q]
[-une] [-b] [-ré] [-k type de prédiction] [-n] [-O] [-y] [-z] [-g]
[-p Valeur de précision] [-t pointtransformer]
[-r Intervalle de synchronisation] [-s Nom du flux] [-ou NomBaseSortie]
[[-ci ComponentIndex1] [-fw Largeur du cadre1] [-fh Hauteur du cadre1]
[-hf Fréquence horizontale1] [-vf Fréquence Verticale1]
ComposantFichier1]
[[-ci ComponentIndex2] [-fw Largeur du cadre2] [-fh Hauteur du cadre2]
[-hf Fréquence horizontale2] [-vf Fréquence Verticale2]
ComposantFichier2]
....
DESCRIPTION
pvrg-jpeg est un programme de compression/décompression d'images fixes qui effectue l'encodage JPEG
et le décodage de plusieurs fichiers numérisés raster.
Ces ``fichiers scannés raster'' sont essentiellement des fichiers PGM (portable graymap) sans le PGM
entête. Une image JPEG typique est constituée de trois de ces fichiers représentant le Y, le Cr et le
Canaux de couleur Cb. Habituellement, le canal Y (luminance) est de taille normale, tandis que les deux chroma
les canaux sont mi-largeur et mi-hauteur. Mais aucun canal particulier n'a vraiment besoin d'être plein
taille, donc pvrg-jpeg devra connaître les dimensions de l'image originale lors de la création
jpeg.
OPTIONS
Largeur de l'image
spécifie la largeur de l'image originale. Cela doit correspondre à la largeur de
la composante la plus large et, par conséquent, la largeur de « l'image originale ». Tous les composants
ont des largeurs correspondant à peu près à un rapport de décimation entier de ce
spécification.
Hauteur de l'image
spécifie la hauteur du composant le plus haut. Cela correspond à la hauteur de
l'« image d'origine ».
-JFIF spécifie qu'un en-tête JFIF est placé sur le flux encodé. C'est inutile
pour le décodage.
Facteur Q
L'option spécifie un facteur multiplicatif pour la quantification : chaque quantification
coefficient de la matrice par défaut est mis à l'échelle par (Q-Factor/50). Un facteur Q de 0 est
la même chose qu'un Q-Factor de 50 car il désactive cette fonction. -q précise
une matrice de quantification à 8 bits ; -ql spécifie une matrice de quantification de 16 bits, utile
pour les données 12 bits.
-a active la référence DCT à virgule flottante double précision. (La valeur par défaut est Chen DCT.)
-b active le Lee DCT. (La valeur par défaut est Chen DCT.)
-d permet le décodage. Voir ci-dessous.
-g Cette option placera les en-têtes PGM sur les fichiers de sortie lors du décodage.
-k type de prédiction
Le type de prédicteur sans perte, spécifié sous la forme d'un entier compris entre 1 et 7. Si spécifié,
alors le mode sans perte est utilisé.
-n Cette option spécifie que les fichiers ne doivent pas être transmis en entrelacé
le format.
-o NomBaseSortie
Cela utilisera la chaîne spécifiée comme nom de base pour les fichiers de sortie lors du décodage.
-O signale que l'interpréteur de commandes lira à partir de l'entrée standard.
-p Spécifie la précision. Normalement, il devrait être compris entre 2 et 16 pour le sans perte ; 8 ou 12 pour
DCT. S'il est spécifié comme un nombre supérieur à 8, l'entrée est considérée comme
être des courts métrages non signés (16 bits, msb en premier). Pas agressivement vérifié.
-s Nom du flux JPEG
Lors de l'encodage, il sera utilisé comme fichier de sortie. Lors du décodage, ce sera
utilisé comme fichier d'entrée.
-t pointtransformer
Spécifie le décalage (à droite) lors du chargement de l'entrée et le décalage (à gauche) lors de l'écriture
saisir. Généralement utilisé par le mode sans perte uniquement. Peut être utilisé par le mode DCT pour
ajouter ou soustraire des bits.
-y pour le décodage uniquement, les signaux qui aucune la resynchronisation est activée, ignorez donc tout
marqueurs trouvés dans le flux de données.
-z permet l'utilisation des tables de Huffman par défaut. Cela convertit le codage d'un
système utilisant la première passe pour générer des tables personnalisées vers un système à une passe utilisant
tables internes par défaut. Avec cette option, la vitesse de compression est presque doublée,
mais parce que les tables internes ne sont pas personnalisées à l'image, le fichier compressé
la taille augmente légèrement.
Intervalle de synchronisation
spécifie un intervalle de resynchronisation (redémarrage) pour le fichier d'entrée - s'il est défini sur 0 (par défaut),
la resynchronisation est désactivée ; sinon, cela signifie le nombre de MDU entre un
marqueur de resynchronisation.
Nom du flux
est l'endroit pour charger (décodeur)/stocker (encodeur) l'image codée - si elle n'est pas spécifiée
Par défaut ComponentFile1.jpg.
Pour chaque composant de l'image, nous avons :
IndexComposant
décrit l'index du composant auquel les données du fichier doivent être associées. Les
les valeurs possibles sont comprises entre 0 et 255. En règle générale Y est dans 1 ; U est dans 2 ; V est dans 3.
Les spécifications du fichier, si elles ne sont pas perturbées, entraîneront un emplacement de composant de 1
pour le premier fichier de composant, 2 pour le deuxième fichier de composant, et ainsi de suite. Si -Là
est spécifié pour le fichier de composant précédent, puis l'index de composant suivant
par défaut l'indice de composant précédent plus 1.
Largeur du cadre
décrit la largeur réelle du composant. Cela devrait être déterminable par le
taille de l'image originale (ImageHeight et ImageWidth) et l'échantillonnage de fréquence
de ce composant. Ce programme suppose que la composante d'échantillonnage sera ronde
up à l'entier le plus proche et d'autres programmes peuvent ne pas nécessairement suivre cela
convention, nous permettons une spécification précise de la FrameWidth. Le programme sera
informer l'utilisateur si les spécifications de largeur et de hauteur de cadre ne correspondent pas
à un modèle MDU logique et refusera donc de prendre l'entrée (en fait, parfois
arrondir à l'inférieur n'aboutira pas à un modèle MDU logique).
Hauteur du cadre
décrit la hauteur réelle du composant. Multiplié avec FrameWidth,
cela doit être égal à la taille de fichier du composant. Voir la discussion ci-dessus sur le
spécification réelle.
Hor-Fréquence
spécifie la fréquence d'échantillonnage de bloc du composant dans la direction horizontale
pour chaque MDU transmis.
Ver-Fréquence
spécifie la fréquence d'échantillonnage de bloc du composant dans la direction verticale.
Lorsqu'elle est multipliée avec la fréquence horizontale, elle correspond à la
nombre de blocs de ce composant dans le MDU.
Fichier de composantsn
représente l'emplacement du chemin du répertoire du nème fichier de composant.
EXEMPLES
Afin d'encoder un ensemble de fichiers scannés raster : 128x128 pouces image.Y; 64 x 128 pouces image.U;
et 64x128 pouces image.V dans le fichier image.jpg, la commande est
pvrg-jpeg -je 128 -ih 128 -hf 2 image.Y image.U image.V -s image.jpg
Afin de décoder un fichier compressé en image.jpg, type
pvrg-jpeg -d -s image.jpg
Les trois fichiers de sortie seront dans image.jpg.1 image.jpg.2 image.jpg.3. Les images peuvent être
affiché par le cv programme. Les images peuvent également être converties en ppm et inversement via le
tout proche. cyuv2ppm et ppm2cyuv Ces programmes utilitaires disponibles par ftp anonyme à partir de
havefun.stanford.edu:pub/cv/CVv1.2.1.tar.Z.
Il existe de nombreuses autres options dans un interpréteur de commandes interne. S'il vous plaît voir le
documentation d'accompagnement dans doc.ps pour plus de détails.
Utilisez pvrg-jpeg en ligne en utilisant les services onworks.net