問題タブ [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.

0 投票する
4 に答える
3548 参照

java - 高解像度の画像を低解像度に変換する

私はメディアマネージャーでウェブプロジェクトをやっています。高解像度の画像をアップロードし、これらの画像を低解像度に変換して、結果の画像をより小さなサイズに圧縮する必要があります。これはJavaを使用してどのように可能ですか?

可能であれば、ソースコードを投稿してください。

ありがとう、Naveen

0 投票する
6 に答える
1330 参照

compression - データ圧縮

どういうわけか株式市場のデータを圧縮するタスクがあります...データは、毎日の株価が1行で示されるファイルにあります...したがって、これは非常に大きなファイルです。

例 :
123.45
234.75
345.678889.56
....。

ここで問題となるのは、ハフマンまたは算術コーディングやLZコーディングなどの標準アルゴリズムを使用してデータを圧縮する(冗長性を減らす)方法です...この種のデータにはどちらのコーディングが最も適していますか?? ...

最初のデータを取得してから、連続する各データ間の差を考慮すると、差の値に多くの繰り返しがあることに気付きました...これは、最初にこれらの差を取得し、それらの頻度、したがって確率を見つけてから、ハフマンコーディングを使用するのが方法でしょうか??...

私は正しいですか?...誰かが私にいくつかの提案をすることができますか?

0 投票する
3 に答える
2772 参照

python - 大きな圧縮された xml ファイルの解析、python

bz2 で圧縮された xml ファイルを解析しようとするコードを次に示します。残念ながら、次のメッセージで失敗します。

TypeError: Parse() argument 1 must be string or read-only buffer, not bz2.BZ2File

その場で圧縮された bz2 xml ファイルを解析する方法はありますか?

:p.Parse(file.read())ここではオプションではありません。使用可能なメモリよりも大きいファイルを解析したいので、ストリームが必要です。

0 投票する
1 に答える
130 参照

data-compression - 圧縮ファイル

Xバイトのファイルがあります。たとえば、サイズ 32Kb のブロックに圧縮したいとします。これを行うことができるライブラリはありますか?

Delphi に Zlib を使用しましたが、完全なファイルを新しい圧縮ファイルに圧縮することしかできません。

たくさんのトランクス、ペドロ

0 投票する
7 に答える
46313 参照

encryption - ビット文字列のおおよそのエントロピーを計算するにはどうすればよいですか?

これを行うための標準的な方法はありますか?

グーグル(「近似エントロピー」ビット)は複数の学術論文を明らかにしますが、任意の長さの特定のビット文字列の近似エントロピーを定義する擬似コードのチャンクを見つけたいと思います。

(これは言うのが簡単で、アプリケーションによって異なる場合、私のアプリケーションには16,320ビットの暗号化データ(暗号文)が含まれます。しかし、パズルとして暗号化されており、解読することは不可能ではありません。最初に確認したいと思います。エントロピーですが、そのような適切な定義を簡単に見つけることができませんでした。したがって、StackOverflowにあるべき質問のようでした!16kのランダムに見えるビットの暗号化を解除することから始めるアイデアも歓迎します...)

この関連する質問も参照してください:
エントロピーのコンピュータサイエンスの定義は何ですか?

0 投票する
5 に答える
3811 参照

c++ - ランダム データ アクセスを使用する圧縮されたベクトル/配列クラス

「圧縮配列」/「圧縮ベクトル」クラス (詳細は後述) を作成したいと考えています。これにより、多かれ少なかれ一定時間でランダム データ アクセスが可能になります。

「ほぼ一定の時間」とは、要素のアクセス時間は一定ではありませんが、配列の特定のポイントに近づいても増加し続けるべきではないことを意味します。つまり、コンテナーは、1 つの要素を取得するために、大幅に多くの計算を行うべきではありません (「最後の要素を取得するためにもう一度すべてを解凍する」、「最初の要素を取得するためにほとんど何もしない」など)。おそらく、配列を圧縮データのチャンクに分割することで実現できます。つまり、1 つの要素にアクセスするには、「averageTime」+- 偏差が必要です。最良のアクセス時間と最悪のアクセス時間を平均アクセス時間に比較的近づけたいと言えます。

私のオプションは何ですか (適切なアルゴリズム/既に利用可能なコンテナー - 存在する場合)?

コンテナの詳細:

  1. コンテナーは、同一の要素 (std::vector など) の線形配列として機能します。
  2. コンテナーが初期化されると、データは一定になり、変更されることはありません。コンテナは読み取り専用アクセスを提供する必要があります。
  3. コンテナーは array/std::vector のように動作する必要があります。つまり、値は operator[] を介してアクセスされ、.size() などがあります。
  4. テンプレートクラスとして作れたらいいのに。
  5. データへのアクセスは、多かれ少なかれ一定時間である必要があります。すべての要素に同じアクセス時間は必要ありませんが、最後の要素を取得するためにすべてを解凍する必要はありません。

使用例:
データの二分探索。

データの詳細:
1. データは、大部分が float といくつかの int で構成される構造体です。int よりも float の方が多い。文字列はありません。
2. 配列に同一の要素が多数存在する可能性は低いため、単純にデータのインデックスを作成することはできません。
3. 1 つの要素のサイズが 100 バイト未満です。
4. コンテナーあたりの合計データ サイズは、数キロバイトから数メガバイトです。
5. データはまばらではありません。要素の連続ブロックであり、すべてが割り当てられており、「空のスロット」はありません。

圧縮の目的は、圧縮されていない配列としての表現と比較して、ブロックが使用する RAM の量を減らすことですが、ある程度妥当な読み取りアクセス パフォーマンスを維持し、要素を配列としてランダムにアクセスできるようにすることです。つまり、データは圧縮された形式で内部的に保存され、std::vector または同様のコンテナーであるかのように (読み取り専用で) アクセスできる必要があります。

アイデア/意見?

0 投票する
1 に答える
236 参照

algorithm - Aleph-Null セット内の任意の数値を可能な限り最小の計算可能な数値に変換するアルゴリズムは存在しますか?

重複の可能性:
プログラミング ロジック: 最小の方程式から多数の方程式を見つける。

Aleph-Null セット (すべて正の整数) から任意の数値を取得し (絶対に巨大である可能性が高い)、計算可能な数値に単純化しようとするアルゴリズムを探しています (計算可能な数値がより少ないスペースを占める場合)表現しようとしている整数値) (特に浮動小数点ではない)。テトレーション/ハイパーオペレーターの関与が最適です。

このようなものが存在するかどうか誰かが知っていますか?今朝、かなり探し回ったのですが、何も見つかりませんでした。C# コードが最適ですが、実際にはどの言語でもかまいません。

編集:プログラミング ロジック: 最小の方程式から大きな数を見つける: http://mrob.com/pub/ries/index.htmlは有望に見えますが、大きな数をどれだけうまく処理できるか、実装できるかどうか疑問に思いますハイパーオペレーター。やってみます。

0 投票する
8 に答える
5678 参照

c++ - マトリックス圧縮方法

私が取り組んでいるアプリケーションでは、256x256のマトリックスをソケット経由で送信する必要があります。クラスター上で実行されるオフショアシステムシミュレーター用の視覚化クライアントを開発しています。このマトリックスは、海面の現在の状態を表す高さマップです。

これはリアルタイムアプリケーションであるため、速度は必須です。また、フロートの256 x 256マトリックスを使用して、256キロバイト/秒の帯域幅要件のために、毎秒256キロバイトのデータを送信する必要があります。

少なくとも私のアプリケーションでは、それはたくさんあります。

だから、私の質問は、ソケットを介して送信する前にこのマトリックスを圧縮するためのいくつかの良い方法がありますか?そして、そのような方法があれば、どれだけのOS削減が期待できますか?

私の行列は連続表面を表しているので、非可逆圧縮法は私にとって問題ではありません。私は主に、圧縮率、圧縮が行われるのにかかる時間、そして最後に、C++用のこのメソッドの実装がすでにあるかどうかに関心があります。

0 投票する
6 に答える
3963 参照

c - Cでのバイナリ配列圧縮

私はcにバイナリ配列を持っています、私は配列を圧縮したいです、親切にバイナリ配列を圧縮するアルゴリズムを提案してください。Lempel–Ziv–Welch(LZW)アルゴリズムを使用しましたが、データに繰り返しがないため、これは適していません。

0 投票する
7 に答える
958 参照

algorithm - Terra 圧縮は可能ですか? もしそうなら、説明とサンプルを提供してください

長い Ascii 文字列 テキストは、洗練された数式/アルゴリズムを使用して、ハッシュの種類の ascii「チェックサム」に圧縮および圧縮される場合とされない場合があります。圧縮できる空気と同じです。

メガバイトの ASCII テキストを 128 バイト程度に圧縮するには、シャッフルしてから、単一の「バイト」の新しい「パターン」を最初から最後まで順番に混合します。それを解凍するときは、最後の文字が最初に抽出され、次に式と最後から最初への連続キーを使用して解凍を続けます。完全に更新された最終コンパイル済み文字列、および圧縮された合計バイト数を含め、シーケンシャル キーと最後と最初のバイトを正確に把握する必要があります。

これが私が考えていたテラ圧縮です。これは可能ですか?例を説明できますか。私はこの理論に取り組んでおり、それは私自身の考えです。