作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
有谁知道转换代码 LbgrtoLab 中的“L”是什么意思?我在网上搜索并找不到关于此转换代码的任何描述,目前我尝试同时使用 BgrtoLab/LbgrtoLab,我发现使用相同图像源的 A 和 B channel 中的值不同。看起来LBgr可以得到更好的结果。
目前我正在使用 OpenCvSharp 2.4.10。
最佳答案
尽管这个颜色转换代码的含义似乎没有记录,但也不必绝望——OpenCV 是一个开源库,所以让我们引用 source code .
case COLOR_BGR2Lab: case COLOR_RGB2Lab: case COLOR_LBGR2Lab: case COLOR_LRGB2Lab:
case COLOR_BGR2Luv: case COLOR_RGB2Luv: case COLOR_LBGR2Luv: case COLOR_LRGB2Luv:
// ....
bool srgb = code == COLOR_BGR2Lab || code == COLOR_RGB2Lab
|| code == COLOR_RGB2Luv || code == COLOR_BGR2Luv;
// ....
if (srgb && usRGBGammaTab.empty())
Mat(1, 256, CV_16UC1, sRGBGammaTab_b).copyTo(usRGBGammaTab);
else if (ulinearGammaTab.empty())
Mat(1, 256, CV_16UC1, linearGammaTab_b).copyTo(ulinearGammaTab);
// ....
这表明前缀 L
旨在区分非线性 (sRGB) 和线性 RGB 颜色空间。有关这意味着什么的更多详细信息,请参阅 this answer .
关于c# - OpencvSharp LbgrtoLab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47769797/
有谁知道转换代码 LbgrtoLab 中的“L”是什么意思?我在网上搜索并找不到关于此转换代码的任何描述,目前我尝试同时使用 BgrtoLab/LbgrtoLab,我发现使用相同图像源的 A 和 B
我是一名优秀的程序员,十分优秀!