Use regex to match file patterns

Also use os.listdir as is clear recursion is not intended
This commit is contained in:
Andrea Lanfranchi 2024-02-22 12:05:41 +01:00
parent 72e5669302
commit 63079d3095
No known key found for this signature in database
GPG Key ID: 2D623A60BB279915

View File

@ -1,5 +1,6 @@
# built-in dependencies # built-in dependencies
import os import os
import re
import pickle import pickle
from typing import List, Union, Optional from typing import List, Union, Optional
import time import time
@ -14,6 +15,7 @@ from deepface.commons.logger import Logger
from deepface.modules import representation, detection, modeling, verification from deepface.modules import representation, detection, modeling, verification
from deepface.models.FacialRecognition import FacialRecognition from deepface.models.FacialRecognition import FacialRecognition
logger = Logger(module="deepface/modules/recognition.py") logger = Logger(module="deepface/modules/recognition.py")
@ -303,12 +305,12 @@ def __list_images(path: str) -> list[str]:
Returns: Returns:
images (list): list of exact image paths images (list): list of exact image paths
""" """
images = [] images = list[str]()
for r, _, f in os.walk(path): pattern = re.compile(r".*\.(jpg|jpeg|png)$", re.IGNORECASE)
for file in f: for file_name in os.listdir(path):
if file.lower().endswith((".jpg", ".jpeg", ".png")): if pattern.match(file_name):
exact_path = os.path.join(r, file) images.append(os.path.join(path, file_name))
images.append(exact_path)
return images return images