CamScanner Image HD

v1.0.0

Use CamScanner to enhance image clarity and quality. Applies auto-crop then HD super filter to produce a cleaner, sharper image. Optionally removes moire pat...

0· 31· 1 versions· 0 current· 0 all-time· Updated 4h ago· MIT-0

Install

openclaw skills install camscanner-image-hd

CamScanner Image HD

Overview

CamScanner provides HD image enhancement: auto-crop followed by super filter processing to produce cleaner, sharper images. Optionally supports demoire mode to remove moire patterns when explicitly requested. The workflow is a 3-step pipeline: upload the image, enhance it, then download the result.

When to Use

  • User wants to make an image clearer or sharper
  • User wants HD or high-definition image processing
  • User wants to enhance image quality of a photo or scanned document
  • User wants to apply a super filter to an image
  • User explicitly asks to remove moire patterns (use hd_mode=demoire)

Privacy & Data

Important: Privacy & Data Flow Notice

  • Third-party service: This skill sends your files to CamScanner's official servers (ai-tools.camscanner.com) for processing.
  • Data retention: CamScanner servers process your files in real-time. Files are not permanently stored on the server.
  • Local files: Output files are saved to your local filesystem at the path you specify.

API Reference

Base URL: https://ai-tools.camscanner.com

Supported Modes

hd_modeDescriptionWhen to Use
(empty)Auto-crop + super filter (default)General HD enhancement
demoireAuto-crop + demoire deblurOnly when user explicitly asks for moire removal

Step 1: Upload Image

BASE="https://ai-tools.camscanner.com"

IN_FILE_ID=$(curl -sS -X POST "$BASE/v1/tools/upload_file/execute" \
  -H "Content-Type: application/octet-stream" \
  --data-binary "@/path/to/image.png" | jq -r '.tool_result.data.file_id')

Response:

{
  "code": 200,
  "tool": "upload_file",
  "tool_result": {
    "success": true,
    "data": {
      "file_id": "file_1741857600_ab12cd34ef56",
      "size": 24576
    }
  }
}

Step 2: HD Enhancement

Default mode (super filter):

OUT_FILE_ID=$(curl -sS -X POST "$BASE/v1/tools/image_hd/execute" \
  -H "Content-Type: application/json" \
  -d "{\"file_id\":\"$IN_FILE_ID\"}" \
  | jq -r '.tool_result.data.file_id')

Demoire mode (only when user explicitly requests moire removal):

OUT_FILE_ID=$(curl -sS -X POST "$BASE/v1/tools/image_hd/execute" \
  -H "Content-Type: application/json" \
  -d "{\"file_id\":\"$IN_FILE_ID\",\"hd_mode\":\"demoire\"}" \
  | jq -r '.tool_result.data.file_id')

Response:

{
  "code": 200,
  "tool": "image_hd",
  "tool_result": {
    "success": true,
    "data": {
      "file_id": "file_1741857701_9988aabbccdd",
      "target_type": ""
    },
    "metadata": {
      "crop_engine": "cropenhance",
      "hd_engine": "imagefilter"
    }
  }
}

Step 3: Download Result

curl -sS -X POST "$BASE/v1/tools/download_file/execute?response_mode=raw" \
  -H "Content-Type: application/json" \
  -d "{\"file_id\":\"$OUT_FILE_ID\"}" \
  -o /path/to/image_hd.jpg

Critical: The response_mode=raw query parameter is required to get the binary file. Without it, the response is JSON.

Quick Reference: Complete Pipeline

BASE="https://ai-tools.camscanner.com"
INPUT_IMAGE="/path/to/image.png"
OUTPUT_FILE="/path/to/image_hd.jpg"

# Upload
IN_FILE_ID=$(curl -sS -X POST "$BASE/v1/tools/upload_file/execute" \
  -H "Content-Type: application/octet-stream" \
  --data-binary "@$INPUT_IMAGE" | jq -r '.tool_result.data.file_id')

# HD enhance (default: super filter; add "hd_mode":"demoire" only for explicit moire removal)
OUT_FILE_ID=$(curl -sS -X POST "$BASE/v1/tools/image_hd/execute" \
  -H "Content-Type: application/json" \
  -d "{\"file_id\":\"$IN_FILE_ID\"}" \
  | jq -r '.tool_result.data.file_id')

# Download
curl -sS -X POST "$BASE/v1/tools/download_file/execute?response_mode=raw" \
  -H "Content-Type: application/json" \
  -d "{\"file_id\":\"$OUT_FILE_ID\"}" \
  -o "$OUTPUT_FILE"

Mode Selection Guide

User sayshd_mode parameter
"make it clearer", "HD", "enhance quality"(omit — default filter)
"sharpen", "super filter", "improve clarity"(omit — default filter)
"remove moire", "fix moire pattern", "demoire""hd_mode": "demoire"

Default to no hd_mode parameter unless the user explicitly mentions moire patterns.

Common Mistakes

MistakeFix
Forgetting response_mode=raw on downloadAlways append ?response_mode=raw to the download URL
Wrong Content-Type on uploadUpload uses application/octet-stream, not multipart/form-data
Using GET instead of POSTAll three endpoints use POST
Setting hd_mode when not requestedOnly use "hd_mode": "demoire" when user explicitly asks for moire removal
Wrong output extensionOutput is typically JPEG — use .jpg extension

Error Handling

Check each step before proceeding:

# After upload
if [ -z "$IN_FILE_ID" ] || [ "$IN_FILE_ID" = "null" ]; then
  echo "Upload failed"; exit 1
fi

# After enhance
if [ -z "$OUT_FILE_ID" ] || [ "$OUT_FILE_ID" = "null" ]; then
  echo "Enhancement failed"; exit 1
fi

Version tags

latestvk97ag0ew9nms14nad1tmdnmcbx85v06v

Runtime requirements

🔍 Clawdis
Binscurl, jq