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.3.tar.gz (13.2 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.3-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (453.4 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

taulu-2.0.3-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (448.1 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

taulu-2.0.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (407.6 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

taulu-2.0.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (391.1 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

taulu-2.0.3-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (454.3 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

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

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

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

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

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

Uploaded PyPymanylinux: glibc 2.17+ ARM64

taulu-2.0.3-cp313-cp313t-win_amd64.whl (266.2 kB view details)

Uploaded CPython 3.13tWindows x86-64

taulu-2.0.3-cp313-cp313t-win32.whl (255.9 kB view details)

Uploaded CPython 3.13tWindows x86

taulu-2.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl (579.9 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

taulu-2.0.3-cp313-cp313t-musllinux_1_2_i686.whl (603.9 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

taulu-2.0.3-cp313-cp313t-musllinux_1_2_armv7l.whl (668.2 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

taulu-2.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl (568.6 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

taulu-2.0.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (403.6 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ x86-64

taulu-2.0.3-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (445.4 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390x

taulu-2.0.3-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (441.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

taulu-2.0.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (401.9 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

taulu-2.0.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (385.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

taulu-2.0.3-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl (424.5 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.12+ i686

taulu-2.0.3-cp313-cp313t-macosx_11_0_arm64.whl (347.8 kB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

taulu-2.0.3-cp313-cp313t-macosx_10_12_x86_64.whl (373.1 kB view details)

Uploaded CPython 3.13tmacOS 10.12+ x86-64

taulu-2.0.3-cp39-abi3-win_amd64.whl (271.7 kB view details)

Uploaded CPython 3.9+Windows x86-64

taulu-2.0.3-cp39-abi3-win32.whl (261.3 kB view details)

Uploaded CPython 3.9+Windows x86

taulu-2.0.3-cp39-abi3-musllinux_1_2_x86_64.whl (587.0 kB view details)

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

taulu-2.0.3-cp39-abi3-musllinux_1_2_i686.whl (611.3 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ i686

taulu-2.0.3-cp39-abi3-musllinux_1_2_armv7l.whl (676.3 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARMv7l

taulu-2.0.3-cp39-abi3-musllinux_1_2_aarch64.whl (574.1 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

taulu-2.0.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (410.4 kB view details)

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

taulu-2.0.3-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (454.8 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ s390x

taulu-2.0.3-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (448.2 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ppc64le

taulu-2.0.3-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (408.4 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARMv7l

taulu-2.0.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (391.2 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

taulu-2.0.3-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl (431.1 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.12+ i686

taulu-2.0.3-cp39-abi3-macosx_11_0_arm64.whl (352.8 kB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

taulu-2.0.3-cp39-abi3-macosx_10_12_x86_64.whl (379.2 kB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.3.tar.gz
Algorithm Hash digest
SHA256 a80947e54e9014964b08e9020e35b3f57cc7f14d47f6a0cf04551ad3a9c21187
MD5 6fa332aa24dbea61e318caef81b5f415
BLAKE2b-256 ff11b23cd84087771dc315f2a0c459ad5908f627c12b8c4bf5880dc2afce5b33

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 39f008d8a505da61591cce2e084b73d52450037a435232cbb29602b5aca9fb31
MD5 ff5ed158af7fa071b6a7b578a227673d
BLAKE2b-256 cf7600aa94da03a2d2f717c657c829722f4e37cec5e78edd0d32f5818cffc2eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 35d3abfadf20c1cb88c6b9e33a8ad47c9da4263ad02c2a48a508457c63f5d9ee
MD5 cd7d285a72fbbcb6c55bc0076953a1fc
BLAKE2b-256 1fafaa79fe175d678f43c66f4d37c9cc1b95dbf826fa7d254fadd330df61955d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 28c6df5d6bc00cbb38e041be4845f7fd8cfbb175a1f72839383479a8a6138182
MD5 03a0f2051a131eb5cfa683c6861fe004
BLAKE2b-256 bedba2989752077703cc6a91678575481733eb01f46792c109e2d33bbbf9f9d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 aebacb1f04a676fdb4fa5efcae4a611650aaf0ba89b2c94fadeab533e788db0d
MD5 8269bed39dcc0ab9845751a759af8b97
BLAKE2b-256 be773a326929fb0abde586c8de4819879be157ed1970cdd72f317d100154a6ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 110f14caaafb9c9d54884de17b6f8bf14a063aabdcaed4ef324690c4c3651824
MD5 4f19fddd86de18e5fb2161b4a88bb077
BLAKE2b-256 38e299301e191753f55dd5b6ba7e8c4534624d810cbcc7b62fb12d7a42eab8a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 d959bd7ab00fc64f5eaf44b88297a43017746495598e74975dd46cd32d7939f5
MD5 659d2c5132a051faf3797ea66252a4c7
BLAKE2b-256 93fa6061cce6f2fbdaa4dea4d2a9e7992cc6092c3ba1d847657a8f525c6bb340

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 8d917c333dfc12e1f95c1985f2f99e001980cbb9fee93afb940800ce652cc955
MD5 be2bb6a18d41901b23ea3d99e92a61f0
BLAKE2b-256 c19a2125ba386c988d72c1cca476b74f6de6cd413b60f49ccc10af8e3b48cd05

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cf8ddc3a5a868d4fc2304d515164a76cb114c67cd05108e31ad0474696e8ada0
MD5 256590c62dea2ce586bab87032f2294f
BLAKE2b-256 3c1902385b1f8ecdd45aa3f9d85d9a34090eea15a22e209ceab54a2dfa549fca

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 2ebdea0f25a05535167f64eec7601ebcb2452b76a450d1389317fca0cdd20dd9
MD5 80bda668d447f45b3aed7f82e9db01f7
BLAKE2b-256 e5717b5a82c13eb778154ba1e0cc4ebfe18238c7ccb240f3ce55dbce0841a3fb

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-win32.whl
Algorithm Hash digest
SHA256 926dcc02a0381b5d64ca2403df9466fb78adc1b22272b590e4c22f25dbfca15d
MD5 674bb974fdbfb1c98ce90f7563d58e12
BLAKE2b-256 f5a4130a0e94f56ff35b140922c4e6afee3dee97b1978e47ad1bd891c8a66a43

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e103af38e015d70efb6731f3f686d105ed2b98fef029753b66ad868ec2f0cb6a
MD5 3613c3e2130c0ed66ba4873913f74cf1
BLAKE2b-256 6ef1353bcbaebd906e5951a4a3d2174b799f42b4c640c7d84d280bc25ae91654

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 12a7d73feeb46dccb4f21d91f109c76e593bbe4e9fc56c493f5da81e3e32144d
MD5 8b851ffc0be6185fb6bd02c5f461a396
BLAKE2b-256 13bdaefb3336e69661b5dc6727cfd45967e35b52b351069eaa7c44350cace132

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 d9b831edbaf82b0555f4b574416e5685fd887e838c9db03613366dc36e4841dd
MD5 aa383e2fcc337b15c2c0763193be5f4d
BLAKE2b-256 48372ccd33d685d26fe13111f95069b113f7b09a9208ecc09c7f62c81e9ffd59

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6e9128fb8a46a2198162b2042e98c12dc49f848ca5dc74381fc8f126d8f2580b
MD5 1135bba62a493abf66b53f3fa0cba81d
BLAKE2b-256 8b35cfeb0614aa249dc726cfc717b57d359d959e31826c9b840357e9ffa273f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e6cb29650fdbf93bc7868f64f0f8aa34ff4dcf5a2eb2d17b1c22aeeb4e652044
MD5 13fe875d6062e88610d01a9ec05eeeaf
BLAKE2b-256 6f9abe67f1cd11820a39ecbf836e502dd4a1221e229c38bfe35a15c121461e31

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 140a48c9c848d2bc5c9dc53bf56d7ec4c680157f0eaaec9a7e1115d4341e64fc
MD5 5255de26030d646227a9f2a6938856a6
BLAKE2b-256 9ce11cf2991a3008c53bd0aa51e8ee8dff73ec40817349a1819d115aa4fa9d54

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 28edda6717a8524f8ac87bc3a1264d64543a0066a77a635a9f3e209e460d6d40
MD5 f9908193005f44c646e265846484746e
BLAKE2b-256 97cda14a96fd756dd3509516bbe4a6e84c480bf6d7ce806c2ecea219136f38c4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 1a9999b96963e62d6cb9817180716d3e8a2dd421b29453bebb607e25ed7d5832
MD5 50a7e19537059031f4ceb2f7d4d16a5b
BLAKE2b-256 b7963eaa013bd359d6991d931d6497c2e909907602fb3ade463f164061b7fc7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7f0cc804b891fb8ea9f89fd22192ab86635f9d6aaa4607ba16afd59ecce1b42b
MD5 292a6ffe9a1e71a440b18bf312b38d06
BLAKE2b-256 251e8934a5aa349be725b4badb1d56456a808d3db6a479840283b44d69cd844d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 ace7bc26a1c795c0ac6299b17988c828287b0093275edde5ba59392f84cf83b8
MD5 c77a4a96a2eedefb106f48f028eec307
BLAKE2b-256 6439acd67cd7d2f89555416602039fccbf9528a678e3973d707076a0ed64659c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5a75e6f62181dd973cfcf095b4faae1349b6c2f5773204faa00d13202e3c7ef7
MD5 69e9eb3d50a2d881f1100a3f3ac05a8e
BLAKE2b-256 55b5bf2a5e9fa3bb4c16809ab262659c7770f0b94bad3cdc78b1a9d5446f8de5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp313-cp313t-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9839d015ccfac7e9868ccea74561ea911618ad8610e89ba4d508abf714fda0e6
MD5 730ec52dfb65a2b8cadd618a33175528
BLAKE2b-256 f190d0019999146aa25eba212826ac93afaff52c22e9e16b37549084b8537535

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.3-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 8d44e4106e6ccab76d4f078bd365bdeeac705b015561fb04d82800c60f510469
MD5 2208798241a9d65dcfc8f01c7930a715
BLAKE2b-256 a94ce31eced978961c33d6c97db3361d1bec974711e3261271c1fca0f05e6323

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for taulu-2.0.3-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 c622a661d0283ee43685224d67bad3200a2d59164c499dc3416acf052957a83c
MD5 05c57a878d0a59165f0e82050cfc9f4d
BLAKE2b-256 4194d715274eaf359a1860888fa391ce2d3810870ba458caec4fb1e7f975b4ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 da887e73d0ac80c9bb5db44555182a8f073f96289dd45ef24ef70a208ddff09d
MD5 85d6781553df3224cb9ce7fbfd1428a8
BLAKE2b-256 fe5b6ecf10a9497187a918781574c23878360f29dc6277097050f27d7de65ac5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 baaaaa55f666ae31d240f0c9b4f736bd0521c8465936fd539c96cd4c6cb022c0
MD5 df54528dd8ba7d543a9881693b25dcd2
BLAKE2b-256 11f0c91c2cee895c4d7167b16bdc0e15e7f55b5e3c3bab220b22ee7bd583b2a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 3547be5b76bf85dc8f851404de141eeac6ab5ec9eece5f3f24e97168b00d7942
MD5 e50b6e9c665b16127f6ebe9f29fd2c42
BLAKE2b-256 cc69941674b14d64764da1aee02d936945733ac986c05bf3e07d3ac6298743fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e1cb4c128bd77bc95deae32e3ca242deb3344e25166273d331eb260f646a24e2
MD5 2e08f2f370cbf1160a43b71eb941e9c9
BLAKE2b-256 8c650688e7a1054c33a13b70dc168909611537e336dfa5f3694557571d18e5e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 df3d9d257e1fcee22d0b603480c0f07a9058d2de5b2e624c1fe14bde14567c87
MD5 002fb3a4952c5e0aeff0880489cbe60b
BLAKE2b-256 1d0d90268b1a8cf44d45ee044e3a52bb580de01f57e90afc877e0676e89242b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 9109fd4b62ce3a10ddcf04ce9d4aa5137a21c4bc55e599fbc631663527210303
MD5 37ab489527701f0fd9c5951eca6bc3d8
BLAKE2b-256 f314dc3c106ecea161a6612364104a6fbfceb930c073b100bdf990fb4348f79c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 a08804b8fbd52b51381848fb60d38abc3d9be45377010ff60fc3c9cd4059edcc
MD5 3db5d81e4f1ed817f70c34fdd6ff4838
BLAKE2b-256 9bf7970f10718d40ba525f20c3b7da8cab8b9814f62b321f60fac92034bcd100

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 493558794725cc2fc9414d0854b77ca56d001b4bbc33f34a83a4eb1b55456787
MD5 4d9a94154bda73ae390ea8784059bcaf
BLAKE2b-256 50a8f4f3d363b95b5e81f79621ffa55f99e2dc3e58d4c0e5c2d9a0e6cb0dfe35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 276efb18fc51f1593966e826162064f02aeffeff7d4fcd2fce50cc5a70a9c73f
MD5 583d9bc47917fd2a19e7331192ea3f6e
BLAKE2b-256 cb468dd0923d9ef05fda45bd186073cd90ec2ccaee10d5ef2a54e82102a64001

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 53985451967259395e08070547716f837cfe9ac0603b1cd903b3858b19812017
MD5 e6d392f91bfa07162d2fc8ffba138359
BLAKE2b-256 62fdfc44d805b7ba403d96a65da3654d6e7968d5c06e5e294601fd1ec77bff29

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 780bb69e779b94342412808dbc0b394f7b838f924d521db582d59f9d43ed2f5a
MD5 ac66d440b494106029be5d4bdeedcfb6
BLAKE2b-256 fea99337de7c0896e300edbbd2e1a70f9337b9becaf8e6284160d4d621d838bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for taulu-2.0.3-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 375f8b3468e64b90f8d0989b5ea764ea580fad7784d03a5acc3f432eab4fcb27
MD5 a33b2d55aac12d9ef6d38416e81131b4
BLAKE2b-256 78549e38d033006dd0aeb7226659d141ce415652b876ff889707eccad5a52cc9

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