问题描述
在 4K(3840×2160)屏幕上使用 448×448 分辨率的截图无法看清屏幕文字。
技术分析
当前实现
- 视觉编码器(SigLIP ViT)固定接受 448×448 输入
- 4K 屏幕被压缩 8.6:1 才能放入单个切片
- 12px 字体在模型中只有约 1.4×2.5 像素,基本看不清
分辨率对比
| 屏幕分辨率 |
压缩比 |
12px字体在模型中 |
可读性 |
| 1080P (1920×1080) |
4.3:1 |
2.8×5.0 px |
✅ 可读 |
| 2K (2560×1440) |
5.7:1 |
2.1×3.7 px |
⚠️ 勉强 |
| 4K (3840×2160) |
8.6:1 |
1.4×2.5 px |
❌ 看不清 |
影响场景
- 无法读取屏幕上的代码、文档、聊天内容
- 只能识别窗口布局和大色块,无法理解用户具体在做什么
- 游戏弹幕和网课记录功能在 4K 屏幕上效果大打折扣
建议方案
方案 1:按需高分辨率(推荐)
平时:448×448 低分辨率实时感知(保持现有性能)
用户提问时:切换到 1344×1344 或更高分辨率截图(看清文字)
方案 2:自适应分辨率
# 根据屏幕分辨率自动调整切片大小
if screen_width <= 1920: # 1080P
slice_size = 448
elif screen_width <= 2560: # 2K
slice_size = 672
else: # 4K
slice_size = 896
方案 3:屏幕缩放后截图
# 先把 4K 屏幕缩放到 1080P,再用 448×448 切片
scaled_screen = resize(screen, (1920, 1080))
# 这样 448×448 切片的可读性等同于 1080P 屏幕
问题描述
在 4K(3840×2160)屏幕上使用 448×448 分辨率的截图无法看清屏幕文字。
技术分析
当前实现
分辨率对比
影响场景
建议方案
方案 1:按需高分辨率(推荐)
方案 2:自适应分辨率
方案 3:屏幕缩放后截图