7

Midlet 애플리케이션에서 작업 중입니다. 나는 이미지를 매우 자주 스케일링 할 필요가 있음을 깨닫고있다. 일부 전화기의 속도가 느리고 배율 조정이 너무 오래 걸리기 때문에 이것이 문제가되었습니다. Java - 매우 빠른 이미지 스케일링 알고리즘이 필요합니다.

현재 나는 이미지의 크기를 조절하는 데 Image.createRGBImage (INT, INT, INT, 부울)을 사용하고 있습니다.

나는 당신이 이미지를 스케일하는 데 매우 효과적이고 빠른 방법을 알고 있는지 궁금해하고있었습니다.

참고 : 이것은 Midlet 응용 프로그램이므로 JavaME 만 사용할 수 있습니다. 즉, 전체 Java 버전에서 사용할 수있는 다른 라이브러리에 액세스 할 수 없습니다.

참고 2 : 대부분 크기 조정은 이미지의 크기를 줄이지 만 작은 이미지에서 큰 이미지로 이루어집니다.

+1

어떤 크기의 이야기입니까? 임의 변경 또는 몇 배 간단한 배수 (2 배)입니까? –

+0

최적화 방법 중 하나는 밉 매핑을 사용하는 것입니다. http://www.3drender.com/glossary/mipmapping.htm – appas

+0

스케일 크기는 임의적입니다. 내 이미지가 100 x 65 픽셀이라고 가정 해 보겠습니다. 나는 그것을 원하는 크기로 확장 할 필요가있다. 200x500 픽셀 또는 1200x10 픽셀이라고 가정 해 보겠습니다. 따라서 수직 또는 수평으로 확대/축소하거나 둘 다 조합해야합니다. – Tony

답변

29

스케일링 알고리즘을 논의 할 때 사이에는 항상 트레이드와 트레이드가 있으며, 이상적인 솔루션은 약간의 연구와 테스트가 필요할 수 있습니다.

Nearest neighbor 이미지 스케일링의 간단하고 빠른 구현입니다.

이미지 크기에 좋은 소개/기술의 몇 가지를 검토하고 품질을 비교 Coding Horror에 크기 조정이있다.

매우 작은 디스플레이 장치로 작업하고 있다고 상상해보십시오. 결국 이미지 품질은 실제로 중요하지 않습니다. 어떤 사람들은 에 대한 이미지 스케일링 구현 중 가장 빠른 this을 J2ME이라고 부르고 있습니다.

그러나 다른 것들을 기꺼이 읽으려면 this paper은 가장 가까운 이웃 보간법에서 크게 향상되는 스케일링을위한 저렴한 비용 ("매우 빠름") 알고리즘을 제공합니다. 사용할 수있는 소스 코드가 있으며, 또한 해당 연구의 진화를 제시합니다. here. OpenCV의 마지막 행이 아닌 적어도

, cvResize() (화상 처리 오픈 소스/크로스 플랫폼 라이브러리). 버드 나무 차고의 사람들은 이미지/비디오 처리를위한 빠른 절차를 만드는 데 능숙하며이 기능은 확장을위한 몇 가지 기술을 제공하므로 구현을 확인하는 것이 좋습니다.

+1

감사합니다. 나는 당신이 당신의 링크에서 기술하고있는 기술을 현재 사용하고 있습니다. "어떤 사람들은 이것을 J2ME를위한 가장 빠른 이미지 스케일링 구현이라고 부르고 있습니다." 다른 기술을 검토하고 몇 가지 테스트를 수행하고 더 빠른 확장이 가능한지 확인합니다. 당신의 탁월한 답변을 위해 엄지 손가락을 올리십시오. 포인트가 당신에게갑니다. 감사 칼. – Tony

관련 문제