Download image_display.py from jkushwaha/rough_work: direct link, hf CLI and curl.
- Browser
- Download file 2.01 kB
-
https://huggingface.co/jkushwaha/rough_work/resolve/main/image_display.py
- Command line
-
hf download hf://jkushwaha/rough_work/image_display.py
-
curl -L -o image_display.py https://huggingface.co/jkushwaha/rough_work/resolve/main/image_display.py
2.01 kB
| def add_text(image, text, font_size=20, font_color=(255, 0, 0), font_path=None): | |
| # Create a drawing context | |
| draw = ImageDraw.Draw(image) | |
| # Load a font | |
| if font_path: | |
| font = ImageFont.truetype(font_path, font_size) | |
| else: | |
| font = ImageFont.load_default() | |
| # Calculate text size and position | |
| text_width, text_height = draw.textsize(text, font=font) | |
| width, height = image.size | |
| text_x = (width - text_width) // 2 | |
| text_y = 10 # Adjust this value for vertical position | |
| # Draw text on image | |
| draw.text((text_x, text_y), text, font=font, fill=font_color) | |
| def display_side_by_side_with_captions(image1_path, image2_path, output_path): | |
| # Open images using Pillow | |
| image1 = Image.open(image1_path) | |
| image2 = Image.open(image2_path) | |
| # Resize images (optional) | |
| # Here, assuming images are of the same size | |
| width, height = image1.size | |
| new_width = width * 2 # Width for the side by side display | |
| new_height = height | |
| # Resize both images to match the new dimensions | |
| image1 = image1.resize((new_width // 2, new_height)) | |
| image2 = image2.resize((new_width // 2, new_height)) | |
| # Create a new image with double width to place both images side by side | |
| side_by_side = Image.new('RGB', (new_width, new_height)) | |
| # Paste the resized images into the new image | |
| side_by_side.paste(image1, (0, 0)) | |
| side_by_side.paste(image2, (width, 0)) | |
| # Add captions to each image | |
| add_caption(image1, "Image 1", font_color=(255, 0, 0)) | |
| add_caption(image2, "Image 2", font_color=(255, 0, 0)) | |
| # Save the side by side image to a file | |
| side_by_side.save(output_path) | |
| # Example usage: | |
| if __name__ == "__main__": | |
| image1_path = 'path_to_image1.jpg' | |
| image2_path = 'path_to_image2.jpg' | |
| output_path = 'side_by_side_with_captions.jpg' | |
| display_side_by_side_with_captions(image1_path, image2_path, output_path) | |
| print(f"Images displayed side by side with captions and saved as {output_path}") |