파이썬 안에서 여러개의 .py 실행하기
조회수 14832회
C:\Users\Lion\PycharmProjects\1\makepng 라는 폴더 안에
makepng1.py
makepng2.py
makepng3.py
makepng4.py
makepng5.py
makepng6.py
makepng7.py
makepng8.py
이라는 파이썬 파일들이 저장되어 있습니다.
실행하면 png이미지 파일을 처리해서 'C:\Users\Lion\PycharmProjects\1\gif_maker_png 폴더에 각각 png1~png8로 저장하는 코드입니다.
이런 여러개의 파이썬 코드를 파이썬 내에서 순차적으로 실행하는 방법이 있을까요? 참고로 파이참을 사용하고 있습니다.
P.S
구글링해봐도 잘 나오지 않아서 그런데
혹시 파이썬에서 .gif를 실행하라는 명령은 없는건가요?
여러개의 이미지로 .gif파일을 만들어 저장까지는 했는데
opencv2의 imread로는 .gif가 읽히질 않네요.
그냥 직접 폴더에서 더블클릭 하는 수밖에 없을까요 ㅠㅠ
-
(•́ ✖ •̀)
알 수 없는 사용자
2 답변
-
생각을 해보세요. 우리는 이미 많은 수의 모듈이라고 불리우는 python 파일을 사용하고 있습니다.
즉 python 파일은 import 해서 객체를 사용할 수 있습니다.
즉 1~8 번 python 파일을 import 하고 함수를 호출하면 됩니다.
만약 모듈을 만들고 import 하는 방법을 모른다면 파이썬 튜터리얼을 참고하세요(https://docs.python.org/ko/3/tutorial/modules.html)
gif 는 실행파일도 아니고 실행이 될 수 있는 로직이 있는 파일이 아닙니다
단순히 바이너리 데이터가 저장(포맷포함해서)되어 있는 이미지 파일입니다.
즉 실행이라는 표현을 사용하지 않습니다.
opencv에는 gif 파일을 인/디코딩 할 수있는 코덱이 없습니다.
폴더에서 직접 더블클릭을 한다해서 opencv에서 사용할 수 있는 것이 아닙니다.
gif 파일은 다른 이미지처리 모듈을 사용해야 합니다.
imageio(https://imageio.github.io/) 모듈을 사용하여 gif 를 읽어서 처리하는 샘플입니다. imageio 도 numpy array 로 리턴하므로 opencv하고 잘 맞습니다.
import imageio import cv2 gif = imageio.mimread('8eai9oW.gif') imgs = [cv2.cvtColor(img, cv2.COLOR_RGB2BGR) for img in gif] # opencv 는 컬러영상을 BGR 로 저장합니다. 그러므로 RGB 순서를 BGR로 변환
-
댓글 입력