파이톤으로 이미지 읽기

6430 단어 pillowPython

개요


친구: "대량의 이미지 파일이 있는 폴더에서 적합한 이미지 파일을 선택하여 폴더와 같은 층으로 복사한 다음 이미지 파일의 이름을 폴더 이름으로 변경하는 도구를 만듭니다."
나: 배고파.

규격.


1. 이러한 폴더가 있는 경우


"Kizuuna AI""Mirai Acari"등 폴더마다 대량의 이미지가 있는데 001~이런 파일 이름이 있다
대상 폴더
images
  KizunaAI
    001.jpg
    ....ipg
  
  MiraiAkari
    001.jpg
    ....ipg
  ....

2.이렇게 한다


각 이미지 폴더에서 해당 이미지 파일을 복사하고 폴더와 같은 레이어에서 파일 이름이 속한 폴더의 이름을 바꿉니다.
대상 폴더
images
  KizunaAI
    001.jpg
    ....ipg
  KizunaAI.jpg
  MiraiAkari
    001.jpg
    ....ipg
  MiraiAkari.jpg
  ....
이상!!!! 

이루어지다


당분간 수중에 있는 Anaconda 환경에서 실시했습니다.
나: "정중하게 부탁했는데 무슨 심각한 내용인 줄 알았어요."

main.py
from PIL import Image
import os, glob

rootpath = "./images"
files = os.listdir(rootpath)
#rootpath配下の全ディレクトリを取得
dirs = [f for f in files if os.path.isdir(os.path.join(rootpath, f))]
#せっかくなのでコンソールに表示
print(dirs)    # ['dir1', 'dir2']
#全ディレクトリに対して実行
for dir in dirs :
    #全ファイルをスキャン
    files = glob.glob(rootpath +"/"+ dir + "/*.*")
    #拡張子を引っこ抜く
    targetFile = files[0]
    root, ext = os.path.splitext(targetFile)
    #画像オープン
    img = Image.open(targetFile)
    #リネームしてルートパス直下に保存
    img.save(rootpath +  '/' + dir + ext)

EXE가 되다


Anaconda가 좀 귀찮아서 EXE화 후 클릭 가능

1. Pyinstaller 설치


Anaconda의 가상 환경도 EXE가 될 수 있는 강력한 도구입니다.이 녀석이 있다면 파이토존 환경이 없는 사람도 행동할 수 있다는 얘기다.
1KB에도 없는 코드에 300MB가 넘는 EXE를 토해냈는데 난감했지만 편해서 용서했다.
AnacondaPronpt
conda install -c conda-forge pyinstaller
주제 밖의 말을 하자면, 나는 코다로 설치하는 것을 더욱 좋아한다.

2.EXE


괘씸한 놈
AnacondaPronpt
pyinstaller main.py --onefile
나: 해냈어.
친구: "할 거야!"

기타


친구: 폴더 이름에 "[]"가 있으면 안 돼.
나: "법!?"
친구: "그냥 조금이야. 여기 수동으로 해야 돼."
나: 웅성
만약 시간이 있다면 이 문제 대응판도 보도할 것이다

좋은 웹페이지 즐겨찾기