Wikipedia page on Dodecahedronsからこの素晴らしい画像を得ました。これは、テトロイドがゆっくりと回転することを示しています。注意深く見ると、画面の外側のどこかに光源があることが前提であることは明らかです。顔がより多くの光を観察者に反射する場合、顔はより明るく見え、逆光が少ない場合はより暗く見える。私は、顔がある回転で戻ってきたときの光の量のメトリックをどのように得ることができるかについて考えています。また、メトリックを0から255の間の値にスケーリングすることもできます(ほとんどのカラースケールが想定しています)。ただし、メトリックが高い場合は明るく反射的な青色、メトリックが低い場合は暗い青色のように見える実際のRGB値を取得するにはどうすればよいですか?反射光を表すカラースケールを取得する方法
1
A
答えて
1
私はあなたがこの作業のための標準的なcolorsys
モジュールを使用することを示唆している、とHSVでの作業またはHLSカラー座標系を使用します。典型的には、ベースカラーの色相と彩度を決定し、次に値または明度を変えて、必要な色合いの範囲を作成します。
Numpyを使用して特定の色相からHLSグリッドを作成する簡単な例を以下に示します。
from colorsys import hls_to_rgb
import numpy as np
from PIL import Image
def ls_grid(hue, numcolors, scale):
a = np.linspace(0, 1, num=numcolors, endpoint=True)
grid = np.array([[hls_to_rgb(hue, lite, sat) for sat in a] for lite in a])
grid = (0.5 + 255 * grid).astype(np.uint8)
return grid.repeat(scale, axis=1).repeat(scale, axis=0)
hue = 0.585
numcolors, scale = 32, 16
grid = ls_grid(hue, numcolors, scale)
img = Image.fromarray(grid)
img.show()
img.save('litesat.png')
+0
非常に役に立ちます! –
1
関連する問題
- 1. 光反射ディスクオンオブジェクトThree-js
- 2. joomlaでイメージ反射を取得する方法は?
- 3. 光を反射して素材を変更します
- 4. 反射によるポインタ値の取得
- 5. 反射によるイベントパラメータの取得
- 6. 反射を使って汎用IDictionaryの値を取得する
- 7. 反射を使ってオブジェクトからarraylistサイズを取得する
- 8. 反射を使用してジェネリッククラスへのフィードを取得する
- 9. 反射を使用してリストのコピーを取得する
- 10. 反射でsql.NullStringの値を取得する
- 11. 反射と拡張方法
- 12. Clojureの警告-に反射し、I型反射に警告を取得しています、次のコードで
- 13. 反射発光。 Ldc_R8とLdc_I4_0の一般化
- 14. Golangが値を取得するために反射を助けます
- 15. 反射のオブジェクトを変換する方法
- 16. 反射によって取得されたプロパティの値を取得する関数を作成する
- 17. 光線放射照度マップ
- 18. 光センサーの値を取得する
- 19. c#反射を使って基底型のメソッド名を取得する
- 20. C#:反射を使用してIntPtr *を取得して使用する
- 21. 動的反射、チェーン方法やラムダ式
- 22. 反射からの情報を得て
- 23. オブジェクトの場合、反射やその他の方法ですべてのサブクラスを取得できますか?
- 24. 反射
- 25. 反射
- 26. 反射
- 27. 反射
- 28. 反射
- 29. []反射
- 30. 反射
[スペキュラハイライト](https://en.wikipedia.org/wiki/Specular_highlight)を見て、明るさの計算を行う方法を学習します。実際のRGB値を取得するには、標準の['colorsys'](https://docs.python.org/3/library/colorsys.html)の関数を使用して、HSVまたはHLSカラーパラメータを使用してRGBに変換します。モジュール。 –
3Dレンダリングを最初からやりたいと思っています。ただし、既存の3Dエンジンを使用する方がずっと簡単です。私は[POV-Ray](http://www.povray.org/)を見てみることをお勧めします。 –
@ PM2Ring HSLソリューションは私が必要としていたものです。それを答えとして追加する必要があります。 –