# HSV for cv2 **Repository Path**: timecontract/hsv-for-cv2 ## Basic Information - **Project Name**: HSV for cv2 - **Description**: vscode插件,python cv2中使用np.array的HSV预览和编辑 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-22 - **Last Updated**: 2026-08-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HSV for cv2 在 Python OpenCV 代码中,为 `np.array([H, S, V])` 提供 **HSV 颜色预览和编辑**。 写 `cv2.inRange` 的 HSV 阈值时,再也不用靠猜——代码里直接看到每个数组对应的颜色,并以可视化的方式调整。 ```python lower = np.array([90, 100, 100]) # ← 前面会出现对应颜色的色块 upper = np.array([124, 255, 255]) mask = cv2.inRange(hsv, lower, upper) ``` ## 功能 ### 1. 原生颜色块 + 原生取色器 识别到 `np.array([H, S, V])`(或 `numpy.array`,支持换行/任意空白)后,在 `[` 前渲染 VS Code **原生可点击颜色块**。点击弹出原生取色面板(饱和度/明度方块 + 色相条),拖动即实时写回代码。 ### 2. 悬停预览 鼠标悬停在数组上,显示: - **OpenCV HSV** 数值 - **RGB / HEX** 换算结果 - 「打开 H/S/V 滑条面板」悬浮链接(点击精确打开该数组的调整面板) ### 3. H/S/V 三滑条面板 在数组上**右键** →「用滑条调整 HSV 颜色」,或通过命令面板 `HSV: 用滑条调整 HSV 颜色`、悬浮链接打开: - 三个滑条:**H (0–179)**、**S (0–255)**、**V (0–255)**,按 OpenCV 取值范围 - 滑轨显示对应通道的**实时颜色渐变**(H 为色相彩虹,S 为灰→饱和,V 为黑→亮),拖动时三条联动 - 顶部大色块预览 + RGB/HEX 信息 - 支持直接输入 **HEX**(`#RRGGBB` / `#RGB`)或 **RGB**(`61, 100, 100` / `rgb(...)` / `rgba(...)`),回车应用 - 拖动即时写回代码,编辑器内颜色块同步更新 ## OpenCV HSV 约定 OpenCV 的 8 位图像中 HSV 的取值范围与常见取色器不同: | 通道 | OpenCV 范围 | 说明 | |---|---|---| | H | 0–179 | 色相 0–360° 除以 2 | | S | 0–255 | 饱和度 | | V | 0–255 | 明度 | 本扩展的所有预览和编辑均按此约定换算(原生取色器选中的 RGB 会自动转回该约定的整数)。 ## 使用方式 - 打开任意 Python 文件时自动激活,无需配置 - 入口汇总: - 点击颜色块 → 原生取色器 - 悬停 → 数值预览 + 滑条面板链接 - 右键菜单 / 命令面板 → 三滑条面板 ## 已知限制 - 颜色在 RGB 与 HSV 整数之间换算,存在 ±1 的量化误差(视觉上无差别) - 灰色(S=0)不含色相信息,经取色器往返后 H 会归 0(颜色本身一致) - 仅识别恰好包含 3 个整数的 `np.array` / `numpy.array` 调用 ## 开发 ```bash npm run watch # 开发模式(esbuild + tsc 监视) npm run compile # 类型检查 + lint + 构建 npm run package # 生产构建 npm test # 运行测试 ``` 按 F5 启动扩展开发宿主,在其中的 Python 文件里即可体验。 ## Release Notes ### 0.0.1 首个版本:颜色块预览、原生取色器、悬停预览、H/S/V 三滑条面板(渐变滑轨 + HEX/RGB 输入)。