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

Documentation

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 and which defines some useful methods, enabling you to segment the image into rows, columns, and cells.

The main classes are:

  • HeaderAligner: Uses template matching to identify the header's location in the input images.
  • HeaderTemplate: Stores header template information by reading an annotation JSON file. You can create this file by running HeaderTemplate.annotate_image.
  • GridDetector: Processes the image to identify intersections of horizontal and vertical lines (borders). To see its progress, you can run it with debug_view=True. This should allow you to tune the parameters to your data.

Parameters and Methods

The taulu algorithm has a number of 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.

These methods are the most useful:

  • Taulu.annotate: create an annotation file for a header image. This requires an image of a table with a clear header. Taulu will first ask you to crop the header in the image (by clicking four points, one for each corner). Then, it will ask you to annotate the lines in the header (by clicking two points per line, one for each endpoint). The annotation file will be saved as a json file and a png with the same name.
  • Taulu.segment_table: given an input image, segment into a TableGrid object.
    • cell_height_factor: a float or a list of floats that determine the expected height of each row in the table, relative to the height of the header. If the list is shorter than the number of rows, the last value will be repeated for the remaining rows. If a single float is given, it will be used for all rows.

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-2.0.0.tar.gz (13.1 MB view details)

Uploaded Source

Built Distributions

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

taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (453.4 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (448.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (407.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (391.0 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (454.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (447.9 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (407.7 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (390.7 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

taulu-2.0.0-cp313-cp313t-win_amd64.whl (264.2 kB view details)

Uploaded CPython 3.13tWindows x86-64

taulu-2.0.0-cp313-cp313t-win32.whl (255.4 kB view details)

Uploaded CPython 3.13tWindows x86

taulu-2.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl (575.4 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

taulu-2.0.0-cp313-cp313t-musllinux_1_2_i686.whl (598.2 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

taulu-2.0.0-cp313-cp313t-musllinux_1_2_armv7l.whl (662.6 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

taulu-2.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl (564.3 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

taulu-2.0.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (402.3 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

taulu-2.0.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (450.9 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390x

taulu-2.0.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (441.7 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

taulu-2.0.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (398.8 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

taulu-2.0.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (383.1 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

taulu-2.0.0-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl (420.0 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.12+ i686

taulu-2.0.0-cp313-cp313t-macosx_11_0_arm64.whl (345.1 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

taulu-2.0.0-cp313-cp313t-macosx_10_12_x86_64.whl (373.4 kB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

taulu-2.0.0-cp39-abi3-win_amd64.whl (270.0 kB view details)

Uploaded CPython 3.9+Windows x86-64

taulu-2.0.0-cp39-abi3-win32.whl (260.4 kB view details)

Uploaded CPython 3.9+Windows x86

taulu-2.0.0-cp39-abi3-musllinux_1_2_x86_64.whl (582.1 kB view details)

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

taulu-2.0.0-cp39-abi3-musllinux_1_2_i686.whl (604.2 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ i686

taulu-2.0.0-cp39-abi3-musllinux_1_2_armv7l.whl (669.5 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARMv7l

taulu-2.0.0-cp39-abi3-musllinux_1_2_aarch64.whl (570.2 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

taulu-2.0.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (409.1 kB view details)

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

taulu-2.0.0-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (459.4 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ s390x

taulu-2.0.0-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (449.7 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ppc64le

taulu-2.0.0-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (405.4 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARMv7l

taulu-2.0.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (389.1 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

taulu-2.0.0-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl (426.2 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.12+ i686

taulu-2.0.0-cp39-abi3-macosx_11_0_arm64.whl (349.6 kB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

taulu-2.0.0-cp39-abi3-macosx_10_12_x86_64.whl (380.4 kB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.0.tar.gz
Algorithm Hash digest
SHA256 33cd386e47ee44c87f6bfba12207ffe1c2e4853f4a013501ce002de1e2671c43
MD5 074b6d0aa34d20e3fa0c160a2e34897c
BLAKE2b-256 b7ec6d635cfa54c1a5a8a6798747e506b1a47cf2a777276712dd6ad52573a82b

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 e72aa5a0942aa185a9970c6dd0de0d093b3d080518c9245c9af38e634b03f7f7
MD5 f47eb96230e92046ff55b458226d77f9
BLAKE2b-256 8e92b8da9304d7a6db67a24478810b5cd5e9cae4975b7b7b8000b4749fe3319f

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 d366cc2a7d9297db76fcd843fd09ba7e329e5bde852b33aca09f292f3350f9ad
MD5 8b5009ddcd10252942ae9c0e7b475e50
BLAKE2b-256 8a91ac307accf473ce8a86a8500ab5ed1d62cdde5d42db4e8563990042103e54

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 a9d6c522e56174c7961c493a26f2e9c081e38a29ec05099d939dc27e90dd2a11
MD5 2e05f62f6fb38142e44417958b6fa928
BLAKE2b-256 6e046a40b7155216fdcb1f287ee1546b9c478d1ca3b1679500de50653f747b9f

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c2dae074721030b92f1580509e6e6fcf90933de2063d2ae1dc7bc9375c0d66e5
MD5 cbe3ef393c4332d759eb71d2afaa57a3
BLAKE2b-256 2629977b093befa36130e3498572619946aafcb2615389d74d34b9ebdd79e86b

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 d053646cbd49771d9d3ce4ba4acee55ed0f498001389cd4341abb3db0757a13b
MD5 bddac9680a7c80d41612a3bffbf58b48
BLAKE2b-256 469e7e36c5d8fa82ce4b79ed7d319fe477fad813f3c04badc57fbf3827b53ffc

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 4520f52fe424d16ca174dc6569268285e96e817b93bcfce138e667679617b464
MD5 5bc0b2a219c2dc9f47331fce92e16093
BLAKE2b-256 4ce71f7f379c3cf7a2a5b07a6d75d1693f27cea1f8389ed0565973196e9e3a82

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 3b5d08af14ff4d0e3d9a349fa8145765a7ec038980840e2e7001c998b4b92c8c
MD5 d3f1ea169507f960fa692c9385007930
BLAKE2b-256 03eb390cad5223e424ea1d7cbbb92efe0f05729d5bfcc16c90b182de56b641d0

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 aff0c6d0c99a2c071156b819b2b8190c2fb342fd740c8aefe0372aab905f650e
MD5 4a0eab91ca87891f756898afaeb5910f
BLAKE2b-256 8445c33528b12550699b3d780e1d9cb5e756cfdd465dfc93858fb7217ba4281c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 51c71c11eedad37ae01efe90f79ebd7b48612a3ecff16c3e06ab2feed4f2f91d
MD5 7ac8b8b8c01dda456db89260944b8392
BLAKE2b-256 2d2fcdd3a2416eeb37a1c777f7430b11fc840f2eab2ce88c63fb35502b0a400b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 43256b0d0643e7adb4d215ca9a2505841574a3e8f8a9b26a052b2ce2363be2f1
MD5 c80de24a6b7e28fa721e0c47df0e08d6
BLAKE2b-256 7d73902a6f9b500a66a634d909c4591dfb1e27001e1b53b4b74d2c21c745ab31

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6a001a3f488886e1b7c4414555e08081773f7e8617d3c038c02ff9f24c20813b
MD5 da0f72c8fa3cf57a23ed849b7c417280
BLAKE2b-256 9be81f3ee8645ffc2a384ae703236ef95fdf042e2235957c7cc2399696c2be79

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 260e864994f84d7df7e61f2d37e9892e2cb40f698b2d7f5dbda30a77c800a848
MD5 30212eab88b95365a35e578b8d2ff445
BLAKE2b-256 58cf2b4dacb4b5823407f1e63468a27ddfdd9730e869fb85df00f216b657d0d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9324fa79fb04ad1bb735350ea35667d722c096d55c3d220bbbd6d453d962176f
MD5 c93ac2405f4a4798dd633b734aa201cf
BLAKE2b-256 89637ddf989c74692bca4f52caca4e5081052b766dda5b7ca6357b689cf2b95c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2d84b9fb0111ba298472b1b83b4dc371e38eeeea956e79acb9dd06b2a29a00ec
MD5 268bbec3798ef9049b26542ae75c9fd2
BLAKE2b-256 526900b4abcb35e75435fca9360a8ad7e3629c1e3e2233af60feeed5308d3292

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a73f154f82175263b4788168b888d8cac6fcae2268f251cc330d2da4e4004606
MD5 2e840b1429ef7fadc8f1c23b24818d07
BLAKE2b-256 8b1b0eab0545d6d225d5367d478cfb7399125be83f6888bd20119b4e845eff0d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 0fa7743e3f9f9deeb5ee3aef4b53a7a466fbc2b36f2dd68ed3f4429ae3368d5d
MD5 e2c01914dcc91c53d52347ecec5ce9ab
BLAKE2b-256 65c79ab606c8bbcc6c600d66c37d7e2c62a51aa5ef554872af9f850a61e02ba1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 7b2fd75c25a9651791a1b16b6d35495bcc9500c6baad2d35f83e61bf574f73b6
MD5 c6189e13822a8c91233f4011b467be6f
BLAKE2b-256 6a17976bf7131e59a495ef4b391a37281d03b072a8d88550d411472f6bfb6deb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 271eccb90ad460fdb7d458a5256c17d523ebbe75931e3a81027dabce06a2045b
MD5 e59a0959c365849e91ec52de3ccaf537
BLAKE2b-256 466685ba3af7bb1a1479a354121740e1984038120370493d15010955d138d4e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7318e07c1811993176ad64e6523fbb071a40ce4f70de47b7d45a4fb08175003e
MD5 e22ef95f292aabd6ee3fe5fe1ec0a4e3
BLAKE2b-256 26f5228394b20dd2d4fb4e39b313b5ac9b791aafdb61894461541503dacd80d5

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 226ba9b549c544e2191c35a1f251a61c7b86736cb7431a7f3fb55b725757177c
MD5 4de1b879e44f42fa0137dd28796ab8e7
BLAKE2b-256 89abeb5ef011c9411f3b71feb437b4cfd094a62f99a3233c8bd32a705a9d4875

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9bf3165ecedc0ec53c261fa6f01e2a1c7b0591c6f56c2a831cac1bb70a25c677
MD5 ccd0feade1b4566eac3516d7adc37b01
BLAKE2b-256 d284b250d5309958604ebf60d6ffa0c149102adf0e022b8050bcbee95188da16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 2d0096610632041b9fb6a96a6461eb4ccd0969ef82bff89ba4a10e3217101672
MD5 cf83214594836a6d5e2a0efba19560c2
BLAKE2b-256 4532d7aa1c3e5e4cb093c37f7ca4e3acae539df0cb52ab359c0918f0b1dece8f

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.0-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 46af3b37580085a9a3849d8ba21f1a669c92cc8a75a0bcff861b5efe2182efc5
MD5 60f3d6b1739a107fda6501c05348e98d
BLAKE2b-256 a358574e04747192fe9fd02d835d41252c6bc5e3170d50a46782534477dc49ed

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.0-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 6ac06e1ce3608a98f17d143b8ee33a9b60be09bd65edf1ef46abe9e5c56cf88c
MD5 15aa307b92dbd228f1ff6eb3b58031ac
BLAKE2b-256 69f7ab2140fa344cf45c2ef780990008ef9ae6e1e5d47b7a080d967ecd920885

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1c4af095bb86b4214b62c0addb10447ea455a05b1c345d98127696d8e05a6a33
MD5 5b1b733e2844f31b44697a9e0fef34fc
BLAKE2b-256 27cc31a2c3de61aa74d305ed7a570676d1f0e525200eabf8401ec1d14ed590b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 22f67494a618100b472cb5b6144f6e1183f66f7b7348d0318cbbe3620e29db4f
MD5 32e8e0c3d9d79f4a3157331f4622f66b
BLAKE2b-256 b2307f7284712137adb221318acbd5f9d4bfe430213462d9d3f4271f81af0002

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 a856ea6913a83bb94e646d4162ea000f2d63e90a77e22c820de8981f0f5d11ae
MD5 c71501938e7ef7b0eb2de1caf87f4882
BLAKE2b-256 e927fca433b8b491ef814dfb790c532dc68414d6a37d7131011fcf53f9681957

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 cca13aa6e9c8009d2cdb39826a0ff21acd54373dbdaf186c1c100afdd40df930
MD5 1b5d67d2b077aeba2cc1430a543a15c4
BLAKE2b-256 479c07c7a74a36718082af51993ea7c8e84557ac529470dbb92f973a496ba001

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d4a9e0983c53b99f8f3cc26172ffb688e521a1ec5c47e4c8c2b8599e8760500e
MD5 c2f94e5776395f89ec516fe1115e35f2
BLAKE2b-256 539485708bf2809d70a9ac4c4fe78d8cc5052cc45b03fbd0df76cd1abc337228

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 a8dc4cb5648b918b2d0af7b8ab9176ba686034bff6b85ee87ba32f37ac088c19
MD5 da22fc1234da242d250a0aa045fa9c2a
BLAKE2b-256 94148f19749852da7bab1484755bf3ea40304a41d971d5b83961cb8a8dba110e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 139bf549ec77afb3ea5e5c528be43a3651e0876031d18922ac163a891ebd8e53
MD5 ec3e30c7ec38cf9444b2d2c002713c40
BLAKE2b-256 21e5fe1b847fcda3b095549bafccea8feaed2f4d0555f54d53f569007a21e173

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9eba15099d2e6b45056ca0fe827969ea2cc437bd63ebd6175890a389bbc41e7d
MD5 26093111d149e37b32f402e1b8e3936d
BLAKE2b-256 05658a75973ed0357c2d30d13a0422ed04c75aa6b93d635d22a72833baa8c294

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 32085376da64e54259be18539b4e7f3fe64081d98264a82d2356d0943c6c2e0b
MD5 145e4745c3d906adc6350e279b0e8b7d
BLAKE2b-256 09b1bbfc0f795417a213560ccbe5d75ac01b2db7c1a7b55a2e5fe424eb3c8ef2

See more details on using hashes here.

File details

Details for the file taulu-2.0.0-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 910e3d332875976d47c59fd841322701118e3b4b7d577b76cd80c5cd4b7c1d4b
MD5 e082dd0fecd60c11ebc8fe11bdbc71b3
BLAKE2b-256 fd226f625c3cd3e73c8c7676b1290cbefca370fb55520ff1ec78e83011f8117f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 04198e3c90c99b5a228184adaf49d5957ca5c58240584cbcbdb63d29e3b00f79
MD5 c600a320564952a846b8a11df547ec62
BLAKE2b-256 eaeac09b14480777165594ea54899455d736318af3baabaa434a16fc876ff44d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.0-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8ded30d159dffce35ae89885aec539941db68fbdb33f92882b8be5faf38bea34
MD5 79b80df690f396c27d638b8287ec6496
BLAKE2b-256 1e0046925007ba22bbdc4279b8738d62fc2b98b8007ad886ad9e366e5a746f8a

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