From f45863bfb0cd0dfa8c1b005b8b7b5223e31c103b Mon Sep 17 00:00:00 2001 From: xiadongliang Date: Thu, 27 Mar 2025 11:24:32 +0800 Subject: [PATCH] README and gitgnore --- .gitignore | 15 ++++++++++- README.md | 76 +++++++++++++++++++++++++++++++++++++++++------------- 2 files changed, 72 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index 00983fe..3e661a5 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,14 @@ -/__pycache__/ \ No newline at end of file +# Byte-compiled / optimized / DLL files +/__pycache__/ +*.py[cod] +*.pyo + +# Virtual environment +/venv/ + +# Images and outputs +/images/ +/outputs/ + +# Configuration file +conf.py \ No newline at end of file diff --git a/README.md b/README.md index ea803c8..78dceee 100644 --- a/README.md +++ b/README.md @@ -1,25 +1,65 @@ -See the `conf.py`: -``` -scheme = 'A' +# Image Processing with YOLO and Inpainting + +This project provides a framework for removing people from images using YOLO for object detection and OpenCV or LaMa for inpainting. You can configure the behavior of the program by editing the `conf.py` file. + +## Configuration + +Edit the `conf.py` file to select the processing scheme and customize its parameters: + +```python +scheme = 'A' # Choose 'A' or 'B' schemeA = { - 'image_name': 'd1.jpg', - 'is_lama': False, - 'inpaint_radius': 3, - 'is_gaussianblur': True, - 'gaussian_radius': 9 # Odd number + 'image_name': 'd1.jpg', # Input image name + 'is_lama': False, # Use LaMa for inpainting (True/False) + 'inpaint_radius': 3, # Radius for OpenCV inpainting + 'is_gaussianblur': True, # Apply Gaussian blur to the mask + 'gaussian_radius': 9 # Gaussian blur radius (odd number) } schemeB = { - 'image_name': 'd1.jpg', - 'gaussian_radius': 51, # Odd number - 'is_use_fill_color': False, - 'fill_color': [227, 234, 244] + 'image_name': 'd1.jpg', # Input image name + 'gaussian_radius': 51, # Gaussian blur radius (odd number) + 'is_use_fill_color': False, # Use a fill color for blending + 'fill_color': [227, 234, 244] # RGB fill color } ``` -You can choose scheme whcih you want.
-The A is useof openCV inpaint or model(LaMa); And B is useof openCV but no inpaint.
-When you finished the conf, run `python main.py`.
-
-If you have a better scheme, please connect me.
-Email: xiadongliang88@163.com
\ No newline at end of file + +- **Scheme A**: Uses OpenCV or LaMa for inpainting. +- **Scheme B**: Uses OpenCV for blending without inpainting. + +## How to Run + +1. Install the required dependencies: + ```bash + pip install -r requirements.txt + ``` + +2. Configure the `conf.py` file to select the desired scheme and parameters. + +3. Run the main script: + ```bash + python main.py + ``` + +## Outputs + +Processed images will be saved in the `outputs/` directory with filenames indicating the scheme and input image. + +## Directory Structure + +``` +├── images/ # Input images +├── outputs/ # Processed images +├── conf.py # Configuration file +├── main.py # Main script +├── schemeA.py # Scheme A implementation +├── schemeB.py # Scheme B implementation +├── requirements.txt # Python dependencies +``` + +## Contact + +If you have suggestions for improving this project or new schemes to add, feel free to contact me: + +**Email**: xiadongliang88@163.com \ No newline at end of file