dpi-upscaler-checker
Check if images meet 300 DPI printing standards, and intelligently restore blurry low-resolution images using AI super-resolution technology.
Install / Use
npx skills add aipoch/medical-research-skills --skill dpi-upscaler-checkerInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
Education & ResearchSupported Platforms
Our assessment of dpi-upscaler-checker
dpi-upscaler-checker scores 92/100 on our quality scale, 105th of 409 Education & Research skills we index (top 26%).
Its SKILL.md is 6.3 KB long, well organised into 23 sections with 8 code examples: a thorough specification that gives an agent plenty to work with.
With 1,916 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated 15 days ago, so dpi-upscaler-checker is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
dpi-upscaler-checker compared with similar skills
All 4 of these similar skills score higher than dpi-upscaler-checker; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| dpi-upscaler-checker (this skill)by aipoch | 92 | 1.9k | 15d ago | SKILL.md |
| Agent-Reachby Panniantong | 100 | 88.1k | 17d ago | CLAUDE.md |
| last30days-skillby mvanhorn | 100 | 63.4k | 1d ago | CLAUDE.md |
| LocalAIby mudler | 100 | 49.4k | today | MCP Server |
| algorithmic-artby anthropics | 100 | 177.9k | 10d ago | SKILL.md |
Frequently asked questions
- How do I install dpi-upscaler-checker?
- Run
npx skills add aipoch/medical-research-skills --skill dpi-upscaler-checker. The install tabs above show the steps for each supported agent. - Which AI agents does dpi-upscaler-checker work with?
- It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is dpi-upscaler-checker safe to use?
- It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is dpi-upscaler-checker still maintained?
- The repository was last updated 15 days ago, so dpi-upscaler-checker is actively maintained.
Skill content
View source on GitHubname: dpi-upscaler-checker description: Check if images meet 300 DPI printing standards, and intelligently restore blurry low-resolution images using AI super-resolution technology. license: MIT author: AIPOCH
DPI Upscaler & Checker
Check if images meet 300 DPI printing standards, and intelligently restore blurry low-resolution images using AI super-resolution technology.
Input Validation
This skill accepts: image files (JPG, PNG, TIFF, BMP, WebP) or folder paths for DPI checking and/or AI super-resolution upscaling.
If the user's request does not involve image DPI checking or upscaling — for example, asking to analyze text documents, process audio files, or perform general data analysis — do not proceed with the workflow. Instead respond:
"dpi-upscaler-checker is designed to check image DPI standards and restore low-resolution images. Your request appears to be outside this scope. Please provide an image file path or folder, or use a more appropriate tool for your task."
Do not continue the workflow when the request is out of scope, missing a critical input (--input path), or would require unsupported assumptions. For missing inputs, state exactly which fields are missing.
When to Use
- Check whether images meet 300 DPI printing standards
- Upscale or restore low-resolution images using AI super-resolution
- Batch-process folders of mixed-DPI images for print readiness
Quick Check
python -m py_compile scripts/main.py
python scripts/main.py --help
python scripts/main.py --demo
python -c "import PIL; print('Pillow OK')"
python scripts/main.py check --input image.jpg --json
Workflow
- Validate input first — confirm the request is within scope and
--inputpath is provided before any processing. - Confirm the user objective, required inputs, and non-negotiable constraints.
- Use the packaged script path or the documented reasoning path with only the inputs that are actually available.
- Return a structured result that separates assumptions, deliverables, risks, and unresolved items.
- If execution fails or inputs are incomplete, switch to the fallback path and state exactly what blocked full completion.
Usage
Check Single Image DPI
python scripts/main.py check --input image.jpg
python scripts/main.py check --input image.jpg --json # JSON to stdout for agent consumption
Batch Check Folder
python scripts/main.py check --input ./images/ --output report.json
Super-Resolution Restoration
python scripts/main.py upscale --input image.jpg --output upscaled.jpg --scale 4
Batch Fix Low DPI Images
python scripts/main.py upscale --input ./images/ --output ./output/ --min-dpi 300 --scale 2
Demo Mode (no real images required)
python scripts/main.py --demo
Parameters
Check Command
| Parameter | Type | Default | Required | Description |
|-----------|------|---------|----------|-------------|
| --input | string | - | Yes | Input image path or folder |
| --output | string | stdout | No | Output report path |
| --target-dpi | int | 300 | No | Target DPI threshold |
| --json | flag | false | No | Output results as JSON to stdout |
Upscale Command
| Parameter | Type | Default | Required | Description |
|-----------|------|---------|----------|-------------|
| --input | string | - | Yes | Input image path or folder |
| --output | string | - | Yes | Output path |
| --scale | int | 2 | No | Scale factor (2/3/4) |
| --min-dpi | int | - | No | Only process images below this DPI |
| --denoise | int | 0 | No | Denoise level (0-3) |
| --face-enhance | flag | false | No | Enable face enhancement |
Output
DPI Check Report (JSON)
{
"file": "image.jpg",
"dpi": [72, 72],
"width_px": 1920,
"height_px": 1080,
"print_width_cm": 67.7,
"print_height_cm": 38.1,
"meets_300dpi": false,
"recommended_scale": 4.17
}
Restored Image
- Saved as
<original_filename>_upscaled.<extension> - Preserves original EXIF information
- Sets DPI metadata to target value
Algorithm
- DPI:
print_size_cm = (pixel_count / dpi) * 2.54;recommended_scale = target_dpi / avg_dpi - Super-resolution fallback chain: Real-ESRGAN → OpenCV DNN → PIL Lanczos
- RGBA alpha channel upscaled separately and reattached
Known Limitations
- Super-resolution cannot create non-existent information; extremely blurry images have limited improvement
- GPU acceleration requires CUDA environment (optional)
- Batch upscale mode does not currently save a JSON summary report (only check mode saves JSON to
--output) - EXIF parsing uses
except (AttributeError, KeyError, TypeError, ZeroDivisionError)— bare except replaced with specific exception types - Output format parameters are conditioned on file extension (JPEG:
quality=95; PNG:compress_level=6) - Batch processing uses
Path.rglob; resolve paths withpath.resolve()before processing to avoid unexpected directory traversal via symlinks
Fallback Behavior
If scripts/main.py fails or required inputs are incomplete:
- Report the exact failure point and error message (sanitized — no internal paths).
- State what can still be completed safely (e.g., DPI check without upscale).
- Manual fallback:
from PIL import Image; img = Image.open('file.jpg'); print(img.info.get('dpi')). - Do not fabricate execution outcomes or file contents.
Error Handling
- If required inputs are missing, state exactly which fields are missing and request only the minimum additional information.
- If the task goes outside the documented scope, stop instead of guessing or silently widening the assignment.
- If
scripts/main.pyfails, report the failure point, summarize what still can be completed safely, and provide a manual fallback. - Do not fabricate files, citations, data, search results, or execution outcomes.
- Script exits with non-zero code on error in both check and upscale modes.
Response Template
- Objective
- Inputs Received
- Assumptions
- Workflow
- Deliverable
- Risks and Limits
- Next Checks
Dependencies
- Python >= 3.8
- Pillow >= 9.0.0
- opencv-python >= 4.5.0
- numpy >= 1.21.0
- realesrgan (optional, for best results)
pip install -r requirements.txt
Related Skills
Agent-Reach
88.1kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
last30days-skill
63.4kAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary
LocalAI
49.4kLocalAI is the open-source AI engine. Run any model - LLMs, vision, voice, image, video - on any hardware. No GPU required.
algorithmic-art
177.9kCreating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
