← 返回 Skills 市场
221
总下载
0
收藏
0
当前安装
9
版本数
在 OpenClaw 中安装
/install aesthetic-scorer
功能描述
给你的照片打分、评价反馈、给出改进建议或美学分析 / Aesthetic photo scorer with detailed analysis
使用说明 (SKILL.md)
\r \r
Aesthetic Scorer Skill\r
\r This skill provides comprehensive aesthetic evaluation and improvement suggestions for images and photographs through a dynamic weighted two-tier architecture.\r \r
Architecture Overview\r
\r Two Evaluation Sources with Dynamic Weight:\r \r
- Improved Aesthetic Predictor: CLIP ViT-L/14 + MLP for content-level aesthetic scoring\r
- Understands image semantics and visual impact\r
- Base Weight: 45% (adjustable 45%-70% based on NIMA consensus)\r \r
- NIMA (Neural Image Assessment): MobileNet for technical quality scoring\r
- Provides detailed quality distribution and standard deviation\r
- Base Weight: 55% (adjustable 30%-55% based on NIMA consensus)\r \r Dynamic Weight Logic:\r
- NIMA returns a standard deviation (std) indicating score distribution spread\r
- High std = controversial image = more weight to IAP (content-based)\r
- Low std = consensus = use balanced weights\r \r
Dynamic Weight Formula\r
\r
normalized_std = min(nima_std / 2.5, 1.0)\r
weight_iap = 0.45 + normalized_std * 0.25 // Range: 45% - 70%\r
weight_nima = 1.0 - weight_iap\r
\r
// Penalty when scores diverge significantly (diff >= 2.0)\r
penalty = 0.05 * |IAP_score - NIMA_score|\r
\r
weighted_score = weight_iap * IAP + weight_nima * NIMA - penalty\r
```\r
\r
| Parameter | Value | Description |\r
|-----------|-------|-------------|\r
| Base IAP Weight | 45% | Balanced starting point |\r
| Base NIMA Weight | 55% | Balanced starting point |\r
| Max Adjustment | ±25% | IAP weight increases with controversy |\r
| IAP Weight Range | 45% - 70% | Dynamic adjustment |\r
| Divergence Threshold | 2.0 | Score difference triggers penalty |\r
| Divergence Penalty | 0.05 | Per point of difference |\r
\r
**Evaluation Text Generation**:\r
- The detailed evaluation text (composition, color, lighting, technical quality, improvement suggestions) is generated by the AI (WorkBuddy) based on:\r
- The weighted scores from both models\r
- Visual understanding of the photo content\r
- Professional photography knowledge and best practices\r
- This provides professional-grade analysis without requiring external API calls\r
\r
## Workflow\r
\r
### Phase 1: Execute Both Evaluations\r
\r
**Step 1: Improved Aesthetic Predictor (dynamic weight)**\r
1. Execute `scripts/score_improved_predictor.py \x3Cimage_path>`\r
2. Parse output score (0-10 scale)\r
3. Record as `score_improved`\r
\r
**Step 2: NIMA Model (dynamic weight)**\r
1. Execute `scripts/score_nima.py \x3Cimage_path>`\r
2. Parse mean score AND standard deviation\r
3. Record as `score_nima` and `nima_std`\r
\r
### Phase 2: Calculate Weighted Comprehensive Score (Dynamic)\r
\r
**Step 2.1: Calculate Dynamic Weights**\r
- Extract NIMA's standard deviation (std_score)\r
- Normalize: `normalized_std = min(std_score / 2.5, 1.0)`\r
- Calculate weights: `weight_iap = 0.45 + normalized_std * 0.25`\r
\r
**Step 2.2: Apply Penalty if Needed**\r
- If `|IAP - NIMA| >= 2.0`, apply penalty: `penalty = 0.05 * |IAP - NIMA|`\r
\r
**Step 2.3: Calculate Final Score**\r
```\r
weighted_score = weight_iap * IAP + (1-weight_iap) * NIMA - penalty\r
```\r
\r
**Example:**\r
- IAP = 6.44, NIMA = 4.52, NIMA_std = 1.87\r
- normalized_std = 1.87/2.5 = 0.75\r
- weight_iap = 0.45 + 0.75×0.25 = 0.637 (63.7%)\r
- weight_nima = 0.363 (36.3%)\r
- Score_diff = 1.92 \x3C 2.0, penalty = 0\r
- Final = 0.637×6.44 + 0.363×4.52 = **5.74**\r
\r
**Security Note:** All processing is 100% local - no data leaves your device\r
\r
### Phase 3: Generate Evaluation at Appropriate Detail Level\r
\r
**CRITICAL: Three Detail Levels Available**\r
\r
Always generate the **detailed evaluation (10分)** in the background first and save it. Then present the evaluation at the requested detail level:\r
\r
| Level | Name | Word Count per Photo | Description |\r
|-------|------|---------------------|-------------|\r
| 1 | 简要 | ~200字 | Concise overview, key points only |\r
| 3 | 中等 (默认) | ~300字 | Balanced, covers all aspects | ⭐ DEFAULT |\r
| 10 | 详细 | ~4000字 | Comprehensive, in-depth analysis |\r
\r
**How User Requests Different Levels:**\r
- 默认/未指定 → 使用 3分(中等),约300字\r
- "详细评价" / "详细版" / "完整评价" → 使用 10分(详细),约4000字\r
- "简要评价" / "简洁版" / "简要说明" → 使用 1分(简要),约200字\r
\r
**Important:**\r
- ALWAYS generate detailed evaluation (10分) in background first\r
- Save detailed evaluation so it can be retrieved immediately if user requests it\r
- Present the appropriate level based on user request (default: 3分)\r
- If user requests detailed evaluation after seeing summary, retrieve the saved detailed version\r
\r
## Output Format by Detail Level\r
\r
### Level 1: 简要 (~200字 per photo)\r
\r
```markdown\r
## [Photo Name]\r
\r
综合评分: X.XX/10 (等级: 夯/顶级/人上人/NPC/拉完了)\r
构图: [2-3句话]\r
色彩: [2-3句话]\r
光线: [2-3句话]\r
技术: [2-3句话]\r
建议: [3-4条关键建议]\r
```\r
\r
### Level 3: 中等 (默认, ~300字 per photo)\r
\r
```markdown\r
## [Photo Name]\r
\r
### 综合评分: X.XX/10 (夯/顶级/人上人/NPC/拉完了)\r
\r
### 综合分析\r
\r
#### 构图评价\r
[3-4句话]\r
\r
#### 色彩评价\r
[3-4句话]\r
\r
#### 光线评价\r
[3-4句话]\r
\r
#### 技术质量评价\r
[3-4句话]\r
\r
### 改进建议\r
\r
#### 拍摄技巧\r
[3条建议]\r
\r
#### 后期处理\r
[3条建议]\r
\r
#### 构图优化\r
[3条建议]\r
\r
### 总体评价\r
[2-3句话]\r
```\r
\r
### Level 10: 详细 (~4000字 per photo)\r
\r
```markdown\r
## [Photo Name]\r
\r
### 综合评分: X.XX/10 (夯/顶级/人上人/NPC/拉完了)\r
\r
### 评分解读\r
[3-4句话]\r
\r
### 综合分析\r
\r
#### 构图评价\r
[6-10详细句话]\r
\r
#### 色彩评价\r
[6-10详细句话]\r
\r
#### 光线评价\r
[6-10详细句话]\r
\r
#### 技术质量评价\r
[6-10详细句话]\r
\r
### 改进建议\r
\r
#### 拍摄技巧\r
[5-7详细条建议]\r
\r
#### 后期处理\r
[5-7详细条建议]\r
\r
#### 构图优化\r
[5-7详细条建议]\r
\r
### 总体评价\r
[3-4段,每段6-8句]\r
```\r
\r
### Multiple Photos Comparison (Level 3, ~600字 total)\r
\r
```markdown\r
## 照片对比分析\r
\r
### 照片 1: [Name]\r
[Level 3 evaluation as above, ~300字]\r
\r
### 照片 2: [Name]\r
[Level 3 evaluation as above, ~300字]\r
\r
## 对比总结\r
\r
| 对比项 | 照片1 | 照片2 | 胜出 |\r
|--------|-------|-------|------|\r
| 综合评分 | X.XX/10 | X.XX/10 | 照片X |\r
| 构图 | [评级] | [评级] | 照片X |\r
| 色彩 | [评级] | [评级] | 照片X |\r
| 光线 | [评级] | [评级] | 照片X |\r
| 技术质量 | [评级] | [评级] | 照片X |\r
\r
## 综合建议\r
[3-4句话]\r
```\r
\r
## Score Interpretation Guide\r
\r
### "从夯到拉" Rating System / "从夯到拉" 评分系统\r
\r
| Score Range | 等级 / Level | Description / 描述 |\r
|-------------|-------------|-------------------|\r
| 9.0-10.0 | **夯 (Hāng)** | 好到没话说,顶级水平 / Exceptional, top-tier, perfect |\r
| 8.0-8.9 | **顶级** | 极好,专业水准 / Excellent, professional level |\r
| 7.0-7.9 | **人上人** | 很好,超越常人 / Very good, above average, outstanding |\r
| 6.0-6.9 | **NPC** | 不起眼,普普通通 / Average, unremarkable, plain |\r
| 0.0-5.9 | **拉完了** | 差到没法再差 / Terrible, needs major improvement |\r
\r
### Traditional Rating / 传统评分\r
\r
| Score Range | Level | Description |\r
|-------------|-------|-------------|\r
| 9.0-10.0 | 优秀 | Exceptional quality, professional level |\r
| 8.0-8.9 | 很好 | High quality with minor improvements needed |\r
| 7.0-7.9 | 良好 | Solid quality, above average |\r
| 6.0-6.9 | 一般 | Average quality, noticeable room for improvement |\r
| 4.0-5.9 | 较差 | Below average, significant improvements needed |\r
| 0.0-3.9 | 很差 | Poor quality, substantial improvements needed |\r
\r
**重要说明**: 综合评分格式示例:\r
```\r
综合评分: X.XX/10 (夯)\r
综合评分: X.XX/10 (顶级)\r
综合评分: X.XX/10 (人上人)\r
综合评分: X.XX/10 (NPC)\r
综合评分: X.XX/10 (拉完了)\r
```\r
\r
## Error Handling\r
\r
If any evaluation source fails:\r
\r
1. **Improved Predictor fails**: Use NIMA only\r
- Score: NIMA score only\r
- Note in report: "Improved Predictor 不可用,仅使用 NIMA 评分"\r
\r
2. **NIMA fails**: Use Improved Predictor only\r
- Score: Improved Predictor score only\r
- Note in report: "NIMA 不可用,仅使用 Improved Predictor 评分"\r
\r
3. **Both sources fail**: Inform user and suggest trying again later\r
\r
## Script Dependencies\r
\r
All scripts in `scripts/` directory must be executable:\r
\r
- `score_improved_predictor.py`: Fast aesthetic scoring\r
- `score_nima.py`: Detailed quality analysis\r
- `comprehensive_score.py`: Integrated weighted scoring\r
\r
## Model Paths (Local Installation)\r
\r
### Default Paths (Windows)\r
| Model | Location |\r
|-------|----------|\r
| Improved Aesthetic Predictor (.pth) | `F:\software\skill\aesthetic-scorer\models\improved-aesthetic-predictor\sac+logos+ava1-l14-linearMSE.pth` |\r
| NIMA MobileNet weights (.h5) | `F:\software\skill\aesthetic-scorer\models\
eural-image-assessment\weights\mobilenet_weights.h5` |\r
\r
### Environment Variables (Override Default Paths)\r
You can override model paths by setting environment variables:\r
\r
| Variable | Description | Default |\r
|----------|-------------|---------|\r
| `AESTHETIC_SCORER_MODEL_DIR` | Override IAP model directory | `F:\software\skill\aesthetic-scorer\models\improved-aesthetic-predictor` |\r
| `AESTHETIC_SCORER_NIMA_DIR` | Override NIMA model directory | `F:\software\skill\aesthetic-scorer\models\
eural-image-assessment` |\r
\r
Python runtime: `F:\software\python\python.exe` (Python 3.12)\r
\r
Required packages (install via `pip install -r requirements.txt`): `torch>=2.0.0`, `torchvision>=0.15.0`, `transformers>=4.30.0`, `tensorflow>=2.12.0`, `tf_keras>=2.12.0`, `pillow>=10.0.0`, `numpy>=1.23.0`\r
\r
## Usage Examples\r
\r
**User**: "请评价这张照片"\r
**Action**: Execute both evaluations, calculate weighted score, generate Level 3 evaluation (default, ~300字)\r
\r
**User**: "详细评价这张照片"\r
**Action**: Execute both evaluations, calculate weighted score, generate Level 10 evaluation (~4000字)\r
\r
**User**: "简要评价这张照片"\r
**Action**: Execute both evaluations, calculate weighted score, generate Level 1 evaluation (~200字)\r
\r
**User**: "对比这两张照片"\r
**Action**: Evaluate both photos, generate Level 3 comparison (~600字 total)\r
\r
**User**: [评价后] "给我看详细版"\r
**Action**: Retrieve the saved Level 10 evaluation and present it immediately\r
\r
## Notes\r
\r
- Always execute both evaluation sources when available\r
- Present evaluation as unified expert opinion\r
- Default to Level 3 (medium detail) unless user specifies otherwise\r
- Always generate and save Level 10 (detailed) evaluation in background\r
- Retrieve saved detailed evaluation when requested, don't regenerate\r
- Avoid repetitive references to evaluation sources\r
- Use natural, flowing language\r
- Adjust detail level based on user request\r
- Support both Chinese and English\r
- Always display "从夯到拉" rating level in the score\r
安全使用建议
This skill appears to do what it says: offline, local aesthetic scoring with two local models. Before installing, consider these practical points: (1) You must install large ML dependencies (PyTorch, TensorFlow) and provide the model weight files locally—scripts expect local model files and will error if they're missing. (2) The defaults use Windows F:\ paths; set the environment variables (AESTHETIC_SCORER_MODEL_DIR, AESTHETIC_SCORER_NIMA_DIR) to where you store models on your machine. (3) SKILL.md requires the agent to always generate and 'save' very large detailed reports in the background—ask where the agent will store these files and for how long (privacy/disk-space consideration). (4) The skill does not request credentials or perform network exfiltration per the provided code, but installing/using it requires trust in the model weights you obtain (ensure you download from reputable sources). If you need the skill to be strictly non-persistent, request or implement an explicit save location and retention policy before enabling it.
功能分析
Type: OpenClaw Skill
Name: aesthetic-scorer
Version: 1.4.9
The aesthetic-scorer skill is a legitimate tool for image analysis using local CLIP and NIMA models. The Python scripts (scripts/score_improved_predictor.py, scripts/score_nima.py) implement scoring logic without suspicious network or file system activity, and the SKILL.md instructions focus on output formatting and scoring workflows. It includes security-conscious practices like using weights_only=True in torch.load and forcing offline modes for transformers to ensure privacy. While it contains hardcoded Windows file paths as defaults, these are consistent with a local development environment and do not indicate malicious intent.
能力评估
Purpose & Capability
Name/description match the included code: two local models (Improved Aesthetic Predictor using CLIP+MLP and NIMA MobileNet) are used to compute a combined score. Declared dependencies (PyTorch, transformers, TensorFlow/Keras, Pillow, numpy) are appropriate for the stated models. Environment variables in config.json (model directory overrides) are proportional to the need to locate local model files.
Instruction Scope
SKILL.md instructs the agent to always generate a very large ('Level 10' ~4000-word) detailed evaluation in the background for every requested image and to 'save' it for immediate retrieval. The code files do not implement text-generation or a save/load mechanism for those evaluations—the large-text generation/saving would be done by the agent runtime per the SKILL.md instructions. This is not inherently malicious, but it is a scope/persistence concern: it implies extra compute, disk usage, and persistent storage of possibly sensitive images/analysis without specifying where or how long data is stored. Also there is a minor mismatch between README (which suggests automatic downloads on first use) and the scripts that force transformers to local_files_only and error if model files are missing; you must provision model files locally before use.
Install Mechanism
There is no formal install spec in the registry entry (instruction-only install). The package contains requirements.txt and README instructions to pip-install heavy ML packages and clone model repos. That is expected given the model-based functionality, but it means you must manually install large dependencies and place model weight files in the expected local paths (defaults use Windows-style F:\ paths). No remote, untrusted download URLs or obfuscated installers were found in the package.
Credentials
The skill does not request any credentials, tokens, or unexpected environment variables. The only env variables referenced are optional overrides for local model directories (AESTHETIC_SCORER_MODEL_DIR and AESTHETIC_SCORER_NIMA_DIR), which are reasonable and proportional.
Persistence & Privilege
always:false and autonomous invocation are normal. The SKILL.md's instruction to 'ALWAYS generate' and 'save' the detailed evaluation implies persistent storage of generated evaluations (and potentially intermediate outputs). The code itself does not modify other skills or global agent settings. You should confirm where the agent will store the saved detailed evaluations and for how long, since that affects privacy and disk usage.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install aesthetic-scorer - 安装完成后,直接呼叫该 Skill 的名称或使用
/aesthetic-scorer触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.4.9
code renew
v1.4.8
No changes detected in this version.
- No code or documentation updates were made between versions 1.4.8 and 1.7.0.
- All features and functionality remain the same.
- No new bug fixes, enhancements, or workflow changes.
v1.4.7
No code or documentation changes detected in this release (1.4.7).
- No differences found compared to the previous version.
- Functionality, workflow, and usage remain unchanged.
v1.4.6
**Dynamic scoring now adapts to photo controversy and score divergence for fairer, smarter analysis.**
- Introduced dynamic weighting: aesthetic and technical scores blend adaptively based on NIMA score standard deviation (spread/controversy).
- NIMA’s technical assessment receives less influence when the community is divided; content-based aesthetic scoring takes precedence.
- Added divergence penalty: if aesthetic and technical scores differ by ≥2.0, the final score is gently reduced for reliability.
- Updated documentation to reflect new weighting formula, clearer logic, and output examples.
- Error fallback, detail level logic, and user interaction workflow remain unchanged.
v1.4.5
**Summary: This version updates the weightings for aesthetic scoring, simplifies documentation, and removes non-essential files.**
- Changed weighted scoring formula: Improved Predictor now 35%, NIMA now 65% (was 50/50).
- Updated output formatting to always display "从夯到拉" rating level in the score.
- Clarified that all evaluation is 100% local and secure.
- Simplified and shortened SKILL.md description, removing triggers and extraneous details.
- Removed example, reference, and extra documentation files for a leaner package.
v1.4.4
- Updated version to 1.4.4.
- Minor wording changes in the description and score format for consistency.
- Adjusted score presentation so the "从夯到拉" level is shown directly after the score, simplifying the format.
- Removed redundancy in instructions regarding score level display.
- No code or core logic changes; documentation and formatting improvements only.
v1.4.2
- Removed legacy documentation and reference files to streamline the repository.
- No functional or logic changes; core evaluation features remain the same.
- Existing documentation and guided usage retained in SKILL.md for clarity.
- Skill description updated to be more concise.
v1.4.1
## v1.4.1 (2026-03-18)
- 简化 skill 描述为简洁中英文
- 新增"从夯到拉"评分系统 (夯/人上人/顶级/NPC/拉完了)
- 优化输出格式,所有评价都显示等级
- 更新配置文件支持新评分系统
v1.4.0
## v1.4.0 (2026-03-18)
- 初始发布到 ClawHub
- 支持基于 CLIP 和美学模型的图片美学评分
- 双模型加权评估 (Improved Aesthetic Predictor 50% + NIMA 50%)
- 三级详细度评价 (简要/中等/详细)
- 支持中英文双语
- 提供 CLI 工具
- 包含完整的示例和文档
元数据
常见问题
摄影照片评分Aesthetic Scorer 是什么?
给你的照片打分、评价反馈、给出改进建议或美学分析 / Aesthetic photo scorer with detailed analysis. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 221 次。
如何安装 摄影照片评分Aesthetic Scorer?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install aesthetic-scorer」即可一键安装,无需额外配置。
摄影照片评分Aesthetic Scorer 是免费的吗?
是的,摄影照片评分Aesthetic Scorer 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
摄影照片评分Aesthetic Scorer 支持哪些平台?
摄影照片评分Aesthetic Scorer 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 摄影照片评分Aesthetic Scorer?
由 kooui(@kooui)开发并维护,当前版本 v1.4.9。
推荐 Skills