Skip to main content

A TensorFlow framework for light field CNNs.

Project description

lfcnn - A TensorFlow framework for light field CNNs

build status coverage report PyPI PyPI PyPI

Image

License and Usage

This software is licensed under the GNU GPLv3 license (see below).

If you use this software in your scientific research, please cite our paper:

Not yet available. Please check back later.

Installation

It is recommended to use Conda to setup a new environment with tensorflow and GPU support. To install with GPU support, run

conda create -n lfcnn python=3.8 tensorflow-gpu=2.2 tensorflow numpy scipy imageio h5py cudnn cudatoolkit
conda activate lfcnn

Then, install the provided package using pip:

pip install lfcnn

Optional dependencies

Optionally, for some of lfcnn's features, install the following:

  • matplotlib (via conda or pip)
  • sacred (via pip)
  • pymongo (via conda or pip)
  • mdbh (via pip)

Installation on Windows

LFCNN is mostly compatible with all TF versions TensorFlow >= 2.0, however there is a bug in tf.keras that causes OOMs with data generators (which LFCNN uses) and multithreading and -processing. Therefore, we specify tensorflow >= 2.2 as a dependency, for which this bug has been resolved.

However, as of June 2020, TF 2.2 is not released on Anaconda for Windows. So for Windows, it is necessary to install TF via pip. However, installation of the compatible cuDNN and CUDA should still be performed via conda for simplicity. To setup the new environment with the correct CUDA and cuDNN versions, run

conda create -n lfcnn python=3.8 numpy scipy imageio h5py cudnn=7.6.5 cudatoolkit=10.1
conda activate lfcnn
pip install tensorflow==2.2 tensorflow-gpu==2.2

Furthermore, the Visual C++ redistributable has to be installed on Windows.

Finally, install LFCNN via pip as usual:

pip install lfcnn

Testing

You can manually run the tests using pytest:

$ pytest <path-to-lfcnn>/test/

Uninstallation

Uninstall lfcnn using

$ pip uninstall lfcnn

Contribute

If you are interested in contributing to lfcnn, feel free to create an issue or fork the project and submit a merge request. As this project is still undergoing restructuring and extension, help is always welcome!

For Programmers

Please stick to the PEP 8 Python coding styleguide.

The docstring coding style of the reStructuredText follows the googledoc style.

License

Copyright (C) 2020 The LFCNN Authors

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

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

lfcnn-0.2.1.tar.gz (51.4 kB view details)

Uploaded Source

Built Distribution

lfcnn-0.2.1-py3-none-any.whl (99.0 kB view details)

Uploaded Python 3

File details

Details for the file lfcnn-0.2.1.tar.gz.

File metadata

  • Download URL: lfcnn-0.2.1.tar.gz
  • Upload date:
  • Size: 51.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for lfcnn-0.2.1.tar.gz
Algorithm Hash digest
SHA256 b2a4c02e00b002067b6592bb863cfda8d349864ac4342383e1a66f873a904e20
MD5 3b2b93c9e1e55d0b85226e82caaaf030
BLAKE2b-256 80d7c044a89675d82a981bf5f7d1c2fcc8b2e0c4b069012fad5a5d6d460e79a3

See more details on using hashes here.

File details

Details for the file lfcnn-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: lfcnn-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 99.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for lfcnn-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5d8ee08e7896b9b94a89faf06c66c1872b589751bf32b69e4e78efe268abfceb
MD5 b07713fdd6e268252cc41baee7997b73
BLAKE2b-256 b0397881f8d1935d71d97e85edc76fb8fdace3d214a7a41f9ce46458b4ac9650

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