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)
The 1st Place Solution of the Facebook AI Image Similarity Challenge (ISC21) : Descriptor Track.

ISC21-Descriptor-Track-1st The 1st Place Solution of the Facebook AI Image Similarity Challenge (ISC21) : Descriptor Track. You can check our solution

lyakaap 75 Jan 08, 2023
Use AI to generate a optimized stock portfolio

Use AI, Modern Portfolio Theory, and Monte Carlo simulation's to generate a optimized stock portfolio that minimizes risk while maximizing returns. Ho

Greg James 30 Dec 22, 2022
Statsmodels: statistical modeling and econometrics in Python

About statsmodels statsmodels is a Python package that provides a complement to scipy for statistical computations including descriptive statistics an

statsmodels 8.1k Jan 02, 2023
SingleVC performs any-to-one VC, which is an important component of MediumVC project.

SingleVC performs any-to-one VC, which is an important component of MediumVC project. Here is the official implementation of the paper, MediumVC.

谷下雨 26 Dec 28, 2022
Examples of using f2py to get high-speed Fortran integrated with Python easily

f2py Examples Simple examples of using f2py to get high-speed Fortran integrated with Python easily. These examples are also useful to troubleshoot pr

Michael 35 Aug 21, 2022
Code for weakly supervised segmentation of a single class

SingleClassRL Implementation of weak single object segmentation from paper "Regularized Loss for Weakly Supervised Single Class Semantic Segmentation"

16 Nov 14, 2022
Speech Separation Using an Asynchronous Fully Recurrent Convolutional Neural Network

Speech Separation Using an Asynchronous Fully Recurrent Convolutional Neural Network This repository is the official implementation of Speech Separati

Kai Li (ζŽε‡―) 116 Nov 09, 2022
Find the Heart simple Python Game

This is a simple Python game for finding a heart emoji. There is a 3 x 3 matrix in which a heart emoji resides. The location of the heart is randomized and is not revealed. The player must guess the

p.katekomol 1 Jan 24, 2022
Ludwig is a toolbox that allows to train and evaluate deep learning models without the need to write code.

Translated in πŸ‡°πŸ‡· Korean/ Ludwig is a toolbox that allows users to train and test deep learning models without the need to write code. It is built on

Ludwig 8.7k Dec 31, 2022
Cluttered MNIST Dataset

Cluttered MNIST Dataset A setup script will download MNIST and produce mnist/*.t7 files: luajit download_mnist.lua Example usage: local mnist_clutter

DeepMind 50 Jul 12, 2022
phylotorch-bito is a package providing an interface to BITO for phylotorch

phylotorch-bito phylotorch-bito is a package providing an interface to BITO for phylotorch Dependencies phylotorch BITO Installation Get the source co

Mathieu Fourment 2 Sep 01, 2022
Implementations of LSTM: A Search Space Odyssey variants and their training results on the PTB dataset.

An LSTM Odyssey Code for training variants of "LSTM: A Search Space Odyssey" on Fomoro. Check out the blog post. Training Install TensorFlow. Clone th

Fomoro AI 95 Apr 13, 2022
KAPAO is an efficient multi-person human pose estimation model that detects keypoints and poses as objects and fuses the detections to predict human poses.

KAPAO (Keypoints and Poses as Objects) KAPAO is an efficient single-stage multi-person human pose estimation model that models keypoints and poses as

Will McNally 664 Dec 30, 2022
Code repository for Self-supervised Structure-sensitive Learning, CVPR'17

Self-supervised Structure-sensitive Learning (SSL) Ke Gong, Xiaodan Liang, Xiaohui Shen, Liang Lin, "Look into Person: Self-supervised Structure-sensi

Clay Gong 219 Dec 29, 2022
Betafold - AlphaFold with tunings

BetaFold We (hegelab.org) craeted this standalone AlphaFold (AlphaFold-Multimer,

2 Aug 11, 2022
Scheme for training and applying a label propagation framework

Factorisation-based Image Labelling Overview This is a scheme for training and applying the factorisation-based image labelling (FIL) framework. Some

Wellcome Centre for Human Neuroimaging 2 Dec 17, 2021
TransFGU: A Top-down Approach to Fine-Grained Unsupervised Semantic Segmentation

TransFGU: A Top-down Approach to Fine-Grained Unsupervised Semantic Segmentation Zhaoyun Yin, Pichao Wang, Fan Wang, Xianzhe Xu, Hanling Zhang, Hao Li

DamoCV 25 Dec 16, 2022
Breaking Shortcut: Exploring Fully Convolutional Cycle-Consistency for Video Correspondence Learning

Breaking Shortcut: Exploring Fully Convolutional Cycle-Consistency for Video Correspondence Learning Yansong Tang *, Zhenyu Jiang *, Zhenda Xie *, Yue

Zhenyu Jiang 12 Nov 16, 2022
Dataloader tools for language modelling

Installation: pip install lm_dataloader Design Philosophy A library to unify lm dataloading at large scale Simple interface, any tokenizer can be inte

5 Mar 25, 2022
HDR Video Reconstruction: A Coarse-to-fine Network and A Real-world Benchmark Dataset (ICCV 2021)

Code for HDR Video Reconstruction HDR Video Reconstruction: A Coarse-to-fine Network and A Real-world Benchmark Dataset (ICCV 2021) Guanying Chen, Cha

Guanying Chen 64 Nov 19, 2022