2012-07-03 4 views
0

내 응용 프로그램에서는 QR 코드에 DATA로 저장 될 수있는 아주 작은 크기의 JPEG 파일 (2.5KB 미만)이 필요합니다 (링크 할 수 없음). 품질과 크기 모두 우려됩니다. 저장할 수있는 모든 바이트는 QR 코드를 읽기 쉽게 만들 수 있음을 의미합니다. 다행히 표준 해상도 (160x240)와 색상 깊이 (24 비트)를 모두 가지고 있습니다.알려진 해상도의 JPEG 압축? 헤더를 저장할 가능성이 있습니까?

나는 JPEG 파일 자체에서 머리글을 제거하고 나중에 데이터 배열에 헤더를 다시 추가하여 좋은 600 바이트 (와우)를 절약 할 수있는 아이디어가있었습니다. 지금까지 압축을 수행하는 방법은 "표준 파일"을 유지하고 2.5KB에 맞을 때까지 Q = 80-10 %로 압축하는 것입니다.

다른 압축 비율은 다른 머리글을 의미하므로 제 생각은 최종 압축 이미지를 알려진 표준 압축의 다른 패스를 통해 전달하는 것입니다. 그러나 "표준 압축"이 원래 압축보다 크면 이미지가 최종 압축 이미지보다 더 크게 나타날 수 있습니다.

이와 같은 작업을 수행하는 표준 방법이 있습니까? 나는 무언가 위에있을 것 같은 느낌이지만, 나는 그것이 작동하도록 할 수 없습니다.

+0

나는이 세 번을 읽었으며, 내가 생각할 수있는 유일한 것은 이것이 끔찍한 생각이라는 것입니다. QR 코드에서 JPEG 데이터를 가져 오는 최종 목표는 무엇입니까? 이 압축을 사용하면 이미지가 비정상적으로 좋지 않을뿐만 아니라 데이터 양을 QR 코드에 맞추면 저품질의 카메라로 스캔 할 수 없게됩니다. QR 코드는 사용자가하려는 것을 위해 설계되지 않았습니다. – kcoppock

+0

아이디어는 단순히 실제 고화질 이미지로 인식 할 수 있어야한다는 것입니다. 품질은 인식 가능성에 대한 관심사 여야합니다. – yhyrcanus

+0

흠, 알았어. 음, 방금 Photoshop에서 240x160 이미지 (초과 데이터를 제거함)에서 웹 저장을 시도하고, 품질을 0으로 설정하고, 손실이 많은 경우 최대 흐림 효과를 적용했지만 여전히 2.5K 미만으로는 얻을 수 없었습니다. 그리고 그것은 절대적으로 무서운 것처럼 보였다. 솔직히 나는 당신에게 당신의 요구 사항을 만족시킬만한 아이디어를 줄 수 있다고 생각하지 않습니다. 앱의 기능에 대해 좀 더 자세하게 설명 할 수 있다면 대안을 제안하게되어 기쁩니다. – kcoppock

답변

0

필자는 결국 여러 단계의 압축을 수행하고 헤더 (D0-DB)와 호프만 테이블 (C4)을 저장했습니다. 나는 대략 550 바이트를 간단한 교체 알고리즘으로이 방법으로 저장할 수있다. 100 % 이상은 아니지만 반값도 아닙니다. 나는 약 50 바이트를 잃지 만, 증가 된 품질과 앱 프로그램 메모리 크기와의 절충은 그만한 가치가있다.

스캔하기 쉽도록 교체 알고리즘 이전에 최대 크기를 1.9KB로 줄였습니다.

관련 문제