DeepSeek Harness 插件介绍:meng-114/dsh-image-tiler

前言

DeepSeek Harness (DSH) 的核心设计理念之一是「一切皆插件」。在构建视觉能力时,如果直接将大图输入给视觉模型,模型通常会将整张图整体缩放到约 800×800 的等效像素,导致局部细节丢失。

meng-114/dsh-image-tiler 插件正是为了解决这一问题而生。它将大图像分割成带坐标标注的切片,并保留一张全局概览图。这样既能保留视觉模型所需的细节,又能通过概览图快速定位目标区域。

核心功能

该插件提供了一套完整的工作流,主要包含两个工具和一系列辅助功能。

切图工具:tile_image

调用 tile_image 即可完成切片。工具会根据配置参数将原图分割,并生成对应的输出文件。

参数包括:
* file_path:输入图片路径。
* tile_size:切片边长,默认 800 像素。
* overlap:切片重叠区域,默认 40 像素。
* output_dir:输出目录,默认 tiles。
* format:输出格式(如 png、jpeg、webp)。
* label:标签。
* overview_size:概览图边长。
* max_tiles:最大切片数,默认 64。

读图工具:read_tiles

read_tiles 负责读取切片,支持多种读取策略:
* 区域选片:支持 center、left、right、top、bottom、full,或显式指定坐标(如 r1c2)。
* 语义定位:通过 target 参数直接描述目标(如 “the login button”),插件会调用视觉模型在概览图上定位目标框,并返回覆盖该区域的切片。
* 工作台勾选:无参数调用时,插件会读取用户在可视化工作台中勾选的切片。

可视化工作台与拖入即切片

  • 可视化切片工作台:模型调用 tile_image 后,工具卡片会变为交互界面。你可以拖动滑块预览网格,点击“切片”生成缩略图网格,并手动勾选需要读取的切片。
  • 拖入即切片:支持将图片直接拖入 DSH Web 界面。插件会自动将图片存入工作区的 .dsh-imgtiler/ 目录并完成切片。

安装与兼容性

安装命令如下:

dsh plugin add @mengli114/dsh-image-tiler

该插件对 DSH 版本有要求,仅支持 DSH 0.1.7 线(>=0.1.7-rc.1)以上的版本。旧版本不支持设置卡片功能。

典型用法

1. 切分图像

先调用 tile_image 对大图进行切片:

tile_image({
  file_path: "large.png",
  tile_size: 800,
  overlap: 40,
  format: "png"
})

2. 读取切片

  • 按坐标读取:
    read_tiles({
      // 读取第 1 行第 2 列及周围区域
      region: "r1c2"
    })
  • 语义定位读取:
    read_tiles({
      target: "the login button"
    })
模型会自动在概览图上定位“登录按钮”,并返回覆盖该区域的切片。

注意事项

  • 路径安全:插件严格限制输入与输出路径,均必须在当前会话的工作区(session.header.cwd)内。不要使用绝对路径或超出工作区的路径。
  • 输入格式:支持 PNG、JPEG、GIF、WebP、AVIF、HEIF、TIFF。注意:GIF 文件仅按首帧处理。
  • 切片数量:单次调用最多支持 600 张切片(工具默认 64 张,可通过 max_tiles 参数上调)。
  • 优先级规则:
    • 当 target 与显式 tiles 参数同时给出时,显式 tiles 优先。
    • 当 target 与工作台勾选同时存在时,target 优先。

总结

meng-114/dsh-image-tiler 是一个功能完备的图像处理工具,通过切片和概览图机制,帮助视觉模型在保留细节的同时降低 token 消耗。配合可视化工作台和语义定位功能,它能够显著提升复杂图像任务的准确性和效率。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜