Skip to main content

sorceress 1.8

PyPI version Jekyll site CI Downloads Build status

Purpose of package

This package's purpose is to create optical illusions in a simple way. The package is written in Python. however, the repo also includes JavaScript. In explanations section, you can find the explanations of the illusions.

This package contains a collection of well-known visual illusions, as well as some lesser-known ones that are just as fascinating.

By using the code provided in the package, you can easily recreate the illusions and see how they work for yourself. Not only can you reproduce the illusions, but you can also experiment with them and modify the code to create your own variations.

With this package, you can dive deep into the world of visual illusions and learn more about how the human brain processes visual information.

Whether you're a researcher, a student, or just someone who loves illusions, this package has something for you. So if you're interested in exploring the mysteries of the human visual system, give it a try!

More importantly, we shouldn't take optical illusions as just fun. Optical illusions are visual phenomena that occur when our brain interprets information from our eyes in a way that is different from reality. These illusions can reveal a lot about how our brain works and how it processes visual information, which can help us understand the underlying mechanisms of human vision. Most of the optical illusions in this package are seriously researched in the neuroscience literature. And I must say that the "causation" of the most of effects is still debated in the literature according to my humble knowledge. Optical illusions are researching not only in human vision but in other animals. So we can get a lot of insights from an evolutionary perspective.

The difficulty of creating an optical illusion with code will depend on the specific illusion you're trying to create and your experience with coding. Some optical illusions may be relatively simple to implement, while others may be more complex and require a deeper understanding of graphics programming and the underlying principles of perception.To create an effective optical illusion, you (also me) need to understand the principles of perception and be able to use code to manipulate the visual information in a way that tricks the brain into seeing something that isn't actually there. This requires a deep understanding of the underlying mechanisms of perception and a lot of experimentation and trial and error to find the right combination of visual elements that creates the desired illusion.

Another challenge is that creating optical illusions often requires a high level of precision and control over the visual elements in an image. This can be difficult to achieve with code, especially if you're working with complex or dynamic images that need to be updated in real time.

Overall, creating optical illusions with code can be a challenging but rewarding task that requires a combination of technical skills, creativity, and an understanding of the underlying principles of perception (Bach, 2014).

For all optical illusions check this documentation: altunenes.github.io/sorceress/

Getting started🚀️

The package can be found on PyPI hence you can install it via pip.

pip install sorceress
#importing
from sorceress import sorceress

Features

For the API, click here

  • Illusions in Python
    • chromatic
    • dotill
    • realtimegrid
    • addlines
    • eyecolour
    • dakinPex
    • bruno
    • dolboeuf
    • kanizsa
    • tAki2001
    • cafewall
    • ccob
    • ebbinghaus
    • whiteill
    • enigma
    • blackhole
    • colorgrids
    • munker
    • munker2
    • grids2
    • pareidolia
    • spirals
    • color negative
    • footsteps

Illusions in JavaScript

  • footsteps
  • thelilac
  • EyeMovements
  • spatialmotion
  • Motion Induced Blindness (2 versions)
  • Depth Perception
  • Speed of Rotation
  • hypnotic circle
  • Bright Illusion
  • Length Illusion
  • Crazy Sine Waves
  • Crazy EEG-Fourier
  • phimotion
  • colour adaptation

Examples

In this page, you can find all illusions, explanations, code, and how to use it. I show just a few examples on this page.

from sorceress import sorceress
sorceress.chromatic("myimage.jpg",circle=False, method="CMCCAT2000", gif=True, Gifduration=7)
sorceress.addlines("myimage.png",linecolour1=(0,255,0),linecolour2=(0,255,255),linecolour3=(255,0,0))

As you can see above, you can use the package in a very simple way. You will need to install the following packages to use the package. You will not need to import them, the package will do it for you.

pip install opencv-python
pip install numpy
pip install matplotlib
pip install imageio
pip install Pillow
pip install colour-science
pip install pygame

Contribution

Any contribution, bug report, or suggestion is always welcome <3

  • Main Maintainer: Enes Altun

Metadata

Release files for sorceress 1.8.8

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

Source distribution (sdist)

Source distribution for sorceress 1.8.8
File Size Uploaded
sorceress-1.8.8.tar.gz 19.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sorceress 1.8.8
File Interpreter ABI Platform
sorceress-1.8.8-py3-none-any.whl Python 3 none any Details

Total release size: 35.4 kB

Release files / sorceress-1.8.8.tar.gz

Download URL sorceress-1.8.8.tar.gz
Size 19.0 kB
Tags Source
SHA-256 checksum
How to use checksums
b8b80367455d56ec98855a8f55bdca79d2ca81c082d9445304f4c940342ecdd1
BLAKE2b-256 checksum
How to use checksums
1224d058245af9fe16a8b7fbe39994f63d61622114158259ac9932ec71ecf3f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.1 CPython/3.10.9 Windows/10

Release files / sorceress-1.8.8-py3-none-any.whl

Download URL sorceress-1.8.8-py3-none-any.whl
Size 16.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0da0a460d401611f0d4c30142ce31ac346083579860d8b6fec1f3536aa51d45e
BLAKE2b-256 checksum
How to use checksums
9e925495a2a98b10541627a06aa889e583561fd2f1d41fd730d23ed1e5bbe365
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.1 CPython/3.10.9 Windows/10

Release history Release notifications | RSS feed

This release

1.8.8 This release

2 release files

1.8.7

2 release files

1.8.6

2 release files

1.8.5

2 release files

1.8.4

2 release files

1.8.3

2 release files

1.8.2

2 release files

1.8.1

2 release files

1.8

2 release files

1.7.6

2 release files

1.7.5

2 release files

1.7.4

2 release files

1.7.3

2 release files

1.7.2

2 release files

1.7.1

2 release files

1.7.0

2 release files

1.6

2 release files

1.5

1 release file

1.4.2

1 release file

1.4.1

1 release file

1.4

1 release file

1.3.4

1 release file

1.3.2

1 release file

1.3.1

1 release file

1.3

1 release file

1.2

1 release file

1.1

1 release file

1.0

1 release file

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