Extracts frames from .mov files
Project description
agl-frame-extractor
Description
agl_frame_extractor
is a Python package designed to extract individual frames and metadata from .MOV video files. This package is highly useful for researchers and clinicians who require frame-by-frame analysis of video data. With applications ranging from medical research to training simulations, the package aims to improve standards and classifications in gastrointestinal endoscopy by enhancing objectivity and reproducibility.
Features
- Extracts individual frames from .MOV files and saves them as PNG images.
- Gathers video metadata including total number of frames, frames per second, and video duration.
- Offers optional multithreading support for faster frame extraction.
- Generates a log file to record the extraction process.
Installation
To install this package, clone the repository and run the following command in the repository root:
pip install -e .
Usage
Basic Usage
from video_frame_extractor.extractor import VideoFrameExtractor
input_folder = "input_videos"
output_folder = "output_frames_metadata"
extractor = VideoFrameExtractor(input_folder, output_folder)
extractor.extract_frames_and_metadata()
# If you want to extract png files instead of jpgs:
input_folder = "input_videos"
output_folder = "output_frames_metadata"
extractor = VideoFrameExtractor(input_folder, output_folder, image_format='png')
extractor.extract_frames_and_metadata()
Multithreaded Usage
To enable multithreading for faster frame extraction:
from video_frame_extractor.extractor import VideoFrameExtractor
input_folder = "input_videos"
output_folder = "output_frames_metadata"
extractor = VideoFrameExtractor(input_folder, output_folder, use_multithreading=True)
extractor.extract_frames_and_metadata()
Dependencies
- OpenCV
- tqdm
Logging
The package generates a log file video_frame_extraction.log
in the directory where it is executed. This log file contains detailed information about the extraction process.
Contributing
We welcome contributions to improve this package. Please follow the standard GitHub pull request process. Make sure to document your code thoroughly, keeping in mind that the package targets an academic audience focused on research.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file agl_frame_extractor-0.2.1.tar.gz
.
File metadata
- Download URL: agl_frame_extractor-0.2.1.tar.gz
- Upload date:
- Size: 2.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Linux/6.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccf16b0fa23cd5181bce53f2703b133d0cdeeab1d2318bd108424aa5b6cff0ca |
|
MD5 | e90227866e5d60f55d81e8399035be19 |
|
BLAKE2b-256 | 3e66c14c0f31ab5c969e6ce154b2cad8f8be0d3a2b129773b6fda76dce8aafb3 |
File details
Details for the file agl_frame_extractor-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: agl_frame_extractor-0.2.1-py3-none-any.whl
- Upload date:
- Size: 3.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.9 Linux/6.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b5a6c54dca916c30dc52ffd4c72c5e07866fc081cdc5daf9e95455d98f47914 |
|
MD5 | 073427726d05470ede7333042694fd29 |
|
BLAKE2b-256 | 538dc847b1ec14aaa34e4e991a5b67fd826a30d58d9941638175d1ccd7c27256 |