問題タブ [data-compression]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 圧縮ファイルにバイナリデータを書き込む方法
C++で処理している財務データがいくつかあります。必要なリソースが少なく、高速であるため、単純なバイナリ形式で保存していますが、ファイルに圧縮を追加したいと思います。私はIOバウンドになると思いますので、圧縮は処理速度の点でそれほどコストがかかりません。
私は学者であり、実際のプログラマーではないため、圧縮の方法がわかりません。私はこれを持っている手を本当に使うことができました。
次のようにバイナリファイルに書き込むことができます。
tbinがTradesBinデータで満たされている場所。
これらのファイルに圧縮を追加するにはどうすればよいですか?ZLO、Bzip2、zlib、Boost.IOStreamsなどについては漠然としか聞いていません。私はあなたの指導と提案に感謝します!
ありがとうございました!
c# - C#を使用してランレングスエンコーディングで画像を圧縮するにはどうすればよいですか?
C#を使用してランレングスエンコーディングで画像を圧縮するにはどうすればよいですか?これをサポートするために利用可能なライブラリはありますか?
ランレングスエンコーディングはビットマップ画像でのみ機能しますか?もしそうなら、C#を使用して画像タイプをビットマップに変換するにはどうすればよいですか?
また、この後の結果のファイルタイプは何ですか、ファイルタイプは保持されますか、それとも新しいファイルタイプになりますか?
url - 大きなクエリ文字列の圧縮
重複の可能性:
PHPで長いクエリ文字列を圧縮/解凍する方法は?
ニーズを追跡するために、サブクエリ文字列内に大量のデータがあります。
この大きすぎる URL がクライアント、検索エンジン、またはブラウザーの機能によって誤って解釈されるため、多くのデータが失われます。
この問題を回避するために、クエリ文字列をより小さなものに圧縮することにしました。xor、huffman、lzw、および gzdeflate 圧縮アルゴリズムの方向性を調べましたが、URL のニーズに満足していません (後で URL エンコードする必要があります...)。
質問:
- 私のニーズを満たすことができる他のアルゴリズムを知っていますか?
- どの圧縮技術が最も効率的か知っていますか?
詳細:
- Post/Session メソッドは使用できません。
- すべての英数字文字をクエリ文字列内に含めることができます。
- 圧縮するパラメータは約 30 個あります
data-compression - ランダムな数値データの最も効率的な可逆圧縮?
私のデータは実際には完全にランダムではありません。同じ範囲にある傾向があるテレメトリ測定値を圧縮しようとしています (たとえば、温度はあまり変化しません)。しかし、私は複数のアプリケーションの解決策を探しているので、ある日は温度、次の日は電圧などを送信する可能性があります.
低データレートの衛星リンクを介して測定値を送信したいと考えています。SatCom はそれなりに高いので、できる限り節約したいと思っています。データのパックとアンパックにコンピューティング リソースを費やすことは気にしません (192 バイトを送信するのに最大 30 秒かかることがあります)。
テレメトリ データを最大限に圧縮できる FOSS データ圧縮方法を教えてもらえますか?
試してみる価値はありますか?どのようなパーセンテージの利益が期待できますか?
データの性質についてこれ以上正確に言えないことをお詫び申し上げます - 温度、緯度/経度のGPS位置、液体の流量などの一般的なテレメトリー測定値です.
algorithm - 文字列内の連続する反復パターンの検出
文字列内の部分文字列の繰り返しの最大数を検索しようとしています。ここにいくつかの例を示します。
ご覧のとおり、私は連続した部分文字列のみを検索していますが、これは問題のようです。すべての圧縮アルゴリズム(少なくとも私が知っている)は連続性( LZ * )を気にしないか、単純すぎて連続するパターンを処理できないためです。単一のデータ項目(RLE)の代わりに。同じ問題があるため、接尾辞木関連のアルゴリズムを使用することも役に立たないと思います。
これを行うことができるいくつかのバイオインフォマティクスアルゴリズムがあると思いますが、誰かがそのようなアルゴリズムについてのアイデアを持っていますか?
編集 2番目の例では、連続するパターンの可能性が複数ある可能性があります(Eugen Rieckの通知に感謝します。以下のコメントを読んでください)が、私のユースケースでは、これらの可能性のいずれも実際に受け入れられます。
java - PNG の方形波 DFT
もう少し詳しく: 私は「学士号の論文」を書き始めており、それは画像圧縮に関連する何かになるでしょう
haar ウェーブレットの代わりに、PNG 形式の方形波フーリエ級数 (変換) をフィルターとして使用する試みについて知っていますか? それは何か良いでしょうか?
私が私の論文でできることについて他にアイデアがあれば、それは役に立ちます. 私のタイムフレームは今から5月から6月までです
caching - メモリ内にキャッシュされたオブジェクトを圧縮する
エンタープライズ ライブラリ 4.1 を使用して、大きなオブジェクトをメモリ キャッシュに格納するエンタープライズ規模の MVC ASP.NET アプリケーションを構築しています。
オブジェクトのサイズは、ユーザーごとに 18 ~ 22 MB です。いつでも 530 人の同時ユーザーが存在する可能性があります。メモリ内のオブジェクトのサイズが少し心配です。メモリ内のオブジェクトを圧縮するために使用できるパターンを誰か提案してもらえますか? Ent Lib 4.1 がすぐに使用できる圧縮メモリ キャッシュをサポートしているかどうかについて言及している記事は見たことがありません。
Web サービスへの往復呼び出しを避けるために、3 年分のデータをメモリに保存する必要があるため、キャッシュされたオブジェクトのデータ サイズを縮小することはできません。
ありがとう。
algorithm - 古いWordファイル形式*.doc、MSは古いドキュメント形式でどの圧縮アルゴリズムを使用しましたか?
私の仕事には仕事があります。証明書を使用していくつかの*.docファイルに署名するには、作業プロセスが銀行口座に近いため、ファイルに署名する必要があります。
クライアント/銀行/その連絡先などに関するいくつかの情報は、表の*.docファイルに含まれています。
ご存知のように、新しいWord形式はOpenXMLを使用し、バイナリシリアル化を使用しませんが、古い形式は使用しません。
このプロジェクトでは、*。doc形式が選択されました。これは、ロシア(現在も)では、さまざまな都市(主要都市ではない)のすべてのオフィスが*.docxワード形式をサポートしていない古いMicrosoftOfficeを使用しているわけではないためです。
したがって、*。docxを使用しないのはそのためです。
そして問題は、このフォーマットのバイナリシリアル化/圧縮アルゴリズムの方法についてです。法的なルールがあるため、正確なアルゴリズムについて知る必要があります。
ロシアにはISO規格などの製品の内部形式があり、GOST(ГОСТ)という名前が付けられており、許可されているアルゴリズムと許可されていないアルゴリズムがあります。
銀行の書類交換で許可されていないアルゴリズムを使用する場合、法律で商業目的での使用が許可されているだけではないため、罰金が科せられる可能性があります。開発プロセスまたは個人的な使用に使用できますが、商業目的には使用できません。
そのため、古いWord文書ファイル形式*.docで使用されているバイナリシリアル化/圧縮アルゴリズムの正確な方法について質問しています。
compression - 大きなカスタム データ ファイルの圧縮を支援する方法
圧縮ツールがロスレス圧縮を改善できるように支援する方法についてアドバイスを求めています。
さまざまなセンサーからのセンサー読み取り値を含む大きなファイル (>100 メガ) が多数あります。さまざまなセンサーからのサンプルは、ビット サイズ (16 ビット、24 ビット、32 ビット) と周波数 (70Hz ~ 250Hz) が異なります。私が知っている一般的なコンプレッサー (zip、gzip、bzip2) を使用すると、元のファイル サイズの約 70% の圧縮ファイルを取得できます。これらのバイトがこのタイプのサンプルであり、それらのバイトが別のサンプルタイプであると圧縮ツールに伝えることができれば、圧縮が向上する可能性があるように思えますが、これを可能にするものは何も知りません。