Ultimate Image Processing APP : Batch Cropping, Zooming In, Resizing, Duplicate Image Removing, Face Extraction, SAM 2 and Yolo Segmentation, Masking for Windows, RunPod, Massed Compute and Free Kaggle Account
🕑 Added 2025-08-25 11:00:00 +0000 UTCBatch Image Cropping, Zooming Subject, Resizing, Segmenting, Masking, Duplicate Removing APP that utilizes YOLO V11, SAM 2 and Gradio
Patreon exclusive posts index to find our scripts easily, Patreon scripts updates history to see which updates arrived to which scripts and amazing Patreon special generative scripts list that you can use in any of your task.
Join discord to get help, chat, discuss and also tell me your discord username to get your special rank : SECourses Discord
Please also Star, Watch and Fork our Stable Diffusion & Generative AI GitHub repository and join our Reddit subreddit and follow me on LinkedIn (my real profile)
=======
Latest zip file : Ulti_Img_Process_V24.zip
Screenshots zip file : how_to_use_screenshots.zip
We have 1-Click installer for Windows, Massed Compute and a Free Kaggle Notebook. Read this post extremely carefully to learn how to use all
Video Tutorial : Hopefully coming soon
25 October 2025 Update V24
Libraries updated to Torch 2.8, CUDA 12.9
With pre compiled xFormers, Flash Attention, Sage Attention and groundingdino
For all of the GPUs starting from RTX 1000 series to 5000 series or Cloud GPUs like A100, B200, etc
Windows Requirements
Python 3.10, FFmpeg, CUDA 12.9, cuDNN 9.12 or above, C++ tools and Git
If it doesn't work make sure to below tutorial and install everything exactly as shown in this below tutorial
Follow tutorial along with this post : https://www.patreon.com/posts/click-to-open-post-used-in-tutorial-111553210
1 September 2025 Update V23
Image batch resize cancel fixed
Some errors regarding batch processing on Linux fixed
Just extract latest zip file and overwrite older files for update
25 August 2025 Update V22
SAM2 based auto cropping logic significantly improved
Now it will zoom into the maximum degree and leave no empty space
Moreover, auto crop section now have pixel or percent based padding, so if it too agressively zoom in, you can set some padding
If you are processing trasnparency having images, uncheck Save as PNG
Now when Save as PNG is unchecked, it will first convert to JPG and then process thus the processing will have 0 errors
Previously when you auto crop transparent pixels having png files, it wanst working properly
22 August 2025 Update V21
New feature implemented upon request : Skip images with no SAM2 detection
yolov11l-face.pt selection in Select Detection Class (YOLO) was not working and fixed
Default selection of Select Detection Class (YOLO) is now set to person
Just overwrite previous files to upgrade from V20
11 July 2025 Update V19
Face Extraction tab improved and now it uses super fast yolov11l-face.pt
Moreover now it supports all Yolo classes and SAM2 segment as well
So you can extract other than faces as well
All with multi-threading support
Run Windows install again, if you get any error delete venv folder and run install again
2 June 2025 Update V15
A bug in SAM based automatic cropping fixed now should work perfect hopefully
Now app supports RTX 5000 series on RunPod and Massed Compute as well
I have compiled groundingdino for Linux to make this happen
Just overwrite older files with newest zip content to update
24 April 2025 Update V14
Negative prompt feature implemented to SAM 2 Batch Segmentation APP by SECourses
Run Start_Segmenter.bat to start this app
The logic of negative prompt fairly simple
For example positive prompt face.
Negative prompt eye.
So you get face masked with eyes being unmasked
It mask the face, mask the eyes, and subtract eyes from face mask
Negative prompt masks auto saved inside generated_negative_masks folder
Extract newest zip file into previous folder for update
24 April 2025 Update
Windows Installer updated to support RTX 5000 series fully
I have compiled xFormers and groundingdino with latest official Torch 2.7 for making this work
Also a new amazing feature Generate Tiled Images implemented
This tiled image generation can be used to improve small details of training subject, especially useful for items, objects, products
Ultimate Batch Image Processing Gradio APP by SECourses
Use Windows_Start_App.bat to start this APP
This APP has the following features. Please look at the full screenshots to understand how it works exactly
Image Cropper
This TAB is extremely useful to zoom in and crop the subjects
It supports YOLO Segmentation and also state of the art Grounded SAM 2
With Grounded SAM 2 you can use any keyword to mask / segment and zoom in subjects like person, ear, lips, tanks, cars, t-shirt, etc.
How this tab works is that you enter your desired aspect ratios - enter your desired resolutions here so that it will generate accurate folder names for batch image resize
After finding the subject in processed image like person, it gets it. And then it starts to expand it in the least possible amount to reach your desired aspect ratio like cropping 1920x1080 image into 1024x1024 aspect ratio with subject focus being person
Then it saves these images with full resolution with crop / zoom in into given folder
The folder structure is extremely important so look very carefully and read the screenshot images - it shows all
This processing will never cut / remove any part of the subject so it won't reach desired aspect ration in every case, the Image Resizer tab will cut the image and obtain desired aspect ratio and resolution exactly
This tab is fully multi-threaded and supports running on multiple GPU as well
Image Resizer
This is the second stage of processing images but of course can be used standalone as well
Give the Output Folder of the image cropping processing
It will then look for subfolders with the exact same names of your desired target resolutions
E.g. you want your images to be 1024x1024 pixel then it will look sub folder named as 1024x1024
Again look at the screenshots very carefully to understand how it works
This tab will crop / cut subject as well to reach the desired target aspect ratio and then it will downscale the image into the desired resolution
When cutting body parts of human, it will focus on face and will not part the direction of the image that contains the face
You can also use Resize without cropping (center image and add white background) option as well
This tab is fully multi-threaded and it runs on CPU
Move Low-Res Files
WIP not tested yet but should be working
Rename Files
WIP not tested yet but should be working
Extract Faces
With this tab you can extract faces from given folder
It will automatically find the face in given image and save it into desired folder
You can also set positive or negative padding depending on your requirement
This tab is fully multi-threaded
Find Duplicates
This tab is extremely useful to find duplicate images in given folder and move them to the target folder
It supports following algorithms and default parameters working decent:
aHash (Average Hash) : How it works: Calculates the average color of the image, then creates a hash based on whether each pixel is brighter or darker than the average.
dHash (Difference Hash): How it works: Similar to aHash but compares the difference in brightness between adjacent pixels.
pHash (Perceptual Hash): How it works: Uses the Discrete Cosine Transform (DCT) to focus on low-frequency components, making it robust to minor changes.
wHash (Wavelet Hash): How it works: Uses Wavelet transform to capture image details at different scales.
ColorHash: How it works: Creates a hash based on the color histogram of the image.
KAZE: How it works: Detects and describes local features in images using non-linear scale spaces, making it robust to scale, rotation, and some level of viewpoint change.
Multi-Hash: How it works: Combines multiple hashing algorithms (aHash, dHash, pHash, wHash, ColorHash, KAZE) to improve overall accuracy.
This tab is fully multi-threaded and it was super hard to code this one as multi-threaded
SAM 2 Batch Segmentation Gradio APP by SECourses
Use Start_Segmenter.bat to start this APP
It is built upon Grounded-SAM-2
This APP is super important to decide your subject finding / masking prompt and Box Threshold and Text Threshold
After finding parameters, you can use them in your Batch Processing APP with SAM 2 prompting box instead of YOLO
It will automatically save every Mask and Segmented Image into outputs folder
It supports fully folder Batch Processing as well
It is fully multi-threaded and supports multi-GPU as well, it was really hard to code in Python
Look and read the screenshots very carefully to learn how to use it
You can use generated Masks in training like in Kohya training as well
How To Install and Use:
Windows:
First watch above requirements tutorial and follow every step
Extract zip archive into a drive like c:/ulti_process
Longer directory path causes issues
Double click and install with Windows_Install.bat and that is it
Then run with Windows_Start_App.bat to start Ultimate Batch Processing APP
To run Segmentation APP run with Start_Segmenter.bat
Massed Compute (Recommend Cloud) :
Please register via this link : https://vm.massedcompute.com/signup?linkId=lp_034338&sourceId=secourses&tenantId=massed-compute
We have a special coupon for all GPUs : SECourses
If you want to learn more about GPUs and prices read this link : https://www.patreon.com/posts/126671823
Select RTX A6000 or Better GPU - like L40S or A6000 ADA or A100 or H100
Then select our image SECourses from Creator dropdown
Then follow Massed_Compute_Instructions_READ.txt
Same as my any other Massed Compute installer script
Example tutorial for learn how to install and use Massed Compute
(Starts at 12:58) : https://youtu.be/KW-MHmoNcqo?si=G1WbG-Qw4ujWvOtG&t=778
RunPod (Cloud):
Please register via this link : https://get.runpod.io/955rkuppqv4h
Then follow Runpod_Instructions_READ.txt
Same as my any other RunPod installer script
Use the template written in Runpod_Instructions_READ.txt file
Example tutorial for learn how to install and use RunPod
(starts at 22:03) : https://youtu.be/KW-MHmoNcqo?si=QN8X8Sjn13ZYu-EU&t=1323
Kaggle (Free Cloud - Not Recommend):
Register Kaggle for free and verify your phone number : https://www.kaggle.com/
Upload the Kaggle notebook file from downloaded attachments
Follow the instructions on the Kaggle notebook
How to Use Kaggle Notebooks General Tutorial
(Starts at 27:34) https://youtu.be/KW-MHmoNcqo?si=vkKTvWHbZVrn4x7h&t=1654



Comments
Furkan Gözükara
yes Massed_Compute_Install.sh is linux installer. but you must have yourself installed cuda, gcc, python 3.10.x (as default or modify installer to generate venv). if you are using linux you need to get more experience about system setup
Everlive
Hello! Is there a way to install and make it run on Linux (Ubuntu)? Thanks!
Furkan Gözükara
thank you so much
Lou
Just came by to show my appreciation for what you and your team do. Great program.
Furkan Gözükara
just overwrite files thats it
Aleksei Goferman
Hi, I just installed v20. If I want to switch to v21, should I delete everything first or simply overwrite the existing files?
Furkan Gözükara
nope i train with 1024x1024. in a case where i needed a certain aspect ratio output i trained that way and it helped
Caleb
Have you done any testing to see if tight crops on the subject or empty backgrounds make better training datasets? I thought that having some context behind the subject helped with flexibility but I could be wrong.
Furkan Gözükara
implemented with v20 . check this checkbox : Skip images with no SAM2 detection
Mig Test
On the 'Image Cropper' tab, if I use SAM2 and nothing is detected, the source image will be copied to the destination unaltered. Can you please change the behavior so that the file is skipped instead? Use case: I'm trying to exact all hands from a large gallery of images to do hand training. I would like the output folder to contain only hands, but it contains hands AND all images where no hands are present.
Furkan Gözükara
i need you to make a very detailed pdf from you that shows every one of these step by step with examples so i can try to implement. email me such good document : monstermmorpg@gmail.com
cool1
I asked in the past and I think you said you could, but could the SAM2 be able (with an option for it) to output a black (blank) mask image (no white) for frames where the object you asked it to search for couldn't be found in that source image (frame)? That way it can work for rotoscoping video a lot more easily and allow simpler matching of the exported mask frames with the original frames (since currently it doesn't output frames where it can't see the object, which causes problems when you import it into things like After FX as it puts "missing frame" chequered background on each missing png sequence frame for frames SAM2 didn't see the thing to mask). Also could the there be please be an option in SAM2 GUI to process all the frames in video? And for the SAM2 segment outputs can there be checkboxes to say whether you want it to add the text and numeric value next to the box and for whether you the boxes/segments drawn 1) in the colours as they do now or 2) all in the same colour (so that it doesn't flicker between colours if they're frames of a video - where it can currently draw a box around the same object but it gets drawn in different colours on every source frame which can look flickery when played back at normal speed)?
Furkan Gözükara
gradio missing means during installation you had an error and it failed before coming to installing gradio. please make a fresh install and email me the cmd logs so i can pinpoint error : monstermmorpg@gmail.com
Scipio
I've recently subscribed and followed the youtube tutorial to set up python, cudann, visual studio etc, but for some reason whenever I try and start one of the programs after the 'one click install' it says gradio is missing. Did I miss a step and if so, how do I fix it?
Furkan Gözükara
i dont think so you can detect right and left. up and down perhaps but that would require image vision model addition
T. Scott Thompson
Can you have it detect left/right inverted or mirrored faces and fix them? It's a problem with training faces that some training images are flipped, and it's hard to see manually.
Furkan Gözükara
you were right. just made a great update use latest version it has all and read changelogs at the top
Error_404_unknown
Not sure if I'm just dumb but I have a feature request (unless it's there and I just can't find it) I am trying to use extract faces tab but I just keep getting "no face found" it works with yolo cropping tab but the crops are a little tight. Is there a way to lower the confidence? If not can this be added? Or if not can padding be added to the yolo tab?
Furkan Gözükara
nope you are doing wrong. image cropper crops into aspect ratio as much as possible without cropping the subject. image resizer will make it exact resolution and it scans the sub folders of given folder. sub folders has to be like 1024x1024, 1536x1024 - whatever you give check the very top screenshots i put explains a lot
Oleh 23
I'm running your workflow on a system with RTX 5090 + CUDA 12.8, and I’ve noticed two issues: ImageCropper – it crops the images to a different resolution than specified in the prompt line. === Processing IMG_8026.JPG === 1. Original image size: 3024x4032 === SAM2 Processing === 6. Input array shape to SAM2: (4032, 3024, 3) 7. Output segmented image shape: (4032, 3024, 3) 9. Number of coordinates: 3972756 9.1. First few coordinates: [(1381, 1302), (1381, 1303), (1381, 1304), (1381, 1305), (1381, 1306)] 7. Output segmented image shape: (4032, 3024, 3) 9. Number of coordinates: 3838208 9.1. First few coordinates: [(1480, 1373), (1480, 1374), (1480, 1375), (1480, 1376), (1480, 1377)] 10. Initial bbox: [8, 1381, 2537, 4031] === Processing Crops === --- Processing aspect ratio 960x544: --- Trying to reach 100% of target aspect ratio 1.7647058823529411 Trying to reach 99% of target aspect ratio 1.7647058823529411 Trying to reach 98% of target aspect ratio 1.7647058823529411 Trying to reach 97% of target aspect ratio 1.7647058823529411 Trying to reach 96% of target aspect ratio 1.7647058823529411 Trying to reach 95% of target aspect ratio 1.7647058823529411 Trying to reach 94% of target aspect ratio 1.7647058823529411 Trying to reach 93% of target aspect ratio 1.7647058823529411 Trying to reach 92% of target aspect ratio 1.7647058823529411 Trying to reach 91% of target aspect ratio 1.7647058823529411 Trying to reach 90% of target aspect ratio 1.7647058823529411 Trying to reach 89% of target aspect ratio 1.7647058823529411 Trying to reach 88% of target aspect ratio 1.7647058823529411 Trying to reach 87% of target aspect ratio 1.7647058823529411 Trying to reach 86% of target aspect ratio 1.7647058823529411 Trying to reach 85% of target aspect ratio 1.7647058823529411 Trying to reach 84% of target aspect ratio 1.7647058823529411 Trying to reach 83% of target aspect ratio 1.7647058823529411 Trying to reach 82% of target aspect ratio 1.7647058823529411 Trying to reach 81% of target aspect ratio 1.7647058823529411 Trying to reach 80% of target aspect ratio 1.7647058823529411 Trying to reach 79% of target aspect ratio 1.7647058823529411 Trying to reach 78% of target aspect ratio 1.7647058823529411 Trying to reach 77% of target aspect ratio 1.7647058823529411 Trying to reach 76% of target aspect ratio 1.7647058823529411 Trying to reach 75% of target aspect ratio 1.7647058823529411 Trying to reach 74% of target aspect ratio 1.7647058823529411 Trying to reach 73% of target aspect ratio 1.7647058823529411 Trying to reach 72% of target aspect ratio 1.7647058823529411 Trying to reach 71% of target aspect ratio 1.7647058823529411 Trying to reach 70% of target aspect ratio 1.7647058823529411 Trying to reach 69% of target aspect ratio 1.7647058823529411 Trying to reach 68% of target aspect ratio 1.7647058823529411 Trying to reach 67% of target aspect ratio 1.7647058823529411 Trying to reach 66% of target aspect ratio 1.7647058823529411 Trying to reach 65% of target aspect ratio 1.7647058823529411 Trying to reach 64% of target aspect ratio 1.7647058823529411 Achieved 64.00% of target aspect ratio 15. Final bbox: [0, 1381, 2993, 4031] 16. Cropped image size: (2993, 2650) 10. Initial bbox: [8, 1480, 2553, 4031] ImageResizer – constantly throws a FolderNotFound error, even though the input/output folders exist and are correctly defined. Could this be a version mismatch or something specific to the 5090 setup? I’m using the exact workflow and dependencies provided in your guide.
Furkan Gözükara
nice suggestions i plan to add video please remind me later
cool1
For the SAM 2 Segmenter app, can we please have options to: 1) Have an option for whether we want the thing searched for shown as text or not (there's a text threshold but not an option to turn it off completely). eg a "show text?" checkbox. 2) Have an option for it not to show the numerical value next to each bounding box (I assume that figures how close the area matched what was searched for). 3) It would be helpful if it could also take a .mp4 video as input instead of only having an image/source folder of images input. This would save having to output a png sequence of a video file to process. Also could there be a way for, where if it could process a video or where the batch option is processing a png sequence, that it took the previous frame(s) into account when drawing the coloured bounding boxes and other coloured outlines (eg. of a person/car etc. ) so that if you play back a video of it the colour of the bounding box or person outline don't keep changing every frame but stay the same for that person/object (so it won't flicker as much and it will look more consistent).
Furkan Gözükara
yes it is best for pre processing images
Dan
Hi, is application of this a default recommendation when finetuning flux?
Furkan Gözükara
sadly doesnt tell the erro. can you send me exact image and config you tried? monstermmorpg@gmail.com
Mig Test
=== Error Occurred === Error details: too many values to unpack (expected 4) Traceback (most recent call last): File ".\Ulti_Img_Process_V14\app.py", line 489, in process_image segmented_image, mask_image, mask_coordinates, _ = sam2_process_image( ValueError: too many values to unpack (expected 4) Line 489 should be change "_" to "*_" as follows: segmented_image, mask_image, mask_coordinates, *_ = sam2_process_image( The *_ variable (a conventional “throw‑away” name) absorbs however many additional values the function hands back, so the unpacking always succeeds even if the library adds new outputs.
Furkan Gözükara
for this just extract zip file and overwrite files
Furkan Gözükara
please make a fresh install and send me install logs so i can know : monstermmorpg@gmail.com - install logs is what is printed on cmd
EnjoyerOfAll
I'm sure this is a problem with my system, but I've run through your video a few times. I'm getting an issue with opening input file aio.lib: [2025-04-29 22:58:35,548] [INFO] [real_accelerator.py:222:get_accelerator] Setting ds_accelerator to cuda (auto detect) test.c LINK : fatal error LNK1181: cannot open input file 'aio.lib' Traceback (most recent call last): File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\transformers\utils\import_utils.py", line 1967, in _get_module return importlib.import_module("." + module_name, self.__name__) File "C:\Program Files\Python310\lib\importlib\__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 1050, in _gcd_import File "", line 1027, in _find_and_load File "", line 1006, in _find_and_load_unlocked File "", line 688, in _load_unlocked File "", line 883, in exec_module File "", line 241, in _call_with_frames_removed File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\transformers\models\bert\modeling_bert.py", line 47, in from ...modeling_utils import PreTrainedModel File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\transformers\modeling_utils.py", line 158, in import deepspeed File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\deepspeed\__init__.py", line 25, in from . import ops File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\deepspeed\ops\__init__.py", line 15, in from ..git_version_info import compatible_ops as __compatible_ops__ File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\deepspeed\git_version_info.py", line 29, in op_compatible = builder.is_compatible() File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\deepspeed\ops\op_builder\fp_quantizer.py", line 35, in is_compatible sys_cuda_major, _ = installed_cuda_version() File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\deepspeed\ops\op_builder\builder.py", line 53, in installed_cuda_version output = subprocess.check_output([cuda_home + "/bin/nvcc", "-V"], universal_newlines=True) File "C:\Program Files\Python310\lib\subprocess.py", line 421, in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, File "C:\Program Files\Python310\lib\subprocess.py", line 503, in run with Popen(*popenargs, **kwargs) as process: File "C:\Program Files\Python310\lib\subprocess.py", line 971, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Program Files\Python310\lib\subprocess.py", line 1456, in _execute_child hp, ht, pid, tid = _winapi.CreateProcess(executable, args, FileNotFoundError: [WinError 2] The system cannot find the file specified The above exception was the direct cause of the following exception: Traceback (most recent call last): File "L:\Ulti_Img_Process_V14\app.py", line 70, in from SAM_Segmenter import ( File "L:\Ulti_Img_Process_V14\SAM_Segmenter.py", line 19, in from GroundingDINO.groundingdino.util.inference import load_model, load_image, predict File "L:\Ulti_Img_Process_V14\GroundingDINO\groundingdino\util\inference.py", line 12, in from groundingdino.models import build_model File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\groundingdino\models\__init__.py", line 8, in from .GroundingDINO import build_groundingdino File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\groundingdino\models\GroundingDINO\__init__.py", line 15, in from .groundingdino import build_groundingdino File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\groundingdino\models\GroundingDINO\groundingdino.py", line 24, in from transformers import AutoTokenizer, BertModel, BertTokenizer, RobertaModel, RobertaTokenizerFast File "", line 1075, in _handle_fromlist File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\transformers\utils\import_utils.py", line 1956, in __getattr__ value = getattr(module, name) File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\transformers\utils\import_utils.py", line 1955, in __getattr__ module = self._get_module(self._class_to_module[name]) File "L:\Ulti_Img_Process_V14\venv\lib\site-packages\transformers\utils\import_utils.py", line 1969, in _get_module raise RuntimeError( RuntimeError: Failed to import transformers.models.bert.modeling_bert because of the following error (look up to see its traceback): [WinError 2] The system cannot find the file specified
Hipno
Hello Sir! I haven't started yet but I'm just wondering if we are using the last update version, how do we upgrade to this version?
Furkan Gözükara
internet hatası var. o yüzden modeller inmemiş . dediğim gibi WARP vpn kur aktif et sonra sıfırdan tekrar kur. "Connection broken" - internet hatası internetin ve senin PC ile alakalı
HüseyinT
"Venv" kurulumu tamamlandıktan sonra "Windows_Start_App" dosyasını çalıştırınca aşağıdaki hatayı aldım: [2025-04-28 02:23:52,018] [INFO] [real_accelerator.py:222:get_accelerator] Setting ds_accelerator to cuda (auto detect) W0428 02:23:53.612000 9716 venv\Lib\site-packages\torch\distributed\elastic\multiprocessing\redirects.py:29] NOTE: Redirects are currently not supported in Windows or MacOs. Error: SAM2 checkpoint file not found at C:\Users\husey\Downloads\Ulti_Img_Process_V13\models\sam2.1_hiera_large.pt Press any key to continue . . . "Windows_Install" dosyasına tıklayıp V13 kurulumunda cmd ekranında aşağıdaki hatayı almıştım: "... Attempting uninstall: supervision Found existing installation: supervision 0.25.1 Uninstalling supervision-0.25.1: Successfully uninstalled supervision-0.25.1 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. groundingdino 0.1.0 requires supervision>=0.22.0, but you have supervision 0.6.0 which is incompatible. Successfully installed ImageHash-4.3.2 PyWavelets-1.8.0 accelerate-1.6.0 aiofiles-24.1.0 antlr4-python3-runtime-4.9.3 anyio-4.9.0 click-8.1.8 exceptiongroup-1.2.2 fastapi-0.115.12 ffmpy-0.5.0 gradio-5.27.0 gradio-client-1.9.0 groovy-0.1.2 groundingdino-py-0.4.0 h11-0.16.0 httpcore-1.0.9 httpx-0.28.1 hydra-core-1.3.2 iopath-0.1.10 markdown-it-py-3.0.0 mdurl-0.1.2 numpy-2.1.1 omegaconf-2.3.0 opencv-contrib-python-4.11.0.86 orjson-3.10.16 pandas-2.2.3 portalocker-3.1.1 pydub-0.25.1 pygments-2.19.1 python-multipart-0.0.20 pytz-2025.2 pywin32-310 rich-14.0.0 ruff-0.11.7 safehttpx-0.1.6 sam2-1.1.0 seaborn-0.13.2 segment-anything-1.0 semantic-version-2.10.0 shellingham-1.5.4 sniffio-1.3.1 starlette-0.46.2 supervision-0.6.0 tomlkit-0.13.2 typer-0.15.2 tzdata-2025.2 ultralytics-8.3.115 ultralytics-thop-2.0.14 uvicorn-0.34.2 websockets-15.0.1 Cloning into 'GroundingDINO'... remote: Enumerating objects: 463, done. remote: Counting objects: 100% (240/240), done. remote: Compressing objects: 100% (105/105), done. Rremote: Total 463 (delta 175), reused 135 (delta 135), pack-reused 223 (from 1) Receiving objects: 100% (463/463), 12.87 MiB | 1.59 MiB/s, done. Resolving deltas: 100% (241/241), done. .gitattributes: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1.52k/1.52k [00:00 snapshot_download(repo_id="MonsterMMORPG/YoloModels",local_dir="models") File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\utils\_validators.py", line 114, in _inner_fn return fn(*args, **kwargs) File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\_snapshot_download.py", line 296, in snapshot_download thread_map( File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\tqdm\contrib\concurrent.py", line 69, in thread_map return _executor_map(ThreadPoolExecutor, fn, *iterables, **tqdm_kwargs) File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\tqdm\contrib\concurrent.py", line 51, in _executor_map return list(tqdm_class(ex.map(fn, *iterables, chunksize=chunksize), **kwargs)) File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\tqdm\std.py", line 1181, in __iter__ for obj in iterable: File "C:\Users\husey\AppData\Local\Programs\Python\Python310\lib\concurrent\futures\_base.py", line 621, in result_iterator yield _result_or_cancel(fs.pop()) File "C:\Users\husey\AppData\Local\Programs\Python\Python310\lib\concurrent\futures\_base.py", line 319, in _result_or_cancel return fut.result(timeout) File "C:\Users\husey\AppData\Local\Programs\Python\Python310\lib\concurrent\futures\_base.py", line 458, in result return self.__get_result() File "C:\Users\husey\AppData\Local\Programs\Python\Python310\lib\concurrent\futures\_base.py", line 403, in __get_result raise self._exception File "C:\Users\husey\AppData\Local\Programs\Python\Python310\lib\concurrent\futures\thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\_snapshot_download.py", line 270, in _inner_hf_hub_download return hf_hub_download( File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\utils\_validators.py", line 114, in _inner_fn return fn(*args, **kwargs) File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\file_download.py", line 941, in hf_hub_download return _hf_hub_download_to_local_dir( File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\file_download.py", line 1241, in _hf_hub_download_to_local_dir _download_to_tmp_and_move( File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\file_download.py", line 1675, in _download_to_tmp_and_move http_get( File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\huggingface_hub\file_download.py", line 449, in http_get for chunk in r.iter_content(chunk_size=constants.DOWNLOAD_CHUNK_SIZE): File "C:\Users\husey\Downloads\Ulti_Img_Process_V13\venv\lib\site-packages\requests\models.py", line 822, in generate raise ChunkedEncodingError(e) requests.exceptions.ChunkedEncodingError: ('Connection broken: IncompleteRead(452224224 bytes read, 445859387 more expected)', IncompleteRead(452224224 bytes read, 445859387 more expected)) Virtual environment made and installed properly Press any key to continue . . .
Furkan Gözükara
the latest installer has it already. let me test again
Firat Güven
There was a compatibility problem during the installation within the following step : git clone https://github.com/IDEA-Research/GroundingDINO cd GroundingDINO pip install -e . The problem is: the source code of GroundingDINO is not compatible with PyTorch 2.7.0 Solution in my case was to use pre-compiled Wheel-file: pip install https://huggingface.co/MonsterMMORPG/SECourses_Premium_Flash_Attention/resolve/main/groundingdino-0.1.0-cp310-cp310-win_amd64.whl After that step I could download the models and start the app.py
Eungbin Seo
How can i get Sam2 file...?
Eungbin Seo
Traceback (most recent call last): File "C:\imagecrop\app.py", line 75, in from SAM_Segmenter import ( File "C:\imagecrop\SAM_Segmenter.py", line 17, in from sam2.build_sam import build_sam2 ModuleNotFoundError: No module named 'sam2'
Furkan Gözükara
yes this supports batch fully. please ping me from discord so i can show you proper way
Valentyn Shumakher
No natter what images try the app cuts only the first image from the folder. Possible to process batch?
Furkan Gözükara
Yes. SAM mask is based on original image. if you want matching mask first crop, then use mask segmentation app on them or use cropper :)
Casper Smit
The SAM mask is not corresponding with the cropped output. Is this expected behaviour?
Tobe2d
Yessss please!!!
Furkan Gözükara
great i am gonna work on video processing as well
Tobe2d
yes exactly it create mask as black and white that can be used perfectly in so many applications
Furkan Gözükara
well 250k really big :D the crash reason is it keeps hashes of all images and compare them so as you scan more images it will become bigger
MathiasF
Hi, scanning subfolders works fine. But you should not scan structures with a huge number of files. I scanned a folder structure with round about 250.000 images. Scanning was done in under an hour (thumps up!), but the after process of comparing broke after round about 3 hours. My conclusion -> don's scan so many files :-D
Furkan Gözükara
it would require a lot of manual programming. if you have a budget i could work on that
Alex
is it possible to crop out other people from a the images? for example i have a dataset with many images with one woman and one man but i only want to crop the woman how can i go about doing this?
Furkan Gözükara
currently it is image only but i may add video later. so how it works with comfyui video thing it generates video mask?
Tobe2d
Thank you for another great app. On the official demo of SAM2 it can do Images and Videos, is there a way we can do that here? I try frame by frame but it is not contestant like in comfyui using sam2
Furkan Gözükara
this is tested on linux, windows, cloud. but for mac i dont have mac to test. but most of the functions should work on mac since it is not like cuda depended so windows is local, linux is local, runpod is cloud, massed compute is cloud, kaggle is cloud. i recommend massed compute as cloud service
Furkan Gözükara
v11 will scan sub folders and when moving dups it will move them into same sub folder format. let me know how works
Furkan Gözükara
no issues with Kaspersky Internet Security, you can also edit any file inside it. it is all python and .bat file :) https://www.virustotal.com/gui/file/71150241d76d7ea2ca4f94955a42096a3dda9fa15a8a1829d3bb2c1534166187
Michele Di Pasquale
windows defender block the download for a virus alert
MathiasF
Thanks for your work! The duplicate finder works great. Is it possible to include also finding duplicates in subfolders?
Roland
Is it only possible to run locally on Windows only? otherwise only on cloud service? what about macOS?