문제

고급 Nokia 전화 (N95)에서 이미지 캡처를하려고합니다. 휴대 전화의 내부 카메라는 매우 좋지만 (4 메가 픽셀) J2ME에서는 최대 1360x1020 이미지를 얻을 수있는 것 같습니다. 나는이 예에서 크게 그렸다 http://developers.sun.com/mobility/midp/articles/picture/

내가 한 일은 640x480으로 시작하고 실패 할 때까지 폭과 높이를 각각 80과 60으로 증가시키는 것입니다. 코드 줄은 다음과 같습니다.

jpg = mvideocontrol.getsnapshot ( "encoding = jpeg & quales = 100 & width =" + width + "& height =" + height);

따라서 두 가지 문제는 다음과 같습니다. 1. 1360x1020보다 큰 이미지를 얻을 때 전화가 예외를 던집니다. 2. 고해상도 이미지는 작은 버전의 스무딩 버전 인 것 같습니다. 예를 들어 640x480 이미지를 찍어 Photoshop에서 늘리면이 이미지와 1360x1020 인 것으로 추정되는 차이점을 알 수 없습니다.

전화에서 J2ME의 제한입니까? 그렇다면 J2ME 응용 프로그램 내에서 더 높은 해상도를 얻는 방법을 알고 있거나 다른 응용 프로그램 내에서 기본 카메라에 액세스하는 방법을 알고 있습니까?

도움이 되었습니까?

해결책

이것 설명 노키아 포럼에서 도움이 될 수 있습니다.

"캡처 할 수있는 최대 이미지 크기는 선택한 이미지 형식, 인코딩 옵션 및 무료 힙 메모리에 따라 다릅니다."

그리고

"따라서 최소한 더 큰 이미지 (1mpix보다 큰)가 JPEG 이미지로 캡처되고 공통 이미지 크기 (예 : 2mpix의 경우 1600x1200)로 캡처됩니다. 지원되는 일반적인 이미지 크기는 제품 및 플랫폼 버전에 따라 다릅니다."

따라서 1600x1200, 1024x768 및 N95 안내서가 2. BMP 및 PNG와 함께 언급합니다.

어쨌든, 나의 초기 경험 (구식)을 기반으로 J2ME 구현은 버그로 가득 차 있으므로 문제에 대한 해결책이 없을 수 있습니다.

다른 팁

카메라 해상도는 기본적으로 : 2582 x 1944. 그것이 어떻게 진행되는지 확인하기 위해 거기에 캡처를 시도하십시오.

여기:http://developers.sun.com/mobility/midp/articles/picture/index.html

사용을 언급합니다.

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

원시 해상도를 얻기 위해 RAW의 사용은 흥미로워 보입니다.

JPEG의 '품질'(코드에 의해 해석 된)은 해상도와 관련이 없습니다. 오히려 이미지가 얼마나 압축되는지와 관련이 있습니다. 100 품질의 640x480 이미지는 50에서 640x480 이미지보다 눈에 띄게 보이지만 더 많은 저장 공간을 사용합니다.

대신 시도해보십시오.

jpg = mVideoControl.getSnapshot("encoding=jpeg&quality=100&width=2048&height=1536");
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top