gpt4 book ai didi

c++ - 将浮点值转换为 RGB 值

转载 作者:行者123 更新时间:2023-11-30 02:31:19 27 4
gpt4 key购买 nike

我有一个数据集,其中包含从 10^(-7) 到 10^(0) 的 700 万个浮点正值。我想以“线性方式”将浮点值转换为 RGB 值。直到现在我使用 [255-const*|log(float value)|]/255 并且它有效,但我想知道是否有一种方法可以在不使用对数的情况下转换值,也许(我希望如此)如果是否有一个 OpenGL 库可以在 GPU 的基础上做这件事。

编辑1:值从 10^(-7) 到 10^(1)。我想以最快的方式获得转换,因为我需要一个快速的程序(这就是我想使用 GPU 的原因)。

编辑2:没有一个 OpenGL 函数可以通过给出最大值和最小值来缩放您的值吗?我有一个带有用户界面的程序,我想在程序运行时更改“值窗口”。我想要这样的东西 Computerized tomography

EDIT3:这对我有帮助吗? http://glm.g-truc.net/0.9.3/api/a00157.html/

EDIT4:我想在 Matlab 中获得类似 Jet 颜色图的东西 http://blogs.mathworks.com/images/loren/73/colormapManip_14.png

最佳答案

我想这取决于您实际拥有这些值的位置。如果您在 OpenGL 中生成它们,那么您可以在 OpenGL 中执行转换,这会很快,然后提取数据。如果您在 CPU 内存中,将数据移入和移出 GPU 内存也需要一些时间。

对于这种循环,如果您使用优化 -O3 进行编译,编译器通常会对代码进行矢量化优化(参见 What is "vectorization"?)。这应该适用于 GCC、MSVC 和其他编译器。检查编译器的特定矢量化功能。

关于c++ - 将浮点值转换为 RGB 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37924915/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com