問題タブ [yuv]
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.
directshow - DirectShow RGB-YUV フィルター
アプリで VP8 を使用してビデオをエンコードしたいと考えています。アプリで RGB24 形式を使用していますが、VP8 DirectShow フィルターは YUV 形式のみを受け入れます (http://www.webmproject.org/tools/#directshow_filters)。
「RGBからYUVへのダイレクトショーフィルター」をグーグルで検索しましたが、成功しませんでした。このフィルターを自分で最初から書きたくないので、そのようなフィルターの場所に関する情報を教えていただければ幸いです。
ありがとう!
android - 誰かがYuvImageの`strides`パラメータを説明できますか?
バイト配列をYuvImagestrides
に読み込もうとしていますが、パラメーターの意味を理解するのに問題があります。誰かが助けることができますか(できれば例を挙げて?)ありがとう。
c++ - YUV422 を RGB24 に変換します
YUV422 から RGB24 へのコンバーターを書き込もうとしましたが、変換されたデータの結果がおかしいようです。その結果、薄緑色の点がいくつかある紫色のグレースケール画像が得られます...誰かアイデアがありますか?
私は与えられたヒントで成功した別のものを試しました。コンバーターのコードはここから来ています: http://paulbourke.net/dataformats/yuv/
yuv - LibJPEG の CbCr 値は符号付きか符号なしか
次の範囲で YCbCr データを出力する SoC カメラ モジュールがあります: Y (0 -> 255) Cb および Cr (-127 -> 127)
ここで私の質問は、libjpeg はこれらの符号付きの値を受け入れるか、または符号付きの値を変更して 0 -> 255 の範囲になるようにする必要があるかということです。
SAM3s-EK の一部として ATMEL が提供する libjpeg 'bolt-on' jpeg コンプレッサーを使用しています。ijg_compress_raw_no_padding 関数のボルトオン部分のコードを以下に示します... 私が見る限り、これは YCbCr データのきれいな配列を取り、libjpeg が好む形式に操作します ;-)
また、この関数を送信する生データ配列内での値の順序についても完全にはわかりません。YCbCrY や YCbYCr などですが、これは出力画像を見れば一目瞭然なのでいじってみます。
そのままでは、いくつかの色が混同されているように見える画像が得られます。赤と青が入れ替わっているように見え、黄色と緑と同じです。
そこで、最初の質問が失われた場合に備えて、最初の質問を繰り返します。
この関数は、範囲 0->255 の値のみを受け入れますか?それとも、Y (0->255) および Cb & Cr (-127->127) を持つカメラからのデータをそのまま受け入れますか?
また、誰かが配列をパックする必要がある順序についてアドバイスできる場合は、それも役立ちます。
どうもありがとうdeBoogle
iphone - YUV420Pデータを表示するには?
libavcodec ライブラリを iPhone アプリケーション プロジェクトに正常にインポートし、それを使用してムービー ファイルを YUV420P データにデコードし、ムービーのすべてのフレームを取得して RGB データに変換し、次の方法で表示できるようにしました。 OpenGLES.
ムービーは正常に再生できますが、YUV から RGB への変換と OpenGL (glDrawArrays) の表示方法が遅いため、かなり遅くなります。
ビデオを再生するよりスマートな方法はありますか (ムービーを libavcodec でデコードする必要があると仮定します)。YUV を直接表示するか、直接表示できる YUV のようなデータに変換しますか? または、glDrawArrays よりも高速な他の表示方法はありますか? Core Graphics で YUV データをロードできますか?
python - PILの色空間変換YCbCr->RGB
PIL v1.1.7で使用されるアルゴリズムは、「色あせた」外観の結果を提供します。それを使用して同じソースデータを変換する場合、ffmpeg
正しく見えます。を使用mplayer
すると、と同じ結果が得られますffmpeg
(おそらく、下にある同じライブラリを使用します)。これは、PILが色空間変換を詰め込んでいる可能性があると私に信じさせます。変換は次のソースで行われているようですlibImaging/ConvertYCbCr.c
:
これはソース内の単なるコメントです。もちろん、これはCコードであり、実際の関数は、行列の乗算ではなくルックアップテーブルを使用して実装されます(static INT16 R_Cr
簡潔にするために切り取ったものなど)。
私はグーグルで検索しましたが、この色空間変換を行うための「正しい」方法については多くの混乱があるようです。だから私の質問は、上記は正しいですか?そうでない場合は、より良い方法は何ですか?
編集: Mark Ransomが提供するリンクを読んだ後、YCbCrの全範囲を使用するか、有効な範囲にクランプアウトするかによって、矛盾する定義が存在することを発見しました。詳細については、以下のリンクを参照してください。
PILバージョンが誤ったアルゴリズムを使用しているように見えるので、正しい外観の結果をもたらす変換のために独自の関数をロールしました(「SDTV」バージョン)。将来の読者が使用できるように、以下に含まれるコード:
android - Android カメラから取得した YUV420SP (NV21) フレームを縮小するにはどうすればよいですか?
私は現在、Camera.PreviewCallback.onPreviewFrame()から取得したカメラ フレームを処理する Android アプリケーションに取り組んでいます。これらのフレームはYUV420SP形式でエンコードされ、バイト配列として提供されます。
フレーム全体とそのコンテンツを 640x480 ピクセルから 320x240 に、たとえば 2 分の 1 に縮小する必要があります。輝度部分を縮小するために、byte[] フレームから新しい小さな配列に毎秒値をコピーするループを実行するだけでよいと思いますが、クロミナンス部分はどうでしょうか? YUV420SP フレームの構造について詳しく知っている人はいますか?
よろしくお願いします!
video - OpenCV:ビデオをIYUVに保存
カメラで撮影した動画を保存しようとしています。DIVX fourccで試してみるとうまくいきますが、私がやろうとしているのはIYUV fourccで保存することですが、それはひどい結果をもたらします。色がマージされているように見え、openCVは変換を行わないように見えます。
RGBからYUVへの手動変換を試しましたが、結果は同じcv::cvtColor (src, dst, CV_BGR2YCrCb)
です。cv::cvtColor (src, dst, CV_BGR2YUV)
YUV形式でビデオを保存する方法を知っていますか?
ありがとう。
アーサー。
android - AndroidでRGB565をYUV420SPに高速に変換する方法は?
jpeg画像を表示し、YUV420SPに変換する必要があります。最初に SkBitmap を使用して jpeg を解析して表示し、次に以下のコードを使用して Android で RGB565 を YUV420SP に変換しますが、640*480 RGB565 画像を変換するのに 75 ミリ秒を費やします。アンドロイド?AndroidでjpegファイルをYUV420SPに変換するより速い方法は?
Android(armv6)での出力:
CPU情報:
c++ - YUV422からRGBへの変換を修正
私は約1週間、YUV422をRGB変換の問題に取り組もうとしています。私は多くの異なるウェブサイトにアクセスし、それぞれから異なる公式を入手しました。他の誰かが何か提案があれば、私はそれらについて聞いてうれしいです。以下の式は、全体的に紫または緑の色相を含む画像を示しています。現時点では、適切なRGB画像を取り戻すことができる式を見つけることができませんでした。以下に、さまざまなコードのチャンクをすべて含めました。
どんな助けでも大歓迎です。