Skip to main content

Image processing in Python

Project description

scikit-image: Image processing in Python

Image.sc forum Stackoverflow project chat codecov.io

Installation from binaries

  • Debian/Ubuntu: sudo apt-get install python-skimage
  • OSX: pip install scikit-image
  • Anaconda: conda install -c conda-forge scikit-image
  • Windows: Download Windows binaries

Also see installing scikit-image.

Installation from source

Install dependencies using:

pip install -r requirements.txt

Then, install scikit-image using:

$ pip install .

If you plan to develop the package, you may run it directly from source:

$ pip install -e .  # Do this once to add package to Python path

Every time you modify Cython files, also run:

$ python setup.py build_ext -i  # Build binary extensions

License (Modified BSD)

Copyright (C) 2011, the scikit-image team All rights reserved.

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 skimage 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 AUTHOR ``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 AUTHOR 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.

Citation

If you find this project useful, please cite:

Stéfan van der Walt, Johannes L. Schönberger, Juan Nunez-Iglesias, François Boulogne, Joshua D. Warner, Neil Yager, Emmanuelle Gouillart, Tony Yu, and the scikit-image contributors. scikit-image: Image processing in Python. PeerJ 2:e453 (2014) https://doi.org/10.7717/peerj.453

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scikit-image-0.19.3.tar.gz (22.2 MB view details)

Uploaded Source

Built Distributions

scikit_image-0.19.3-cp310-cp310-win_amd64.whl (12.0 MB view details)

Uploaded CPython 3.10 Windows x86-64

scikit_image-0.19.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

scikit_image-0.19.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

scikit_image-0.19.3-cp310-cp310-macosx_12_0_arm64.whl (12.5 MB view details)

Uploaded CPython 3.10 macOS 12.0+ ARM64

scikit_image-0.19.3-cp310-cp310-macosx_10_13_x86_64.whl (13.3 MB view details)

Uploaded CPython 3.10 macOS 10.13+ x86-64

scikit_image-0.19.3-cp39-cp39-win_amd64.whl (12.1 MB view details)

Uploaded CPython 3.9 Windows x86-64

scikit_image-0.19.3-cp39-cp39-win32.whl (11.3 MB view details)

Uploaded CPython 3.9 Windows x86

scikit_image-0.19.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

scikit_image-0.19.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (14.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

scikit_image-0.19.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

scikit_image-0.19.3-cp39-cp39-macosx_12_0_arm64.whl (12.5 MB view details)

Uploaded CPython 3.9 macOS 12.0+ ARM64

scikit_image-0.19.3-cp39-cp39-macosx_10_13_x86_64.whl (13.3 MB view details)

Uploaded CPython 3.9 macOS 10.13+ x86-64

scikit_image-0.19.3-cp38-cp38-win_amd64.whl (12.2 MB view details)

Uploaded CPython 3.8 Windows x86-64

scikit_image-0.19.3-cp38-cp38-win32.whl (11.3 MB view details)

Uploaded CPython 3.8 Windows x86

scikit_image-0.19.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

scikit_image-0.19.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (14.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

scikit_image-0.19.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

scikit_image-0.19.3-cp38-cp38-macosx_12_0_arm64.whl (12.4 MB view details)

Uploaded CPython 3.8 macOS 12.0+ ARM64

scikit_image-0.19.3-cp38-cp38-macosx_10_13_x86_64.whl (13.2 MB view details)

Uploaded CPython 3.8 macOS 10.13+ x86-64

scikit_image-0.19.3-cp37-cp37m-win_amd64.whl (12.1 MB view details)

Uploaded CPython 3.7m Windows x86-64

scikit_image-0.19.3-cp37-cp37m-win32.whl (11.3 MB view details)

Uploaded CPython 3.7m Windows x86

scikit_image-0.19.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.4 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

scikit_image-0.19.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (13.5 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64

scikit_image-0.19.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl (13.3 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ i686

scikit_image-0.19.3-cp37-cp37m-macosx_10_13_x86_64.whl (13.2 MB view details)

Uploaded CPython 3.7m macOS 10.13+ x86-64

File details

Details for the file scikit-image-0.19.3.tar.gz.

File metadata

  • Download URL: scikit-image-0.19.3.tar.gz
  • Upload date:
  • Size: 22.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for scikit-image-0.19.3.tar.gz
Algorithm Hash digest
SHA256 24b5367de1762da6ee126dd8f30cc4e7efda474e0d7d70685433f0e3aa2ec450
MD5 057be2b5b783daf40d8d40e6d59c3d64
BLAKE2b-256 00d46682033d02917b10a2024dbe5a0636d2338b0799f7bd1885508fb114aec9

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 cc24177de3fdceca5d04807ad9c87d665f0bf01032ed94a9055cd1ed2b3f33e9
MD5 9f8fb543c357e9b1be97d61ec762777b
BLAKE2b-256 d42160ee84932bf4b72398769759c9d30d63771967b0f430e28d5c2e7f326acc

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cfbb073f23deb48e0e60c47f8741d8089121d89cc78629ea8c5b51096efc5be7
MD5 9eea0d883357823dad17d77b454a0940
BLAKE2b-256 1b0988624513508fc56c646aa660193a75c953bb5dae46a2f67891af8d95a5c7

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6b6a8f98f2ac9bb73706461fd1dec875f6a5141759ed526850a5a49e90003d19
MD5 3d6fa27bd4fbd4c8650aa8f76a4997b6
BLAKE2b-256 eec41eca31934cc86695a73f25f0bd825024564eaaaae73d924710c0484e43c5

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp310-cp310-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp310-cp310-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 fdf48d9b1f13af69e4e2c78e05067e322e9c8c97463c315cd0ecb47a94e259fc
MD5 1c255fa0d25c599f8619fb8e5b230d12
BLAKE2b-256 c27b42a9032039f9c1f95fa29b09da227b3377c0ac4cc84ed85f2337f6595a12

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp310-cp310-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp310-cp310-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3a01372ae4bca223873304b0bff79b9d92446ac6d6177f73d89b45561e2d09d8
MD5 f010891e2e326201536cdad2d8604bd6
BLAKE2b-256 d7edf311a9cee61a5c55979f51e85d52e62981b4b920bb14cb8d315a67e997d8

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 32fb88cc36203b99c9672fb972c9ef98635deaa5fc889fe969f3e11c44f22919
MD5 7e6cbecfcbe5eccb3e766098d412f4d1
BLAKE2b-256 88217323d351d3108cd90976c631f89ca725ab292d584d84ace0890c1483129c

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp39-cp39-win32.whl.

File metadata

  • Download URL: scikit_image-0.19.3-cp39-cp39-win32.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for scikit_image-0.19.3-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 9439e5294de3f18d6e82ec8eee2c46590231cf9c690da80545e83a0733b7a69e
MD5 3c94795c61a12ad363c5c83f4a6454c0
BLAKE2b-256 22c1ca16b12c0dd7b5b0a7f2ace4726681dc0d5b0d1ff7b8b36c54b5a2394ba3

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ff3b1025356508d41f4fe48528e509d95f9e4015e90cf158cd58c56dc63e0ac5
MD5 d2981aa622f62a06ceedfe89fbc40102
BLAKE2b-256 0f29d157cd648b87212e498189c183a32f0f48e24fe22e9673dacd97594f39fa

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a8714348ddd671f819457a797c97d4c672166f093def66d66c3254cbd1d43f83
MD5 05eeaaf910d2a01f84f67611d4155db4
BLAKE2b-256 5905c28af2a60f9648a15c8df38de6a26a39295d5c29b36c0fc12b823f3984f2

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 33dfd463ee6cc509defa279b963829f2230c9e0639ccd3931045be055878eea6
MD5 31dbbf92ca58bcef538ef8bbfb8aec86
BLAKE2b-256 2c81beb7b96b252011dfbc689b8670714c81e9965592e80e4cc3a695d421d544

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp39-cp39-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp39-cp39-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 0b0a199157ce8487c77de4fde0edc0b42d6d42818881c11f459262351d678b2d
MD5 5a653431b6d09ef0400a5f9b9c0dc0ed
BLAKE2b-256 6a2e98c92fa887de773360631dc54add5679d269730537be46498c1392e76215

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp39-cp39-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp39-cp39-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8d8917fcf85b987b1f287f823f3a1a7dac38b70aaca759bc0200f3bc292d5ced
MD5 7a1b4589a3b1559ff27a21f52fb1d6c9
BLAKE2b-256 68eb057522fddcdf13fcf925313f67918673e4f39a109847390cead48a2eaa44

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 651de1c2ce1fbee834753b46b8e7d81cb12a5594898babba63ac82b30ddad49d
MD5 c661c21e7faa346fbf5c5b16e5680a52
BLAKE2b-256 a113c0fa403e7972ed505680f3e7a4ff64b16bca106175c7f2b9e2b00114d580

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp38-cp38-win32.whl.

File metadata

  • Download URL: scikit_image-0.19.3-cp38-cp38-win32.whl
  • Upload date:
  • Size: 11.3 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for scikit_image-0.19.3-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 a7c3985c68bfe05f7571167ee021d14f5b8d1a4a250c91f0b13be7fb07e6af34
MD5 d8b7168cc7ccbdda20e7cc0bddb4e960
BLAKE2b-256 dda0c17de0b0d7d27f41dea9fb5b020cd30d5f50e0984c89955659276d3632d3

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e207c6ce5ce121d7d9b9d2b61b9adca57d1abed112c902d8ffbfdc20fb42c12b
MD5 83f654af9ed00a88f1c6a908b9cad6d2
BLAKE2b-256 9611878ee6757f75835c396fbdd934ca8e1a1681553ac0925fbf77065c9618e5

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2f50b923f8099c1045fcde7418d86b206c87e333e43da980f41d8577b9605245
MD5 f33b6dbc4bf643b22874a9b7bf2a8482
BLAKE2b-256 2d0a68c15953c662d2fd5dc8c8decb526eacb01d6e1e84867637deb9ea8699ee

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 19a21a101a20c587a3b611a2cf6f86c35aae9f8d9563279b987e83ee1c9a9790
MD5 3400f8d8cd9ae49ed6b3c3292473f023
BLAKE2b-256 8b849bcfe516fa7fce732f4c6aee9f91ec896bf02868b528721e611667af1b9b

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp38-cp38-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp38-cp38-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 03779a7e1736fdf89d83c0ba67d44110496edd736a3bfce61a2b5177a1c8a099
MD5 747240914500c64977d919ba8268d33f
BLAKE2b-256 e5381e76dd46f9d32f1e315fd2e968f80dd6c6325d9af2b3afcb5c2d5e439340

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp38-cp38-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp38-cp38-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2a02d1bd0e2b53e36b952bd5fd6118d9ccc3ee51de35705d63d8eb1f2e86adef
MD5 890d5488e219f3aef69b458a8b519f24
BLAKE2b-256 22fd09f5e5e65937a512403407aa746bbaefbf213db416c1af7999f144d1b22d

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 ce3d2207f253b8eb2c824e30d145a9f07a34a14212d57f3beca9f7e03c383cbe
MD5 59aca78de30200585ebadc1f7b639583
BLAKE2b-256 101ca35217c9e918bbf9ac8cbb3d2a604f552b14851a97d3fb2282e34b7a8d7d

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp37-cp37m-win32.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 9fb0923a3bfa99457c5e17888f27b3b8a83a3600b4fef317992e7b7234764732
MD5 fc71e84beb07a48fc6129e937217f6d0
BLAKE2b-256 3ec39aee86bb46aea7374b95b63bdaa0aa0435cf1537219975bad486d0f93ffd

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7f9f8a1387afc6c70f2bed007c3854a2d7489f9f7713c242f16f32ee05934bc2
MD5 6dead9dba76af0d2a6af8e7d37b7d1c5
BLAKE2b-256 2691cba57ad645e17a2d4a25ee5cd31cdc48cd50e55b8d0b1658b9af53ba5ad7

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 84baa3179f3ae983c3a5d81c1e404bc92dcf7daeb41bfe9369badcda3fb22b92
MD5 0eebdc332749198b00f8cb99bc3953ed
BLAKE2b-256 2dba63ce953b7d593bd493e80be158f2d9f82936582380aee0998315510633aa

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 ad5d8000207a264d1a55681a9276e6a739d3f05cf4429004ad00d61d1892235f
MD5 90e96fe4d2257828f93c3f115ba099d2
BLAKE2b-256 2723bfe1a12a5200f6c3a2cdc9a1acb9faba2ce4953df97ae9da294f6514bb95

See more details on using hashes here.

Provenance

File details

Details for the file scikit_image-0.19.3-cp37-cp37m-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for scikit_image-0.19.3-cp37-cp37m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 fd9dd3994bb6f9f7a35f228323f3c4dc44b3cf2ff15fd72d895216e9333550c6
MD5 8a048596418b6621613dc81ba73d789e
BLAKE2b-256 2f2ceddc3099cfd359e5ebe1b589e885f95a8fbcb1be44d7299d2e0ebcca686c

See more details on using hashes here.

Provenance

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