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) 2018-2020 The Plenpy 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.tar.gz (51.0 kB view details)

Uploaded Source

Built Distribution

lfcnn-0.2-py3-none-any.whl (98.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lfcnn-0.2.tar.gz
  • Upload date:
  • Size: 51.0 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.tar.gz
Algorithm Hash digest
SHA256 d6453fc396f4401b77724863c263e405605834b6347b33a6e526667c98baa1a4
MD5 66b8bc99a14f22f0d5d00b3af8175c01
BLAKE2b-256 0e202140b07cf80f5a3067db05a85e5ee18ead321ebd41361a504e2d880b7578

See more details on using hashes here.

File details

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

File metadata

  • Download URL: lfcnn-0.2-py3-none-any.whl
  • Upload date:
  • Size: 98.6 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-py3-none-any.whl
Algorithm Hash digest
SHA256 04c8edcc8b7a80fe67ab41abebcde9a617cb08b53dd8314e0b7900a1b090e585
MD5 cf9d00c438506174dd501254c0d835c6
BLAKE2b-256 7850e66967242ee1d82ee9254d2cf97be766299ca4fd852953783024146b688e

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