Skip to main content

Matlab's cpselect alternative for Python

Project description

cpselect

Alternative to Matlab's cpselect tool

Continuation of the cpselect project from Tobias Hoffmann

I have fixed the bug caused by the newer version of matplotlib. I have also asked if this project could be maintained by some other larger libraries like opencv or scikit-image, but none of them are able to do so!

I will try to keep this project up to date since some toolchains depend on it, but my Qt knowledge is quite rusty...

It would be amazing if we could switch from Qt to streamlit or dash for displaying the GUI in the browser! So if someone has an idea, please open up an issue for discussion :)

Prerequisites

You will need to have the following packages installed:

  • matplotlib (tested with 3.0.1)
  • Pillow (tested with 5.3.0)
  • PyQt5 (tested with 5.11.3)

Installing and import

Install the package using pip (since cpselect is already taken, I have opted for cpselect2)

pip install cpselect2

and import it with

from cpselect2.cpselect import cpselect

Using cpselect

Just call function cpselect. The function takes two inputs, two strings with the path to your pictures.

controlpointlist = cpselect("path/to/image1", "path/to/image2")

It will return a list object, which contains a dictionary for each control point.

[
    {
        'point_id': 1,
        'img1_x': 1060.4614978873824,
        'img1_y': 1152.554044351164,
        'img2_x': 136.567465687222,
        'img2_y': 1095.033125293419,
    },
    {
        'point_id': 2,
        'img1_x': 1681.815230178675,
        'img1_y': 727.6577421225597,
        'img2_x': 1378.2481704454449,
        'img2_y': 101.68856148684131,
    }
]

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

cpselect2-1.0.6.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

cpselect2-1.0.6-py3-none-any.whl (17.0 kB view details)

Uploaded Python 3

File details

Details for the file cpselect2-1.0.6.tar.gz.

File metadata

  • Download URL: cpselect2-1.0.6.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.0 Linux/6.5.0-1017-azure

File hashes

Hashes for cpselect2-1.0.6.tar.gz
Algorithm Hash digest
SHA256 f397da702b6548919cece13202d024c5637276f66b91b6889ccaae0980715798
MD5 9dac0e214ce7ee8ca4d5865c9743a052
BLAKE2b-256 7fa0fee1775e7bb9d07eb09be0878c2ce34cf510f00ece17f8b22c8d2bff7d9c

See more details on using hashes here.

File details

Details for the file cpselect2-1.0.6-py3-none-any.whl.

File metadata

  • Download URL: cpselect2-1.0.6-py3-none-any.whl
  • Upload date:
  • Size: 17.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.0 Linux/6.5.0-1017-azure

File hashes

Hashes for cpselect2-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 881f04c242c3fea4301be1853ef22db6da520dadd02b8dc632a522b1df946e0e
MD5 c2905674d6fd5e35a5b58feafcff511b
BLAKE2b-256 040b65c6c91ebb9d6ac157b76bd7f6b01146b01fa657186cdd1b349d4754cc5d

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