Skip to main content

Segment a table from an image

Project description

Banner
Segmentation of tables from images

PyPi version of taulu GitHub Actions Workflow Status

Data Requirements

This package assumes that you are working with images of tables that have clearly visible rules (the lines that divide the table into cells).

To fully utilize the automated workflow, your tables should include a recognizable header. This header will be used to identify the position of the first cell in the input image and determine the expected widths of the table's cells.

For optimal segmentation, ensure that the tables are rotated so the borders are approximately vertical and horizontal. Minor page warping is acceptable.

Installation

Using pip

pip install taulu

Using uv

uv add taulu

Usage

from taulu import Taulu
import os


def setup():
    # create an Annotation file of the headers in the image
    # (one for the left header, one for the right)
    # and store them in the examples directory
    print("Annotating the LEFT header...")
    Taulu.annotate("../data/table_00.png", "table_00_header_left.png")

    print("Annotating the RIGHT header...")
    Taulu.annotate("../data/table_00.png", "table_00_header_right.png")


def main():
    taulu = Taulu(("table_00_header_left.png", "table_00_header_right.png"))
    table = taulu.segment_table("../data/table_00.png", 0.8, debug_view=True)

    table.show_cells("../data/table_00.png")


if __name__ == "__main__":
    if os.path.exists("table_00_header_left.png") and os.path.exists(
        "table_00_header_right.png"
    ):
        main()
    else:
        setup()
        main()

This file can be found at examples/example.py. To run it, clone this repository, create a uv project, and run the script:

git clone git@github.com:GhentCDH/taulu.git
cd taulu
uv init --no-workspace --bare
uv run example.py

During this example, you will need to annotate the header image. You do this by simply clicking twice per line, once for each endpoint. It does not matter in which order you annotate the lines. Example:

Table Header Annotation Example

Below is an example of table cell identification using the Taulu package:

Table Cell Identification Example

Workflow

This package is structured in a modular way, with several components that work together.

The Taulu class combines the components into one simple API, as seen in Usage

The algorithm identifies the header's location in the input image, which provides a starting point. From there, it scans the image to find intersections of the rules (borders) and segments the image into cells accordingly.

The output is a TableGrid object that contains the detected intersections, enabling you to segment the image into rows, columns, and cells.

Here is a visualization of the workflow and the components:

flowchart LR
    h(header.png) --> A[HeaderAligner]
    t(table.png) --> C[PageCropper]
    j(header.json) --> T[HeaderTemplate]
    C --> F[GridDetector]
    A --> H((h))
    C --> H
    T --> S((s))
    H --> S
    F --> R
    S --> R(result)
    T --> R

The components are:

  • HeaderAligner: Uses template matching to identify the header's location in the input images.
  • PageCropper: An optional component that crops the image to a region containing a given color. This is useful if your image contains a lot of background, but can be skipped if the table occupies most of the image. Only works if your table has a distinct color from the background.
  • HeaderTemplate: Stores table template information by reading an annotation JSON file. You can create this file by running HeaderTemplate.annotate_image on a cropped image of your table’s header.
  • GridDetector: Processes the image to identify intersections of horizontal and vertical lines (borders).
  • h: A transformation matrix that maps points from the header template to the input image.
  • s: The starting point of the segmentation algorithm (typically the top-left intersection, just below the header).

Parameters

The taulu algorithm has a few parameters which you might need to tune in order for it to fit your data's characteristics. The following is a summary of the most important parameters and how you could tune them to your data.

Taulu

  • header_path: a path of the header image which has an annotation associated with it. The annotation is assumed to have the same path, but with a json suffix (this is the case when created with Taulu.annotate). When working with images that have two tables (or one table, split across two pages), you can supply a tuple of the left and right header images.

  • kernel_size, cross_width: The GridDetector uses a kernel to detect intersections of rules in the image. The kernel looks like this:

    kernel diagram

    The goal is to make this kernel look like the actual corners in your images after thresholding and dilation. The example script shows the dilated result (because debug_view=True), which you can use to estimate the cross_width and kernel_size values that fit your image. Note that the optimal values will depend on the morph_size parameter too.

  • morph_size: The GridDetector uses a dilation step in order to connect lines in the image that might be broken up after thresholding. With a larger morph_size, larger gaps in the lines will be connected, but it will also lead to much thicker lines. As a result, this parameter affects the optimal cross_width and cross_height.

  • region: This parameter influences the search algorithm. The algorithm has a rough idea of where the next corner point should be. At that location, the algorithm then finds the best match that is within a square of size region around that point, and selects that as the detected corner. Visualized:

    search algorithm region

    A larger region will be more forgiving for warping or other artefacts, but could lead to false positives too. You can see this region as blue squares when running the segmentation with debug_view=True

  • sauvola_k: This parameter adjusts the threshold that is used when binarizing the image. The larger sauvola_k more pixels will be mapped to zero. You should increase this parameter until most of the noise is gone in your image, without removing too many pixels from the actual lines of the table.

TableGrid

Taulu.segment_table returns a TableGrid instance, which you can use to get information about the location and bounding box of cells in your image.

These methods are the most useful:

  • save: save the TableGrid object as a json file
  • from_saved: restore a TableGrid object from a json file
  • cell: given a location in the image ((tuple[float, float]), return the cell index (row, column)
  • cell_polygon: get the polygon (left top, right top, right bottom, left bottom) of the cell in the image
  • region: given a start and end cell, get the polygon that surrounds all cells in between (inclusive range)
  • highlight_all_cells: highlight all cell edges on an image
  • show_cells: interactively highlight cells you click on in the image (in an OpenCV window)
  • crop_cell and crop_region: crop the image to the supplied cell or region

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

taulu-0.8.2.tar.gz (12.8 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

taulu-0.8.2-cp313-cp313t-win_amd64.whl (138.6 kB view details)

Uploaded CPython 3.13tWindows x86-64

taulu-0.8.2-cp313-cp313t-win32.whl (137.0 kB view details)

Uploaded CPython 3.13tWindows x86

taulu-0.8.2-cp313-cp313t-musllinux_1_2_x86_64.whl (426.2 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

taulu-0.8.2-cp313-cp313t-musllinux_1_2_i686.whl (452.8 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

taulu-0.8.2-cp313-cp313t-musllinux_1_2_armv7l.whl (529.7 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

taulu-0.8.2-cp313-cp313t-musllinux_1_2_aarch64.whl (430.9 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

taulu-0.8.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (256.0 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

taulu-0.8.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (296.4 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390x

taulu-0.8.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (281.8 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

taulu-0.8.2-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (265.7 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

taulu-0.8.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (251.0 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

taulu-0.8.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl (271.8 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.5+ i686

taulu-0.8.2-cp313-cp313t-macosx_11_0_arm64.whl (231.7 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

taulu-0.8.2-cp313-cp313t-macosx_10_12_x86_64.whl (244.1 kB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

taulu-0.8.2-cp39-abi3-win_amd64.whl (140.4 kB view details)

Uploaded CPython 3.9+Windows x86-64

taulu-0.8.2-cp39-abi3-win32.whl (137.8 kB view details)

Uploaded CPython 3.9+Windows x86

taulu-0.8.2-cp39-abi3-musllinux_1_2_x86_64.whl (428.7 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ x86-64

taulu-0.8.2-cp39-abi3-musllinux_1_2_i686.whl (454.1 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ i686

taulu-0.8.2-cp39-abi3-musllinux_1_2_armv7l.whl (531.5 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARMv7l

taulu-0.8.2-cp39-abi3-musllinux_1_2_aarch64.whl (432.2 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

taulu-0.8.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (258.3 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

taulu-0.8.2-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (297.6 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ s390x

taulu-0.8.2-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (284.9 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ppc64le

taulu-0.8.2-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (267.5 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARMv7l

taulu-0.8.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (252.9 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

taulu-0.8.2-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.whl (273.3 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.5+ i686

taulu-0.8.2-cp39-abi3-macosx_11_0_arm64.whl (234.3 kB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

taulu-0.8.2-cp39-abi3-macosx_10_12_x86_64.whl (246.5 kB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file taulu-0.8.2.tar.gz.

File metadata

  • Download URL: taulu-0.8.2.tar.gz
  • Upload date:
  • Size: 12.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for taulu-0.8.2.tar.gz
Algorithm Hash digest
SHA256 3d2f890936aa03b5b3b1bcfcfc7081b39771ff2f070e426f1b6d7aa85bf74b2e
MD5 b2fb5fabd07a6df11a5e5837ba8eedc3
BLAKE2b-256 4c92150e96b3e861f645ffbbc923c61cc80e883fea6d47c1f2341f69c2422759

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-win_amd64.whl.

File metadata

  • Download URL: taulu-0.8.2-cp313-cp313t-win_amd64.whl
  • Upload date:
  • Size: 138.6 kB
  • Tags: CPython 3.13t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 6b036a258cad5ac5ca295f1a7560a3f18cc21dce79e7960e970e1c74ba78ad48
MD5 8a8ec54e7bdd2fafd288d7451f730904
BLAKE2b-256 851691e03bdd2312f32c75e7c092e8faf391909bd155c3363e7e36bd9ec89dae

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-win32.whl.

File metadata

  • Download URL: taulu-0.8.2-cp313-cp313t-win32.whl
  • Upload date:
  • Size: 137.0 kB
  • Tags: CPython 3.13t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 8d9c2c5f0c01ae2e0e548ab7ab73776db670f4991f796dc7b070bb128b3cae75
MD5 aa8cb0a0df875853bee80d402b674b85
BLAKE2b-256 f51453d41600d8def6807a2c451013c88705cf98a603684aa204ee136701c59d

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b0075953f8869be4f1f4aa200119c3a50df42a5136b60fb57fbd17d38b9c1b21
MD5 111c48a483ae8d85f2ebc9954b69ca63
BLAKE2b-256 82d08969863ca6d0bc3881892dbd3eb9e2737766140f71c2e16364a56f6fb529

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 d21d95e2f5a0989d7fffbe22d3732776ca1197dd56166c19497feafae4b974b7
MD5 8fbe0586b56b2a22ecd29679a9d9da4e
BLAKE2b-256 303dcd8d1f2caaf250271b00de9c5ec543d247bab8665456ef0c865ee86e397a

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 ed320437bcf86b5d1b46f78bb94a8d9914e4d982b062942ad9ca3f8d333eac80
MD5 22423b7bcf81e94702ce44a1e29f13cb
BLAKE2b-256 5f41e452e925b927909353be0c0800c82136d97ea4b618577b3cd3ea03423903

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e5add6a6580202827423bef405e2b293bc770a8aef236bbce992b45486891b37
MD5 208b3934dce68b88e5146ed03649f9b3
BLAKE2b-256 f1bb379e02d390b1930f3782f0bb9c119edd27661f54fc8cce18c38a8da8e766

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 20d16ab135bf5192bb69d38bc3ad9e27b3cd554d93430f0ea0b7d7d6f30be0a2
MD5 3211452a8ee9acbf180b5c363071deb8
BLAKE2b-256 91ccf80535a424d68d3b201ca31fd7ffd7dda7e936385f44d936747c8a09d254

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 c7eda28ae26525bebe20510a78d78a1d58d69a58f69913f1e2484eb100ff9a5a
MD5 936359da5e9537123dcf28ba94c6f510
BLAKE2b-256 0bd622fc8ee1394d357aea8b8a43c6fef40c45f11b7de4c6c02d4a084d37dc49

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 ab50d8c2cb0e22e77880df4ab07ba1980bc51938c3a4566e9846c960bfc19d22
MD5 e32fb7c438145e2cc832eb9dd6e29c4b
BLAKE2b-256 64b9cde31ae4b07277f3f4d8af168d98e64696311a4084ae47a5bedcee2dff2e

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 a979be32f260cbc44b2258bb22cf875cdd0ea082c0d2782619a01526270256bb
MD5 f792f937194c1d8c7f22f5626d279acb
BLAKE2b-256 a13a8b566ab3373395a652b06ac6736ec060865fc8b21436dd4b78bb2a5e376a

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5f7da706ab287f0e49bf2f24e30463b65f0b4231e07f9b8a85644f91a09224f1
MD5 361cd5ca5ae0f9591882ae365519fdfe
BLAKE2b-256 4c6c0407e99a61b401ef8aeafc92cb41505a3e1d08e80a3bbc7b1091400e0b7b

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 4821ba204cf3c155f902c3789749dbd6aa75c9f74774870f517138ee4252a419
MD5 768bae39e23ba8ffdab5b867a5dfd75a
BLAKE2b-256 f1fb4e8bedc1e1e9060d313041158f416c09d3720d50f42c19cbf51c7ba84728

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 859357d12d0892523b2ee7fedd1a09a2b3980d16d44768bb210062f3ef9e95a4
MD5 48c83757459c374b3e7b1b9ee813868c
BLAKE2b-256 825000e91db059821301950dce83b7eb4207c1ee58fdcbbf0b94088964a747f1

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp313-cp313t-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 5f13ca99b8c3e024f5e71be3270837ab32374270ec2f2d66a5b5e5df92d6fd41
MD5 266bd3079dec609f1e426862a0c52995
BLAKE2b-256 19069425d255a9da643b55006a3f8c5f12efcff1b91befbaeef3561f98abd96a

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: taulu-0.8.2-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 140.4 kB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for taulu-0.8.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 5c82507dbcbbf0f64ad863358a2865ae7207d3a2f75b11df227e0387bf3cb15d
MD5 698e29a06ce9e48de6bf0c74f64244b4
BLAKE2b-256 1717004e9335b16b7868164ad27e1530e4b2454a8778a22b229220aa73b92278

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-win32.whl.

File metadata

  • Download URL: taulu-0.8.2-cp39-abi3-win32.whl
  • Upload date:
  • Size: 137.8 kB
  • Tags: CPython 3.9+, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for taulu-0.8.2-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 54290e6998b4a83c0d63d58492c193bfa8abdfd17ec2fcf9ab57f55c89acd6ee
MD5 4626516122aad63280b72dfd09321d0a
BLAKE2b-256 756f3fe74a483f5feb742803a7b6eb8fb8e4036ad5eb7f82195535fb03c18ea3

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 700548057cda9009aff8f027158d0c724a99a73cadfa2869b200e889364b0b00
MD5 f3f605e816356ecfbc046d3672016e45
BLAKE2b-256 5d46d2632b10cf85f1ed040b941ffbf5180cadf38f218f3381ed405cd2d31596

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 7f05d7295285f089faf63a3e08a52390953f07eb43e9e611a58470b4272741de
MD5 bda4d03ff59d86b9e7dca5a66676630a
BLAKE2b-256 6ecb7dc1e93eade38fd12efcc66cf84c5f5f2677ed740805d33a31bde9a25dcb

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 27aaffe18b321193d256d10fa83359b94a2207dc91bb0dcdf7bf186a3d6e5ca9
MD5 af605f5730d52fd51ae934c13ed551a7
BLAKE2b-256 16b30ad77da7adad0090183db92252a3da2200ba7147d5210846f56e198eb73f

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 26670e393b9c3a6464c4d2e440b834387606697c725a08af968b4fa3871c71ad
MD5 baf516adfd3dc61157f6ad1b73fba78f
BLAKE2b-256 75e42b228af0839881e17d2762a6c4859d31584092024f04f7b0d0f1cc6b48d8

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c41307bd8ab92adb62d421cb4ac8ea62a8d7bc6aa215ada09d52aefbf1755258
MD5 e7299674a5a35fae1b6b2ce56af67772
BLAKE2b-256 25fd85d9d4edf59771b1af42e87aa0fb6bd45fda7ac8c62ea154194bc730f4b4

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 755f97f2700c9c251df7ba0f483dc8dacd80bb40616f9af1ed69eb7effdbf7b0
MD5 621f239274bcee475d4b43f15b57fff4
BLAKE2b-256 a2847e24a30a582cb155889700c1621ebda0254065a0a5a144acb55b0cdd88e8

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 16a4c73a6c6adc9b9f2c756858f7bda89833d36bea676ef878579a85114ef82c
MD5 a03a3d52f3d946068021864b85d7fb85
BLAKE2b-256 f46aed9476b28cb37d6e4a70ef865bae9f719060975a2430cc66824d909ca4fc

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 28dc7da115489082ac2c1e76ebb46d93c87ffe30e3289774f5be5b75a0e9bc5a
MD5 0b74eafaa897b7a6a9cb4e7e03984427
BLAKE2b-256 1ac87db01121b56ce8895c1d629549d5fd3316201f565aa5cad59f5861d60422

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5513d70d29966628c052bd22b283dea39c59d3c92e0bef073584853fdb291eee
MD5 0ef73f62d992d5e8fc5a49be3b7200a9
BLAKE2b-256 62455f22d4a70ef76747552f435bad4f034f044e91b51470d64232a2e75e06de

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 2b781b43ca9b20e0ba67334d8edd251bd550f4cb1bba60f6d39ad3dd0a467ef8
MD5 21b72e22c12807c92287103025f6193e
BLAKE2b-256 54564027b9cac157935b9c4e3d8aa2e42472ba6e30b4407b713eb2bdba1b0c20

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 113f8bcf5f616c895c9f86722f52801170d705c0094ac6572825637d6b7bcd53
MD5 56efea182c61c25094f698dd6af2d3bf
BLAKE2b-256 c246ce4a270ecfe9cf3ccb2f1f209696383eb8dc1de102ece46aa34964f048ce

See more details on using hashes here.

File details

Details for the file taulu-0.8.2-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for taulu-0.8.2-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a2ea20b1d5401e8fe5b0f3d3222d0108fe00f2d3c9a0828bd73dfdbfe2566301
MD5 933a475f9a3afed8928c1deb64b84862
BLAKE2b-256 fc89cf576510f00a27e1561fe45fc5b70341d19962da9758fa7bbb66d106c7ee

See more details on using hashes here.

Supported by

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