ZipArchive#

class ZipArchive(filename: str, filter: str | None = None, loop: bool = False, **kwargs: Any)[source]#

Iterate images from a zip archive

Parameters:
  • filename (str) – path to zipfile

  • filter (str) – a Unix shell-style wildcard that specified which files to include when iterating over the archive

  • kwargs – options applied to image frames, see convert

The resulting object is an iterator over the files within the zip archive. The iterator returns the file as a Image instance if it is an image (and the name of the file, within the archive, is given by its name attribute), else a bytes object containing the file contents.

If the path is not absolute, the zip file is first searched for relative to the current directory, and if not found, it is searched for in the images folder of the mvtb-data package, installed as a Toolbox dependency.

To read just the image files within the archive, use a filter such as "*.png" or "*.pgm". Note that filter is a Unix shell style wildcard expression, not a Python regexp.

Example:

from machinevisiontoolbox import ZipArchive
images = ZipArchive('bridge-l.zip')
len(images)
for image in images:  # iterate over files
  # process image

alternatively:

image = images[i]  # load i'th file from the archive

or using a context manager to ensure the archive is closed:

with ZipArchive('bridge-l.zip') as images:
    for image in images:
        # process image
References:
Seealso:

open convert cv2.imread

Methods

disp

Display images from the source interactively.

ls

List all files within the archive to stdout.

open

Open a file from the archive

tensor

Convert all images from this source into a single 4D PyTorch tensor.

Attributes