Skip to main content

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

agl_frame_extractor-0.2.1.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

agl_frame_extractor-0.2.1-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

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

Hashes for agl_frame_extractor-0.2.1.tar.gz
Algorithm Hash digest
SHA256 ccf16b0fa23cd5181bce53f2703b133d0cdeeab1d2318bd108424aa5b6cff0ca
MD5 e90227866e5d60f55d81e8399035be19
BLAKE2b-256 3e66c14c0f31ab5c969e6ce154b2cad8f8be0d3a2b129773b6fda76dce8aafb3

See more details on using hashes here.

File details

Details for the file agl_frame_extractor-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for agl_frame_extractor-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6b5a6c54dca916c30dc52ffd4c72c5e07866fc081cdc5daf9e95455d98f47914
MD5 073427726d05470ede7333042694fd29
BLAKE2b-256 538dc847b1ec14aaa34e4e991a5b67fd826a30d58d9941638175d1ccd7c27256

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page