Imou Open Multimodal Analysis
/install imou-multimodal-analysis
\r \r
Imou Multimodal Analysis\r
\r AI scene analysis for device channel snapshot URLs (or any image URL) under an Imou account: human detection, smoking detection, phone-using detection, workwear and absence detection (with pre-configured workwear repository), shelf detection, trash detection, heatmap statistics, and face analysis. Also manage detect repositories and targets (create/list/delete repository; add/list/delete targets).\r \r
Quick Start\r
\r Install dependency:\r
pip install requests\r
```\r
\r
Set environment variables (required):\r
```bash\r
export IMOU_APP_ID="your_app_id"\r
export IMOU_APP_SECRET="your_app_secret"\r
export IMOU_BASE_URL="your_base_url"\r
```\r
\r
**API Base URL (IMOU_BASE_URL)** (required; no default—must be set explicitly):\r
- **Mainland China**: Register a developer account at [open.imou.com](https://open.imou.com) and use the base URL below. Get `appId` and `appSecret` from [App Information](https://open.imou.com/consoleNew/myApp/appInfo).\r
- **Overseas**: Register a developer account at [open.imoulife.com](https://open.imoulife.com) and use the base URL for your data center (view in [Console - Basic Information - My Information](https://open.imoulife.com/consoleNew/basicInfo/myInfo)). Get `appId` and `appSecret` from [App Information](https://open.imoulife.com/consoleNew/myApp/appInfo). See [Development Specification](https://open.imoulife.com/book/http/develop.html).\r
\r
| Region | Data Center | Base URL |\r
|----------------|-----------------|----------|\r
| Mainland China | — | `https://openapi.lechange.cn` |\r
| Overseas | East Asia | `https://openapi-sg.easy4ip.com:443` |\r
| Overseas | Central Europe | `https://openapi-fk.easy4ip.com:443` |\r
| Overseas | Western America | `https://openapi-or.easy4ip.com:443` |\r
\r
**Note**: AI APIs are value-added; apply for access via Imou if needed.\r
\r
Run analysis on an image URL (e.g. device channel snapshot from live `coverUrl` or any accessible URL):\r
```bash\r
# Human detection\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze HUMAN "https://example.com/snapshot.jpg"\r
\r
# Smoking detection\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze SMOKING "https://example.com/snapshot.jpg"\r
\r
# Phone-using detection\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze PHONE "https://example.com/snapshot.jpg"\r
\r
# Workwear detection (optional repositoryId and threshold)\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze WEAR "https://example.com/snapshot.jpg" [--repository-id REPO_ID] [--threshold 0.8]\r
\r
# Absence detection (requires workwear repositoryId)\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze ABSENCE "https://example.com/snapshot.jpg" --repository-id REPO_ID [--threshold 0.8]\r
\r
# Shelf detection\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze SHELF "https://example.com/snapshot.jpg"\r
\r
# Trash detection\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze TRASH "https://example.com/snapshot.jpg"\r
\r
# Heatmap (threshold required; optional exclude repository IDs)\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze HEATMAP "https://example.com/snapshot.jpg" --threshold 0.8 [--exclude-repos ID1,ID2]\r
\r
# Face analysis\r
python3 {baseDir}/scripts/multimodal_analysis.py analyze FACE "https://example.com/snapshot.jpg"\r
```\r
\r
Repository and target management:\r
```bash\r
# Create detect repository (face | human for workwear)\r
python3 {baseDir}/scripts/multimodal_analysis.py repo create "MyWorkwearLib" human\r
\r
# List repositories (paginated)\r
python3 {baseDir}/scripts/multimodal_analysis.py repo list [--page 1] [--page-size 20]\r
\r
# Delete repository\r
python3 {baseDir}/scripts/multimodal_analysis.py repo delete REPOSITORY_ID\r
\r
# Add target to repository (image URL or base64 type)\r
python3 {baseDir}/scripts/multimodal_analysis.py target add REPOSITORY_ID "TargetName" "https://image.url" [--type url]\r
python3 {baseDir}/scripts/multimodal_analysis.py target add REPOSITORY_ID "TargetName" "BASE64_DATA" --type base64\r
\r
# List targets in repository\r
python3 {baseDir}/scripts/multimodal_analysis.py target list REPOSITORY_ID [--page 1] [--page-size 20]\r
\r
# Delete target from repository\r
python3 {baseDir}/scripts/multimodal_analysis.py target delete REPOSITORY_ID TARGET_ID\r
```\r
\r
## Capabilities\r
\r
1. **Human detection**: Detect whether the image contains human figure(s).\r
2. **Smoking detection**: Detect whether someone is smoking in the image.\r
3. **Phone-using detection**: Detect whether someone is using a phone.\r
4. **Workwear detection**: Detect whether personnel are in compliance with workwear (optional workwear repository and threshold).\r
5. **Absence detection**: Detect absence from post (requires pre-configured workwear repository).\r
6. **Shelf detection**: Detect shelf status (e.g. empty/full).\r
7. **Trash detection**: Detect trash overflow.\r
8. **Heatmap**: Get heatmap statistics for regions (threshold required; optional exclude repository IDs to filter by workwear).\r
9. **Face analysis**: Face detection/analysis.\r
10. **Detect repository**: Create (face/human), list by page, delete.\r
11. **Target in repository**: Add (URL or Base64), list by page, delete.\r
\r
## Request Header\r
\r
All requests to Imou Open API must include the header `Client-Type: OpenClaw` for platform identification.\r
\r
## API References\r
\r
| API | Doc |\r
|-----|-----|\r
| AI overview | https://open.imou.com/document/pages/f1b9a3/ |\r
| Dev spec | https://open.imou.com/document/pages/c20750/ |\r
| Get accessToken | https://open.imou.com/document/pages/fef620/ |\r
| humanDetect | https://open.imou.com/document/pages/93rflk/ |\r
| smokingDetect | https://open.imou.com/document/pages/kf70sq/ |\r
| phoneUsingDetect | https://open.imou.com/document/pages/jf78o9/ |\r
| workwearDetect | https://open.imou.com/document/pages/2jisd8/ |\r
| absenceDetect | https://open.imou.com/document/pages/29dicv/ |\r
| shelfStatusDetect | https://open.imou.com/document/pages/2oud87/ |\r
| trashOverflowDetect | https://open.imou.com/document/pages/cdmfd6/ |\r
| heatmapDetect | https://open.imou.com/document/pages/fdjfg9/ |\r
| faceAnalysis | https://open.imou.com/document/pages/28d7ug/ |\r
| createAiDetectRepository | https://open.imou.com/document/pages/34ff11/ |\r
| listAiDetectRepositoryByPage | https://open.imou.com/document/pages/5e8222/ |\r
| deleteAiDetectRepository | https://open.imou.com/document/pages/5esi8a/ |\r
| addAiDetectTarget | https://open.imou.com/document/pages/ikdf78/ |\r
| listAiDetectTarget | https://open.imou.com/document/pages/278dkj/ |\r
| deleteAiDetectTarget | https://open.imou.com/document/pages/odty82/ |\r
\r
See `references/imou-ai-api.md` for request/response formats.\r
\r
## Tips\r
\r
- **Token**: Fetched automatically per run; valid 3 days. Do not cache across runs unless you implement expiry handling.\r
- **Image input**: Use `type` "0" for image URL, "1" for Base64. Snapshot URL can be device channel live cover URL (e.g. from imou-open-device-video skill `liveList` / `bindDeviceLive` streams[].coverUrl) or any accessible image URL.\r
- **Workwear / Absence**: Create a human-type repository first, add workwear target images, then pass `repositoryId` to workwearDetect and absenceDetect.\r
- **Heatmap**: `threshold` in (0,1]. Use `excludeRepositoryIds` to exclude matched workwear persons (e.g. staff) and count only valid customers.\r
- **detectRegion**: Optional; up to 3 regions, each 3–6 points (normalized 0–1). Omit to analyze full image.\r
\r
## Data Outflow\r
\r
| Data | Sent to | Purpose |\r
|------|---------|--------|\r
| appId, appSecret | Imou Open API | Obtain accessToken |\r
| accessToken, image URL or Base64, repositoryId, threshold, etc. | Imou Open API | AI detection and repository/target management |\r
\r
All requests go to the configured `IMOU_BASE_URL`. No other third parties.\r
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install imou-multimodal-analysis - After installation, invoke the skill by name or use
/imou-multimodal-analysis - Provide required inputs per the skill's parameter spec and get structured output
What is Imou Open Multimodal Analysis?
对指定账号下设备通道的实时抓图地址进行AI智能场景分析。AI scene analysis for device channel snapshot URLs under an Imou account. 支持:人形检测、抽烟检测、玩手机检测、工装检测与离岗检测(需预先配置工装模板)、货架检测、垃圾检测、热力图数据... It is an AI Agent Skill for Claude Code / OpenClaw, with 161 downloads so far.
How do I install Imou Open Multimodal Analysis?
Run "/install imou-multimodal-analysis" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Imou Open Multimodal Analysis free?
Yes, Imou Open Multimodal Analysis is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Imou Open Multimodal Analysis support?
Imou Open Multimodal Analysis is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Imou Open Multimodal Analysis?
It is built and maintained by Imou-OpenPlatform (@imou-openplatform); the current version is v1.0.0.