在多普勒信号分析的背景下,将测量的速度转换为如下的色标。遗憾的是,我无法直接访问速度值,因此我必须将色标数字化回一维数字刻度。我通过模拟信号S-video电缆以Python Numpy.ndarray
的形式获得图像(例如下面的图像)。有人能指出我合适的算法吗?我应该尝试使用颜色直方图吗?
色标是对称的,因此如果最大速度为x
,则最小值为-x
。
此比例将用于分析此类图像(使用OpenCV):
答案 0 :(得分:2)
这种色标似乎很容易重现,无需使用HSV或HSL。
假设x
是float
,其范围可以从-1.0f
到1.0f
:
r = std::max<int>(0, std::min<int>(255, 512 * x));
g = std::max<int>(0, std::min<int>(255, 512 * (std::abs<float>(x) - 0.5f)));
b = std::max<int>(0, std::min<int>(255, -512 * x));