From 27c08df0ca962479d6641d565e3942f4c79d2a22 Mon Sep 17 00:00:00 2001 From: Hengyu <76626546+5upernova-heng@users.noreply.github.com> Date: Mon, 29 May 2023 23:08:22 +0800 Subject: [PATCH] Add: take picture method (#1) * Add: take picture method * Upd: CAMERA_CHECK & TAKE_PICTURE template * Upt: use OCR to detect whether picture was taken * Upd: move camera to daily; use match template instead of OCR * Upd: break process into two loops; --- assets/cn/daily/PICTURE_TAKEN.png | Bin 0 -> 6788 bytes assets/share/base/page/CAMERA_CHECK.png | Bin 0 -> 6420 bytes assets/share/base/page/MENU_GOTO_CAMERA.png | Bin 0 -> 6297 bytes assets/share/daily/TAKE_PICTURE.png | Bin 0 -> 6420 bytes tasks/base/assets/assets_base_page.py | 20 +++++++++ tasks/base/page.py | 5 +++ tasks/daily/assets/assets_daily.py | 25 ++++++++++++ tasks/daily/camera.py | 43 ++++++++++++++++++++ 8 files changed, 93 insertions(+) create mode 100644 assets/cn/daily/PICTURE_TAKEN.png create mode 100644 assets/share/base/page/CAMERA_CHECK.png create mode 100644 assets/share/base/page/MENU_GOTO_CAMERA.png create mode 100644 assets/share/daily/TAKE_PICTURE.png create mode 100644 tasks/daily/assets/assets_daily.py create mode 100644 tasks/daily/camera.py diff --git a/assets/cn/daily/PICTURE_TAKEN.png b/assets/cn/daily/PICTURE_TAKEN.png new file mode 100644 index 0000000000000000000000000000000000000000..b0caea8046ac80eea3217caa7fd97640d141e7e3 GIT binary patch literal 6788 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 literal 0 HcmV?d00001 diff --git a/assets/share/base/page/CAMERA_CHECK.png b/assets/share/base/page/CAMERA_CHECK.png new file mode 100644 index 0000000000000000000000000000000000000000..5dd991517c15c60ab9850e6fcc9627cfbe67be38 GIT binary patch literal 6420 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 Zk^nYWk1*P6%B_EP)KJrWSgvC6`hV^}68r!F literal 0 HcmV?d00001 diff --git a/assets/share/daily/TAKE_PICTURE.png b/assets/share/daily/TAKE_PICTURE.png new file mode 100644 index 0000000000000000000000000000000000000000..5dd991517c15c60ab9850e6fcc9627cfbe67be38 GIT binary patch literal 6420 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 j2?ThDQMb{