- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 python 的 colormatch 将 CIE L*a*b* 转换为 sRGB
输入:
(lab_l=70.0,lab_a=60.0,lab_b=0.0)
输出:
(1.0458503175786145, 0.47183611022803823, 0.682521668019042)
但是,1.045...超出范围 12 个字节。这是预期的行为吗?
最佳答案
L*a*b*的色域比sRGB更宽,所以转换溢出是正常的。
L*a*b* 可以表示每种可感知的颜色,但 0 ≤ r,g,b ≤ 1 范围内的 sRGB 只是一个很小的子集。您的颜色不在此子集之外。
(另请参阅 Boundaries of the visible gamut in a CIE color space )
如果您不喜欢溢出,在色彩数学中您可以使用 clamped_rgb_r
, etc properties获取范围 [0.0, 1.0] 内的值,如 explained in the documentation on Color Conversion :
RGB spaces tend to have a smaller gamut than some of the CIE color spaces. When converting to RGB, this can cause some of the coordinates to end up being out of the acceptable range (0.0-1.0 or 1-255, depending on whether your RGB color is upscaled).
Rather than clamp these for you, we leave them as-is. This allows for more accurate conversions back to the CIE color spaces. If you require the clamped (0.0-1.0 or 1-255) values, use the following properties on any RGB color:
clamped_rgb_r
clamped_rgb_g
clamped_rgb_b
示例:
from colormath import color_objects, color_conversions
lab_color = color_objects.LabColor(lab_l=70.0, lab_a=60.0, lab_b=0.0)
rgb_color = color_conversions.convert_color(lab_color, color_objects.sRGBColor)
print(repr(rgb_color))
# sRGBColor(rgb_r=1.045850317578614,rgb_g=0.47183611022803845,rgb_b=0.6825216680190419)
print((rgb_color.clamped_rgb_r, rgb_color.clamped_rgb_g, rgb_color.clamped_rgb_b))
# (1.0, 0.47183611022803845, 0.6825216680190419)
关于python - 转换为浮点 sRGB 时,CIELAB 增益饱和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37351401/
我在 Java 7 上有一个 java servlet 应用程序,它在系统资源消耗方面通常非常健康。服务器上的 CPU 使用率通常低于 50%。然而,在启动后的几分钟内,它的行为会大不相同,以至于如果
我有大约 10k 个视频流需要监控。将有一个小型集群(例如:5-10 个)的异构机器来监视这些流。由于没有足够的 CPU 来完成所有这些工作,我将不得不对流进行洗牌,一次监控其中的几个,然后切换到下一
我已经使用 boost::asio 在 C++ 中开发了一个迷你 HTTP 服务器,现在我正在使用多个客户端对其进行负载测试,但我一直无法接近 CPU 饱和。我在 Amazon EC2 实例上进行测试
我有一个简单的 Ruby 应用程序,基本上它通过 HTTP 端点获取一些数据,对其进行一点处理,将其分组并分批发送到某个远程 HTTP 端点。 当我在裸机上运行它时 - 我将 4 个 CPU 饱和到
我需要使用半径为 17 或更大的 3D 结构元素来计算形状为 (400,401,401)、大小为 64320400 字节的 3D 数组的形态学开度。结构元素ndarray的大小为 42875 字节。使
我一直在看 MMX/SSE,我想知道。有用于无符号字节和字的压缩、饱和减法的指令,但没有双字的指令。 有没有办法做我想做的事,或者如果没有,为什么没有? 最佳答案 如果您有可用的 SSE4.1,我认为
我需要创建一个脚本,让用户可以将一些类似 instagram 的过滤器应用于他们的图像。首先它应该在浏览器中完成。最简单的方法当然是 css3 过滤器。然后图像应该上传到服务器,并且必须使用与在浏览器
我是一名优秀的程序员,十分优秀!