吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1926|回复: 16
收起左侧

[Python 原创] 图片旋转拼接

[复制链接]
zjg121 发表于 2024-3-31 00:43
本帖最后由 zjg121 于 2024-3-31 21:06 编辑

打包成exe的源文件。
a.rar (1.51 KB, 下载次数: 11)




成品出来啦!名称是《拼接地板砖》。见下图:
7.png
下载链接:https://wwi.lanzoup.com/iBdJA1t99fwb






功能增强:可操作一张图,也可以操作一个文件夹中的所有图。1路径不能有中文,2图片正方形最好。
[Python] 纯文本查看 复制代码
from PIL import Image
import cv2
import os


def process_image(image_path):
    # 读取图片
    image = cv2.imread(image_path)
    if image is None:
        print(f"Error: Could not read image at {image_path}")
        return None

        # 这里放置您的图片处理代码
    # 加载原图
    original_image = Image.open(image_path)  # 替换为你的图片路径

    # 获取原图的尺寸
    width, height = original_image.size

    # 计算新图的尺寸(2倍宽2倍高)
    new_width = 2 * width
    new_height = 2 * height

    # 创建一个新的空白图像,大小和原图的两倍一样大
    new_image = Image.new('RGB', (new_width, new_height))

    # 将原图粘贴到新图的左上角
    new_image.paste(original_image, (0, 0))

    # 旋转原图90度并粘贴到新图的右上角
    rotated_90 = original_image.rotate(-90)
    new_image.paste(rotated_90, (width, 0))

    # 旋转原图180度并粘贴到新图的右下角
    rotated_180 = original_image.rotate(180)
    new_image.paste(rotated_180, (width, height))

    # 旋转原图270度并粘贴到新图的左下角
    rotated_270 = original_image.rotate(-270)
    new_image.paste(rotated_270, (0, height))

    # 保存新图
    new_image.save(image_path + '.png')  # 替换为你想要保存新图的路径
    print(f"Processed image saved to {image_path + '.png'}")


def process_images_in_folder(folder_path):
    # 确保路径存在
    if not os.path.isdir(folder_path):
        print(f"Error: {folder_path} is not a valid directory.")
        return

        # 遍历文件夹中的所有文件
    for filename in os.listdir(folder_path):
        # 检查文件是否为图片(这里假设图片是jpg格式,您可以根据需要添加更多格式)
        if filename.lower().endswith(('.png', '.jpg', '.jpeg', '.bmp', '.tiff')):
            file_path = os.path.join(folder_path, filename)
            process_image(file_path)


# 示例:处理文件夹中的所有图片
process_images_in_folder('d:/a')

# 示例:处理单个图片
# process_image('d:/a/12.png')






一张原图(d:/a/input.png),绕右下角旋转,生成新的大图(d:/a/output.png)。
[Python] 纯文本查看 复制代码
from PIL import Image

# 加载原图  
original_image = Image.open('d:/a/input.png')  # 替换为你的图片路径

# 获取原图的尺寸  
width, height = original_image.size

# 计算新图的尺寸(2倍宽2倍高)  
new_width = 2 * width
new_height = 2 * height

# 创建一个新的空白图像,大小和原图的两倍一样大  
new_image = Image.new('RGB', (new_width, new_height))

# 将原图粘贴到新图的左上角  
new_image.paste(original_image, (0, 0))

# 旋转原图90度并粘贴到新图的右上角  
rotated_90 = original_image.rotate(90)
new_image.paste(rotated_90, (width, 0))

# 旋转原图180度并粘贴到新图的右下角  
rotated_180 = original_image.rotate(180)
new_image.paste(rotated_180, (width, height))

# 旋转原图270度并粘贴到新图的左下角  
rotated_270 = original_image.rotate(270)
new_image.paste(rotated_270, (0, height))

# 保存新图  
new_image.save('d:/a/output.png')  # 替换为你想要保存新图的路径

新图.png
原图.png

免费评分

参与人数 3吾爱币 +8 热心值 +3 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
xiao31bai + 1 + 1 谢谢@Thanks!
lgc81034 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

xiao31bai 发表于 2024-3-31 10:45
非常感谢楼主开发的工具,试用了下,发现图片文件名不能有中文,并且图片所在路径文件夹也不能有中文。
要是能再加个分割线(边距)就更好了
xiao31bai 发表于 2024-3-31 10:51
楼主要想在优化可以参考这个,在加个边线,间距
https://www.52pojie.cn/forum.php?mod=viewthread&tid=1790427
whglaowang888 发表于 2024-3-31 00:53
李亲顾 发表于 2024-3-31 05:27
还是喜欢成品,谢谢分享
songfc666 发表于 2024-3-31 08:57
期待作者的成品
laixingcui 发表于 2024-3-31 09:26
我以为是成品的软件。
 楼主| zjg121 发表于 2024-3-31 09:37

名称好。谢谢啦!做了一个exe文件。
 楼主| zjg121 发表于 2024-3-31 09:39
laixingcui 发表于 2024-3-31 09:26
我以为是成品的软件。

慢慢来,慢慢来。成品新鲜出炉。拼接地板砖.exe
 楼主| zjg121 发表于 2024-3-31 09:40

大家的期待,是我进步的动力。成品新鲜出炉!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-15 19:32

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表