Skip to main content

A versatile tool for daily use

Project description

detective:一款更适合中国宝宝的室友内卷监测工具

Deploy MkDocs site to GitHub Pages (using mkdocs gh-deploy) CI Tests PyPI version GitHub license

介绍

detective是一款更适合中国宝宝的室友内卷监测工具,它可以帮助你监测室友的内卷行为,让你的寝室生活更加和谐。

TODO:demo

环境要求

环境 版本
OS Ubuntu22.04, Raspberry Pi OS, Window11, Debian 12
Python 3.10

硬件清单

  • Raspberry Pi 4B * 2
  • 摄像头 * 2
  • 蜂鸣器
  • LED灯
  • 面包板

安装

pip安装

pip install detective-pi

源码安装

克隆仓库

git clone https://github.com/sergiudm/detective.git
cd detective

你可以使用deploy.sh脚本自动安装

sudo chmod +x deploy.sh
./deploy.sh

或者手动安装

conda create -n <your_env_name> python=3.10
conda activate <your_env_name>
pip install -r requirements.txt

使用说明

开始前,你需要配置config.json文件, 以下是一个示例:

{
    "use_pi": false,
    "plugin_list": [
        "information_server",
        "GPIO_controller",
        "music_server",
        "gpio_controller",
        "gesture_detection",
        "relax_detect"
    ], # 注意:涉及GPIO的插件要开启`use_pi`,如果不使用GPIO相关的库则关闭
    "default_detect_mode": "others",
    "use_camera": true,
    "LED_pin": 18, # LED灯的引脚
    "use_visualization": false, # 是否使用可视化
    "server_email": "youremail@example.com",
    "server_email_password": "your email password",# 请使用授权码
    "target_email": [
        "email1",
        "email2"
    ],
    "smtp_server":"your smtp server",
    "smtp_port": 587,
    "video_path": "assets/videos/sit.mp4", # use_camera为false时,使用该视频
    "image_path": "resources", # 邮件中的图片
    "send_delay": 13,
    "effective_detection_duration": 2,
    "max_num_hands": 2,
    "min_detection_confidence": 0.65,
    "min_tracking_confidence": 0.65,
    "pin_data": {
        "pin_list": [
            17,
            23,
            24,
            25,
            27
        ],
        "pin_map": {
            "Right": [
                17,
                23,
                24
            ],
            "Return": [
                23,
                24
            ],
            "Left": [
                17,
                24
            ],
            "Pause": [],
            "Like": [
                25
            ],
            "OK": [
                27
            ]
        }
    }
}

[!CAUTION] 实际使用时,请删除config.json中的所有注释!

Linux:

sudo chmod +x run.sh
./run.sh

Windows:

win_run.bat

功能

  • 检测是否有室友在内卷
    • 如果有,会自动响起警报,并且发微信通知你
  • 检测你是不是卷过头了
    • 如果连续工作超过2小时(可在config.json中配置),会自动响起警报,并提醒你休息一下
  • to do list
    • 检测 学习 与 玩游戏
      • 肩部、髋部、膝盖 夹角; 手部 位置
    • 报警:蜂鸣器(可换为便宜的喇叭)(直到结束学习才消失)、led、微信发消息
    • 开关门检测
      • 开关门 检测完成后: 人在寝室,才监控
    • 不良坐姿的检测
    • 魔术

如何贡献

本仓库仅使用了mediapipe中的人体姿态检测和手部检测功能,如果你有更多想法,欢迎:

  • 提交PR
  • 提交Issue
  • 传播给更多的室友

Acknowledgement

mediapipe

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

detective_pi-0.2.0.tar.gz (21.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

detective_pi-0.2.0-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

Details for the file detective_pi-0.2.0.tar.gz.

File metadata

  • Download URL: detective_pi-0.2.0.tar.gz
  • Upload date:
  • Size: 21.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.15

File hashes

Hashes for detective_pi-0.2.0.tar.gz
Algorithm Hash digest
SHA256 9e33138d3e98e619bb41b654cdde7142005c023e8d46d76455b10347a5576884
MD5 738d6f7b89691ae98cc075eca153e437
BLAKE2b-256 ed0a743435561c90c458ebd92d67c45816d1d95bd4b7072a0a25e99562b58a55

See more details on using hashes here.

File details

Details for the file detective_pi-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: detective_pi-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 25.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.15

File hashes

Hashes for detective_pi-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b79fd241959d86da0df93f079dae8977567f95261d2ce748bf72ec6966a206b4
MD5 9c4c75893147dd0af4bb599c9e6d101d
BLAKE2b-256 65088c7a7d93576aab6326b2e464d29185e03e510619691e8bad2f8f45b9e6fc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page