Compare commits

..

2 Commits

Author SHA1 Message Date
cc786484d7 Improved and Updated README.md 2024-03-20 07:07:58 +01:00
a74be96f47 split image function 2024-03-20 06:55:39 +01:00
2 changed files with 57 additions and 7 deletions

View File

@ -37,14 +37,41 @@ pip install -r requirements.txt
``` ```
## Usage ## Usage
Run the script with the path to the image you want to split as an argument:
### As Windows Executable
You can run the program with either the path to a single image you want to split or a directory containing multiple images.
#### Single Image Mode
```sh ```sh
python main.py path_to_your_image.jpg main.exe --image_path path_to_your_image.jpg
```
The program will create two new images in the "left" and "right" directories with the suffixes _left and _right added to the original file name.
#### Directory Mode
```sh
main.exe --directory path_to_your_directory
``` ```
The program will iterate over all images in the directory, and for each image, it will create two new images in the "left" and "right" directories with the suffixes _left and _right added to the original file name.
### As a Python Script
You can run the script with either the path to a single image you want to split or a directory containing multiple images.
To split a single image:
```sh
python main.py --image_path path_to_your_image.jpg
```
The script will create two new images in the "left" and "right" directories with the suffixes _left and _right added to the original file name. The script will create two new images in the "left" and "right" directories with the suffixes _left and _right added to the original file name.
To split all images in a directory:
```sh
python main.py --directory path_to_your_directory
```
The script will iterate over all images in the directory, and for each image, it will create two new images in the "left" and "right" directories with the suffixes _left and _right added to the original file name.
## License ## License
This project is licensed under the terms of the MIT license. This project is licensed under the terms of the MIT license.

27
main.py
View File

@ -59,14 +59,37 @@ def split_image(image_path):
img2.save(right_image_path) img2.save(right_image_path)
def split_images_in_directory(directory):
# Get the list of files in the directory
files = os.listdir(directory)
# Filter the list to get only the image files
image_files = [f for f in files if f.endswith(".jpg") or f.endswith(".png")]
# Split each image
for image_file in image_files:
image_path = os.path.join(directory, image_file)
if not is_image_split(image_path):
split_image(image_path)
def main(): def main():
parser = argparse.ArgumentParser(description="Split an image into two halves") parser = argparse.ArgumentParser(
parser.add_argument("image_path", help="Path to the image file") description="Split an image or all images in a directory into two halves"
)
parser.add_argument("--image_path", help="Path to the image file")
parser.add_argument("--directory", help="Path to the directory containing images")
args = parser.parse_args() args = parser.parse_args()
if args.image_path:
if is_image_split(args.image_path): if is_image_split(args.image_path):
print("The image is already split.") print("The image is already split.")
else: else:
split_image(args.image_path) split_image(args.image_path)
elif args.directory:
split_images_in_directory(args.directory)
else:
print("Please provide either --image_path or --directory")
if __name__ == "__main__": if __name__ == "__main__":