Skip to main content
Yanked

This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Consider using release 3.1.0 instead.
Reason given by maintainers: Import not working due to __init__.py files for C extensions

vIQA — volumetric Image Quality Assessment


Project Status: Active – The project has reached a stable, usable state and is being actively developed. PyPI - Version PyPI - Python Version PyPI - License PyPI - Downloads Documentation GH Action Build GH Action pre-commit Ruff Binder Contributor Covenant

Table of Contents

vIQA provides an extensive assessment suite for image quality of 2D-images or 3D-volumes as a python package. Image Quality Assessment (IQA) is a field of research that aims to quantify the quality of an image. This is usually done by comparing the image to a reference image (full-reference metrics), but can also be done by evaluating the image without a reference (no-reference metrics). The reference image is usually the original image, but can also be another image that is considered to be of high quality. The comparison is done by calculating a metric that quantifies the difference between the two images or for the image itself. These quality metrics are used in various fields, such as medical imaging, computer vision, and image processing. For example the efficiency of image compression algorithms can be evaluated by comparing the compressed image to the original image. This package implements several metrics to compare two images or volumes using different IQA metrics. In addition, some metrics are implemented that can be used to evaluate a single image or volume.

The metrics used are:

  • Peak Signal to Noise Ratio (PSNR)
  • Root Mean Square Error (RMSE)
  • Universal Quality Index (UQI) 1
  • Structured Similarity (SSIM) 2
  • Multi-Scale Structural Similarity (MS-SSIM) 3
  • Feature Similarity Index (FSIM) 4
  • Visual Information Fidelity in pixel domain (VIFp) 5
  • Visual Saliency Index (VSI) 6
  • Most Apparent Distortion (MAD) 7
  • Gradient Similarity Measure (GSM) 8
  • Contrast to Noise Ratio (CNR) 9
  • Signal to Noise Ratio (SNR)
  • Q-Measure 10

Overview

Metric Name Type Dimensional behaviour Colour Behaviour Range (different/worst - identical/best) Tested Validated Reference
PSNR Peak Signal to Noise Ratio FR 3D native ✔️ $[0, \infty)$ ✔️ ✔️ —
RMSE Root Mean Square Error FR 3D native ✔️ $(\infty, 0]$ ✔️ ✔️ —
UQI 11 Universal Quality Index FR 3D native ( ✔️ ) 12 $[-1, 1]$ ❌ ( ✔️ ) 13 1
SSIM Structured Similarity FR 3D native ( ✔️ ) 12 $[-1, 1]$ 14 ✔️ ✔️ 2
MS-SSIM Multi-Scale Structural Similarity FR 3D slicing ❓ $[0, 1]$ ❌ ✔️ 3
FSIM Feature Similarity Index FR 3D slicing ✔️ $[0, 1]$ ✔️ ✔️ 4
VIFp Visual Information Fidelity in pixel domain FR 3D slicing ❓ $[0, \infty)$ 15 ❌ ❌ 5
VSI Visual Saliency Index FR 3D slicing ✔️ 16 $[0, 1]$ ❌ ❌ 6
MAD Most Apparent Distortion FR 3D slicing $[0, \infty)$ ✔️ ❌ 7
GSM Gradient Similarity FR 3D native or slicing $[0, 1]$ ❌ ❌ 8
CNR Contrast to Noise Ratio NR 3D native $[0, \infty)$ ✔️ ❌ 9
SNR Signal to Noise Ratio NR 3D native ✔️ $[0, \infty)$ ✔️ ❌ —
Q-Measure Q-Measure NR 3D only 17 ❌ $[0, \infty)$ ❌ ❌ 10

Documentation

The API documentation can be found here.

Requirements

The following packages have to be installed:

  • matplotlib
  • nibabel
  • numpy
  • piq
  • pytorch
  • scikit-image
  • scipy
  • tqdm
  • (jupyter) if you want to use the provided notebook

Installation

Use either pip

pip install viqa

or conda

conda install -c conda-forge viqa

Usage

Workflow

Images are first loaded from .raw files or .mhd files and their corresponding .raw file, normalized to the chosen data range (if the parameter normalize=True is set) and then compared. The scores are then calculated and can be printed. If using paths file names need to be given with the bit depth denoted as a suffix (e.g. _8bit.raw, _16bit.mhd) and the dimensions of the images need to be given in the file name (e.g. 512x512x512). The images are assumed to be grayscale. Treatment of color images is planned for later versions. The metrics are implemented to calculate the scores for an 8-bit data range (0-255) per default. For some metrics the resulting score is different for different data ranges. When calculating several metrics for the same image, the same data range should be used for all metrics. The data range can be changed by setting the parameter data_range for each metric. This parameter primarily affects the loading behaviour of the class instances when not using the vIQA.utils.load_data function directly as described further below, but for some metrics setting the data range is necessary to calculate the score (e.g. PSNR).

Examples

Better:

import viqa
from viqa import load_data, normalize_data

## load images
file_path_img_r = 'path/to/reference_image_8bit_512x512x512.raw'
file_path_img_m = 'path/to/modified_image_8bit_512x512x512.raw'
img_r = load_data(
  file_path_img_r,
  data_range=1,
  normalize=False,
)  # data_range ignored due to normalize=False
img_m = load_data(file_path_img_m)  # per default: normalize=False
# --> both images are loaded as 8-bit images

# calculate and print RMSE score
rmse = viqa.RMSE()
score_rmse = rmse.score(img_r, img_m)  # RMSE does not need any parameters
rmse.print_score(decimals=2)

# normalize to 16-bit
img_r = normalize_data(img_r, data_range_output=(0, 65535))
img_m = load_data(img_m, data_range=65535, normalize=True)
# --> both functions have the same effect

# calculate and print PSNR score
psnr = viqa.PSNR(data_range=65535)  # PSNR needs data_range to calculate the score
score_psnr = psnr.score(img_r, img_m)
psnr.print_score(decimals=2)

# set optional parameters for MAD as dict
calc_parameters = {
    'block_size': 16,
    'block_overlap': 0.75,
    'beta_1': 0.467,
    'beta_2': 0.130,
    'luminance_function': {'b': 0, 'k': 0.02874, 'gamma': 2.2},
    'orientations_num': 4,
    'scales_num': 5,
    'weights': [0.5, 0.75, 1, 5, 6]
}

# calculate and print MAD score
mad = viqa.MAD(data_range=65535)  # MAD needs data_range to calculate the score
score_mad = mad.score(img_r, img_m, dim=2, **calc_parameters)
mad.print_score(decimals=2)

Possible, but worse (recommended only if you want to calculate a single metric):

import viqa

file_path_img_r = 'path/to/reference_image_512x512x512_16bit.raw'
file_path_img_m = 'path/to/modified_image_512x512x512_16bit.raw'

load_parameters = {'data_range': 1, 'normalize': True}
# data_range is set to 1 to normalize the images
# to 0-1 and for calculation, if not set 255 would
# be used as default for loading and calculating
# the score

psnr = viqa.PSNR(**load_parameters)  # load_parameters necessary due to direct loading by class
# also PSNR needs data_range to calculate the score
# if images would not be normalized, data_range should be
# 65535 for 16-bit images for correct calculation
score = psnr.score(file_path_img_r, file_path_img_m)
# --> images are loaded as 16-bit images and normalized to 0-1 via the `load_data` function
#     called by the score method
psnr.print_score(decimals=2)

For more examples, see the provided Jupyter notebooks and the documentation under API Reference.

TODO

  • Add metrics
    • Add SFF/IFS
    • Add Ma
    • Add PI
    • Add NIQE
  • Add tests
    • Add tests for RMSE
    • Add tests for PSNR
    • Add tests for SSIM
    • Add tests for MSSSIM
    • Add tests for FSIM
    • Add tests for VSI
    • Add tests for VIF
    • Add tests for MAD
    • Add tests for GSM
    • Add tests for CNR
    • Add tests for SNR
    • Add tests for Q-Measure
  • Add support for different data ranges
  • Validate metrics
  • Add color image support
  • Add support for printing values
    • Add support for .txt files
    • Add support for .csv files
  • Add support for fusions
    • Add support for linear combination
    • Add support for decision fusion

Contributing

See CONTRIBUTING.md for information on how to contribute to the project and development guide for further information.

License

BSD 3-Clause

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Contacts

Lukas Behammer, lukas.behammer@fh-wels.at

References

  1. Wang, Z., & Bovik, A. C. (2002). A Universal Image Quality Index. IEEE SIGNAL PROCESSING LETTERS, 9(3). https://doi.org/10.1109/97.995823 ↩ ↩2

  2. Wang, Z., Bovik, A. C., Sheikh, H. R., & Simoncelli, E. P. (2004). Image quality assessment: From error visibility to structural similarity. IEEE Transactions on Image Processing, 13(4), 600–612. https://doi.org/10.1109/TIP.2003.819861 ↩ ↩2 ↩3

  3. Wang, Z., Simoncelli, E. P., & Bovik, A. C. (2003). Multi-scale structural similarity for image quality assessment. The Thirty-Seventh Asilomar Conference on Signals, Systems & Computers, 1298–1402. https://doi.org/10.1109/ACSSC.2003.1292216 ↩ ↩2

  4. Zhang, L., Zhang, L., Mou, X., & Zhang, D. (2011). FSIM: A feature similarity index for image quality assessment. IEEE Transactions on Image Processing, 20(8). https://doi.org/10.1109/TIP.2011.2109730 ↩ ↩2

  5. Sheikh, H. R., & Bovik, A. C. (2006). Image information and visual quality. IEEE Transactions on Image Processing, 15(2), 430–444. https://doi.org/10.1109/TIP.2005.859378 ↩ ↩2

  6. Zhang, L., Shen, Y., & Li, H. (2014). VSI: A visual saliency-induced index for perceptual image quality assessment. IEEE Transactions on Image Processing, 23(10), 4270–4281. https://doi.org/10.1109/TIP.2014.2346028 ↩ ↩2

  7. Larson, E. C., & Chandler, D. M. (2010). Most apparent distortion: full-reference image quality assessment and the role of strategy. Journal of Electronic Imaging, 19 (1), 011006. https://doi.org/10.1117/1.3267105 ↩ ↩2

  8. Liu, A., Lin, W., & Narwaria, M. (2012). Image quality assessment based on gradient similarity. IEEE Transactions on Image Processing, 21(4), 1500–1512. https://doi.org/10.1109/TIP.2011.2175935 ↩ ↩2

  9. Desai, N., Singh, A., & Valentino, D. J. (2010). Practical evaluation of image quality in computed radiographic (CR) imaging systems. Medical Imaging 2010: Physics of Medical Imaging, 7622, 76224Q. https://doi.org/10.1117/12.844640 ↩ ↩2

  10. Reiter, M., Weiß, D., Gusenbauer, C., Erler, M., Kuhn, C., Kasperl, S., & Kastner, J. (2014). Evaluation of a Histogram-based Image Quality Measure for X-ray computed Tomography. 5th Conference on Industrial Computed Tomography (iCT) 2014, 25-28 February 2014, Wels, Austria. e-Journal of Nondestructive Testing Vol. 19(6). https://www.ndt.net/?id=15715 ↩ ↩2

  11. UQI is a special case of SSIM. Also see 2. ↩

  12. The metric is calculated channel-wise for color images. The values are then averaged after weighting. ↩ ↩2

  13. As UQI is a special case of SSIM, the validation of SSIM is also valid for UQI. ↩

  14. The range for SSIM is given as $[-1, 1]$, but is usually $[0, 1]$ in practice. ↩

  15. Normally $[0, 1]$, but can be higher than 1 for modified images with higher contrast than reference images. ↩

  16. The original metric supports RGB images only. This implementation can work with grayscale images by copying the luminance channel 3 times. ↩

  17. The Q-Measure is a special metric designed for CT images. Therefore it only works with 3D volumes. ↩

Metadata

Release files for vIQA 1.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vIQA 1.5.2
File Size Uploaded Provenance Actions
viqa-1.5.2.tar.gz 113.9 kB Without provenance Details for viqa-1.5.2.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for vIQA 1.5.2
File Actions
viqa-1.5.2-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details for viqa-1.5.2-cp313-cp313-musllinux_1_2_x86_64.whl
viqa-1.5.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for viqa-1.5.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
viqa-1.5.2-cp313-cp313-macosx_13_3_arm64.whl CPython 3.13 CPython 3.13 macosx 13 3 arm64 Details for viqa-1.5.2-cp313-cp313-macosx_13_3_arm64.whl
viqa-1.5.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for viqa-1.5.2-cp312-cp312-win_amd64.whl
viqa-1.5.2-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details for viqa-1.5.2-cp312-cp312-musllinux_1_2_x86_64.whl
viqa-1.5.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for viqa-1.5.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
viqa-1.5.2-cp312-cp312-macosx_13_3_x86_64.whl CPython 3.12 CPython 3.12 macosx 13 3 x86 64 Details for viqa-1.5.2-cp312-cp312-macosx_13_3_x86_64.whl
viqa-1.5.2-cp312-cp312-macosx_13_3_arm64.whl CPython 3.12 CPython 3.12 macosx 13 3 arm64 Details for viqa-1.5.2-cp312-cp312-macosx_13_3_arm64.whl
viqa-1.5.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for viqa-1.5.2-cp311-cp311-win_amd64.whl
viqa-1.5.2-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details for viqa-1.5.2-cp311-cp311-musllinux_1_2_x86_64.whl
viqa-1.5.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for viqa-1.5.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
viqa-1.5.2-cp311-cp311-macosx_13_3_x86_64.whl CPython 3.11 CPython 3.11 macosx 13 3 x86 64 Details for viqa-1.5.2-cp311-cp311-macosx_13_3_x86_64.whl
viqa-1.5.2-cp311-cp311-macosx_13_3_arm64.whl CPython 3.11 CPython 3.11 macosx 13 3 arm64 Details for viqa-1.5.2-cp311-cp311-macosx_13_3_arm64.whl

Total release size: 5.3 MB

Release files / viqa-1.5.2.tar.gz

Download URL viqa-1.5.2.tar.gz
Size 113.9 kB
Tags Source
SHA-256 checksum
How to use checksums
964d02767679f2f48ba5dd84a9a416d7cc59734cc477a1616fabb6d3488508e0
BLAKE2b-256 checksum
How to use checksums
55d9591b8559340b93e1fbe5c9f8a01f1fc92fac94620660bdf0c9424360c958
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL viqa-1.5.2-cp313-cp313-musllinux_1_2_x86_64.whl
Size 1.1 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
ad1c14ba89f17f7bdea65e5fb203f6f198a2757ab39cf76e8cbb2bd52a000af7
BLAKE2b-256 checksum
How to use checksums
9521358d858c120bc3e34cd6d123408fd4087dc8a3630f2241236fa63d922fba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL viqa-1.5.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 245.8 kB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
48bae8a9620ab5b0c3930ade7a50d24a5499f57b4a7fb21e07aec4805d9af837
BLAKE2b-256 checksum
How to use checksums
ef718834beb714061788dfda63c1f3a457bc831d965f9bd9de4699dacf060331
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp313-cp313-macosx_13_3_arm64.whl

Download URL viqa-1.5.2-cp313-cp313-macosx_13_3_arm64.whl
Size 123.7 kB
Tags CPython 3.13 macosx 13 3 arm64
SHA-256 checksum
How to use checksums
5f3a5f16ee7dc6a66786f7f0b4d80b813465be3c53d957cae7ad725cf0317d60
BLAKE2b-256 checksum
How to use checksums
2896062c26dbf554eea0257335dd4d090c7d5951cd4829d9d981d00ac992c796
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp312-cp312-win_amd64.whl

Download URL viqa-1.5.2-cp312-cp312-win_amd64.whl
Size 185.5 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
3dbd5848ca656eb7ffa3a347054b79a3e0f405aff40638036f90d6edf8dbe04c
BLAKE2b-256 checksum
How to use checksums
feca508f298258c6f1bd3133c44fd098cd5ce80b8b364e958e492627381abe45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL viqa-1.5.2-cp312-cp312-musllinux_1_2_x86_64.whl
Size 1.1 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
4fa888dff0ba6d8de34a0b3ea46fe498ae85e3556373f452588044b5f01ea85f
BLAKE2b-256 checksum
How to use checksums
875ce0d5c4f4dc4091acc7a4382ee6d9efd11abf5f9a50ff733fe5088bdddfd3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL viqa-1.5.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 245.8 kB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
3e3138daf9e03ee7572758b6cf135ca677d167de9bc122134d0a302d37930f6d
BLAKE2b-256 checksum
How to use checksums
009c3173400ff84136ae5dc3ce73b1be9579c3e055920e59f58d1586867aad57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp312-cp312-macosx_13_3_x86_64.whl

Download URL viqa-1.5.2-cp312-cp312-macosx_13_3_x86_64.whl
Size 129.9 kB
Tags CPython 3.12 macosx 13 3 x86 64
SHA-256 checksum
How to use checksums
df477d2c6111115f8afb03435b2412dd42e788741d714c640ef17d8f6ce4f821
BLAKE2b-256 checksum
How to use checksums
19255675e17c5e64283ff1bfcb0692b1523c28d1bc961afd9fd0d26c37c0c246
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp312-cp312-macosx_13_3_arm64.whl

Download URL viqa-1.5.2-cp312-cp312-macosx_13_3_arm64.whl
Size 123.7 kB
Tags CPython 3.12 macosx 13 3 arm64
SHA-256 checksum
How to use checksums
387401da8f6fa8c7138382a3b81fbc787f2393f27e20170a00eb7d85c50ba184
BLAKE2b-256 checksum
How to use checksums
e2615d172e2e43ea3de2baefc26b6e16fdb23c94cb1f54cd793a7aee4c098845
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp311-cp311-win_amd64.whl

Download URL viqa-1.5.2-cp311-cp311-win_amd64.whl
Size 185.5 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
22ae926244723448a29a5a015ee66471b98939bbfe2328820af644d7810f3323
BLAKE2b-256 checksum
How to use checksums
a3221654b6e4024d2b8bf2ae73f47519cbd38cf2824ab52934ed9c25b514f64b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL viqa-1.5.2-cp311-cp311-musllinux_1_2_x86_64.whl
Size 1.1 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
d02e28e668088bb8f0add3c5a92d21051dc3052d44174f33516264690fd28568
BLAKE2b-256 checksum
How to use checksums
a085da77de2480dc720a3282d3cf4179c664128325df7f13ccfecad201a88517
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL viqa-1.5.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 245.8 kB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
820e89657fa27eb2781c6e7f2eb22d160d559746894f42f89b00d36b8ac639f8
BLAKE2b-256 checksum
How to use checksums
d1b8115e99894885d875500f64af3f690ac254cbed0fc3f98302bc833da653ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp311-cp311-macosx_13_3_x86_64.whl

Download URL viqa-1.5.2-cp311-cp311-macosx_13_3_x86_64.whl
Size 129.9 kB
Tags CPython 3.11 macosx 13 3 x86 64
SHA-256 checksum
How to use checksums
c7c1d5965ccd9fe9211030aedbbf4d0cc7405770939d51d96c13742f56d67ec2
BLAKE2b-256 checksum
How to use checksums
4ad11ab45a274972b047eb3f002ce44bbafae655cbf9a3135bcf94fa3693765c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Release files / viqa-1.5.2-cp311-cp311-macosx_13_3_arm64.whl

Download URL viqa-1.5.2-cp311-cp311-macosx_13_3_arm64.whl
Size 123.7 kB
Tags CPython 3.11 macosx 13 3 arm64
SHA-256 checksum
How to use checksums
415cbd85b8e0a1d5e83f7b5040d35856816c4f9667bc258161d04628ba59bdc1
BLAKE2b-256 checksum
How to use checksums
ba39cbfdf12970173454951a995a76427017f9efd64e2c35441dee994da589e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.0 CPython/3.12.5

Security for vIQA 1.5.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.5.2 This release

14 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page