>  기사  >  백엔드 개발  >  Python을 사용하여 이미지를 일괄 처리하는 방법

Python을 사용하여 이미지를 일괄 처리하는 방법

王林
王林원래의
2023-08-26 17:39:181975검색

Python을 사용하여 이미지를 일괄 처리하는 방법

Python을 사용하여 이미지를 일괄 처리하는 방법

소개:
오늘날의 소셜 미디어와 디지털 문화 시대에 이미지는 사람들의 일상 생활에서 없어서는 안 될 부분이 되었습니다. 그러나 때로는 크기 조정, 자르기, 회전 등과 같이 많은 수의 사진에 대해 동일한 작업을 수행해야 하는 경우도 있습니다. 이러한 이미지를 수동으로 처리하는 것은 시간이 많이 걸리고 지루합니다. 따라서 Python을 사용하여 이미지를 일괄 처리하면 효율성이 크게 향상됩니다. 이 기사에서는 Python의 Pillow 라이브러리를 사용하여 이미지를 일괄 처리하는 방법을 소개하고 해당 코드 예제를 제공합니다.

1단계: Pillow 라이브러리 설치
시작하기 전에 먼저 Pillow 라이브러리를 설치해야 합니다. 설치를 완료하려면 명령줄에 다음 명령을 입력하세요.

pip install pillow

2단계: 필수 라이브러리 및 모듈 가져오기
Python 코드를 작성하기 전에 필수 라이브러리와 모듈을 가져와야 합니다. 코드에 다음 줄을 추가합니다.

from PIL import Image
import os

3단계: 입력 및 출력 폴더 경로 설정
일괄 처리 전에 입력 및 출력 폴더의 경로를 설정해야 합니다. 다음 예에서는 입력 폴더 경로가 'input_folder'이고 출력 폴더 경로가 'output_folder'라고 가정합니다. 필요에 따라 이러한 경로를 수정할 수 있습니다.

input_folder = 'path/to/input_folder'
output_folder = 'path/to/output_folder'

4단계: 이미지 처리 함수 작성
메인 루프를 작성하기 전에 먼저 이미지를 처리하는 함수를 작성합니다. 다음 예에서는 이미지 크기를 조정하고 이를 출력 폴더에 저장하는 방법을 보여줍니다.

def process_image(input_path, output_path, width, height):
    image = Image.open(input_path)
    resized_image = image.resize((width, height))
    resized_image.save(output_path)

이 함수에서는 먼저 Image.open()을 사용하여 입력 이미지를 열고 resize() 메소드를 사용하여 이미지 크기를 조정합니다. 마지막으로 save() 메서드를 사용하여 처리된 이미지를 지정된 출력 경로에 저장합니다. Image.open()打开输入图片,并通过调用resize()方法调整图片大小。最后,我们使用save()方法将处理后的图片保存到指定的输出路径。

可以根据自己的需求在这个函数中添加其它图片处理操作,例如裁剪、旋转等。

第五步:遍历输入文件夹并进行批量处理
现在我们可以编写主循环来遍历输入文件夹中的所有图片,并对每张图片进行批量处理。以下示例展示了如何遍历输入文件夹并调用上述的图片处理函数:

for filename in os.listdir(input_folder):
    if filename.endswith('.jpg') or filename.endswith('.png'):
        input_path = os.path.join(input_folder, filename)
        output_path = os.path.join(output_folder, filename)
        process_image(input_path, output_path, 800, 600)

在这个示例中,我们使用os.listdir()函数获取输入文件夹中的所有文件名,并通过os.path.join()函数将文件名与文件夹路径拼接成完整的文件路径。

然后,我们使用endswith()方法来检查文件名的后缀是否为".jpg"或".png",以便仅处理这些图片文件。

最后,我们调用上述process_image()

필요에 따라 자르기, 회전 등과 같은 다른 이미지 처리 작업을 이 기능에 추가할 수 있습니다.


5단계: 입력 폴더 반복 및 일괄 처리

이제 입력 폴더의 모든 이미지를 반복하고 각 이미지를 일괄 처리하는 기본 루프를 작성할 수 있습니다. 다음 예에서는 입력 폴더를 반복하고 위의 이미지 처리 함수를 호출하는 방법을 보여줍니다.

rrreee

이 예에서는 os.listdir() 함수를 사용하여 입력 폴더, 그리고 os.path.join() 함수를 사용하여 파일 이름과 폴더 경로를 전체 파일 경로로 연결합니다.

그런 다음 endswith() 메서드를 사용하여 파일 이름의 접미사가 ".jpg"인지 ".png"인지 확인하여 이러한 이미지 파일만 처리할 수 있도록 합니다.
  • 마지막으로 위의 process_image() 함수를 호출하여 입력 경로, 출력 경로 및 필요한 이미지 크기를 매개변수로 전달합니다. 이 예에서는 이미지 크기를 800x600픽셀로 설정했습니다.
  • 요약:
  • Python의 Pillow 라이브러리를 사용하면 이미지를 쉽게 일괄 처리할 수 있습니다. 이 문서에서는 Pillow 라이브러리를 사용하여 이미지 크기를 조정하는 방법의 예를 소개하고 전체 코드 예제를 제공합니다. 필요에 따라 이러한 코드를 확장하여 다른 이미지 처리 작업을 추가할 수 있습니다. Python을 사용하여 이미지를 일괄 처리하고 작업 효율성을 높이세요!
🎜위는 Python을 사용하여 이미지를 일괄 처리하는 방법에 대한 소개입니다. 개인 프로젝트이든 상업용 애플리케이션이든 이 팁은 시간과 에너지를 절약하는 데 도움이 됩니다. 이 기사가 도움이 되기를 바랍니다. 🎜🎜참고 자료: 🎜🎜🎜Python 이미징 라이브러리(PIL). https://pypi.org/project/Pillow/🎜🎜Python 소프트웨어 재단(2021). //pillow.readthedocs.io/en/stable/handbook/index.html🎜🎜

위 내용은 Python을 사용하여 이미지를 일괄 처리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.