Skip to content

Napari plugin for working with video files.

License

Notifications You must be signed in to change notification settings

janclemenslab/napari-video

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

napari-video

napari hub

Napari plugin for working with videos.

Relies on pyvideoreader as a backend which itself uses opencv for reading videos.

Installation

pip install napari[all] napari_video

Usage

From a terminal:

napari video.avi

Or from within python:

import napari
from napari_video.napari_video import VideoReaderNP

path='video.mp4'
vr = VideoReaderNP(path)
with napari.gui_qt():
    viewer = napari.view_image(vr, name=path)

Internals

napari_video.napari_video.VideoReaderNP exposes a video with a numpy-like interface, using opencv as a backend.

For instance, open a video:

vr = VideoReaderNP('video.avi')
print(vr)
video.avi with 60932 frames of size (920, 912, 3) at 100.00 fps

Then

  • vr[100] will return the 100th frame as a numpy array with shape (902, 912, 3).
  • vr[100:200:10] will return 10 frames evenly spaced between frame number 100 and 200 (shape (10, 902, 912, 3)).
  • Note that by default, single-frame and slice indexing return 3D and 4D arrays, respectively. To consistently return 4D arrays, open the video with remove_leading_singleton=False. vr[100] will then return a (1, 902, 912, 3) array.
  • We can also request specific ROIs and channels. For instance, vr[100:200:10,100:400,800:850,1] will return an array with shape (10, 300, 50, 1).

Releases

No releases published

Packages

No packages published