이 프로젝트는 동영상에서 프레임을 추출하고, 추출된 프레임 중 중복된 이미지를 제거한 후, 고유한 이미지들만 모아 PDF 파일로 변환하는 Python 스크립트입니다.
- 동영상 파일에서 주기적으로 프레임을 추출.
- 추출된 프레임들 중 중복된 이미지를 식별하고 제거.
- 고유한 이미지를 PDF로 변환하여 저장.
-
Python 가상환경 설정:
# MacOS/Linux에서는 python3 -m venv myenv source myenv/bin/activate # Windows에서는 PowerShell에서 python -m venv myenv myenv\Scripts\activate 오류나는 경우: Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass 실행
-
필요한 패키지 설치:
가상환경이 활성화된 상태에서
requirements.txt파일을 사용하여 필요한 패키지를 설치합니다.pip install -r requirements.txt
또는 스크립트에서 사용하는 패키지를 수동으로 설치할 수도 있습니다:
pip install opencv-python pillow imagehash fpdf scikit-image
-
동영상 파일 준비:
- PDF로 변환할 동영상 파일을 이 스크립트와 같은 디렉토리에 놓습니다.
-
스크립트 실행:
python VideoToPDF.py
-
프레임 캡처 간격 설정:
- 스크립트가 실행되면, 동영상에서 프레임을 캡처할 간격을 초 단위로 입력하라는 메시지가 나타납니다. 예를 들어,
0.3초를 입력하면 매 0.3초마다 프레임을 캡처합니다.
- 스크립트가 실행되면, 동영상에서 프레임을 캡처할 간격을 초 단위로 입력하라는 메시지가 나타납니다. 예를 들어,
-
결과물:
- 동영상에서 추출된 고유한 프레임들이 PDF 파일로 저장됩니다. PDF 파일은 동영상 파일과 동일한 디렉토리에 생성됩니다.
VideoToPDF.py: 주요 Python 스크립트로, 동영상에서 프레임을 추출하고, 중복된 이미지를 제거하여 PDF로 변환하는 작업을 수행합니다..gitignore: 필요에 따라 추가된 파일을 버전 관리에서 제외하기 위한 파일입니다.
- 동영상 파일의 이름에 특수 문자가 포함되지 않도록 주의하세요.
- PDF 파일로 변환될 때, 이미지가 많을 경우 PDF 생성 시간이 길어질 수 있습니다.
스크립트는 로그를 통해 진행 상태를 출력합니다. 로그는 콘솔에 표시되며, 스크립트가 어떤 작업을 수행하고 있는지 추적할 수 있습니다.
이 프로젝트는 MIT 라이선스 하에 배포됩니다. 자세한 사항은 LICENSE 파일을 참조하세요.