問題タブ [bilinear-interpolation]

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

image-processing - 各色の分数寄与によってn色間を補間する方法は?

n色間を補間するにはどうすればよいですか。

2色のシンプルなケース

最初に、2 つの色の中間点を見つけたい、より単純なケースを考えてみましょう。

ソリューションは、個別に考慮された各 R、G、B の中間点です。

中間点は正確に 2 つの中間にあり、補間には線形の関係があるため、Color1 と Color2 の間で 0.25 などの分数で補間することが可能であり、色は Color1 に近づく必要があります。

n色の場合

私が解決策を見つけたいのは、各色の合計が最大 1.0 の分数の重みを持つ n 色がある場合です。

(推測すると、各色は 3 次元空間の点と見なすことができ、重み付けは、補間された点が各色点に対してどれだけ離れているかを表します)

色補間はリニア RGB のみです。

いくつかの条件下では、問題の解決策である複数の整数値が存在する可能性があると思います。たとえば、同様の値を持つ色がいくつかある場合などです。

これを解決するのに役立つバイリニア補間があることを読みました。

通常、色の数は 5 を超えず、通常は 2、3、または 4 色です。

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

image-processing - 既知の色 C に寄与する n 色の分数加重を見つける方法は?

これはこの質問に関連していますが、同じではありません (クリックして移動)。ただし、リンクされた質問は、この質問の前に解決するか、少なくとも問題を理解する必要があります。これはもう一方の逆と考えることができます。

この問題は、次のような RGB の n 色が与えられた場合です。

与えられた色 C を知っており、これらの色が混合されたときに、与えられた結果の色を部分的に重み付けすると既知の色 C が得られるように、各色の部分的な重み付けを見つけます。部分的な重み付けは上記のリンクされた質問で定義されています。 0.0 から 1.0 の間で、重みの合計が 1.0 に等しくなります。たとえば、Color1 は 0.2、Color2 は 0.2、Color3 は 0.6 です。

補間は RGB 色空間で線形です。

通常、色の数は 5 を超えることはなく、通常は 2 色、3 色、または 4 色です。

これらの色を混ぜて色 C を得る方法がない可能性は十分にあることに注意してください。たとえば、2 つの非常に赤い色があり、色 C (緑) が必要な場合、2 つの赤を混ぜて緑にする方法はありません。 . したがって、その場合、解決策はありません。

また、条件によっては、複数の色を混ぜて C という色を作る方法があります。

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

r - 2D 人口分布のヒート マップ (または類似のもの) を描画する

これらの位置 (x と y) での人口比率 (pop.prop) の画像を描画して、人口分布を明確に確認するにはどうすればよいでしょうか?

データを以下に示します。

xは経度、yは緯度です。

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

c# - 配列のC#リストは双一次補間値を生成します

始める前に、私が初心者開発者であることをお詫び申し上げます。

私が欲しいのは、データを含むグリッドです。7 つのポイント (x、y、値) を持つ配列のリストを持っているのは私だけです。これを 5x5 のグリッドで実行したいと考えています。私だけが多くの価値観を見逃しています。補間関数を使用して欠損値を生成したい。多次元 (または補間) (x, y) を検索して他のグリッドの値を生成するアルゴリズム。

グリッドの例:

私はメソッドを使用しました(数値メソッド、アルゴリズム、およびC#ブックのツールから)、それは機能していますが、値を関数に渡し、ランダムな5x5欠損値を生成する方法がわかりません.本で説明されています。

zdata[,] double 2D 配列とは何ですか?、これは点からの値ですか? xdate と ydata とは何ですか?

例、7 つの点 (x,y,value)=> 0,0,18 などの配列があります。このメソッドに正しく渡して欠損値を生成するにはどうすればよいですか?

関数全体は次のとおりです。

ありがとう

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

php - 双一次補間アルゴリズムの何が問題になっていますか?

PHP を使用して双一次アルゴリズムをテストしています。わかりやすくするために、コードは最適化されていません。

以下のコードが行っていることは次のとおりです。

  1. 2x2 イメージの元のピクセルを 10x10 の宛先イメージにプロットします。これらは空白のピクセルを残します。

注: ここの画像は、見やすくするために 10x10 から 100x100 にサイズ変更されています。

サイズ変更

  1. ピクセルの行を補間します。

ここに画像の説明を入力

  1. ステップ 2 のピクセルの行を使用して、残りのピクセルを左から右、上から下に補間します。

ここに画像の説明を入力

ただし、バイリニア リサンプリングを使用して Photoshop で取得した結果とは一致しません。

ここに画像の説明を入力

完全なソース コード:

私は何が欠けていますか?

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

r - `interp2 {pracma}` で双一次補間を行うとエラーが発生します。2D補間のより良い方法はありますか?

という名前のテーブルで 2D 補間を実行しようとしていますvol_coarse

返されるエラー メッセージは次のとおりです。

エラー: is.numeric(Z) は TRUE ではありません

私はそれを読みまし?interp2た:

を使用できるように、8 x 3 の行列を作成するにはどうすればよいinterp2ですか?

または、このタイプの補間を実行するより良い方法はありますか?

ありがとうございました。

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

php - PHP の画像サイズ変更アルゴリズムを選択します

関数imagecopyresampledは、縦横比を維持しながらサムネイルを生成したり、画像のサイズを変更したりするのに役立ちます。

PHP で使用されるサイズ変更アルゴリズムを選択するにはどうすればよいですか?
注:この質問に記載されているように、設定imagesetinterpolation($dst, IMG_BILINEAR_FIXED);などは機能していないようです。


私が(別の言語で)行ったテストによると、「バイリニアリサイズ」はバイキュービックよりも良い結果をもたらす場合があり、逆の場合もあります(ダウンサイジングかアップサイジングかによって異なります)。


(ソース: dpchallenge.com )