1adrianb / 1adrianb/face-alignment

It seems a bug in function "get_landmarks_from_directory( )"

Ouverte
#303 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Python
Étoiles
7.5k
Forks
1.4k
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Hi there,

**When I used the _get_landmarks_from_directory( )_ function as recommended [here](https://github.com/1adrianb/face-alignment#process-an-entire-directory-in-one-go), it was strange that the detected results of some images were wrong. Please check the images below:**
![image](https://user-images.githubusercontent.com/35102882/148214858-a01456ca-8e2e-4c0b-8064-f491169adf23.png)

**While when I used the _get_landmarks( )_ function to process each image with the code below, it turned out that all detected results seemed good.**
```
def my_get_landmarks_from_directory(fa, path):
img_list_raw = glob.glob(os.path.join(path, '*'))
img_list = [p for p in img_list_raw if is_image(p)]
predictions, no_face_detected = {}, []
for p in tqdm(img_list):
input = cv2.imread(p)
preds = fa.get_landmarks(input[..., ::-1])
if preds is None:
no_face_detected.append(p)
predictions[p] = preds if preds is None else preds[0].tolist()

return predictions, no_face_detected
```
![image](https://user-images.githubusercontent.com/35102882/148216194-bd8c01fc-6a03-4a5f-8997-ba76d9ee4989.png)

**I tried to dive into the source code to figure out if there were any bugs in _get_landmarks_from_directory( )_ function but everything seemed good, which made me confused. I attach two images in which I got wrong results when using _get_landmarks_from_directory( )_. Please test them. Thanks a lot.**
![14527](https://user-images.githubusercontent.com/35102882/148217270-1317615d-85cf-4adf-99db-66816f78c0a0.jpg)
![19432](https://user-images.githubusercontent.com/35102882/148217273-7a2fa437-96b8-4138-943b-27efc15e6129.jpg)

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

The issue is about a discrepancy between `get_landmarks_from_directory()` and `get_landmarks()`. Start by examining the `get_landmarks_from_directory` function in the source code, likely in the main module. Compare its image loading and preprocessing steps with the user's custom function. Test with the provided sample images to reproduce the bug. Check for differences in color channel handling (BGR vs RGB) or batch processing effects.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python, pytorch
Domaine
computer-vision
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.