Lenia - Mathematical Life Forms

Overview

For full version list, see Timeline in Lenia portal

Lenia

Lenia is a 2D cellular automata with continuous space, time and states. It produces a huge variety of interesting life forms.

There are various versions available. Python, Matlab and web (JavaScript) versions are real-time, interactive, and equipped with statistics tools. Jupyter and R versions are non-interactive and just for demonstration purposes.

Showcase video

screen cap Watch in YouTube Watch in Vimeo

screen cap Watch in YouTube Watch in Vimeo

Python Version

Fastest version, minimalist layout. Now with GPU support! (Needs Python3 and various libraries)

screen cap screen cap screen cap

Matlab Version

Fast version, great tools for statistical analysis. (Needs purchased copy of Matlab)

screen cap

JavaScript Version

The original program, slow but with most features.

screen cap 1 screen cap 2 screen cap 3

3D rendering using plot.ly

orbium       gyrorbium

Comments
  • More advanced constructions

    More advanced constructions

    Hello my name is Michael Simkin, I'm game of life enthusiast and (among other discoveries) I've constructed adjustable speed spaceship that solved every speed below c/4 in CGOL.

    I really liked your rules collection and the aesthetics of continuous rules. But I see people just invent new rules and don't invest time to investigate the simplest properties of the rules (and maybe meaningful modification in order to support university). For example what are the possible results of two gliders collisions? Is there also oscillators and other gliders in the same rule? How about glider reflector and duplicator? Can we make construction arm and make Gemini in some of your rules? In order to have Gemini we need to implement HashLife algorithm, as Gemini basically means universal construction, and the iterator implementation must be sparse.

    CAs are very useful for self replication, and continuous self replication never been explored at all. Maybe there are some interesting shortcuts available in this collection of rules. Maybe we can make a spaceship that can turn in 5% for example. Some interesting properties and search utilities from CGOL can be used to find spaceships in those rules as well.

    EDIT I noticed many of the rules contain interesting creatures but random soup is exploding. Do you have a "real" CGOL like rule where:

    1. Spaceships are many times spontaneously appearing.
    2. Random soup is usually (with probability higher than 99%) ends with only oscillators + spaceships.
    3. Infinite explosions are extremely rare (less than 0.1%).
    4. Complete death from random big enough soup is rare (less than 5%).
    5. A large set of different spontaneous creatures are available in the same rule (like in CGOL we have *WSSs except of gliders). And oscillators/still lifes have many different shapes.
    discussion 
    opened by simsim314 5
  • Host on GitHub pages?

    Host on GitHub pages?

    Hi!

    First, I'm astonished of lifeforms' beauty.

    It seems like there is no Webpack / Babel / other build solution involved. When I cloned the repo, I just opened JavaScript/Lenia.html and it worked.

    Please, consider using GitHub pages to host Lenia, so everyone visiting this page could just click a link and check out Lenia for themselves, without cloning the repository.

    opened by mvoloskov 3
  • Last thing once I'd got everything else sorted

    Last thing once I'd got everything else sorted

    I got all the dependencies installed (gentoo Linux using portage had everything apart from renia, so a local renia checkout with $PYTHONPATH specified) and then when I tried to run LeniaND.py (I was keen for the python version), I got a traceback from reikna:

    File "/home/dan/dev/python/lenia/Lenia.git/Python/reikna/reikna/cluda/ocl.py", line 114, in _copy_array dest.set(src, queue=self.queue, async=self.async) TypeError: set() got an unexpected keyword argument 'async'

    I guess this should probably be reported to the reikna github (if there is one!) but I thought I might as well let you know - and yes, maybe this would have worked if I had a newer nvidia-drivers installed? (currently on 390.87) but the code could also check if that arg is allowed before passing it perhaps?.

    I was able to run LeniaND.py fine after removing that single 'async' argument from the call to 'set()' mentioned above.

    opened by danwills 3
  • reikna import error

    reikna import error

    Hi!

    First of all, thank you for making this. It's truly amazing. I'm trying to make the Python code run on my computer, but after installing the requirements I'm getting this strange error. Any idea what's going on here?

    Traceback (most recent call last):
      File "/home/xxx/PycharmProjects/Lenia/Python/LeniaND.py", line 4, in <module>
        import reikna.fft, reikna.cluda  # pip3 install pyopencl/pycuda, reikna
      File "/home/xxx/PycharmProjects/Lenia/venv/lib/python3.8/site-packages/reikna/fft/__init__.py", line 15, in <module>
        from reikna.fft.fft import FFT
      File "/home/xxx/PycharmProjects/Lenia/venv/lib/python3.8/site-packages/reikna/fft/fft.py", line 11, in <module>
        TEMPLATE = helpers.template_for(__file__)
      File "/home/xxx/PycharmProjects/Lenia/venv/lib/python3.8/site-packages/reikna/helpers/__init__.py", line 158, in template_for
        return make_template(name + '.mako', filename=True)
      File "/home/xxx/PycharmProjects/Lenia/venv/lib/python3.8/site-packages/reikna/helpers/__init__.py", line 100, in make_template
        return Template(**kwds)
      File "/home/xxx/PycharmProjects/Lenia/venv/lib/python3.8/site-packages/mako/template.py", line 338, in __init__
        module = self._compile_from_file(path, filename)
      File "/home/xxx/PycharmProjects/Lenia/venv/lib/python3.8/site-packages/mako/template.py", line 413, in _compile_from_file
        code, module = _compile_text(
      File "/home/xxx/PycharmProjects/Lenia/venv/lib/python3.8/site-packages/mako/template.py", line 711, in _compile_text
        code = compile(source, cid, 'exec')
      File "_home_xxxx_PycharmProjects_Lenia_venv_lib_python3_8_site_packages_reikna_fft_fft_mako", line 148
        def render_insertGlobalLoadsNoIf(context,input,kweights,a_indices,g_indices,pad=,fft_index_offsets=):
                                                                                        ^
    SyntaxError: invalid syntax
    
    
    opened by TasseDeCafe 1
  • Undefined name:

    Undefined name: "update_menu_value" in Lenia.py

    text is an undefined name in this context which can raise a NameError at runtime.

    flake8 testing of https://github.com/Chakazul/Lenia on Python 3.6.3

    $ flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics

    ./Python/Lenia.py:1079:89: F821 undefined name 'text'
    		self.menu.children[info[0]].entryconfig(info[1], label='{text} [{value}]'.format(text=text if text else info[2], value=value))
                                                                                            ^
    ./Python/Lenia.py:1079:97: F821 undefined name 'text'
    		self.menu.children[info[0]].entryconfig(info[1], label='{text} [{value}]'.format(text=text if text else info[2], value=value))
                                                                                                    ^
    2     F821 undefined name 'text'
    2
    
    Waiting For Review 
    opened by cclauss 1
  • Bump pillow from 5.2.0 to 6.2.0 in /Python

    Bump pillow from 5.2.0 to 6.2.0 in /Python

    Bumps pillow from 5.2.0 to 6.2.0.

    Release notes

    Sourced from pillow's releases.

    6.2.0

    https://pillow.readthedocs.io/en/stable/releasenotes/6.2.0.html

    6.1.0

    https://pillow.readthedocs.io/en/stable/releasenotes/6.1.0.html

    6.0.0

    No release notes provided.

    5.4.1

    No release notes provided.

    5.4.0

    No release notes provided.

    5.3.0

    No release notes provided.

    Changelog

    Sourced from pillow's changelog.

    6.2.0 (2019-10-01)

    • Catch buffer overruns #4104 [radarhere]

    • Initialize rows_per_strip when RowsPerStrip tag is missing #4034 [cgohlke, radarhere]

    • Raise error if TIFF dimension is a string #4103 [radarhere]

    • Added decompression bomb checks #4102 [radarhere]

    • Fix ImageGrab.grab DPI scaling on Windows 10 version 1607+ #4000 [nulano, radarhere]

    • Corrected negative seeks #4101 [radarhere]

    • Added argument to capture all screens on Windows #3950 [nulano, radarhere]

    • Updated warning to specify when Image.frombuffer defaults will change #4086 [radarhere]

    • Changed WindowsViewer format to PNG #4080 [radarhere]

    • Use TIFF orientation #4063 [radarhere]

    • Raise the same error if a truncated image is loaded a second time #3965 [radarhere]

    • Lazily use ImageFileDirectory_v1 values from Exif #4031 [radarhere]

    • Improved HSV conversion #4004 [radarhere]

    • Added text stroking #3978 [radarhere, hugovk]

    • No more deprecated bdist_wininst .exe installers #4029 [hugovk]

    • Do not allow floodfill to extend into negative coordinates #4017 [radarhere]

    ... (truncated)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot ignore this [patch|minor|major] version will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Undefined name: import scipy in Lenia.py

    Undefined name: import scipy in Lenia.py

    scipy is used twice but is never imported or defined.

    flake8 testing of https://github.com/Chakazul/Lenia on Python 3.6.3

    $ flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics

    ./Python/Lenia.py:446:7: F821 undefined name 'scipy'
    		d = scipy.spatial.distance.pdist(self.series[:, None])
          ^
    ./Python/Lenia.py:449:7: F821 undefined name 'scipy'
    		Z = scipy.spatial.distance.squareform(d)
          ^
    ./Python/Lenia.py:1078:89: F821 undefined name 'text'
    		self.menu.children[info[0]].entryconfig(info[1], label='{text} [{value}]'.format(text=text if text else info[2], value=value))
                                                                                            ^
    ./Python/Lenia.py:1078:97: F821 undefined name 'text'
    		self.menu.children[info[0]].entryconfig(info[1], label='{text} [{value}]'.format(text=text if text else info[2], value=value))
                                                                                                    ^
    4     F821 undefined name 'scipy'
    4
    

    The other two issues are worth looking at as well. There is no variable text defined within that context which may raise NameError at runtime.

    Closed 
    opened by cclauss 0
  • Bump mako from 1.1.3 to 1.2.2 in /Python

    Bump mako from 1.1.3 to 1.2.2 in /Python

    Bumps mako from 1.1.3 to 1.2.2.

    Release notes

    Sourced from mako's releases.

    1.2.2

    Released: Mon Aug 29 2022

    bug

    • [bug] [lexer] Fixed issue in lexer where the regexp used to match tags would not correctly interpret quoted sections individually. While this parsing issue still produced the same expected tag structure later on, the mis-handling of quoted sections was also subject to a regexp crash if a tag had a large number of quotes within its quoted sections.

      References: #366

    1.2.1

    Released: Thu Jun 30 2022

    bug

    • [bug] [tests] Various fixes to the test suite in the area of exception message rendering to accommodate for variability in Python versions as well as Pygments.

      References: #360

    misc

    • [performance] Optimized some codepaths within the lexer/Python code generation process, improving performance for generation of templates prior to their being cached. Pull request courtesy Takuto Ikuta.

      References: #361

    1.2.0

    Released: Thu Mar 10 2022

    changed

    • [changed] [py3k] Corrected "universal wheel" directive in setup.cfg so that building a wheel does not target Python 2.

      References: #351

    • [changed] [py3k] The bytestring_passthrough template argument is removed, as this flag only applied to Python 2.

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump numpy from 1.16.6 to 1.22.0 in /Python

    Bump numpy from 1.16.6 to 1.22.0 in /Python

    Bumps numpy from 1.16.6 to 1.22.0.

    Release notes

    Sourced from numpy's releases.

    v1.22.0

    NumPy 1.22.0 Release Notes

    NumPy 1.22.0 is a big release featuring the work of 153 contributors spread over 609 pull requests. There have been many improvements, highlights are:

    • Annotations of the main namespace are essentially complete. Upstream is a moving target, so there will likely be further improvements, but the major work is done. This is probably the most user visible enhancement in this release.
    • A preliminary version of the proposed Array-API is provided. This is a step in creating a standard collection of functions that can be used across application such as CuPy and JAX.
    • NumPy now has a DLPack backend. DLPack provides a common interchange format for array (tensor) data.
    • New methods for quantile, percentile, and related functions. The new methods provide a complete set of the methods commonly found in the literature.
    • A new configurable allocator for use by downstream projects.

    These are in addition to the ongoing work to provide SIMD support for commonly used functions, improvements to F2PY, and better documentation.

    The Python versions supported in this release are 3.8-3.10, Python 3.7 has been dropped. Note that 32 bit wheels are only provided for Python 3.8 and 3.9 on Windows, all other wheels are 64 bits on account of Ubuntu, Fedora, and other Linux distributions dropping 32 bit support. All 64 bit wheels are also linked with 64 bit integer OpenBLAS, which should fix the occasional problems encountered by folks using truly huge arrays.

    Expired deprecations

    Deprecated numeric style dtype strings have been removed

    Using the strings "Bytes0", "Datetime64", "Str0", "Uint32", and "Uint64" as a dtype will now raise a TypeError.

    (gh-19539)

    Expired deprecations for loads, ndfromtxt, and mafromtxt in npyio

    numpy.loads was deprecated in v1.15, with the recommendation that users use pickle.loads instead. ndfromtxt and mafromtxt were both deprecated in v1.17 - users should use numpy.genfromtxt instead with the appropriate value for the usemask parameter.

    (gh-19615)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Python (Reikna) GPU support on Windows?

    Python (Reikna) GPU support on Windows?

    Hello, I am a big fan of your work! Quick question, are there some extra steps I need to take to enable GPU support, at least on Windows? (I would be normally using linux but my dual boot setup is currently broken)

    I had to tweak the dependencies to get it to work right, but I'm still using mostly the same install. I also had to install PyCUDA to get Reikna to do anything, I think this is normal but I couldn't find anything about it specifically for Lenia. However, I still get an error saying the compiler preprocessing of the CUDA shaders failed.

    I have the latest stable NVIDIA graphics drivers, and an NVIDIA GTX 1650. I tried doing a clean install of the graphics drivers, and all of the CUDA test programs seem to work. Is it possible my GPU or operating system is not fully supported by Lenia Python? Or am I just overlooking something? My adapted requirements.txt file is attached below if it helps. Let me know if you need any more information.

    requirements.txt

    opened by thedocruby 3
  • Increase the usage of augmented assignment statements

    Increase the usage of augmented assignment statements

    :eyes: Some source code analysis tools can help to find opportunities for improving software components. :thought_balloon: I propose to increase the usage of augmented assignment statements accordingly.

    diff --git a/Python/LeniaND.py b/Python/LeniaND.py
    index 1c05acc..892d0f0 100644
    --- a/Python/LeniaND.py
    +++ b/Python/LeniaND.py
    @@ -676,7 +676,7 @@ class Analyzer:
     
                     self.density_sum = np.sum(self.polar_density, axis=0)
                     if self.density_ema is not None:
    -                    self.density_ema = self.density_ema + self.ema_alpha * (self.density_sum - self.density_ema)
    +                    self.density_ema += self.ema_alpha * (self.density_sum - self.density_ema)
                     else:
                         self.density_ema = self.density_sum
     
    diff --git a/Python/LeniaNDK.py b/Python/LeniaNDK.py
    index 03373fe..8722d87 100644
    --- a/Python/LeniaNDK.py
    +++ b/Python/LeniaNDK.py
    @@ -701,7 +701,7 @@ class Analyzer:
     
                     self.density_sum = np.sum(self.polar_density, axis=0)
                     if self.density_ema is not None:
    -                    self.density_ema = self.density_ema + self.ema_alpha * (self.density_sum - self.density_ema)
    +                    self.density_ema += self.ema_alpha * (self.density_sum - self.density_ema)
                     else:
                         self.density_ema = self.density_sum
     
    diff --git a/Python/LeniaNDKC.py b/Python/LeniaNDKC.py
    index 765e00f..038e096 100644
    --- a/Python/LeniaNDKC.py
    +++ b/Python/LeniaNDKC.py
    @@ -751,7 +751,7 @@ class Analyzer:
     
                     self.density_sum = np.sum(self.polar_density, axis=0)
                     if self.density_ema is not None:
    -                    self.density_ema = self.density_ema + self.ema_alpha * (self.density_sum - self.density_ema)
    +                    self.density_ema += self.ema_alpha * (self.density_sum - self.density_ema)
                     else:
                         self.density_ema = self.density_sum
     
    
    opened by elfring 0
Releases(v3.0)
  • v3.0(Oct 14, 2020)

    Code release for original Lenia Source: Lenia.v3.0.zip Paper: https://arxiv.org/abs/1812.05433 Video: https://youtu.be/iE46jKYcI4Y

    Full versions list: https://chakazul.github.io/lenia.html πŸ¦‹ 2018-05 - Lenia in Python (v3.0 Lenia.py)

    Source code(tar.gz)
    Source code(zip)
    Lenia.v3.0.zip(313.14 KB)
  • v3.5(Oct 14, 2020)

    Code release for extended Lenia - multi-dimensional, multi-kernel and multi-channel Source: Lenia.v3.5.zip Paper: https://arxiv.org/abs/2005.03742 Video: https://youtu.be/HT49wpyux-k

    Full versions list: https://chakazul.github.io/lenia.html πŸ¦‹ 2018-05 - Lenia in Python (v3.0 Lenia.py) 🐟 2019-12 - Multi-dimensional extension (v3.1 Lenia3D.py, v3.2 Lenia4D.py) 🐟 2020-01 - Generalized dimensions (v3.3 LeniaND.py) 🐠 2020-01 - Multi-kernel extension (v3.4 LeniaNDK.py) 🐠 2020-02 - Multi-channel extension (v3.5 LeniaNDKC.py)

    Source code(tar.gz)
    Source code(zip)
    Lenia.v3.5.zip(29.53 MB)
PyJokes - Joking around with Python library pyjokes

Hi, it's Muhaimin again πŸ‘‹ This is something unorthodox but cool. Don't forget t

Muhaimin A. Salay Kanton 1 Feb 02, 2022
Neural Tangent Generalization Attacks (NTGA)

Neural Tangent Generalization Attacks (NTGA) ICML 2021 Video | Paper | Quickstart | Results | Unlearnable Datasets | Competitions | Citation Overview

Chia-Hung Yuan 34 Nov 25, 2022
A computational optimization project towards the goal of gerrymandering the results of a hypothetical election in the UK.

A computational optimization project towards the goal of gerrymandering the results of a hypothetical election in the UK.

Emma 1 Jan 18, 2022
Image-to-image regression with uncertainty quantification in PyTorch

Image-to-image regression with uncertainty quantification in PyTorch. Take any dataset and train a model to regress images to images with rigorous, distribution-free uncertainty quantification.

Anastasios Angelopoulos 25 Dec 26, 2022
MT-GAN-PyTorch - PyTorch Implementation of Learning to Transfer: Unsupervised Domain Translation via Meta-Learning

MT-GAN-PyTorch PyTorch Implementation of AAAI-2020 Paper "Learning to Transfer: Unsupervised Domain Translation via Meta-Learning" Dependency: Python

29 Oct 19, 2022
Athena is the only tool that you will ever need to optimize your portfolio.

Athena Portfolio optimization is the process of selecting the best portfolio (asset distribution), out of the set of all portfolios being considered,

Indrajit 1 Mar 25, 2022
Builds a LoRa radio frequency fingerprint identification (RFFI) system based on deep learning techiniques

This project builds a LoRa radio frequency fingerprint identification (RFFI) system based on deep learning techiniques.

20 Dec 30, 2022
Implementation for NeurIPS 2021 Submission: SparseFed

READ THIS FIRST This repo is an anonymized version of an existing repository of GitHub, for the AIStats 2021 submission: SparseFed: Mitigating Model P

2 Jun 15, 2022
The official repo for OC-SORT: Observation-Centric SORT on video Multi-Object Tracking. OC-SORT is simple, online and robust to occlusion/non-linear motion.

OC-SORT Observation-Centric SORT (OC-SORT) is a pure motion-model-based multi-object tracker. It aims to improve tracking robustness in crowded scenes

Jinkun Cao 325 Jan 05, 2023
Small-bets - Ergodic Experiment With Python

Ergodic Experiment Based on this video. Run this experiment with this command: p

Michael Brant 3 Jan 11, 2022
This is the official PyTorch implementation of our paper: "Artistic Style Transfer with Internal-external Learning and Contrastive Learning".

Artistic Style Transfer with Internal-external Learning and Contrastive Learning This is the official PyTorch implementation of our paper: "Artistic S

51 Dec 20, 2022
Code for `BCD Nets: Scalable Variational Approaches for Bayesian Causal Discovery`, Neurips 2021

This folder contains the code for 'Scalable Variational Approaches for Bayesian Causal Discovery'. Installation To install, use conda with conda env c

14 Sep 21, 2022
This is a simple backtesting framework to help you test your crypto currency trading. It includes a way to download and store historical crypto data and to execute a trading strategy.

You can use this simple crypto backtesting script to ensure your trading strategy is successful Minimal setup required and works well with static TP a

Andrei 154 Sep 12, 2022
Multiple-Object Tracking with Transformer

TransTrack: Multiple-Object Tracking with Transformer Introduction TransTrack: Multiple-Object Tracking with Transformer Models Training data Training

Peize Sun 537 Jan 04, 2023
✨✨✨An awesome open source toolbox for stereo matching.

OpenStereo This is an awesome open source toolbox for stereo matching. Supported Methods: BM SGM(T-PAMI'07) GCNet(ICCV'17) PSMNet(CVPR'18) StereoNet(E

Wang Qingyu 6 Nov 04, 2022
Making a music video with Wav2CLIP and VQGAN-CLIP

music2video Overview A repo for making a music video with Wav2CLIP and VQGAN-CLIP. The base code was derived from VQGAN-CLIP The CLIP embedding for au

Joel Jang | μž₯μš”μ—˜ 163 Dec 26, 2022
Demonstrates iterative FGSM on Apple's NeuralHash model.

apple-neuralhash-attack Demonstrates iterative FGSM on Apple's NeuralHash model. TL;DR: It is possible to apply noise to CSAM images and make them loo

Lim Swee Kiat 11 Jun 23, 2022
Automatic labeling, conversion of different data set formats, sample size statistics, model cascade

Simple Gadget Collection for Object Detection Tasks Automatic image annotation Conversion between different annotation formats Obtain statistical info

llt 4 Aug 24, 2022
Fast, flexible and easy to use probabilistic modelling in Python.

Please consider citing the JMLR-MLOSS Manuscript if you've used pomegranate in your academic work! pomegranate is a package for building probabilistic

Jacob Schreiber 3k Dec 29, 2022
Yolov5-opencv-cpp-python - Example of using ultralytics YOLO V5 with OpenCV 4.5.4, C++ and Python

yolov5-opencv-cpp-python Example of performing inference with ultralytics YOLO V

183 Jan 09, 2023