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.4.6.tar.gz (18.1 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: exsu-0.4.6.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0.post20200518 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.3

File hashes

Hashes for exsu-0.4.6.tar.gz
Algorithm Hash digest
SHA256 3bf59bf705af18e6f879d42c28bae6d42c04463f0bc07a16a76482fd7ad440d4
MD5 ecc26ab2ffebe7a7aa5b0ab1a209c8c2
BLAKE2b-256 665aa09cd8f74b92b8a71bbf0f784b3373fd68d54463caf24f73db3979dd0771

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