{"id":13791317,"url":"https://github.com/hahnec/plenopticam","last_synced_at":"2025-04-05T11:06:52.791Z","repository":{"id":37269816,"uuid":"178614424","full_name":"hahnec/plenopticam","owner":"hahnec","description":"Light-field imaging application for plenoptic cameras","archived":false,"fork":false,"pushed_at":"2024-03-20T01:11:57.000Z","size":237768,"stargazers_count":218,"open_issues_count":6,"forks_count":37,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-29T10:05:08.860Z","etag":null,"topics":["application","calibration","depth","field","image-processing","lens","light","light-field","lightfield","lytro","lytro-images","micro","mla","plenoptic","plenoptic-rendering-engine","refocusing","scheimpflug","software","sub-aperture","toolbox"],"latest_commit_sha":null,"homepage":"http://www.plenoptic.info","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hahnec.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.rst","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["https://paypal.me/CHahne"]}},"created_at":"2019-03-30T21:43:34.000Z","updated_at":"2025-03-23T20:28:45.000Z","dependencies_parsed_at":"2024-01-16T12:48:56.695Z","dependency_job_id":"67e4d961-01a2-49e2-bb15-e513b610e1c5","html_url":"https://github.com/hahnec/plenopticam","commit_stats":{"total_commits":1493,"total_committers":4,"mean_commits":373.25,"dds":0.0321500334896182,"last_synced_commit":"eb776339e0677463aa876f607ebdad8bd7d56bb7"},"previous_names":[],"tags_count":32,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hahnec%2Fplenopticam","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hahnec%2Fplenopticam/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hahnec%2Fplenopticam/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hahnec%2Fplenopticam/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hahnec","download_url":"https://codeload.github.com/hahnec/plenopticam/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247325693,"owners_count":20920714,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["application","calibration","depth","field","image-processing","lens","light","light-field","lightfield","lytro","lytro-images","micro","mla","plenoptic","plenoptic-rendering-engine","refocusing","scheimpflug","software","sub-aperture","toolbox"],"created_at":"2024-08-03T22:00:58.736Z","updated_at":"2025-04-05T11:06:52.765Z","avatar_url":"https://github.com/hahnec.png","language":"Python","funding_links":["https://paypal.me/CHahne"],"categories":["Algorithms with available code"],"sub_categories":["Other"],"readme":"===========\nPlenoptiCam\n===========\n.. A light field photography application (macOS_ or Win_) for computational change of perspective view and synthetic focus based on a Standard Plenoptic Camera (SPC).\n\nDescription\n===========\n\n*PlenoptiCam* comes as a cross-platform, open-source software (see `releases page \u003creleases_\u003e`_) for scientific light field computation with few dependencies and a lean graphical user interface.\nRaw exposures from a plenoptic camera require four-dimensional image alignment in order to be decoded as a light field. Provided software addresses this by its ability to calibrate an image taken by a plenoptic camera and extract sub-aperture images or synthetically focused photographs.\nThis application is meant for researchers, developers, beginners and other fiddlers who like to experiment with light field technology. Its scope comprises custom-types of plenoptic cameras and is thus not limited to Lytro's image data.\n\n|release| |license| |coverage| |downloads| |pypi| |paper|\n\n|actions| \n\n|colab|\n\nResults\n=======\n\nDatesets\n--------\n\n.. list-table::\n   :widths: 8 8\n   :header-rows: 1\n   :stub-columns: 0\n\n   * - |OpEx|_\n     - |INRIA|_\n   * - |opex_demo|\n     - |inria_demo|\n   * - Custom-built (png, jpg, bmp files)\n     - Lytro Illum (lfp, lfr, tar files)\n   * - |binder|\n     - |colab|\n\nColor equalization\n------------------\n\n.. list-table::\n   :widths: 4 4 4\n   :header-rows: 1\n   :stub-columns: 0\n\n   * - Before\n     - Target\n     - After\n   * - |src_lfp|\n     - |ref_lfp|\n     - |res_lfp|\n\nDepth\n-----\n.. list-table::\n   :widths: 8 8\n   :header-rows: 1\n   :stub-columns: 0\n\n   * - 2-D depth map\n     - 3-D point cloud\n   * - |depth_demo|\n     - |depth_anim|\n   * - pfm file format\n     - ply file format\n\nInstallation\n============\n\n* executable:\n    1. download a bundled app found at the `releases page \u003creleases_\u003e`_\n    2. run installer / extract archive\n    3. work around |WinExeDoc|_ or |MacAppDoc|_ issue\n        - macOS Big Sur requires to set ``$ xattr -c /Applications/plenopticam.app`` (|BigSurDoc|_)\n    4. run executable (may take a while on first start-up)\n    5. user interface will show up (see below)\n\n|\n\n* via pip:\n    1. install with ``$ python3 -m pip install plenopticam``\n    2. type ``$ plenopticam -g`` to the command line once installation finished\n\n|\n\n* from source:\n    1. install Python from https://www.python.org/\n    2. download the source_ using ``$ git clone https://github.com/hahnec/plenopticam.git``\n    3. go to the root directory ``$ cd plenopticam``\n    4. load other packages ``$ python3 -m pip install -r requirements.txt``\n    5. install with ``$ sudo python3 setup.py install`` from root directory\n    6. if installation ran smoothly, enter ``$ sudo plenopticam -g`` to the command line\n\nUsage\n=====\n\nApplication\n-----------\n\n|gui|\n\n.. |gui| raw:: html\n\n    \u003cp align=\"center\"\u003e\n        \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/gui_linux.png\" width=\"66%\"\u003e\n    \u003cp\u003e\n\n.. note::\n    \"Pick folder\" checkbox is useful to point to a directory containing calibration archive files of Lytro Illum cameras.\n    In such case, the white image calibration file corresponding to the Lytro Illum image is found automatically.\n\n|\n\n0. Download a dataset if you don't call a plenoptic camera your own, e.g.:\n    - |OpEx|_\n    - |INRIA|_\n\n|\n\n1. Choose your light field photograph using upper **Browse** button. Supported file types are:\n    - *bmp*, *jpg* or *png* file from custom-built plenoptic camera\n    - *lfr*, *lfp* and *raw* files from Lytro Illum\n\n|\n\n2. Choose calibration source data using lower **Browse** button. Supported file types are:\n    - *bmp*, *jpg* or *png* file from custom-built plenoptic camera\n    - *caldata-XXX.tar* archive or respective *raw* file from Lytro Illum\n    - tick \"Pick folder\" and point to a directory containing all *tar* files or extracted folders (calibration file will be found automatically)\n\n.. note::\n    If you are `using your own Lytro Illum \u003chttps://hahnec.github.io/plenopticam/build/html/guide.html#using-your-own-lytro-illum\u003e`__ camera, you first need to extract camera calibration data as a *tar*-archive. To do so, please follow the `instructions guide \u003chttps://hahnec.github.io/plenopticam/build/html/guide.html\u003e`__.\n\n|\n\n3. Adjust configuration using **Settings** button:\n    - *Micro image patch size*: default is estimated maximum\n    - *Refocusing range*: range for shift and sum synthesis\n    - *Force re-calibration*: option to re-run calibration\n    - *Automatic white balance*: option for white balancing\n    - *Refocus refinement*: option for sub-pixel precise refocusing\n    - *Scheimpflug*: option to mimic tilted sensor\n\n|\n\n4. Press **Process** to start the computation.\n\n|\n\nCommand Line\n------------\n\nFor computing a stack of light-field images, it may be convenient to iterate through them. This can be done by:\n\n``$ sudo plenopticam -f '/Users/../Folder/' -c 'Users/../caldata-B5144000XXX.tar'``\n\nwith necessary write privileges on Unix Systems. A Windows-equivalent command would be as follows:\n\n``plenopticam --file=\"C:\\\\..\\\\Folder\\\\\" --cali=\"C:\\\\..\\\\caldata-B5144000XXX.tar\"``\n\nMore information on optional arguments can be found using the help parameter\n\n``plenopticam -h``\n\nResults can be found inside a folder named after your light field file which is located in the same directory path.\nDepending on provided files and settings, your results folder may contain the following data:\n\n    - sub-aperture images (see *viewpoints_xxx* folder) and view animation given as gif\n    - refocused images (see *refo_xxx* folder) and refocus animation given as gif\n    - depth map given as pfm and ply file\n    - raw image file given as tiff\n    - aligned light field as pkl (pickle) file\n    - light field metadata as json file (for Lytro files only)\n    - scheimpflug focus files\n\nAPI usage\n---------\n\nUsage of PlenoptiCam modules is demonstrated in the following Jupyter notebooks:\n\n`1. Calibration Demo \u003chttps://github.com/hahnec/plenopticam/blob/master/examples/01_calib_demo.ipynb\u003e`__\n\n`2. Alignment Demo \u003chttps://github.com/hahnec/plenopticam/blob/master/examples/02_align_demo.ipynb\u003e`__\n\n`3. Extraction Demo \u003chttps://github.com/hahnec/plenopticam/blob/master/examples/03_xtract_demo.ipynb\u003e`__\n\n`4. Lytro Illum Demo \u003chttps://github.com/hahnec/plenopticam/blob/master/examples/04_illum_demo.ipynb\u003e`__\n\nCitation\n========\n\n.. code-block:: BibTeX\n\n    @ARTICLE{plenopticam,\n        author={Hahne, Christopher and Aggoun, Amar},\n        journal={IEEE Transactions on Image Processing},\n        title={PlenoptiCam v1.0: A Light-Field Imaging Framework},\n        year={2021},\n        volume={30},\n        number={},\n        pages={6757-6771},\n        doi={10.1109/TIP.2021.3095671}\n    }\n\nFurther information\n===================\n\n* check out PlenoptiCam's partner project PlenoptiSign_ capable of estimating metric light field geometries\n* visit `plenoptic.info \u003chttp://www.plenoptic.info\u003e`__ for technical details, animated figures and theoretical backgrounds\n\n.. Image substitutions\n\n.. |release| image:: https://img.shields.io/github/release/hahnec/plenopticam.svg?style=flat-square\n    :target: https://github.com/hahnec/plenopticam/releases/\n    :alt: release\n\n.. |license| image:: https://img.shields.io/badge/License-GPL%20v3.0-orange.svg?style=flat-square\n    :target: https://www.gnu.org/licenses/gpl-3.0.en.html\n    :alt: License\n\n.. |code| image:: https://img.shields.io/github/languages/code-size/hahnec/plenopticam.svg?style=flat-square\n    :target: https://github.com/hahnec/plenopticam/archive/master.zip\n    :alt: Code size\n\n.. |repo| image:: https://img.shields.io/github/repo-size/hahnec/plenopticam.svg?style=flat-square\n    :target: https://github.com/hahnec/plenopticam/archive/master.zip\n    :alt: Repo size\n\n.. |downloads| image:: https://img.shields.io/github/downloads/hahnec/plenopticam/total?label=Release%20downloads\u0026style=flat-square\n    :target: https://github.com/hahnec/plenopticam/releases/\n    :alt: Release Downloads\n\n.. |travis| image:: https://img.shields.io/travis/com/hahnec/plenopticam/master?style=flat-square\n    :target: https://travis-ci.com/github/hahnec/plenopticam\n\n.. |actions| image:: https://github.com/hahnec/plenopticam/workflows/PlenoptiCam's%20CI%20Pipeline/badge.svg?event=push\u0026style=flat-square\n    :target: https://github.com/hahnec/plenopticam/actions\n\n.. |coverage| image:: https://img.shields.io/coveralls/github/hahnec/plenopticam?style=flat-square\n    :target: https://coveralls.io/github/hahnec/plenopticam\n\n.. |pypi| image:: https://img.shields.io/pypi/dm/plenopticam?label=PyPI%20downloads\u0026style=flat-square\n    :target: https://pypi.org/project/plenopticam/\n    :alt: PyPI Downloads\n\n.. |binder| image:: https://img.shields.io/badge/launch-binder-E66581.svg?style=flat-square\u0026logo=data:image/png;base64,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\n    :target: https://mybinder.org/v2/gh/hahnec/plenopticam/master?urlpath=lab\n    :width: 175\n\n.. |colab| image:: https://colab.research.google.com/assets/colab-badge.svg?style=flat-square\n    :target: https://colab.research.google.com/github/hahnec/plenopticam/blob/master/examples/04_illum_demo.ipynb\n    :width: 175\n\n.. |paper| image:: http://img.shields.io/badge/paper-arxiv.2010.11687-red.svg?style=flat-square\n    :target: https://arxiv.org/pdf/2010.11687.pdf\n    :alt: arXiv link\n\n.. |depth_anim| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/depth_anim.gif\"\u003e\n\n.. |depth_demo| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/depth_demo_lores.png\" max-width:\"100%\"\u003e\n\n.. |pflug_demo| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/pflug_demo_lores.png\" max-width:\"100%\"\u003e\n\n.. |views_demo| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/views_demo_lores.gif\" max-width:\"100%\"\u003e\n\n.. |refoc_demo| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/refoc_demo_lores.gif\" max-width:\"100%\"\u003e\n\n.. |src_lfp| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/color-matcher/master/tests/data/view_animation_7px.gif\" max-height=\"200px\"\u003e\n\n.. |ref_lfp| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/color-matcher/master/tests/data/bee_2.png\" max-height=\"200px\"\u003e\n\n.. |res_lfp| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/color-matcher/master/tests/data/view_animation_7px_hm-mkl-hm.gif\" max-height=\"200px\"\u003e\n\n.. |opex_demo| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/demo_custom.gif\" height=\"187px\" max-width:\"100%\"\u003e\n\n.. |inria_demo| raw:: html\n\n    \u003cimg src=\"https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/img/demo_illum.gif\" height=\"187px\" max-width:\"100%\"\u003e\n\n.. |UoB| raw:: html\n\n    \u003cimg src=\"https://3tkh0x1zl0mb1ta92c2mrvv2-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/LO_KukriGB_Universities_Bedfordshire.png\" width=\"70px\"\u003e\n\n.. |EUFramework| raw:: html\n\n    \u003cimg src=\"http://www.gsa.europa.eu/sites/default/files/Seventh_Framework_Programme_logo.png\" width=\"100px\"\u003e\n\n.. |Hahne| raw:: html\n\n    \u003cimg src=\"http://www.christopherhahne.de/images/about_alt.jpg\" width=\"15%\"\u003e\n\n.. |br| raw:: html\n\n    \u003cbr /\u003e\n\n.. Hyperlink aliases\n\n.. _source: https://github.com/hahnec/plenopticam/archive/master.zip\n.. _macOS: https://github.com/hahnec/plenopticam/releases/download/v0.9.3-beta/plenopticam_0.9.3.dmg\n.. _Win: https://github.com/hahnec/plenopticam/releases/download/v0.9.3-beta/plenopticam_0.9.3.msi\n.. _Linux: https://github.com/hahnec/plenopticam/releases/download/v0.9.3-beta/plenopticam_0.9.3.tar.gz\n.. _PlenoptiSign: https://github.com/hahnec/plenoptisign/\n.. _releases: https://github.com/hahnec/plenopticam/releases/\n\n.. |WinExeDoc| replace:: **Windows protection**\n.. _WinExeDoc: https://stackoverflow.com/a/65488937\n\n.. |MacAppDoc| replace:: **macOS unidentified developer**\n.. _MacAppDoc: https://osxdaily.com/2015/05/04/disable-gatekeeper-command-line-mac-osx/\n\n.. |BigSurDoc| replace:: **see here**\n.. _BigSurDoc: https://stackoverflow.com/a/67975297\n\n.. |OpEx| replace:: **OpEx dataset**\n.. _OpEx: https://ndownloader.figshare.com/files/5201452\n\n.. |INRIA| replace:: **INRIA dataset**\n.. _INRIA: https://www.irisa.fr/temics/demos/IllumDatasetLF/index.html\n\n.. |Stanford| replace:: **Stanford dataset**\n.. _Stanford: http://lightfields.stanford.edu/mvlf/\n\n.. |IllumTar| replace:: *using your own Illum data*\n.. _IllumTar: https://raw.githubusercontent.com/hahnec/plenopticam/master/docs/build/html/guide.html","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhahnec%2Fplenopticam","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhahnec%2Fplenopticam","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhahnec%2Fplenopticam/lists"}