README
pycimg is a python extension for the CImg library.
The package contains a single class CImg that provides access to the image processing methods of the CImg library.
Pixel data of CImg objects can be accessed as a numpy array.
Vice versa new CImg objects can be created from pixel data in a numpy array or an image file. Supported file formats are png, jpeg, tiff, bmp, and cimg.
from pycimg import CImg
import numpy as np
# Load image from file
img = CImg('test/test.png')
img.display()
# Access pixel data as numpy array
arr = img.asarray()
# Set pixels in upper left 100 x 100 px rectangle
arr[:,:,0:99,0:99] = 0
# Pixel data is shared with the image instance
img.display()
# Create image from numpy array
img = CImg(np.random.randn(100,100))
Features
Installation
Install pycimg by running:
pip install pycimg
Local development
This project uses uv for dependency management. Install uv, then run:
uv sync --dev
conan profile detect --force
conan install . --build=missing
uv run pip install -e . -C "skbuild.cmake.args=-DCMAKE_TOOLCHAIN_FILE:FILEPATH=conan_toolchain.cmake"
Run tests with:
uv run pytest --cov=pycimg tests/
Release workflow
This project uses python-semantic-release to automatically bump the version based on commit messages when changes are merged to master:
fix: ... commits increment the patch version (e.g. 2.0.2 → 2.0.3)
feat: ... commits increment the minor version (e.g. 2.0.2 → 2.1.0)
BREAKING CHANGE: ... commits increment the major version (e.g. 2.0.2 → 3.0.0)
Steps to publish a new release:
Merge the feature branch into master.
The CI semantic_release job bumps the version, commits, and pushes a new v* tag.
On GitHub, create a Release from the newly pushed tag.
The CI upload_pypi job publishes the built wheels and source distribution to PyPI.
Documentation
See readthedocs.
License
The project is licensed under the GPL3 license.
Release files for pycimg 2.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pycimg-2.0.8.tar.gz | 13.4 MB | Details |
Built distributions (wheels)
Total release size: 101.8 MB
Release files / pycimg-2.0.8.tar.gz
| Download URL | pycimg-2.0.8.tar.gz |
|---|---|
| Size | 13.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
26ef1269c902b5042aba63192504b89501cf4cce0861eccd4104fd0ba4c60ee4
|
|
BLAKE2b-256 checksum How to use checksums |
e1f7fc7daed9e2b16ba83b089ad6f34e7e1fe4988f9136f2d12d25876db5b924
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp314-cp314-win_amd64.whl
| Download URL | pycimg-2.0.8-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
6af0f0da31a97daa9aa8c14e6b17fb077d56b26bd2497743f5747de324b9234e
|
|
BLAKE2b-256 checksum How to use checksums |
efef00bef2adf4427c0d81e9bf2c6404c5ca570154f0a16c858ca5fb29684940
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pycimg-2.0.8-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
60cc443e23f95228b045b160735c974082df50903bd50f02f84b24fc4b6c65e6
|
|
BLAKE2b-256 checksum How to use checksums |
d9d2d4b24e6358787401a53d585b80038156b6f0eac097ae394c6cffe46dbcef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
| Download URL | pycimg-2.0.8-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | CPython 3.14 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
c0e38aa8be429fb07fa21e5ec8a3efa63d495ab3ec0832cac124d8261b26ba58
|
|
BLAKE2b-256 checksum How to use checksums |
258a054d029a6bc703143769ca90c58e6b9f5fb2e671c2800c5651e0ae634c34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | pycimg-2.0.8-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 4.5 MB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
2943e9da58b50bf5a464e75e9c0ada00f20f5b307063e1ae70c4aac9d23d52dd
|
|
BLAKE2b-256 checksum How to use checksums |
2732d2b6eea18bb2f884f978e606680e17b0396e09dfd795e1787bde63424f18
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp314-cp314-macosx_10_15_x86_64.whl
| Download URL | pycimg-2.0.8-cp314-cp314-macosx_10_15_x86_64.whl |
|---|---|
| Size | 4.9 MB |
| Tags | CPython 3.14 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
77c1d5861c05dcad1b6c2deae84a91cff9eb388b36300bf9c4ccdbf20a1f4fd4
|
|
BLAKE2b-256 checksum How to use checksums |
d375b0395adc07e8cc71d586cd337aff771a7f81afcbd58a259064ec4fd1c021
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp313-cp313-win_amd64.whl
| Download URL | pycimg-2.0.8-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d3df4f062262a8ef3bb00d2bafe60559247aacd4f8bd085e34d6bf1e7dc6759a
|
|
BLAKE2b-256 checksum How to use checksums |
5f7a2d9cce7276586cb85d1496eae59241a53c38615b2f076286be29b37afffb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pycimg-2.0.8-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
c1955884a47196bcf67f0e867efa2bfb86562ddc25c9aaa1d5a6c563ca44b6b9
|
|
BLAKE2b-256 checksum How to use checksums |
f8dbfdb68157ef439b1f4426a2879ee50d5aea546693256fd38afb20390387d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
| Download URL | pycimg-2.0.8-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | CPython 3.13 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
d35cf1caa86e58c9c822418132a7d2c37cadd8c9d437b540e96aba378a6692a0
|
|
BLAKE2b-256 checksum How to use checksums |
3b2760adca4c4f7b514c9509a38b131a42ab68f263df251af35ef49751e82826
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | pycimg-2.0.8-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 4.5 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e9af17b97d0dfde2e652b8f09772b6d63f480caa06b74e39e9b715c8f664a728
|
|
BLAKE2b-256 checksum How to use checksums |
1a448858373e3e231ce998b23f523a49b6909eb59cf18bc25b501b2089a48877
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp313-cp313-macosx_10_15_x86_64.whl
| Download URL | pycimg-2.0.8-cp313-cp313-macosx_10_15_x86_64.whl |
|---|---|
| Size | 4.9 MB |
| Tags | CPython 3.13 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
d7b9444317f98712403800fc94ab7e25df1cb70949d60bbee40b58f5f155be5e
|
|
BLAKE2b-256 checksum How to use checksums |
6a253504d826fe16d63dd9b6780b771b519f49f094815e4280f9e2a077961981
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp312-cp312-win_amd64.whl
| Download URL | pycimg-2.0.8-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
9849d03af782a1f7f30955e5065765473be4d8ed33458f252d3ff004e0f4b610
|
|
BLAKE2b-256 checksum How to use checksums |
a217864083d801270cd4eb12982d60eb3e213e7a660cb6e626c40809ea6d67a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pycimg-2.0.8-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
966376120f1eb7b5b83f729d87d4a9020c0ba804f1d5a57a6647ffb478a13aad
|
|
BLAKE2b-256 checksum How to use checksums |
9c3217959279071756e266bb8bbca1c7819879d2411bcbd652eaf0a3ae8a5ff4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
| Download URL | pycimg-2.0.8-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | CPython 3.12 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
c8a50fbf2a9853fe08c668db6164374de084da02d114eecc8b0249dbb0f260cb
|
|
BLAKE2b-256 checksum How to use checksums |
a742f6bba47eb2e4dff468c394fb99413720a9c8171f7f23704ee05ef576213a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | pycimg-2.0.8-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 4.5 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a607a417574908407141d2f2006918695de6ec4660dc91afd3ee9cca62691df5
|
|
BLAKE2b-256 checksum How to use checksums |
bde0555eba7113f3f9f2f37f60c338029a41e60092a90b98ec6e094d9b5753d4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp312-cp312-macosx_10_15_x86_64.whl
| Download URL | pycimg-2.0.8-cp312-cp312-macosx_10_15_x86_64.whl |
|---|---|
| Size | 4.9 MB |
| Tags | CPython 3.12 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
c3e4708e9f3924b0985c474dc15b3e424adb6b211708db1fc480d685d9548def
|
|
BLAKE2b-256 checksum How to use checksums |
63f27022cd7d2e2dd742bedc2b3e345e9056f81cb10eb65049a39e6783ea9594
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp311-cp311-win_amd64.whl
| Download URL | pycimg-2.0.8-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
72634fe18fbc1054c5c0755879333edf261f6f876fed276fbc6627c2cf2636c1
|
|
BLAKE2b-256 checksum How to use checksums |
8f23cbedaa8ddde81b00da8ae5b76c3a7e83ea1b84aaa1b6daf95d511403c2a8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pycimg-2.0.8-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
0ae2b89678d7eb30da55d27735b0d7ec95cca5021699c57a160304f340dcd264
|
|
BLAKE2b-256 checksum How to use checksums |
1ca568f8d6f5abd94b7aa99f30a362675fcc6301025db00cf54475e908c4165b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
| Download URL | pycimg-2.0.8-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | CPython 3.11 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
713a797670c5e0fd4170c7a6387ee1f957b4e21b9eac6662b8e05456e9a9cd12
|
|
BLAKE2b-256 checksum How to use checksums |
51b949ae55c4e1b576baf58125f742f413ca6e864b94be7a4d82f2db3902524c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | pycimg-2.0.8-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 4.5 MB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
196d0002e64da6f02a19920b5e5941071ded5d61dd236437fd59c6949509052b
|
|
BLAKE2b-256 checksum How to use checksums |
f7c47d7705102fe496c352170ecf84630b88ef38c4ff09ff06281c38ef0c4791
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp311-cp311-macosx_10_15_x86_64.whl
| Download URL | pycimg-2.0.8-cp311-cp311-macosx_10_15_x86_64.whl |
|---|---|
| Size | 4.9 MB |
| Tags | CPython 3.11 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
e6d5d89b0c6935e3620f887b7f1bb1c6fa5ccb6238526401000bd5d34f2c49f5
|
|
BLAKE2b-256 checksum How to use checksums |
9aabd14261fa9a28d6d2a655a163eab158a3dc23f7f61796b16a015de29cea2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp310-cp310-win_amd64.whl
| Download URL | pycimg-2.0.8-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b9f8187b45a05ff16eb0c38d5c112a1c59109ff7c00c3c414c393ba1f8d4fbb3
|
|
BLAKE2b-256 checksum How to use checksums |
d9f741aad9ce41d82a69c551bdee0dd7b12bc95e4c2616962089723b19ac435f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | pycimg-2.0.8-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 3.3 MB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
3549648f8467af6927e404821acbb9cee6d32fb2c92ef2716b7d8195bf7105e0
|
|
BLAKE2b-256 checksum How to use checksums |
c9b54fe4a30e0400b4d03b5532386fc98296473a3c2dd17c0cb3fc566286c068
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
| Download URL | pycimg-2.0.8-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | CPython 3.10 Linux glibc 2.27+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
c0edcc1990a0746416a8d69fe20a415e90c6143e44adcd4dc19a5b4a72f49212
|
|
BLAKE2b-256 checksum How to use checksums |
f219e60391ad4cdf05519a61f05ba71d85faed61c562c1bc475b255bdef1cfe2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | pycimg-2.0.8-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 4.5 MB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
40fced05361092b97c18a27e91e8a1af83e02249760e7c0cea42e0fcfbd8fc51
|
|
BLAKE2b-256 checksum How to use checksums |
410d5deaa4503f17c6b19090fa4a41d75e6c31860d774764d7cfed7a4670eb68
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / pycimg-2.0.8-cp310-cp310-macosx_10_15_x86_64.whl
| Download URL | pycimg-2.0.8-cp310-cp310-macosx_10_15_x86_64.whl |
|---|---|
| Size | 4.9 MB |
| Tags | CPython 3.10 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
7bb904f9871973dc69fc2c4d6552a594d93d8e618c6fdc4bc3c3fa22ef2a1a4e
|
|
BLAKE2b-256 checksum How to use checksums |
150ce5a34df49d955148c177987575f3d547bbc86e2cbaea0b7d39e39cf5ea3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|