Skip to main content

Experiment support tools

Project description

Build Status Coverage Status PyPI version

exsu

Experiment support tools prepared for computer vision experiments. Output directory and spreadsheet file is managed by package.

  • Spreadsheet data and report images are stored into output directory
  • Images are reported according a selected severity
  • Common spreadseet containing complete history from all output directories can be produced
  • Version of particular python package can be reported in the spreadsheet
  • Repository status, git hash and dirty files can be reported in the spreadsheet

Write spreadsheet data

from pathlib import Path
import exsu

outputdir = Path("./test_report/")
commonsheet = Path("./test_report_common_spreadsheet.xlsx")

report = exsu.report.Report(outputdir=outputdir, additional_spreadsheet_fn=commonsheet)
report.add_cols_to_actual_row({"Col1": 25, "Col2": "test string", "Col5": 5})
report.add_cols_to_actual_row({"Col2": "prepsanu", "Col1": 26, "Col4": "ctyrka"})
report.finish_actual_row()

report.add_cols_to_actual_row({"Col1": 27, "Col2": "test string", "Col3": "trojka"})
report.finish_actual_row()

# Save all into `outputdir` and also into `commonsheet`
report.dump()

# new write to common excel
report.init()
report.add_cols_to_actual_row({"Col1": 28, "Col2": "new line to common", "Col7": 77})
report.finish_actual_row()
report.dump()

Write image data

Write image data into output directory

from pathlib import Path
import numpy as np
import exsu

outputdir = Path("./test_report/")
commonsheet = Path("./test_report_common_spreadsheet.xlsx")

fn = "test_image.png"
img = 50 + np.random.rand(100, 100) * 30
img[20:60, 20:60] += 100
img = img.astype(np.uint8)
report = exsu.report.Report(outputdir=outputdir, additional_spreadsheet_fn=commonsheet)
report.imsave(fn, img)

Git repository info

from pathlib import Path
import numpy as np
import exsu
report = exsu.report.Report(repodir=Path(__file__).parent.resolve())
report.finish_actual_row()
report.df

Output DataFrame

                               repo exsu id  ...  repo exsu dirty files
0  1da301da36cec0fb931f60dd9acca790ec715892  ...      exsu/git_tools.py

More than one repositories can be added with report.add_repo(repodir, reponame=None).

Automatically report versions of selected packages

The version of crucial packages can be reported with the data.

import exsu
report = exsu.report.Report(check_version_of=["numpy", "scipy"])
report.finish_actual_row()
report.df

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

exsu-0.6.0.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

exsu-0.6.0-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file exsu-0.6.0.tar.gz.

File metadata

  • Download URL: exsu-0.6.0.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for exsu-0.6.0.tar.gz
Algorithm Hash digest
SHA256 f932b4569b0430a394118b6115b678f9fc9722b4eb59aa53efc404a17921cb51
MD5 503e1de0c3689fd674a6c3683449fd86
BLAKE2b-256 abfe8922c0f0e775f40a7c1fc6a50334f5dc090de08e6d8e18addf64cf4efc8a

See more details on using hashes here.

File details

Details for the file exsu-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: exsu-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for exsu-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 862a4c9d7a2c6f40e3af6f3b3c6d9cb8d0de861f323d04c7726b5b8bf0b234d7
MD5 ece7a68c725ed373bb7ca661abf8fdcc
BLAKE2b-256 1f8361c26dfb54173db22022164c02d3b69df6360d1179315d9937e29a6738b9

See more details on using hashes here.

Supported by

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