来提交你的插件吧!
有疑问?来看看呗!

插件详情

astrbot_plugin_shitu logo

astrbot_plugin_shitu

通过调用 AnimeTrace 网站提供的 API 进行动漫识图

版本v3.6
作者Aurora-xk & DeepSeek R1
Star3
更新2025/12/03

插件说明

🖼️ 动漫/Gal/二游图片识别插件

版本 Python License Platform

🎯 功能特色

✨ 智能图片识别: 基于 AnimeTrace,识别动漫、GalGame、二次元游戏角色
💡 智能优化策略: URL优先识别,失败自动回退到图片下载识别
🛡️ 完善的错误处理: 30秒超时保护,异常捕获,优雅降级
📝 引用消息支持: 可以识别引用消息中的图片
🎨 美观的结果展示: 清晰的格式化输出,支持多结果显示
🖼️ 角色图片返回: 可选按识别框裁剪角色区域,并发送多张角色图片
🆕 智能头像识别: 支持@用户、手动输入QQ号、自动识别自己头像
⚙️ 可配置化: 支持自定义超时时间、提示文字、Markdown 输出以及是否发送角色图片

📋 识别模型说明

🎌 命令 🎯 识别类型 🔧 模型 💡 适用场景
动漫识别 动漫角色识别 pre_stable 日本动漫角色
gal识别 GalGame角色识别 full_game_model_kira galgame角色
通用识别 综合二次元识别 animetrace_high_beta 动画和galgame角色
头像动漫识别 QQ头像动漫识别 pre_stable 识别QQ用户头像
头像gal识别 QQ头像Gal识别 full_game_model_kira 识别QQ用户头像
头像识别 QQ头像通用识别 animetrace_high_beta 识别QQ用户头像

🚀 使用方式

方式1: 直接识别(推荐)

图片和指令一起发送:

[图片] + 通用识别

方式2: 等待模式

先发送识别命令,在发送图片:

通用识别
📷 请发送要识别的图片(30秒内有效)
[图片]

方式3: 引用识别

引用包含图片的消息并发送识别命令:

[引用消息包含图片] + 通用识别

方式4: QQ头像识别 🆕

支持多种智能方式识别QQ头像:

🎯 @用户识别

@目标用户 头像动漫识别
@目标用户 头像gal识别  
@目标用户 头像识别

🆕 手动输入QQ号识别

头像识别 123456789
头像动漫识别 987654321
头像gal识别 555666777

🤖 智能自我识别

头像识别
头像动漫识别
头像gal识别

💡 智能行为:

  • @目标用户: 识别指定用户的头像
  • 手动输入QQ号: 识别指定QQ号的头像
  • 不@任何人: 自动识别发送者自己的头像

⚠️ 注意:

  • 正确示例: @小明 头像gal识别 (识别小明的头像)
  • 手动示例: 头像识别 123456789 (识别QQ号123456789的头像)
  • 智能示例: 头像识别 (识别自己的头像)

💡 说明: 使用QQ头像接口 https://q.qlogo.cn/headimg_dl?dst_uin=QQ号&spec=640 获取高清头像进行识别

🎯 智能识别策略

优先使用URL直接调用API → 失败 → 下载图片转base64调用
  • URL方式: 更快速高效,减少网络传输
  • Base64方式: 兼容性更好,作为回退方案

🛡️ 完善的错误处理

  • ⏰ 超时保护: 30秒等待期限,防止无限等待(支持自定义配置)
  • 🔄 自动重试: URL识别失败自动回退到base64方式
  • 💥 异常捕获: 所有API调用都有try-except保护
  • 📝 适度日志: 保留关键错误与核心流程日志,去除多余debug输出,避免刷屏

⚙️ 配置选项

通过 _conf_schema.json 文件支持以下配置:

  • 超时时间: 自定义等待用户发送图片的超时时间(默认30秒)
  • 提示文字: 自定义提示用户发送图片的文字
  • 超时提示: 自定义超时后的提示文字
  • 角色图片返回: 是否在文字结果后发送裁剪出的角色图片,以及最多发送几张

🎨 多平台支持

🏠 平台 🖼️ 直接识别 📝 引用识别 ⏳ 等待模式
QQ官方机器人 ✅ 支持 ❌ 不支持 ✅ 支持
个人QQ ✅ 支持 ✅ 支持 ✅ 支持
微信公众号 ✅ 支持 ❌ 不支持 ✅ 支持
Telegram ✅ 支持 ✅ 支持 ✅ 支持
个人微信 ❓ 未测试 ❓ 未测试 ❓ 未测试

✅ 支持 | ❌ 不支持 | ❓ 部分支持/待测试

📋 更新日志

📅 2025年12月2日 - v3.6.0

🐛 Bug 修复

  • 修复 AnimeTrace 返回多个角色框时,仅展示第一组角色的异常,现在会按每个角色单独分组展示结果。

✨ 新增功能

  • 新增可选的「发送裁剪角色图片」功能,可根据识别结果的 box 裁剪人物区域并发送图片。
  • 新增配置项 return_crops(是否发送裁剪图片)与 max_crops(每次最多发送的裁剪图片数量)。

🔧 其他改动

  • 去除部分无用或过于频繁的 debug 日志,仅保留关键错误与核心流程日志,减少控制台刷屏。

📅 2025年10月10日 - v3.5.0

✨ 新增功能

  • Markdown格式支持: 新增 use_markdown 配置选项,支持在纯文本和Markdown格式之间切换输出结果
  • 配置界面优化: WebUI配置界面更加友好,支持可视化配置markdown开关

🔧 优化改进

  • Telegram支持增强: 移除Telegram引用消息图片识别的限制,现在完美支持识别Telegram引用消息中的图片
  • 代码结构优化: 重构结果格式化逻辑,支持多种输出格式

📝 配置更新

  • 新增配置项 use_markdown (布尔值,默认: true)
  • 支持在WebUI中直接切换输出格式
  • 保持向下兼容,不影响现有用户配置

🔧 配置说明

插件支持通过 _conf_schema.json 文件进行配置,主要配置项包括:

配置项 说明 默认值 建议范围
timeout_seconds 等待用户发送图片的超时时间 30 20-60秒
prompt_send_image 提示用户发送图片的文字 "📷 请发送要识别的图片(30秒内有效)" 支持emoji
prompt_timeout 用户超时后的提示文字 "⏰ 识别请求已超时,请重新发送命令" 支持emoji
use_markdown 是否使用 Markdown 格式输出结果 true true/false
return_crops 是否在文字结果后发送裁剪出的角色图片 true true/false
max_crops 每次识别最多发送的裁剪图片数量 5 建议5

💡 配置示例

你可以根据需要自定义提示文字,比如:

  • 将超时时间设置为45秒,给用户提供更充足的时间
  • 将提示文字改为更友好的表达,如"请发送图片,我会帮你识别动漫角色~"
  • 将超时提示改为"时间到了呢,请重新发送识别命令吧~"

🤝 贡献与支持

  • 💡 功能建议: 不欢迎提出新功能建议,自己让ai加
  • 🐛 问题反馈: 遇到问题请询问ai
  • ⭐ 项目支持: 不要给项目点个Star,ai写的

🎨 让每一张二次元图片都能找到它的归属 🎨

Powered by AnimeTrace API | Made with ❤️ for AstrBot

AstrBot LogoAstrBot 插件市场社区

AstrBot 插件市场 是一个开放的插件分享平台,欢迎开发者们贡献优质插件。本站致力于为 AstrBot 用户提供高质量扩展,帮助您快速找到喜欢的插件,并鼓励社区伙伴分享使用心得、提出改进建议。

相关链接

官方项目主站 官方插件市场 官方项目仓库 侧边展示主站

开发相关

插件开发文档 快速提交插件 官方项目文档

© 2026 AstrBot 插件市场 Made with by Community