c++ - 由 adobe 完成的用于对图像进行采样的 HSV 值范围

标签 c++ image opencv image-processing photoshop

我有一张图片,如插图所示。如图所示,我使用蓝色在 Adob​​e Photoshop 中对它进行了采样。采样图像在左侧以灰度显示。

我知道 openCV 提供了一个类似的方法来采样图像,即 inRange() 函数。如何找出 Adob​​e 检查以对我的图像进行采样的 HSV 值范围。由于生成的图像几乎是我想要的,我无法自己确定范围如果有人能指导我做同样的事情,那将是一个很大的帮助。

Photoshop Sampled

最佳答案

您可以使用 cv::cvtColor(...) 将图像转换为 HSV here the documentation

然后根据Wikipedia蓝色接近图像 HUE channel 的 240°。 您可以设置 maxHue = 270minHue = 180 或其他值来扫描图像。

也许你应该设置一个 minSaturation 和一个 minValue 来避免黑色和白色。

要找到最佳范围,您可以将它们与 Qt GUI 中的一些 slider 链接并更改它们,直到获得与 photoshop 相同的结果...

关于c++ - 由 adobe 完成的用于对图像进行采样的 HSV 值范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19210225/

相关文章:

iphone - 从应用程序包加载图像的最佳方式

python - 如何从 Python cv2、scikit 图像和 mahotas 中的 Internet URL 读取图像?

c++ - 如何从 QProcess 获取错误代码?

c++ - 在 Visual Studio 中使用本地 Windows 调试器运行第一个程序。输出窗口显示无数个 "Cannot find or open the PDB file"

c++ - 基于范围的 for 循环等价物

Swift - 动画图像序列

c++ - 清除屏幕上的特定位置

Android:Camera.takePicture 回调并不总是触发

python - 在python中从视频导入大量图像的有效方法

python - 使用 Code::Blocks 构建 OpenCV.cbp 时出现 Python.h 问题