問題タブ [hsl]
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.
python - Python: RGB カラーの明度を下げる
RGB 文字列として指定された色の明るさを変更する簡単な方法はありますか?
例えば
colors - グレースケールがそのように機能するのはなぜですか?
私の元の質問
RGBピクセルをグレースケールRGBに変換するには、使用する必要があることを読みました
g
また、人間の目は緑に対してより敏感であるため、重みが高いことを読み、理解しています。それを実装すると、Gimp のような画像エディターで画像を「グレースケール」に設定した場合と同じ結果が得られることがわかりました。
これを読む前に、ピクセルをグレースケールに変換するには、それを HSL または HSV に変換してから、彩度をゼロに設定する (したがって、すべての色を削除する) ことを想像していました。ただし、これを行うと、色が不足していても、まったく異なる画像出力が得られました.
私が読んだ「正しい」方法と正確にどのようs = 0
に違うのですか? また、なぜそれが「間違っている」のですか?
回答やその他の研究に基づく進行中の調査結果
どの輝度係数を使用するかは、議論の対象になっているようです。さまざまな組み合わせとグレースケール アルゴリズムによって、異なる結果が得られます。以下は、TV 規格などの分野で使用されるプリセットの一部です。
- ITU-R BT.601 (NTSC?) で定義された係数は、
0.299r + 0.587g + 0.114b
- ITU-R BT.709 (より新しい) で定義された係数は次のとおりです。
0.2126r + 0.7152g + 0.0722b
- 3 分の 1 の係数 は
(1/3)(rgb)
、s = 0
この科学記事では、さまざまなグレースケール技術とさまざまな画像に対するその結果、および 119 人の主観的調査について詳しく説明しています。
ただし、画像をグレースケールに変換する場合、「最高の」芸術的効果を達成するために、これらの事前定義された係数を使用するのではなく、特定の画像に最適な出力を生成するために各チャネルからの寄与を調整することはほぼ確実です。
c# - ColorMatrix を使用して、画像のすべてのピクセルに同じ (一定の) 色相値を設定する方法は?
ColorMatrix を使用して画像全体に一定の色相値を設定しようとしています。私の目標は、どの領域の明るさを失うことなく、画像全体を同じ色で見せることです。ColorMatrix を使用して画像の色相値をシフトする方法を見つけましたが、すべてのピクセルに同じ色相値を設定する方法が見つかりませんでした。画像のすべてのピクセルを反復することでそれを行うことができますが、このアプローチは遅すぎます。ColorMatrix でそれを行うことが可能かどうかはわかりませんが、ColorMatrix アプローチ以外の可能なソリューションを受け入れています。
*これはカラーマトリックスで行うことができます
** 反復ピクセルでこれを行うことができますが、ColorMatrix ではできません
PS: Android でこれを実行しようとしていますが、Flash、C# などの他のプラットフォームでは ColorMatrix アプローチが一般的であるため、この質問は Android に直接関係していないと思います。
c# - C#で色の明るさを変更するには?
C# では、Color.GetBrightness() を実行して、色の HSL 輝度を取得できます。色の明るさを特定のパーセンテージだけ上げたい場合、個々の RGB 値に単純にその量を掛けることはできません。HSLはそのようには機能しないようです。どうすればいいですか?
css - CSS では、HSL 値を float にすることはできますか?
CSS3 仕様では、次のことのみを指定しています。
関数表記での HSLA カラー値の形式は、'hsla(' の後に色相 (度)、彩度と明度 (パーセンテージ)、および と ')' が続きます。
これらの値は整数ではなく浮動小数点数として解釈されることを理解する必要がありますか? 例:
hsla(200.2, 90.5%, 10.2%, .2)
これにより、HSL でカバーされる (RGB に比べて) 小さい範囲の色が劇的に拡大します。
Chrome では問題なくレンダリングされるようですが、単に INT 値として解析するだけなのか、それとも何なのかはわかりません。
colors - 色相から RGB を取得します (S & L は 100 になります)
SLの両方が最大のHSLのRGBを取得する必要があります。(125、100、100 から RGB を取得)
つまり、色相だけが変化しています。
これには簡単な式がありますか?
ありがとう
colors - 色の彩度の特定に関する問題
私は、既知の色のどれがユーザーが選択した色に「最も近い」かを判断しようとするツールを作成しています (完全な RGB 色域から)。Microsoft の GetHue および GetBrightness によって返される値が、HSL および HSVの記事で計算された HSL Hue および HSL Lightness 値と同じ値を持っているように見えることに気付きました。しかし、Microsoft の GetSaturation は、計算された値 (HSL、HSV、HSI) と一貫して一致しているようには見えません。
質問
- Microsoft が GetHue、GetSaturation、および GetBrightness 関数に使用するカラー モデルは何ですか?
- HSL と HSVの計算でエラーを見つけた人はいますか?
image-processing - 2 つのコンポーネントを色で比較する
コンポーネントが等しいかどうかを塗りつぶした色で比較したい次のアルゴリズムを実行し、次のようにRGBの平均化を行います
次に、次のように比較します
しかし、この方法はまったく正確ではありません
検索した後、画像をHSL空間に変換して比較するのが最善の方法であることがわかりましたが、2つの色を比較する方法がわかりません?!! ここ
言い換えれば、画像をHSL空間に変換した後、何ができますか?!
助けてください !!
より明確にするための質問への変更私はコンポーネント(ポイントのシーケンス)を意味するので、平均化ステップで実際にすべてのポイントを再訪し、各ピクセルのrgbの平均の合計を計算し、ポイントの総数を平均化します
c# - c#を使用してビットマップのHSL値を変更する
C#を使用してビットマップのHSL値を変更する方法を知りたいです。ビットマップをロードして、すべてのピクセルでそのHSL値を変更できる必要があります。
colors - HSLカラーで色付けする方法は?
複雑な問題がありますが、この小さな問題で解決できます。ピクセルごとに機能するカラライザーを作成したいと思います。
写真の基本色を定義しています(写真には、この色のピクセルと、この色に近い他の多くのピクセルがあります):
ターゲットのベースカラーを知っています:
というわけで、画像に色を付けたいと思います。
この 2 つの HSL 値の相関関係が見つかれば、画像をピクセルごとに色付けできると思います。
現在、(ターゲット色相 - ベース色相) = -76 でベース色の色相を移動すると、色相は問題ないことがわかりました。
この問題を解決するために、彩度と明度の関係がどこにあるのか教えていただけますか?