Metadata-Version: 2.1
Name: displayarray
Version: 1.2.0
Summary: Tool for displaying numpy arrays.
Home-page: UNKNOWN
Author: SimLeek
Author-email: simulator.leek@gmail.com
License: MIT
Project-URL: repository, https://github.com/simleek/displayarray
Description: displayarray
        ============
        
        A library for displaying arrays as video in Python.
        
        Display arrays while updating them
        ----------------------------------
        
        .. figure:: https://i.imgur.com/UEt6iR6.gif
           :alt: 
        
        ::
        
            from displayarray import display
            import numpy as np
        
            arr = np.random.normal(0.5, 0.1, (100, 100, 3))
        
            with display(arr) as d:
                while d:
                    arr[:] += np.random.normal(0.001, 0.0005, (100, 100, 3))
                    arr %= 1.0
        
        Run functions on 60fps webcam or video input
        --------------------------------------------
        
        |image0|
        
        (Video Source: https://www.youtube.com/watch?v=WgXQ59rg0GM)
        
        ::
        
            from displayarray import display
            import math as m
        
            def forest_color(arr):
                forest_color.i += 1
                arr[..., 0] = (m.sin(forest_color.i*(2*m.pi)*4/360)*255 + arr[..., 0]) % 255
                arr[..., 1] = (m.sin((forest_color.i * (2 * m.pi) * 5 + 45) / 360) * 255 + arr[..., 1]) % 255
                arr[..., 2] = (m.cos(forest_color.i*(2*m.pi)*3/360)*255 + arr[..., 2]) % 255
        
            forest_color.i = 0
        
            display("fractal test.mp4", callbacks=forest_color, blocking=True, fps_limit=120)
        
        Display tensors as they're running through TensorFlow or PyTorch
        ----------------------------------------------------------------
        
        .. figure:: https://i.imgur.com/TejCpIP.png
           :alt: 
        
        ::
        
            # see test_display_tensorflow in test_simple_apy for full code.
        
            ...
        
            autoencoder.compile(loss="mse", optimizer="adam")
        
            while displayer:
                grab = tf.convert_to_tensor(
                    displayer.FRAME_DICT["fractal test.mp4frame"][np.newaxis, ...].astype(np.float32)
                    / 255.0
                )
                grab_noise = tf.convert_to_tensor(
                    (((displayer.FRAME_DICT["fractal test.mp4frame"][np.newaxis, ...].astype(
                        np.float32) + np.random.uniform(0, 255, grab.shape)) / 2) % 255)
                    / 255.0
                )
                displayer.update((grab_noise.numpy()[0] * 255.0).astype(np.uint8), "uid for grab noise")
                autoencoder.fit(grab_noise, grab, steps_per_epoch=1, epochs=1)
                output_image = autoencoder.predict(grab, steps=1)
                displayer.update((output_image[0] * 255.0).astype(np.uint8), "uid for autoencoder output")
        
        Handle input events
        -------------------
        
        Mouse events captured whenever the mouse moves over the window:
        
        ::
        
            event:0
            x,y:133,387
            flags:0
            param:None
        
        Code:
        
        ::
        
            from displayarray.input import mouse_loop
            from displayarray import display
        
            @mouse_loop
            def print_mouse_thread(mouse_event):
                print(mouse_event)
        
            display("fractal test.mp4", blocking=True)
        
        Installation
        ------------
        
        displayarray is distributed on `PyPI <https://pypi.org>`__ as a
        universal wheel in Python 3.6+ and PyPy.
        
        ::
        
            $ pip install displayarray
        
        Usage
        -----
        
        API has been generated `here <https://simleek.github.io/displayarray/index.html>`_.
        
        See tests and examples for example usage.
        
        License
        -------
        
        displayarray is distributed under the terms of both
        
        -  `MIT License <https://choosealicense.com/licenses/mit>`__
        -  `Apache License, Version
           2.0 <https://choosealicense.com/licenses/apache-2.0>`__
        
        at your option.
        
        .. |image0| image:: https://thumbs.gfycat.com/AbsoluteEarnestEelelephant-size_restricted.gif
           :target: https://gfycat.com/absoluteearnesteelelephant
        
Platform: UNKNOWN
Requires-Python: ==3.*,>=3.6.0
Provides-Extra: dev
