목록에있는 모든 인코더는 바이트 지향이며 두 배의 속성으로 제거됩니다. 하나는 12 비트 지수/부호가 실제로는 바이트 경계와 잘 어울리지 않는 레이아웃이 있고 다른 하나는 입력의 소음이 있다는 것입니다. 첫 번째 부분은 다양한 방식으로 처리하기 쉽고, 두 번째 부분은 무손실 압축의 효과를 제한합니다. 나는 최상의 결과조차도 놀랄만한 것보다 적을 것이라고 생각합니다. 나는 당신의 데이터를 모르지만, 25 %의 절약, 더 많거나 적음에 의지 할 수 있다고 생각합니다.
내 머리의 상단에서
, 당신은이 목록에있는 모든 생각했기 때문에 아마 쓸모없는 ...
은 64 비트 정수 및 델타 인코딩 인접한 값으로 스트림을 처리합니다. 동일한 지수를 사용하여 값을 실행하면 효율적으로이를 제로화 할뿐만 아니라 가능한 높은 가수 비트도 제로가됩니다. 오버플로가 있지만 데이터는 여전히 64 비트 만 필요하므로 작업을 경외 할 수 있습니다.
이 단계에서 선택적으로 원유 정수 예측을 시도하고 차이점을 저장할 수 있습니다.
이전에 제안 사항을 수행 한 경우 000 ...으로 시작하는 거의 절반의 값과 FFF로 거의 절반이됩니다.이것을 없애기 위해 왼쪽 비트 (ROL)를 1 비트 씩 회전하고 현재 LSB가 1이면 모든 Fs와 XOR합니다. LSB가 0이고 ROR이면 반전은 Fs와 XOR입니다. 단순히 당신이 다음 3 단계를 수행 할 필요가 없기 때문에, 차이보다 더 좋을 수는 true 값으로 예측을 XOR 연산 두 번째 생각에
.
동일한 중요도를 가진 그룹 바이트를 함께 정렬 할 수 있습니다. 첫 번째로 가장 중요한 바이트 등등. 적어도 최소한 소음이 적은 대규모 제로 (zero run)와 같은 것을 얻어야합니다.
일반 압축기 또는 0의 런에서 첫 번째 RLE까지 실행 한 다음 7zip/LZMA의 huffman 또는 그 이상의 엔코더와 같은 엔트로피 인코더를 실행합니다.
데이터에 대한 좋은 점 하나가 있습니다. 단조로운 내용입니다. 데이터에는 나쁜 점이 있습니다. 너무 작습니다. 얼마를 구하기를 원합니까? 무엇 때문에? 인접한 값 사이에 지수 차이가있는 경우 압축 효과가 크게 저하됩니다.
많은 수의 데이터 세트를 처리하는 경우 유사성을 함께 사용하여 압축하는 것이 좋습니다. 일부 단계에서 인터리브하는 것이 좋습니다. 약간의 손실을 감수하면서 살 수 있다면, 최소 중요 바이트를 제로화하는 것이 좋은 생각 일 수 있습니다. 소스 데이터와 예측 모두에서 노이즈를 재 도입하지 않아도됩니다.
출처
2010-03-28 22:51:14
3yE
A '손실'알고리즘이 허용됩니다. 실제 실제 최대 변화 속도와 센서의 실제 정확도가 있습니다. 따라서 충분한 샘플링 대역폭으로 손실이 발생하는 인코딩은 정상입니다. –
Martin, 답변 해 주셔서 감사합니다. 기술적으로 당신은 정확하지만, 모든 디자인 결정이 기술적 고려 사항에 기반한 것은 아닙니다. 이 경우 다른 공급 업체의 샘플링 결정에서 "허용 가능한"결과를 나타내므로 정확한 값을 유지해야합니다. –
논문의 현재 링크 : http://cs.txstate.edu/~burtscher/papers/dcc06.pdf –