python-3.x - 如何在 HSV 颜色空间中创建下限和上限?
问题描述
我在 python 中使用 openCV 进行颜色过滤。我来到这一步,我必须创建蓝色的下限和上限。
lower_blue = np.array([35, 140, 60])
upper_blue = np.array([255, 255, 180])
所以我想知道如何定义蓝色范围?
解决方案
色调从 0 到 360 度定义如下,其中蓝色为 240 度,范围约为 210 到 270
然而,在 Python/OpenCV 中,色调被缩放到 0 到 180 的范围内。所以图表中的所有色调都除以 2。所以蓝色将在 120 处,范围从大约 105 到 135。这将为蓝色提供一个起点. 但并非所有蓝色色调都具有完全的饱和度或价值(亮度)。因此,您还需要为其中的每一个提供一个点差,其高值为 255。
我经常做的是将图像转换为 HSV 并保存。在一些基于 GUI 的工具(如 GIMP 或 Photoshop)中打开它,或使用 Python GUI 来测量蓝色阴影的实际范围。然后,我对上下限值添加和减去一些进一步的容差,并通过查看我的阈值图像进行测试。我一直在调整,直到我喜欢门槛的外观。
推荐阅读
- jupyter-lab - 在谷歌云中构建 jupyterlab
- html - 如何创建在悬停时显示图像的链接组件
- r - eventReactive 使用未更改的输入重新计算已计算的对象
- git - git 忽略以点开头的文件
- javascript - 如何使用定义的代码转换 const 国家列表?
- format - Folium Layer Control:如何正确控制显示(字体大小,空间,...)?
- python - 猜数字游戏 Python 3.8
- javascript - Asp.net core 3.1 mvc ajax 发送列表
- > 到控制器
- google-chrome - 浏览器上的迷你播放器,右下角保持静止
- laravel - 从多对多关系中获取过滤数据