問題タブ [image-formats]

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 投票する
1 に答える
475 参照

python - NumPy でバイナリ データを BGRA イメージとして読み取る

次の形式(シリアル)でバイナリファイルにダンプされたBGRAイメージがあります:[(b、g、r、a)、(b、g、r、a)、(b、g、r、a).. .] 画像の幅、高さ、チャンネル数を知っています (この場合はもちろん 4 つです)。

最初の次元が B 値などを表す 4D 配列に画像を読み込みたいとします。次のコードがあります。

これは次のようなものを出力します:

79 は B、90 は G、92 は R、0 は A などです。今、私は次のように「データ」を再形成しようとしました:

以下を得ました:

私が取得したいのは次のようなものです:

0 投票する
0 に答える
849 参照

android - Android - BMP を 8 ビット深度の JPEG に変換する

BMP 形式でキャプチャされた指紋画像があります。コードは以下の通りです。

BMP ファイルを 8 ビットの深度で JPEG に変換する必要があるという要件があります。誰か助けてくれませんか?

0 投票する
2 に答える
691 参照

c++ - Boost GIL を使用してイメージ ファイル タイプを検出できない (例外がキャッチされない)

ファイルが JPEG か PNG かをテストする必要がありますが、ファイル拡張子が間違っている可能性があるため、信頼できません。これを実現するために、GIL を使用することにしました。

宣言 (および定義) するヘッダー ファイルを次に示しboost::gil::png_read_dimensionsます。boost::gil::png_read_dimensions 「場所が有効なPNGファイルに対応していない場合、std::ios_base::failureをスローします」と明確に述べています。実際、これは関数の実際の動作と同等のようです。

問題は、ここでboost::gil::jpeg_read_dimensions見ることができるものです。また、 「場所が有効な JPEG ファイルに対応していない場合、std::ios_base::failure をスローする」ことも明確に述べています。しかし、そうではないようです!例外はスローされず、代わりに stdout または stderr に出力され、プログラムが終了します。libjpeg

次のコードを参照してください。

プログラム出力:

what: ... yadiyadiyada ...Done.が印刷されていないことに注意してください。

例外が見過ごされずに成功しないようにする} catch(...) {代わりに、試してみました。} catch(const ios_base::failure &ib_f) {例外はスローされません。

ここで本当に明らかな何かが欠けていますか...?私は何か間違ったことをしていますか?回避策はありますか?

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

image-processing - 画像フォーマット メモリ内の NV12 ストレージ

質問に記載されている NV12 フォーマットのサイズについて完全に理解しています

NV12 フォーマットと UV プレーン

現在、この形式での UV プレーンのストレージに関する 2 つの情報源から読んでいます。

NV12

すべての Y サンプルは、偶数行の unsigned char 値の配列としてメモリに最初に表示されます。Y プレーンの直後には、パックされた U (Cb) および V (Cr) サンプルを含む unsigned char 値の配列が続きます。結合された UV 配列がリトル エンディアンの WORD 値の配列としてアドレス指定される場合、LSB には U 値が含まれ、MSB には V 値が含まれます。NV12 は、DirectX VA で推奨される 4:2:0 ピクセル形式です。これは、4:2:0 ビデオをサポートする DirectX VA アクセラレータの中期的な要件になると予想されます。次の図は、Y 平面と、パックされた U および V サンプルを含む配列を示しています。

私が理解しているのは、UV プレーンでは、各 U と V が single byte に格納されていることです。

これについてウィキペディアから読んだとき: https://wiki.videolan.org/YUV#NV12

それは言います:

NV12

I420 に関連して、NV12 には 1 つの輝度「ルミナンス」プレーン Y と、U 値と V 値がインターリーブされた 1 つのプレーンがあります。NV12 では、クロマ プレーン (青と赤) は、水平方向と垂直方向の両方の次元で 2 倍にサブサンプリングされます。ピクセルの 2x2 グループの場合、4 つの Y サンプルと 1 つの U および 1 つの V サンプルがあります。NV12 を、U プレーンと V プレーンがインターリーブされた I420 と考えると便利です。これは NV12 のグラフ表示です。各文字は 1 ビットを表します: 1 NV12 ピクセルの場合: YYYYYYYY UVUV 2 ピクセル NV12 フレームの場合: YYYYYYYYYYYYYYYY UVUVUVUV 50 ピクセル NV12 フレームの場合: Y*8*50 (UV)*2*50 n ピクセル NV12 フレームの場合: Y*8*n (UV)*2*n

ここで私が理解しているのは、各 U と V が各バイトでビットごとにインターリーブされていることです。したがって、UV プレーンの各バイトには、インターリーブされた 4U ビットと 4V ビットが含まれます。

誰かが私の疑問を明確にすることができますか?

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

javascript - これがどのタイプの画像フォーマットであるかについてのアイデアはありますか?

C++ で記述されたプログラムが node.js サーバーに画像を送信していますが、残念ながら C++ コードにアクセスできません。私の目標は、この画像をフロント エンドに表示することです。データに対して .toString('base64') 呼び出しを実行して実行しようとしましたが、うまくいきませんでした。ファイルに書き込むときと、for ループを実行して .toStrng() を実行するときのデータは次のようになります。画像形式とは何かについての アイデアはありますか? ここに画像の説明を入力 次のコードを実行した後

ここに画像の説明を入力

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

python - PILで画像のフォーマットを取得するには?

PIL.Image で画像ファイルを読み込んだ後、画像ファイルが PNG/JPG/BMP/GIF かどうかを判断するにはどうすればよいですか? これらのファイル形式についてほとんど理解していません。PILformatはファイル ヘッダーからメタデータを取得できますか? それとも、ファイル内のデータを「分析」する必要がありますか?

PIL がそのような API を提供しない場合、提供する Python ライブラリはありますか?

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

android - setParameters failed Android カメラ - 解像度は正しい

これが私のカメラのセットアップです:

ImageFormat を設定するとsetParameters failedエラーが発生します。したがって、問題は明らかに解像度ではありません。デバイスでサポートされている画像/プレビューの解像度も確認したので、問題はありません。

この画像形式は、すべてのデバイスで互換性があるはずです...どうしたのですか?

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

android - 画像フォーマット NV21 とそれが持っているように見えるさまざまなメモリ レイアウトに関する混乱

上記の形式の画像を処理する必要があります。しかし、私はそれについて相反する情報を見つけました。

別のスタックオーバーフローの回答によると、UV値は互いに続きますが、ウィキペディアによると、V値はメモリ内のU値の後にあります。どちらが正しいか、または両方が正しい場合、違いは何ですか?

NV12 対 NV21 の問題でしょうか? ただし、このサイトでは、単に切り替える必要があると述べています。

これらの用語が何を意味するのかはわかりませんが、画像が平面、半平面、または平面ではないことに関係しているのかもしれません。

誰かがこれを少し明確にすることができますか?