From 259313edc5a040200525382c2cb2c9cbea53bd7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=B7=E5=AE=87=E4=BD=B3?= Date: Mon, 17 Feb 2025 15:20:50 +0800 Subject: [PATCH] =?UTF-8?q?PERF=20=E8=A1=A5=E9=BD=90=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- __init__.py | 1 - img.png | Bin 0 -> 16317 bytes readme.md | 5 +++++ requirements.txt | 4 ++++ test_single_image.py | 2 +- 5 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 img.png create mode 100644 readme.md create mode 100644 requirements.txt diff --git a/__init__.py b/__init__.py index f2d60ea..c147322 100644 --- a/__init__.py +++ b/__init__.py @@ -1,7 +1,6 @@ import glob import json import os -import random import shutil import traceback import uuid diff --git a/img.png b/img.png new file mode 100644 index 0000000000000000000000000000000000000000..58e8b05421c5dd59d008da153c05d28763fb15c0 GIT binary patch literal 16317 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�e`*L@N>JI`6vh5zb{QJo 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 WR?hdmxq)N(AO+dyGDT9a-v2LFSd@wY literal 0 HcmV?d00001 diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..a55a6ef --- /dev/null +++ b/readme.md @@ -0,0 +1,5 @@ +# Face Occu Detect + +## Code From: https://github.com/LamKser/face-occlusion-classification + +![img.png](img.png) \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..77029ba --- /dev/null +++ b/requirements.txt @@ -0,0 +1,4 @@ +ffmpy +torch +torchvision +Pillow \ No newline at end of file diff --git a/test_single_image.py b/test_single_image.py index 1f9efd5..cb18d47 100644 --- a/test_single_image.py +++ b/test_single_image.py @@ -63,7 +63,7 @@ def test_node(image:torch.Tensor,length=10,thres=95,model_name="convnext_tiny"): } device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') model = Model(model_name, 2, False).to(device) - weight = os.path.join(os.path.dirname(os.path.abspath(__file__)),weight_dic[model_name]) + weight = os.path.join(os.path.dirname(os.path.abspath(__file__)), "model", weight_dic[model_name]) model = load_weight(model, weight) model.eval() image = image.permute(0,3,1,2)