問題タブ [lossless]
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.
pdf - imagemagick による PDF ファイルの可逆回転
08-file.pdf
CLI ツールを使用して、名前が付けられた 351K の PDF を回転させたいと考えています。私はimagemagickを試しました:
しかし、元の品質:
深刻な劣化:
-density 300x300
引数を追加しようとしましたが、結果は 2.5M ファイルで、元のサイズよりも 1 桁近く大きく、非常に無駄でした。
imagemagick を使用して PDF ファイルを無損失で回転させる方法はありますか?
jpeg - JPEG「非微分ハフマン符号化」のプロセス
JPEG の特定のプロセスに関して質問があります。SOF0
-でマークされたプロセスはSOF3
、標準で次のように定義されています。
非微分ハフマン符号化フレーム
どういう意味ですか?たとえば、SOF7
ハフマン符号化による差分ロスレスと定義されていますが、私が知る限りでは、ITU-T.81 勧告で定義されているように、ハフマン符号化に先行する差分符号化です。SOF3
ITU-T.81だけのハフマン符号ということですか?(以前の差分コーディングなしで?)私には意味がありません。
私の質問はDICOM標準に関連しています-私が見るように、Transfer Syntaxのファイル
JPEG ロスレス、非階層、一次予測
SOF3
JPEG プロセスを使用- ここで大きな矛盾が見られます。転送構文では、一次予測を使用する必要があると明確に述べられていますが、SOF3
プロセスの定義では、これは非微分プロセスであると述べられています (その場合、予測値はありませんか?)。ここで何が起こっているのですか?
opencl - JPEG のフレーム開始 (SOF) ヘッダーのコンポーネント識別子の目的は何ですか?
私は現在、ロスレス JPEG (DNG、CR2 など) 用の OpenCL-Decoder に取り組んでいます。標準では、コンポーネントのレイアウト方法 (インターリーブと平面) にほとんど制限が課せられていません。これは、かなり柔軟性のない OpenCL カーネルと衝突します。
特に、コンポーネント識別子の概念は不必要に複雑に思えるので、正しく理解できているかどうか疑問に思っています:
SOF3 ヘッダー (フレーム 3 の開始、非差分、ハフマン コーディング、ロスレス (シーケンシャル)) には、各コンポーネントに関する情報が含まれています。それらは:
i
(暗黙的): コンポーネントのインデックスC_i
: コンポーネント識別子H_i
/V_i
: 水平/垂直サンプリング係数Tq_i
:量子化テーブル先セレクタ
各フレームは、少なくとも 1 つの色成分のエンコードされた画像データを含む複数のスキャンで構成されている場合があります。各 SOS ヘッダー (スキャンの開始) は、特定のスキャンの一部となるコンポーネントを宣言します。コンポーネントごとに、以前に宣言された識別子 ( C_i
) の 1 つが後方参照 ( Cs_j
、スキャン コンポーネント セレクター) として使用されます。標準にはほとんど制限がありません (B.2.3 スキャン ヘッダー構文)。
ルール 1:
それぞれがフレーム ヘッダーで指定され
Cs_j
た値の 1 つと一致C_i
し、スキャン ヘッダーの順序はフレーム ヘッダーの順序に従います。> 1 の場合Ns
、MCU 内のインターリーブされたコンポーネントの順序はCs_1
1 番目、Cs_2
2 番目などです。
ルール 2:
の値は~の値と
Cs_j
は異なります。Cs_1
Cs_j-1
私の質問は次のとおりです。
- ルール 1 は、コンポーネントの並べ替えを禁止します (たとえば、フレームでは R|G|B、スキャンでは B|G|R)。scan-R、scan-G、scan-B ではなく、scan-B、scan-G、scan-R の順序で、それぞれが単一のコンポーネント (平面構成) を含む複数のスキャンを作成することはできますか?
- スキャンでコンポーネントをスキップすることはできますか? たとえば、Frame で宣言された R|G|B の後に scan-R|B、次に scan_G が続きますか?
- スキャン内のコンポーネントが、フレーム ヘッダー内の
C_i
インデックス ( ) ではなく、識別子 ( ) によって参照されるのはなぜですか?i
R:C_0=255、G:C_1=3、B:C_2=250 を宣言することは本当に有効ですか?
database - FDが不明な場合、ロスレス分解を決定する方法は?
R(A、B、C、D、E) の下の表で、既知の FD はありません。R1(A, B, C, D) と R2(A, C, E) に分解されます。これが無損失分解かどうかを確認するにはどうすればよいですか?