Communitygithub.com

DDDFXYqiming/pseudo-vision-skill

Local OCR, color-statistics, pixel-scan, and metadata bridge as a cross-framework skill for text-only agent models; no external vision API. Algorithm-identical to dsh-pseudo-vision / pi-pseudo-vision.

O que é pseudo-vision-skill?

pseudo-vision-skill is a Claude Code agent skill that local OCR, color-statistics, pixel-scan, and metadata bridge as a cross-framework skill for text-only agent models; no external vision API. Algorithm-identical to dsh-pseudo-vision / pi-pseudo-vision.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add DDDFXYqiming/pseudo-vision-skill

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

pseudo-vision:本地伪视觉

你(当前模型)可能无法直接读取图片内容。本 skill 用本地管线把图片转换为结构化文本证据,读完证据即可"看图"。

何时使用

  • 用户消息附带图片(截图/照片),并询问图片内容、图中文字、界面状态等
  • 你收到图片路径且任务需要图片内容(如分析 UI 截图、读取报错截图、识别表格)
  • 用户说"看一下这张图 / 图里写了什么 / 这是什么界面"

不要说"我无法查看图片"——先运行本 skill。

能力清单

单个 CLI(scripts/pv.ts)覆盖 5 种模式,对应插件版全部工具:

CLI 模式等价插件工具能力
full(默认)pseudo_vision_convert四件套聚合为单一证据块:预处理 OCR + 数字复核 + 颜色统计 + universal 像素扫描 + 元信息(带缓存、32K 封顶、超高图自动分块、OCR 失败写回)
--mode ocrvision_ocr预算预处理 OCR + 低置信度区域放大重读 + 数字复核通道(IP/URL/端口/长数字的 0↔6/9/8 字形重识别,标点保持融合)
--mode colorsvision_color_stats9 桶(白/黑/灰/红/绿/蓝/黄/青/品红/其他)像素占比 + 平均亮度
--mode scanvision_pixel_scantarget:找指定颜色行(默认红 #ff0000);universal:全部非背景色行/列(背景豁免 + 部分带 surfaced)
--mode metavision_meta尺寸、格式、色彩空间、四角 + 中心采样色

完整参数:

--mode full|ocr|colors|scan|meta   能力模式(默认 full)
--budget auto|small|normal|large|mega   OCR 分辨率预算(密集表格/小字用 large)
--langs chi_sim+eng                 tesseract 语言包
--no-resize                         跳过 OCR 预算缩放(保留增强)
--bypass-cache                      强制重算(默认命中 sha256 缓存)
--scan-mode target|universal        scan 模式(默认 target)
--scan-target #rrggbb               目标色(scan target 模式,默认 #ff0000)
--scan-threshold 0.05               行/列密度阈值
--json                              结构化输出

用法

SKILL_DIR 为本文件所在目录(下述命令中的相对路径都基于它)。

首次使用前若未初始化(缺 node_modules):

node SKILL_DIR/setup.mjs

完整转换(推荐,等价于插件版全部 4 个工具的聚合证据):

node --experimental-strip-types SKILL_DIR/scripts/pv.ts <图片绝对路径>

单项查询(可选):

# 仅 OCR 文字(含低置信度重试 + IP/URL/端口数字复核)
node --experimental-strip-types SKILL_DIR/scripts/pv.ts <图片路径> --mode ocr

# 仅颜色统计(9 桶占比 + 平均亮度)
node --experimental-strip-types SKILL_DIR/scripts/pv.ts <图片路径> --mode colors

# 像素扫描:默认找指定颜色(红色)的行;universal 模式输出全部非背景色行/列
node --experimental-strip-types SKILL_DIR/scripts/pv.ts <图片路径> --mode scan --scan-mode universal

# 仅元信息(尺寸/格式/四角与中心采样色)
node --experimental-strip-types SKILL_DIR/scripts/pv.ts <图片路径> --mode meta

操作要点:

  • 一次转换一张图;多张图逐张运行
  • 需要程序化解析输出时加 --json(单对象输出:mode / file / 各模式详情字段 / text / error
  • 命令失败分两类:护栏拒绝(非图片文件 / 超 64MB,预期行为,换合法图片即可)与管线失败(证据块内带 [OCR 失败: …],颜色/扫描/元信息块仍有效)
  • 首次使用若报缺 node_modules,先跑 node SKILL_DIR/setup.mjs

获取图片路径

  • 框架给出图片文件路径(常见于粘贴截图后)→ 直接使用该路径
  • 图片以 base64 形式出现在消息中 → 先落盘再转换:
    echo "<base64 数据>" | base64 -d > /tmp/pv-image.png
    
  • 你有 read_image / screenshot 类工具且其返回图片数据 → 先保存到文件

大文件注意:图片超过 64MB 或非 PNG/JPEG/WebP/GIF 会被护栏拒绝(这是预期行为)。

解读证据块

输出证据格式(各块含义):

  • [pseudo-vision … sha256=… budget=…]:原图指纹与所用预算
  • [OCR chi_sim+eng] N 行:识别的文字行,x=… y=… 是归一化坐标(0-1,可用于定位)
  • [数字复核 N 处]:对 IP/URL/端口/长数字的自动纠错记录(原读 → 纠正 + 置信度变化),纠正后的值更可信
  • [颜色统计]:像素颜色分布 + 平均亮度(可推断深/浅色主题)
  • [像素扫描]:非背景色的行/列分布(可推断布局结构、分割线、表格)
  • [元信息]:尺寸/格式/四角与中心采样色
  • [OCR 失败: …]:OCR 管线出错的原因(此时颜色/扫描/元信息仍有效)
  • [证据已截断: …]:超大证据被截断到 32K 字符

能力边界(如实告知用户)

  • 伪视觉 ≠ 真多模态:复杂空间关系、真实照片细节、图标样式的描述精度有限
  • OCR 仍可能认错非数字 token;数字关键 token(IP/URL/端口/长数字)已由复核通道兜底
  • 颜色统计只给占比,无法还原图标/图片细节
  • 同一图片重复转换有磁盘缓存(sha256 键),结果一致且秒回

Habilidades Relacionadas