【发布时间】:2019-05-25 11:44:07
【问题描述】:
Matlab 提供了使用CAXIS 为当前轴设置颜色限制的功能。 OpenCV 有applyColorMap,可用于突出显示灰度图像中像素强度的差异,我认为该图像映射的像素范围为 0 - 255。
我是 Matlab/图像处理的新手,并被要求从 MatLab 移植一个简单的程序,该程序使用 CAXIS 函数来更改颜色图的“亮度”。我没有使用 Matlab 的经验,但似乎他们使用此功能来“降低”将像素映射到地图上更强烈的颜色所需的强度要求
即使用“JET”的颜色图
- 当亮度 = 1 时,红色 = 255
- 当亮度 = 10 时,红色 >= 25
matlab 程序允许读取和显示 16 位图像,这显然提供了更高的像素值,而我已经阅读和完成的所有内容都表明 OpenCV 仅支持 8 位图像(用于彩色图)
因此我的问题是,是否可以在 OpenCV 中提供类似的功能?如何设置颜色图的轴限制/如何缩放颜色图查找表,以便将“不太”强烈的像素缩放到更强烈的区域?
一个类似的问题是asked,回复说数组需要“标准化”,但不幸的是我不太清楚如何实现这一点,也无法回复答案,因为我没有足够的代表!
我已经继续使用cv::normalize 将数组中的最大值设置为 maxPixelValue/brightness,但这根本不起作用。
我也尝试过将我的 16 位图像转换为具有比例因子的 CV_8UC1,但无济于事。任何帮助将不胜感激!
【问题讨论】:
标签: c++ matlab opencv image-processing