Python Developer Needed to Build a Windows GUI for an Existing AI Command-Line Tool !! need Software Development
Contact person: Python Developer Needed to Build a Windows GUI for an Existing AI Command-Line Tool !!
Phone:Show
Email:Show
Location: La Habra, United States
Budget: Recommended by industry experts
Time to start: As soon as possible
Project description:
"Of course. Here is a comprehensive, detailed freelance job posting designed to attract skilled developers, educate them on the project, and give them the confidence that this is a well-defined and achievable task.
This level of detail reduces uncertainty, which often leads to better quality proposals and more accurate cost estimates.
Freelance Job Posting
Title: Python Developer Needed to Build a Windows GUI for an Existing AI Command-Line Tool
Project Overview:
Hello! I'm looking for a skilled Python developer to create a simple, user-friendly Windows desktop application. This project is a "GUI wrapper" for an existing, fully functional command-line AI tool called GFPGAN.
The core AI/ML work is already complete. You will not be responsible for developing any AI models. Your task is to build the front-end interface that allows a non-technical user to easily use the power of the underlying script. The goal is a clean, standalone .exe file that can be run on any modern Windows machine.
This is a well-defined project with clear steps, perfect for a developer experienced in Python GUI development.
About the Core Tool: GFPGAN
To ensure you have full context, here’s what the underlying tool does:
What it is: GFPGAN is a popular, open-source project for AI-powered face restoration. It takes old, blurry, or low-resolution images and dramatically enhances the quality of the faces within them.
How it Works Now: It currently runs perfectly from the command prompt. The user provides an input image, and the script outputs a restored image. A typical command looks like this:
python [login to view URL] -i path/to/[login to view URL] -o path/to/output_folder -v 1.3 -s 2
Your Role: You will build a GUI that constructs and executes this command in the background, making the process seamless for the user.
Project Link (for your reference): [login to view URL]
Step-by-Step Application Requirements:
I have broken down the required functionality of the application into a clear, step-by-step workflow.
1. Main Window & Layout:
A simple, clean main window.
The layout should ideally feature two panels: one for the "Original Image" and one for the "Enhanced Image".
2. Image Input:
A button labeled "Select Image...".
Clicking this button should open a standard Windows file dialog, allowing the user to select an image file (.jpg, .png).
Once selected, the original image should be displayed in the "Original Image" panel.
3. Enhancement Options (User Settings):
The GUI should provide simple controls for the script's command-line arguments. For example:
A dropdown or radio buttons for the Model Version (corresponds to the -v flag, e.g., "1.3", "1.4").
A dropdown or slider for the Upscaling Factor (corresponds to the -s flag, e.g., "2x", "4x").
4. Processing the Image:
A prominent button labeled "Enhance Face".
When clicked, the application must:
Construct the full python [login to view URL] ... command using the selected image path and user settings.
Execute this command as a background process (subprocess). Crucially, the GUI must remain responsive and not freeze during processing.
Provide feedback to the user that processing is underway (e.g., a status bar that says "Processing, please wait...", a disabled "Enhance" button, or a spinning icon).
5. Displaying the Result:
Once the script has finished, the application should automatically find the output image. (The script should be configured to save the output to a temporary, known location).
The newly enhanced image should be loaded and displayed in the "Enhanced Image" panel, ideally next to the original for easy comparison.
The status bar should update to "Enhancement Complete!".
6. Saving the Output:
A button labeled "Save Image..." that is only enabled after an image has been successfully enhanced.
Clicking this button should open a "Save As" file dialog, allowing the user to choose a location and filename to save the new image.
Technical Stack & Deliverables
Language: Python 3.8+
Core Libraries: The application will need to interact with libraries listed in the GFPGAN [login to view URL] (like PyTorch).
GUI Framework: I am open to your professional recommendation. Common choices like PyQt/PySide, CustomTkinter, or Tkinter are all acceptable. The priority is a clean, stable, and professional-looking result.
Packaging: The final application must be packaged into a single, standalone executable file (.exe) using a tool like PyInstaller or Nuitka.
Final Deliverables:
Full Python Source Code: Well-organized and commented where necessary.
A [login to view URL] file for the project environment.
The final, standalone [login to view URL] file, tested to run on a standard Windows 10/11 machine.
Brief, clear instructions on how to set up the development environment and package the application from the source code.
What Makes You a Great Fit for This Project:
Proven experience developing desktop applications with Python (please share examples in your portfolio).
Strong proficiency with at least one major Python GUI framework.
Experience packaging Python applications into standalone executables for Windows using tools like PyInstaller.
Understanding of how to run and manage command-line subprocesses from a Python application without blocking the GUI.
Excellent communication skills and the ability to provide regular updates.
To Apply:
=============================
Please submit your proposal detailing your experience with similar projects. To show you've read this post thoroughly, please begin your proposal by telling me which GUI framework you would recommend for this project and a brief sentence on why.
I look forward to collaborating with you to bring this powerful tool to a wider audience!
Features:
=============================
1. I need a click-and-drag feature 1 image, multiple images, 1 folder
2. I want the output to automatically save to portable\Output
3. If there's a button to select a folder, 1 image, multiple images, 1 folder
4. I prefer the output folder not to auto-resize. Please keep the input and output boxes fixed in size.
5. To start generation, I want button to say "Start."
6. Is the input folder necessary? If so, it would be great if it could automatically delete after a successful generation to keep junk files low. No need for separate checkbox, I want cleanup to be automated.
7. For the output folder, I don’t want four separate folders. I only want the enhanced and upscaled results, with the same file names as the source files.
8. I don’t want to use the CPU—please utilize the GPU fully.
=============================
* Need Source Code when Job is Complete, After any Bug fixes, and Updates
* Please post "I've read everything" when applying, so I'll know you actually read this.
* I'm looking for best deal possible." (client-provided description)
Matched companies (6)

Mobiweb Global Solutions

Junkies Coder

eShop Genius

Versasia Infosoft

TG Coders
