Skip to main content

A package for combining dithered images into a single image

Project description

Powered by Astropy Badge Drizzle's Coverage Status CI Status Documentation Status PyPI Status

The drizzle library is a Python package for combining dithered images into a single image. This library is derived from code used in DrizzlePac. Like DrizzlePac, most of the code is implemented in the C language. The biggest change from DrizzlePac is that this code passes an array that maps the input to output image into the C code, while the DrizzlePac code computes the mapping by using a Python callback. Switching to using an array allowed the code to be greatly simplified.

The DrizzlePac code is currently used in the Space Telescope processing pipelines. This library is forward looking in that it can be used with the new GWCS code.

Requirements

  • Python 3.9 or later

  • Numpy

  • Astropy

The Drizzle Algorithm

This section has been extracted from Chapter 2 of The DrizzlePac Handbook [Driz2012]

There are a family of linear reconstruction techniques that, at two opposite extremes, are represented by the interlacing and shift-and-add techniques, with the Drizzle algorithm representing a continuum between these two extremes.

If the dithers are particularly well-placed, one can simply interlace the pixels from the images onto a finer grid. In the interlacing method, pixels from the independent input images are placed in alternate pixels on the output image according to the alignment of the pixel centers in the original images. However, due to occasional small positioning errors by the telescope, and non-uniform shifts in pixel space across the detector caused by geometric distortion of the optics, true interlacing of images is generally not feasible.

Another standard simple linear technique for combining shifted images, descriptively named “shift-and-add”, has been used for many years to combine dithered infrared data onto finer grids. Each input pixel is block-replicated onto a finer subsampled grid, shifted into place, and added to the output image. Shift-and-add has the advantage of being able to easily handle arbitrary dither positions. However, it convolves the image yet again with the original pixel, thus adding to the blurring of the image and to the correlation of noise in the image. Furthermore, it is difficult to use shift-and-add in the presence of missing data (e.g., from cosmic rays) and geometric distortion.

In response to the limitations of the two techniques described above, an improved method known formally as variable-pixel linear reconstruction, and more commonly referred to as Drizzle, was developed by Andy Fruchter and Richard Hook, initially for the purposes of combining dithered images of the Hubble Deep Field North (HDF-N). This algorithm can be thought of as a continuous set of linear functions that vary smoothly between the optimum linear combination technique (interlacing) and shift-and-add. This often allows an improvement in resolution and a reduction in correlated noise, compared with images produced by only using shift-and-add.

The degree to which the algorithm departs from interlacing and moves towards shift-and-add depends upon how well the PSF is subsampled by the shifts in the input images. In practice, the behavior of the Drizzle algorithm is controlled through the use of a parameter called pixfrac, which can be set to values ranging from 0 to 1, that represents the amount by which input pixels are shrunk before being mapped onto the output image plane.

A key to understanding the use of pixfrac is to realize that a CCD image can be thought of as the true image convolved first by the optics, then by the pixel response function (ideally a square the size of a pixel), and then sampled by a delta-function at the center of each pixel. A CCD image is thus a set of point samples of a continuous two-dimensional function. Hence the natural value of pixfrac is 0, which corresponds to pure interlacing. Setting pixfrac to values greater than 0 causes additional broadening of the output PSF by convolving the original PSF with pixels of non-zero size. Thus, setting pixfrac to its maximum value of 1 is equivalent to shift-and-add, the other extreme of linear combination, in which the output image PSF has been smeared by a convolution with the full size of the original input pixels.

The Drizzle algorithm is conceptually straightforward. Pixels in the original input images are mapped into pixels in the subsampled output image, taking into account shifts and rotations between images and the optical distortion of the camera. However, in order to avoid convolving the image with the large pixel “footprint” of the camera, Drizzle allows the user to shrink the pixel before it is averaged into the output image through the pixfrac parameter.

The flux value of each input pixel is divided up into the output pixels with weights proportional to the area of overlap between the “drop” and each output pixel. If the drop size is too small, not all output pixels have data added to them from each of the input images. One should therefore choose a drop size that is small enough to avoid convolving the image with too large an input pixel footprint, yet sufficiently large to ensure that there is not too much variation in the number of input pixels contributing to each output pixel.

When images are combined using Drizzle, a weight map can be specified for each input image. The weight image contains information about bad pixels in the image (in that bad pixels result in lower weight values). When the final output science image is generated, an output weight map which combines information from all the input weight images, is also saved.

Drizzle has a number of advantages over standard linear reconstruction methods. Since the pixel area can be scaled by the Jacobian of the geometric distortion, it is preserved for surface and absolute photometry. Therefore, the flux in the drizzled image, that was corrected for geometric distortion, can be measured with an aperture size that’s not dependent of its position on the image. Since the Drizzle code anticipates that a given output pixel might not receive any information from an input pixel, missing data does not cause a substantial problem as long as the observer has taken enough dither samples to fill in the missing information.

The blot methods perform the inverse operation of drizzle. That is, blotting performs the inverse mapping to transform the dithered median image back into the coordinate system of the original input image. Blotting is primarily used for identifying cosmic rays in the original image. Like the original drizzle task, blot requires the user to provide the world coordinate system (WCS) transformations as inputs.

[Driz2012]

Gonzaga, S., Hack, W., Fruchter, A., Mack, J., eds. 2012, The DrizzlePac Handbook. (Baltimore, STScI)

The Drizzle Library

The Drizzle library is object-oriented and you use it by first creating an object of the Drizzle class. To create a new Drizzle output image, supply an Astropy WCS object representing the coordinate system of the output image. The other parameters are the linear pixel dimension described in the previous section, the drizzle kernel used, how each input image is scaled (by exposure time or time squared), and the pixel value set in the output image where the input images do not overlap.

After creating a Drizzle object, you add one or more images by calling the add_fits_file method. The arguments are the name of the FITS file containing the input image and optionally the name of a FITS file containing the pixel weighting. Both file names can be followed by an extension name or number in square brackets. Optionally you can pass the name of the header keywords containing the exposure time and units. Two units are understood: counts and cps (counts per second).

The following function is a demonstration of how you can create a new output image:

def drizzle_demo_one(reference, outfile, infiles):
    """
    First demonstration of drizzle

    Parameters
    ==========
    reference
        A file containing the wcs of the output image

    outfile
        The name of the output image

    infiles
        The names of the input images to be combined
    """
    # Get the WCS for the output image
    hdulist = fits.open(reference)
    reference_wcs = wcs.WCS(hdulist[1].header)

    # Initialize the output with the WCS
    driz = drizzle.drizzle.Drizzle(outwcs=reference_wcs)

    # Combine the input images into on drizzle image
    for infile in infiles:
        driz.add_fits_file(infile)

    # Write the drizzled image out
    driz.write(outfile)

Optionally you can supply the input and weight images as Numpy arrays by using the add_image method. If you use this method, you must supply the extra information that would otherwise be read from the FITS image: The WCS of the input image, the exposure time, and image units.

Here is an example of how you would call add_image:

def drizzle_demo_two(reference, outfile, infiles):
    """
    Demonstration of drizzle with add image.

    Parameters
    ==========
    reference
        A file containing the wcs of the output image.

    outfile
        The name of the output image.

    infiles
        The names of the input images to be combined.
    """
    # Get the WCS for the output image
    reflist = fits.open(reference)
    reference_wcs = wcs.WCS(reflist[1].header)

    # Initialize the output with the WCS
    driz = drizzle.drizzle.Drizzle(outwcs=reference_wcs)

    # Combine the input images into on drizzle image
    for infile in infiles:
        # Open the file and read the image and wcs
        # This is a contrived example, we would not do this
        # unless the data came from another source
        # than a FITS file
        imlist = fits.open(reference)
        image = imlist[1].data
        image_wcs = wcs.WCS(imlist[1].header)
        driz.add_image(image, image_wcs)

    # Write the drizzled image out
    driz.write(outfile)

After combining all the input images, you write the output image into a FITS file with the write method. You must pass the name of the output image and optionally the units. You can also supply a set of header cards to be added to the primary header of the output FITS file.

You can also add more images to an existing Drizzle output file by creating a new Drizzle object and passing the existing output file name as the new object is created. In that case the output WCS and all other parameters are read from the file.

Here is a demonstration of adding additional input images to a drizzled image:

def drizzle_demo_three(outfile, infiles):
    """
    Demonstration of drizzle and adding to an existing output.

    Parameters
    ==========
    outfile
        Name of output image that new files will be appended to.

    infiles
        The names of the input images to be added.
    """
    # Re-open the output file
    driz = drizzle.drizzle.Drizzle(infile=outfile)

    # Add the input images to the existing output image
    for infile in infiles:
        driz.add_fits_file(infile)

    # Write the modified drizzled image out
    driz.write(outfile)

You can use the methods blot_fits_file and blot_image to transform the drizzled output image into another WCS. Most usually this is the coordinates of one of the input images and is used to identify cosmic rays or other defects. The two methods blot_fits_file and blot_image allow you to retrieve the WCS from the FITS file header or input it directly. The optional parameter interp allows you to selct the method used to resample the pixels on the new grid, and sincscl is used to scale the sinc function if one of the sinc interpolation methods is used. This function demonstrates how both methods are called:

def drizzle_demo_four(outfile, blotfile):
    """
    Demonstration of blot methods.

    Parameters
    ==========
    outfile
        Name of output image that will be converted.

    blotfile
        Name of image containing wcs to be transformed to.
    """
    # Open drizzle using the output file
    # Transform it to another coordinate system
    driz = drizzle.drizzle.Drizzle(infile=outfile)
    driz.blot_fits_file(blotfile)
    driz.write(outfile)

    # Read the WCS and transform using it instead
    # This is a contrived example
    blotlist = fits.open(blotfile)
    blot_wcs = wcs.WCS(blotlist[1].header)
    driz = drizzle.drizzle.Drizzle(infile=outfile)
    driz.blot_image(blot_wcs)
    driz.write(outfile)

The lower level function dodrizzle is present for backwards compatibility with the existing STScI DrizzlePac code and should not be used unless you are also concerned with this compatibility.

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

drizzle-1.15.0.tar.gz (104.6 kB view details)

Uploaded Source

Built Distributions

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

drizzle-1.15.0-cp312-cp312-win_amd64.whl (77.0 kB view details)

Uploaded CPython 3.12Windows x86-64

drizzle-1.15.0-cp312-cp312-win32.whl (68.8 kB view details)

Uploaded CPython 3.12Windows x86

drizzle-1.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (302.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

drizzle-1.15.0-cp312-cp312-macosx_11_0_arm64.whl (75.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

drizzle-1.15.0-cp312-cp312-macosx_10_9_x86_64.whl (83.0 kB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

drizzle-1.15.0-cp311-cp311-win_amd64.whl (76.9 kB view details)

Uploaded CPython 3.11Windows x86-64

drizzle-1.15.0-cp311-cp311-win32.whl (68.8 kB view details)

Uploaded CPython 3.11Windows x86

drizzle-1.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (302.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

drizzle-1.15.0-cp311-cp311-macosx_11_0_arm64.whl (75.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

drizzle-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl (83.0 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

drizzle-1.15.0-cp310-cp310-win_amd64.whl (76.9 kB view details)

Uploaded CPython 3.10Windows x86-64

drizzle-1.15.0-cp310-cp310-win32.whl (68.8 kB view details)

Uploaded CPython 3.10Windows x86

drizzle-1.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (301.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

drizzle-1.15.0-cp310-cp310-macosx_11_0_arm64.whl (75.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

drizzle-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl (83.0 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

drizzle-1.15.0-cp39-cp39-win_amd64.whl (76.9 kB view details)

Uploaded CPython 3.9Windows x86-64

drizzle-1.15.0-cp39-cp39-win32.whl (68.8 kB view details)

Uploaded CPython 3.9Windows x86

drizzle-1.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (300.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

drizzle-1.15.0-cp39-cp39-macosx_11_0_arm64.whl (75.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

drizzle-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl (83.0 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file drizzle-1.15.0.tar.gz.

File metadata

  • Download URL: drizzle-1.15.0.tar.gz
  • Upload date:
  • Size: 104.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0.tar.gz
Algorithm Hash digest
SHA256 e15716f60900b20faec4dd84579d3cd1a7aa4ec79b9975c4f7e8f702058043ab
MD5 9c814ccde5896d96c1ccfaef9e5ee848
BLAKE2b-256 20e85c1f5488fdf63d03077be9d776371caafdef97d92226ceb1f67541afc891

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 77.0 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f33a559c34800a50660e2a3a5b598c92b88154b5582ea49e3c442a58b66e4a02
MD5 20f95ea71ae1129327f777305cb26377
BLAKE2b-256 93933746448010e472d8f7e104c19c167d28a438ac5e5dac0a9f75f3c8946e61

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 68.8 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d3b501d3632983299e29f4483c5b646e8fe3ae2b61594dc42a229f9a0a12a29a
MD5 8331b8832ea0410157a96c204adb73ee
BLAKE2b-256 d7d31b09f67ec738ac5987c0d70bf6bf10eac85b2a07c4884780c0152b615288

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8835299d88062be371cb24bff6a70707c158f2076c59a0244030d073e683ade0
MD5 b148ce775344e95c84186c308de84e18
BLAKE2b-256 487c156c586c79e28a3fb80fe891160f8284b791ccfd020b9065a9ea0875f5b1

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 31008846fbc4dc0f84141239e059cd5e0414607f68c03bdecd39577366353715
MD5 27cdc932c0a665502ee0b888630b05bd
BLAKE2b-256 626d760de5514c79cd37f78b75a74bf42862a906ca12fb3699599b7dcceda942

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cf460aaa2704446a8ff74fcb3870d9820ef6bf8566103e65c0412b6f8e6d1a64
MD5 dc5c43f9ea06f00268fe0d332b0e5036
BLAKE2b-256 d9e1c7243a104edcf28343938fc984810d0498c163ef9ad57ee0bdf99f7dae67

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 76.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f51bc7c1c16bfc48dd3eefc1f6d3a8f6e9f5e8e72926a4754ce511f3af346dee
MD5 4c52541672b86be08abb0943071bc7ce
BLAKE2b-256 e6d605cf2dc895fdc8e91b2c64242db69bb2a8ab242fd830f5df0bb8ba4973e7

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 68.8 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 0561c57ab812b21408b2c122f5c5967ec38dea8407911a7feb53575bfc99de9e
MD5 60fb0aded895878a832f06d0984ae43a
BLAKE2b-256 3afaa91c84d6f7dd345444668dd7e1c258c2ac421b38354e2c34fe44b13f3095

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a066e151b6f538423a1f18ef9fb8e97b047c5bb9379d04c6dc99724e45db12c1
MD5 a5a792a4162a9d550566108851ca9816
BLAKE2b-256 98f5833fa91bd32554737f4be1dadd7a24440e70726d9fbf40145ea86c1125b0

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 69f665c85fe422fec4fa899746514139badacab778d89f5be1d65cbc638685de
MD5 31577e50e063bb687db95ccf18f06733
BLAKE2b-256 2835d5c405bfa33249a45d28f9711bd65fb31e8fdd8d6d613510c9c783873774

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d4d7af0534b9d1b7376a4cb7b6e9483acf97a2f20b10b1c87ddd907ba9cff3b3
MD5 416e028de8ca960c708230f63b25f3cd
BLAKE2b-256 06f84ca763cf4893c4279fe874bd6aebf47fc33eee18f6bb726035663b61f718

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 76.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ec3df6778b9ec289c802ff888d4f96a10befb57cf0a1f87b0747c7ec7f3822ca
MD5 b770b209593da4e66be8793c95333ddb
BLAKE2b-256 0f12a62d55e5060beac54d2dec9897547d53341214d7631ce24ecea09a126028

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 68.8 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 05cbcd7b520d9bf1d3bd48891ac94c481aa5628b82b3e8346107a50c3849be42
MD5 7add268bac131204cd6448177fb58350
BLAKE2b-256 be331f55ff78754dba33e1aa8294d69af74988b43c86db386fc7c60bd9646cfb

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2020f537808cce3cab948c77ecef7843ec23808ddc15277e794d93753439b9c5
MD5 95f081c73cbe96ebb168f355513348b6
BLAKE2b-256 e82b653c3b505f4f61d351d7603b6b0434509ba34d47bcc613081415953d501c

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cf8b3eb20665e47d06552b23dd674c9390e7b3b7ba8b23b21d3c9c3717242818
MD5 e7156618a09d639f62535cae8c0fed2c
BLAKE2b-256 abad645ba424f81413751aa5525918cd3ed5edb043432f639ff24cd3e3984f17

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ef0c6bb366e1b77f5f0709801fe1db46cf2d9230c189bef7d711f3b14936814e
MD5 8055f588e4533ce5002161f683d8e75f
BLAKE2b-256 50d7b6d13d8649f509f0253d61c7d5a9ffc062ef469f50d6390cc797a00943ac

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 76.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c4ac947c21975b54f58aafa085449eb9451bd32df10fa849917a90c8ff991bfc
MD5 c223b61c60321af4d272410648a761fb
BLAKE2b-256 86ef30b5d627805286fb4407f4b3d6ac54c533d218ffaaa8c1e8c868c917fc2a

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: drizzle-1.15.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 68.8 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for drizzle-1.15.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 b20da3d06976f75637031d13c48b7cac0c1f62e91eaf63ba70848dcdbb39b37a
MD5 fd610f8775ab3b0d3f56230341e5406a
BLAKE2b-256 43fb6fc5302278d1bb3a448095db6d611e3dd778f22e1ea75741cb4f4304b1f8

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f37007941a3ad57b5d31a4f4ad4c884b49ed37a10ed88ea752ecfd4f3eccb3c8
MD5 7530d609afb58589e8bc3d155da4d2c0
BLAKE2b-256 bbacd7c21f33f108cf39a0afbae116e1c932caf774c5b88918b5b76a8dd3dcee

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e60b1ea8bd01fa0b50737b55cfe67d3d36400d376e5e1ee8ef1b2cbe53db3b3e
MD5 c0ed9585f5556827357b3a0b3d2be4c2
BLAKE2b-256 84588c3dc3b42ecbc9125698eb718c07edc754a38266d9296e90697a04a46087

See more details on using hashes here.

File details

Details for the file drizzle-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for drizzle-1.15.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 acf9dcf28f6e3eb17fc145db39887039e7a662905f7b20affe1d00fd65a11b68
MD5 70753ae0f2bd83341b43932cdb50d524
BLAKE2b-256 4381b5c63e8b0918c0f26c56b1ef4c042e69e53ece76cf33b7c60bd6d5a4223c

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