Skip to content

revoconner/Facial-Recognition-Photo-Organiser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

131 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Organise Photos by Faces (Beta)

Face Recognition Photo Organizer is an offline standalone desktop application for Windows that automatically finds and groups all photos of the same person across your entire photo library. Instead of manually sorting thousands of photos, the app uses artificial intelligence to recognize faces and organize them for you.

A no nonsense photo organiser for windows, if you want to group people by faces without having to deal with complex UI or professional tools.

  • User friendly UI
  • No need for manual tagging, or confirming faces
  • Completely offline and built for privacy
  • Just point to the location of your folders and let the app do its thing.

Privacy statement

Click to read our privacy statement The app doesn't connect to the internet in any way or form (unless you specifically specify one of the folder from an online location to be scanned, then it will use the network activity to fetch data from that folder). The app is completely offline, all AI packages and bundles are provided with the setup file.

You can use this app on an airgapped computer if you want. And as such, we do not collect any data, analytical or otherwise.

If you plan on reporting a bug, you may have to voluntarily disclose the log file. We will use that log file to track the bug and solve it for next patch, and as such the log file may be available on the open web for an indefinite amount of time. The log file, while not containing any identifier, will be associated with the account that submits the bug report. Use an alternate account if you want your account to not be associated with the log file.

Photo extractor

This function was requested and while it will take time to integrate it into the app, I have added some helper files that you can run to extract photos.

Tools are in this folder

Screenshots

image

image

More images below (Click to expand) image

image

image

image

image

image

image

image

image

image

image

Table of content

Features

  • User friendly GUI, built by professional for everyday users!
  • Hide people from list
  • Rename people
  • Hide photos
  • Preview photos or open them in your default photos app
  • Hide people with less than X photos
  • Change thumbnail for people's list
  • Sort by name of number of photos
  • Quickly jump to a person
  • Transfer face tag to another person to remove it (for false positive; in my testing with 90,980 real everyday photos, false positives were a rarity)
  • Hide unnamed people
  • Auto naming conflict resolution
  • Finds new photos or deleted photos on disk autmatically
  • Exclusion by wildcard or subfolder
  • Doesn't change your folder structure, the faces only work inside the app and is kept in a separate database. So if you have organised your folders in a certain way, it won't mess with that.
  • Lets user decide the threshold percentage, for facial matching (45%-50% recommended)
  • Allocates system resources dynamically so as not to bog down your system.

Comparison with other photo management software

Our focus is on creating a user friendly app to organise photos by person instead of creating an app that does everything photo related, making them cluttered. This keeps the UI easy and clean to be user friendly to everyone, not just professionals.

Feature FRPO DigiKam Tonfotos
UI Complexity Easy Hard Medium
Manual Tagging Not Required ✓ (Very Accurate) ✗ (Accuracy drops with large amount of photos) ✗ (Cleanup required from time to time)
Photo Management Library Only for organising by faces Full suite (editing, GPS, collections, batch processing, metadata) Timeline, albums, smart filters, events
Instant Re-clustering (no rescan)
Tag Preservation Across Re-clustering
Dedicated Unmatched Faces Group
Dynamic CPU Throttling (background)
Scan Frequency Options ✓ (4 modes) ✗ (manual only) ✗ (auto only)
InsightFace 99.8% Accuracy ✗ (~95%) ✗ (~98%)
Manual Face Transfer Between Persons Limited
Primary Photo Selection per Person
View Mode: Zoom to Tagged Faces
Cost Free - Non Commercial Free ✗ ($99)
Photo Editing
Timeline View
Duplicate Detection TBA - Planned Feature
Metadata Management TBA - Planned Feature Limited
Cross-Platform ✗ (Windows only) ✓ (Linux/Win/Mac) ✗ (Windows only)
Photo Enhancement/Filters

Known Bugs, improvements and changelog:

These are detailed in the release versions


User Guide

Click here to expand the user guide

Table of content

What Is This App?

Face Recognition Photo Organizer is a desktop application for Windows that automatically finds and groups all photos of the same person across your entire photo library. Instead of manually sorting thousands of photos, the app uses artificial intelligence to recognize faces and organize them for you.

How It Works

The app works in two simple steps:

  1. Scan Your Photos - The app looks through your photo folders once to find all faces
  2. Group Similar Faces - Faces that look alike are automatically grouped together as the same person

Once scanning is complete, you can instantly adjust how strict the matching is without rescanning everything.

Getting Started

First Launch

When you first open the app, you will see a message that says "No Folders to Scan". This is normal because you need to tell the app where your photos are located.

Click the "Take me to settings" button to add your photo folders.

Adding Photo Folders

  1. Click the Settings button at the bottom of the screen
  2. Go to the Folders to Scan tab
  3. Under "Include folders for scanning", click the + Add Folder button
  4. Select the folder containing your photos
  5. Repeat for any additional photo folders you have
  6. Close Settings

The app will now automatically start scanning your photos. This initial scan can take some time depending on how many photos you have.

Understanding the Interface

Main Window Layout

The app window has four main sections:

Left Panel - People List

  • Shows all the people detected in your photos
  • Each person is labeled "Person 1", "Person 2", etc. until you rename them
  • Shows how many photos contain each person
  • Click on a person to see their photos

Right Panel - Photo Grid

  • Displays thumbnail previews of photos for the selected person
  • Single-click a photo to preview it in a larger view inside the app
  • Double-click a photo to open it in your default image viewer
  • Use the size slider at the top to make thumbnails bigger or smaller

Bottom Progress Bar

  • Shows scanning progress when processing photos
  • Displays status messages

Bottom Status Bar

  • Shows technical information like GPU status
  • Displays total number of faces found
  • Help button on the right for quick tips

Top Controls

View Mode Dropdown

  • Show entire photo (default) - Thumbnails show the full image
  • Zoom to tagged faces - Thumbnails zoom into just the person's face, helpful for identifying people in group photos

Size Slider

  • Adjust how large or small the photo thumbnails appear

Filter Button (three horizontal lines)

  • Sort people by name (A to Z or Z to A)
  • Sort people by number of photos (low to high or high to low)

Jump To Button (grid of dots)

  • Only appears when sorting by name
  • Click to see an alphabet list
  • Click a letter to quickly jump to names starting with that letter

Working with People

Viewing Someone's Photos

  1. Click on a person's name in the left panel
  2. All photos containing that person appear in the right panel
  3. Use the photo preview to browse through their photos

Renaming a Person

By default, people are named "Person 1", "Person 2", etc. You should rename them to actual names:

  1. Find the person in the left panel
  2. Click the three-dot menu next to their name
  3. Select Rename
  4. Type the person's real name
  5. Click Confirm

All photos of that person are now tagged with their name. This name will persist even if you adjust settings or add new photos later.

Setting a Primary Photo

The first photo shown for each person is their "primary photo". You can change this:

  1. View the person's photos in the right panel
  2. Find the photo you want to use as their primary photo
  3. Click the three-dot menu on that photo
  4. Select Make primary photo

The person's avatar in the left panel will now use this photo.

Hiding a Person

If someone appears in your photos but you don't want them in the list:

  1. Click the three-dot menu next to their name
  2. Select Hide person

They will disappear from the list. To see them again, turn on "Show hidden person" in Settings.

Hiding Individual Photos

To hide specific photos without hiding the entire person:

  1. Click the three-dot menu on the photo
  2. Select Hide photo

Hidden photos appear with diagonal lines when "Show hidden photos" is enabled in Settings.

Remove/Transfer Tag

  1. Click the three-dot menu on the photo
  2. Click on either remove tag. This will permanently hide the photo (later releases will mvoe it to unmatched faces) OR
  3. Click on one of the names from person list (only people you have renamed will appear here), the photo will now be a part of their grid.

Settings Explained

Click the Settings button at the bottom left to access all settings.

General Settings

Threshold

  • Controls how similar two faces need to be to match
  • Lower values (30-40%) - More lenient, may group different people together
  • Higher values (50-60%) - More strict, may split the same person into multiple entries
  • Default: 50%
  • After changing, click Recalibrate to regroup all faces
  • Start at 45% - 50% and adjust based on your results

Use system resources dynamically

  • When ON: App slows down when minimized to tray to save computer resources
  • When OFF: App runs at full speed always
  • Default: ON
  • NOTE: You must use close to tray to use this

Show single unmatched images

  • When ON: Shows a group called "Unmatched Faces" containing people who appear only once
  • These are usually screenshots, memes, or random images you don't care about
  • When OFF: Hides these single-appearance faces
  • Default: OFF

Hide persons with less than X photos

  • When enabled, people with fewer than the specified number of photos are hidden
  • Useful for filtering out people who only appear once or twice
  • Default: OFF (set to 2 photos when enabled)

Close to tray

  • When ON: Clicking X minimizes the app to your system tray instead of closing it
  • To fully quit, right-click the tray icon and select Quit
  • Default: ON

Show hidden person

  • When ON: People you previously hid appear in the list again with "(hidden)" in their name
  • You can unhide them individually from their menu
  • Default: OFF

Show hidden photos

  • When ON: Photos you hid appear with diagonal lines across them
  • You can unhide them individually from their menu
  • Default: OFF

Show development options

  • Shows technical statistics like how many faces are tagged
  • Regular users should keep this off
  • Default: OFF

Folders to Scan

Include folders for scanning

  • Add all folders containing photos you want to organize
  • The app scans these folders and all subfolders
  • Supported formats: JPG, JPEG, PNG, BMP, GIF, HEIC, HEIF

Exclude subfolders from scanning

  • Add specific subfolders you want to skip
  • These are NOT scanned even if they are inside an included folder
  • Takes priority over included folders

Wildcard Exclusion

  • Use patterns to exclude files or folders
  • Examples:
    • *.gif - Skip all GIF files
    • *thumbnail - Skip folders with "thumbnail" in the name
    • *cache* - Skip folders containing "cache"
  • Separate multiple patterns with commas

Rescan For Changes

  • Manually trigger a new scan
  • Use this when you have added or deleted photos
  • The app will find new photos and remove deleted ones from the database

View Log

The log shows all actions the app has taken, including:

  • When scanning started and finished
  • How many photos were found
  • Any errors that occurred
  • Settings changes you made

Click Save Log to save the log as a text file for troubleshooting.

Tips and Best Practices

Getting the Best Results

Start with Default Settings

  • Use the 50% threshold initially
  • Scan your photos and review the results
  • Adjust threshold up or down based on what you see

Adjust Threshold Based on Results

  • Too many different people grouped together? Raise the threshold
  • Same person split into multiple entries? Lower the threshold

Name People as You Go

  • Once someone is named, the app remembers them forever
  • New photos of that person will automatically appear under their name
  • Named people are easier to find and organize

Use Hidden Features Wisely

  • Hide unmatched faces to focus on real people
  • Hide persons with fewer than 2-3 photos to reduce clutter
  • Only show hidden items when you need to review them

Working with Large Photo Collections

Be Patient During First Scan

  • The initial scan takes time but only happens once
  • You can minimize the app to the tray to reduce system impact
  • The app will continue working in the background

Use Dynamic Resources

  • Keep this setting ON if you use your computer while scanning
  • The app will slow down when minimized so it doesn't interfere with your work

Organize in Stages

  • Name your most important people first
  • Use the photo count sorting to find people who appear most often
  • Work through the list gradually

Adding New Photos

When you add new photos to your folders:

  1. Open the app
  2. Go to Settings > Folders to Scan
  3. Click Rescan For Changes

The app will find new photos and automatically add them to the correct people if they are already named.

Keyboard Shortcuts

In Photo Preview (Lightbox)

  • Left Arrow - Previous photo
  • Right Arrow - Next photo
  • Escape - Close preview

Common Questions

Why is Person 1 labeled "Unmatched Faces"? This is a special group containing faces that don't match anyone else. These are typically screenshots, memes, profile pictures, or people who appear only once. You can hide this group in Settings.

Will the app modify my original photos? No. The app only reads your photos. It never edits, moves, or deletes the original image files. All organization happens in the app's database.

What happens if I delete photos from my computer? The next time you rescan, the app will remove those photos from its database automatically.

Can I use this on multiple computers? The app stores its data in your user profile. Each computer has its own separate database. You would need to scan and organize photos separately on each computer.

Where is my data stored? All data is stored in: C:\Users\[YourUsername]\AppData\Roaming\facial_recognition\face_data or for sort %appdata%\facial_recognition\face_data

This includes the photo database and face recognition data. Your original photos remain in their original locations.

Why does the app use so much GPU/CPU? Face recognition is computationally intensive. The app uses your graphics card (GPU) if available for faster processing. Enable "Use system resources dynamically" to reduce impact when the app is minimized.

Can I back up my data? Yes. Back up the folder mentioned above to preserve all your people names and organization. Restore this folder to recover your data.

Troubleshooting

App takes a long time to start

  • It's a known bug for the time the app starts. Consecutive starts should be shorter.

Stuck at loading photos

  • If the number of photos is huge (say 3000) the load time for the first try might take a little bit as the system builds cache.
  • Marked for improvement

App won't start scanning

  • Make sure you have added at least one folder in Settings > Folders to Scan
  • Check that the folder path is correct and accessible
  • Try clicking "Rescan For Changes"

No faces detected in my photos

  • Make sure your photos actually contain visible faces
  • Check that the photos are in a supported format (JPG, PNG, HEIC, etc.)
  • Very small or blurry faces may not be detected

Same person appears as multiple different people

  • Increase the threshold value in Settings > General Settings
  • Click Recalibrate after changing the threshold
  • Try values between 50-60%

Different people grouped together

  • Decrease the threshold value
  • Click Recalibrate
  • Try values between 30-40%

App is slow or freezing

  • Enable "Use system resources dynamically"
  • Minimize the app to tray while scanning
  • Close other heavy applications
  • The first scan is the slowest; subsequent operations are much faster

Photos not opening in default viewer

  • Make sure you have a default app set for image files
  • Try right-clicking a photo file in Windows Explorer and selecting "Open with" to set a default app

Names disappeared after recalibration

  • This should not happen. If it does, report it as a bug
  • Names are tied to individual faces and should persist through all operations

Thumbnails are rendering weirdly, or not matching the face

  • Clear cache in settings.
  • Next time you open a person's grid, the thumbnail cache will automatically be built in the background.
  • Person with large number of photos might take some time to load the first time the cache is being built.

Advanced Features

Development Options

When "Show development options" is enabled in Settings, you will see additional information:

Tag Statistics

  • Shows how many faces are tagged vs total faces for each person
  • Format: "Person Name (45/50 tagged)"
  • Helps you understand confidence in person identification

Remove All Tags

  • Accessible from the person's menu
  • Removes all name tags, reverting person back to "Person X"
  • Use this if you want to start fresh with naming

License and Usage

This app is provided free of cost, and no usage restriction for personal, non-commercial use only. You may not use this app on computers used for commercial purposes, even if the app itself is being used for personal use.

The app uses facial recognition technology. You are responsible for complying with applicable privacy laws and obtaining consent from individuals whose images are processed.

Performance Stats

  1. [10/7/2025, 5:46:28 AM] - [10/7/2025, 10:50:24 AM] - Scan complete: 104577 faces in 90491 photos
  2. Took almost 5 hours to scan 90,000 photos for 100,000 faces from a Seagate Exos HDD, running on AMD Threadripper 7960x
  3. [10/7/2025, 10:46:38 AM] - [10/7/2025, 10:50:24 AM] - Custering to person identification
  4. Took 4 minutes on Nvidia RTX 4090 for face clustering and identification

Getting Help

If you encounter issues not covered in this guide:

  1. Check the log in Settings > View Log for error messages
  2. Save the log file for reference, and create an issue ticket on this project
  3. Make sure you are using the latest version of the app

Remember: The app never modifies your original photos, so you can always start fresh if needed by deleting the app data folder and rescanning.

LLM generated code notice

Some parts of the source code is LLM generated, here's a summary of it:

  • The JS implementation was done in most parts by Claude Sonnet 3.5 and Sonnet 4 models. Not surprised that there is a high priority DOM retention bug that came with it. Issue is marked and is being addressed.
  • Variable names in part have been changed to be more accurate to represent what they do, left to me they would look like a, b, c, c_final, cff, and makes it harder to maintain later.
  • Explanatory comments for defs, func and class have been converted to be nore readable and user source friendly in case someone forks it.
  • This README.md file has been originally written by Sonnet 4, but later revised by me.

About

Face Recognition Photo Organizer is a desktop application for Windows that automatically finds and groups all photos of the same person across your entire photo library, the app uses artificial intelligence to recognize faces and organize them for you.

Topics

Resources

License

Stars

Watchers

Forks