Question

J'essaie d'effectuer une capture d'image sur un téléphone Nokia haut de gamme (N95). La caméra interne du téléphone est très bonne (4 mégapixels), mais en j2me, il semble que je ne puisse obtenir qu'un maximum de 1360x1020 images. Je me suis largement inspiré de cet exemple http://developers.sun.com/mobility/midp / articles / image /

Ce que j’ai fait, c’était de commencer par 640x480 et d’augmenter la largeur et la hauteur de 80 et 60, respectivement, jusqu’à ce qu’il échoue. La ligne de code est la suivante:

jpg = mVideoControl.getSnapshot ("encoding = jpeg & amp; quality = 100 & amp; width =" + width + & amp; height = & amp; height);

Les deux problèmes sont donc les suivants:  1. Le téléphone lève une exception lorsqu'il obtient une image plus grande que 1360x1020.  2. Les images de résolution supérieure semblent être simplement des versions lissées des plus petites. Par exemple. Lorsque je prends une image au format 640x480 et que je l’augmente dans Photoshop, je ne peux pas faire la différence entre celle-ci et celle supposée être au format 1360x1020.

Est-ce une limitation de j2me au téléphone? Si tel est le cas, connaissez-vous un moyen d’obtenir une résolution supérieure à partir d’une application j2me et / ou comment accéder à la caméra native depuis une autre application?

Était-ce utile?

La solution

Cette explication sur le forum Nokia peut vous aider.

Il est indiqué que "la taille d'image maximale pouvant être capturée dépend du format d'image sélectionné, des options de codage et de la mémoire disponible disponible."

et

"Il est donc vivement conseillé de capturer au moins des images plus volumineuses (supérieures à 1mpix) en tant qu'images JPEG et dans une taille d'image courante (par exemple, 1600x1200 pour 2mpix, etc.). Les tailles d’image communes prises en charge dépendent de la version du produit et de la plate-forme. "

Je vous suggère donc de faire quelques essais 1. avec 1600x1200, 1024x768 et quelle que soit la résolution d'image mentionnée dans votre guide N95 2. avec BMP et PNG également.

Quoi qu’il en soit, d’après mes expériences antérieures (qui pourraient être obsolètes), les implémentations de j2me sont pleines de bogues, il se peut donc que votre problème ne soit pas résolu.

Autres conseils

La résolution de votre caméra est en mode natif: 2582 x 1944. Essayez d’y capturer pour voir comment cela se passe.

Cet endroit: http://developers.sun.com/mobility/midp/articles/ picture / index.html

Mentionne l'utilisation de:

byte[] raw = mVideoControl.getSnapshot(null);
Image image = Image.createImage(raw, 0, raw.length);

L’utilisation de raw semble intéressante pour obtenir la résolution native.

La "qualité" d'un JPEG (tel qu'interprété par le code) n'a rien à voir avec la résolution. Il s’agit plutôt de la compression de l’image. Une image 640x480 avec une qualité 100 sera visiblement plus jolie qu'une image 640x480 avec une résolution de 50, mais utilisera davantage d'espace de stockage.

Essayez plutôt ceci:

jpg = mVideoControl.getSnapshot("encoding=jpeg&quality=100&width=2048&height=1536");
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top