├── data
└── db
│ ├── timestamp.txt
│ ├── slr-panasonic.xml
│ ├── mil-tokina.xml
│ ├── slr-soligor.xml
│ ├── slr-hasselblad.xml
│ ├── slr-samsung.xml
│ ├── mil-pentax.xml
│ ├── slr-leica.xml
│ ├── mil-leica.xml
│ ├── contax.xml
│ ├── rf-leica.xml
│ ├── compact-kodak.xml
│ ├── slr-vivitar.xml
│ ├── slr-ricoh.xml
│ ├── slr-schneider.xml
│ ├── lensfun-database.dtd
│ ├── compact-sigma.xml
│ ├── 6x6.xml
│ └── compact-leica.xml
├── tools
├── calibration_webserver
│ ├── __init__.py
│ ├── calibration
│ │ ├── __init__.py
│ │ ├── templates
│ │ │ ├── 404.html
│ │ │ └── calibration
│ │ │ │ ├── success.html
│ │ │ │ ├── error.html
│ │ │ │ ├── pending.html
│ │ │ │ ├── base.html
│ │ │ │ ├── missing_exif.html
│ │ │ │ ├── good_bad_ugly.html
│ │ │ │ └── upload.html
│ │ ├── static
│ │ │ └── calibration
│ │ │ │ ├── images
│ │ │ │ ├── no_long_line.jpg
│ │ │ │ ├── too_far_away.jpg
│ │ │ │ └── good_test_picture.jpg
│ │ │ │ └── css
│ │ │ │ └── main.css
│ │ ├── urls.py
│ │ └── context_processors.py
│ ├── manage.py
│ ├── django.wsgi
│ ├── calibration_webserver.ini
│ ├── utils.py
│ ├── README.rst
│ ├── workflow.rst
│ ├── owncloud.py
│ └── settings.py
├── vagrant
│ ├── clean.sh
│ ├── buildpackages.sh
│ └── Vagrantfile
├── abi-compliance-check
│ ├── LF_tmp_new.xml
│ ├── LF_tmp_old.xml
│ └── run_check.sh
├── perspective_control
│ ├── testimages
│ │ ├── DSC02279.json
│ │ ├── DSC02275.png
│ │ ├── DSC02277.png
│ │ ├── DSC02278.png
│ │ ├── DSC02279.png
│ │ ├── DSC02280.png
│ │ ├── DSC02281.png
│ │ ├── DSC02384.png
│ │ ├── DSC02275.json
│ │ ├── DSC02277.json
│ │ ├── DSC02281.json
│ │ ├── DSC02384.json
│ │ ├── DSC02278.json
│ │ └── DSC02281_with_7_points.json
│ └── test_image.svg
├── check_database
│ ├── reformat_database.sh
│ ├── min_max_parameters.py
│ └── check_database.py
├── git-hooks
│ ├── post-commit
│ └── pre-commit
├── calibration_statistics
│ └── README.rst
├── calibrate
│ └── nd_correction.py
├── find_missing_cameras
│ └── find_missing_cameras.py
├── spline
│ └── spline.py
└── database-ng
│ └── transform_db.py
├── docs
├── mathjaxConfiguration.js
├── images
│ └── pc-examples.svg.gz
├── calibration_tutorial
│ ├── DSC03194.jpg
│ ├── hugin_half.png
│ ├── vignetting_setup.jpg
│ ├── vignetting_setup_tn.jpg
│ └── lens.cpp.patch
├── lensfun-manual.css
├── man
│ ├── README
│ ├── g-lensfun-update-data.1.rst
│ ├── lensfun-update-data.1.rst
│ ├── lensfun-convert-lcp.1.rst
│ └── lensfun-add-adapter.1.rst
├── footer.html
├── CMakeLists.txt
├── mounts.txt
└── example
│ └── example.c
├── libs
├── getopt
│ ├── CMakeLists.txt
│ └── getopt.h
├── CMakeLists.txt
└── lensfun
│ ├── lensfun.pc.cmake
│ ├── windows
│ └── mathconstants.h
│ ├── CMakeLists.txt
│ ├── mod-color-sse.cpp
│ ├── camera.cpp
│ └── mount.cpp
├── apps
├── g-lensfun-update-data
├── setup.py.in
├── CMakeLists.txt
├── lensfun
│ └── __init__.py.in
└── lenstool
│ ├── auxfun.h
│ ├── rgbpixel.h
│ └── image.h
├── tests
├── common_code.hpp
├── README.md
├── test_lffuzzystrcmp.cpp
├── test_modifier_coord_tiny_image.cpp
├── test_modifier_coord_tiny_image_old.cpp
├── test_database_old.cpp
├── test_modifier_performance.cpp
├── test_modifier_coord_centering.cpp
├── test_lens.cpp
├── test_modifier_coord_centering_old.cpp
├── test_database.cpp
├── test_modifier_coord_scale.cpp
├── test_modifier.cpp
├── test_modifier_coord_scale_old.cpp
└── test_modifier_old.cpp
├── cmake
└── modules
│ ├── toolchain_win32.cmake
│ └── FindGLIB2.cmake
├── .github
└── workflows
│ └── cmake.yml
├── include
└── lensfun
│ └── config.h.in.cmake
└── appveyor.yml
/data/db/timestamp.txt:
--------------------------------------------------------------------------------
1 | 1577948414
2 |
--------------------------------------------------------------------------------
/tools/calibration_webserver/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/tools/calibration_webserver/calibration/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/tools/vagrant/clean.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | rm -Rf ../../lensfun* ../../liblensfun*
4 |
--------------------------------------------------------------------------------
/docs/mathjaxConfiguration.js:
--------------------------------------------------------------------------------
1 | MathJax.Hub.Config({
2 | messageStyle: "none"
3 | });
4 |
--------------------------------------------------------------------------------
/docs/images/pc-examples.svg.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Leonidas-from-XIV/lensfun/master/docs/images/pc-examples.svg.gz
--------------------------------------------------------------------------------
/docs/calibration_tutorial/DSC03194.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Leonidas-from-XIV/lensfun/master/docs/calibration_tutorial/DSC03194.jpg
--------------------------------------------------------------------------------
/docs/calibration_tutorial/hugin_half.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Leonidas-from-XIV/lensfun/master/docs/calibration_tutorial/hugin_half.png
--------------------------------------------------------------------------------
/tools/abi-compliance-check/LF_tmp_new.xml:
--------------------------------------------------------------------------------
1 |
Page not found.
5 | {% endblock %} 6 | -------------------------------------------------------------------------------- /tools/perspective_control/testimages/DSC02275.json: -------------------------------------------------------------------------------- 1 | [ 2 | "DSC02275.png", 3 | 50.89, 4 | 1.534, 5 | 1, 6 | [503, 1063, 509, 1066], 7 | [150, 197, 860, 759] 8 | ] 9 | -------------------------------------------------------------------------------- /tools/perspective_control/testimages/DSC02277.json: -------------------------------------------------------------------------------- 1 | [ 2 | "DSC02277.png", 3 | 50.89, 4 | 1.534, 5 | 1, 6 | [145, 208, 748, 850], 7 | [1060, 666, 668, 1060] 8 | ] 9 | -------------------------------------------------------------------------------- /tools/perspective_control/testimages/DSC02281.json: -------------------------------------------------------------------------------- 1 | [ 2 | "DSC02281.png", 3 | 50.89, 4 | 1.534, 5 | 1, 6 | [661, 594, 461, 426, 530], 7 | [501, 440, 442, 534, 562] 8 | ] 9 | -------------------------------------------------------------------------------- /tools/perspective_control/testimages/DSC02384.json: -------------------------------------------------------------------------------- 1 | [ 2 | "DSC02384.png", 3 | 21, 4 | 1.534, 5 | 1, 6 | [1043, 903, 1105, 1300, 1043, 1300], 7 | [947, 832, 822, 930, 947, 930] 8 | ] 9 | -------------------------------------------------------------------------------- /tools/calibration_webserver/calibration/static/calibration/images/no_long_line.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leonidas-from-XIV/lensfun/master/tools/calibration_webserver/calibration/static/calibration/images/no_long_line.jpg -------------------------------------------------------------------------------- /tools/calibration_webserver/calibration/static/calibration/images/too_far_away.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leonidas-from-XIV/lensfun/master/tools/calibration_webserver/calibration/static/calibration/images/too_far_away.jpg -------------------------------------------------------------------------------- /tools/perspective_control/testimages/DSC02278.json: -------------------------------------------------------------------------------- 1 | [ 2 | "DSC02278.png", 3 | 50.89, 4 | 1.534, 5 | 1, 6 | [615, 264, 1280, 813, 615, 1280, 264, 813], 7 | [755, 292, 622, 220, 755, 622, 292, 220] 8 | ] 9 | -------------------------------------------------------------------------------- /tools/perspective_control/testimages/DSC02281_with_7_points.json: -------------------------------------------------------------------------------- 1 | [ 2 | "DSC02281.png", 3 | 50.89, 4 | 1.534, 5 | 1, 6 | [661, 594, 461, 426, 530, 302, 815], 7 | [501, 440, 442, 534, 562, 491, 279] 8 | ] 9 | -------------------------------------------------------------------------------- /tools/calibration_webserver/calibration/static/calibration/images/good_test_picture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Leonidas-from-XIV/lensfun/master/tools/calibration_webserver/calibration/static/calibration/images/good_test_picture.jpg -------------------------------------------------------------------------------- /tools/vagrant/buildpackages.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | export LC_ALL=en_US.UTF-8 5 | 6 | if [ ! -f .vagrant/machines/default/virtualbox/id ] 7 | then 8 | vagrant up 9 | fi 10 | vagrant ssh -c "cd lensfun ; ./buildpackages.sh" 11 | -------------------------------------------------------------------------------- /docs/lensfun-manual.css: -------------------------------------------------------------------------------- 1 | .image { float: right; margin-left: 1em; margin-bottom: 2ex } 2 | .image-landscape img { width: 18em; height: 12em } 3 | .image-portrait43 img { height: 17.33em; width: 13em } 4 | .image-portrait43 .caption { max-width: 13em } 5 | h1, h2, h3, h4, h5, h6, hr.footer { clear: both } 6 | -------------------------------------------------------------------------------- /tools/calibration_webserver/manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import os 4 | import sys 5 | 6 | if __name__ == "__main__": 7 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings") 8 | 9 | from django.core.management import execute_from_command_line 10 | 11 | execute_from_command_line(sys.argv) 12 | -------------------------------------------------------------------------------- /tools/calibration_webserver/django.wsgi: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | import os 5 | import sys 6 | 7 | sys.path.append(os.path.dirname(__file__)) 8 | 9 | os.environ["DJANGO_SETTINGS_MODULE"] = "settings" 10 | 11 | from django.core.wsgi import get_wsgi_application 12 | application = get_wsgi_application() 13 | -------------------------------------------------------------------------------- /apps/setup.py.in: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | """This setup script installs the “lensfun” package.""" 5 | 6 | from distutils.core import setup 7 | 8 | 9 | setup(name="lensfun", 10 | version="${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_MICRO}", 11 | package_dir={"": r"${PY_PACKAGE_DIR}"}, 12 | packages=["lensfun"]) 13 | -------------------------------------------------------------------------------- /tools/calibration_webserver/calibration/templates/calibration/success.html: -------------------------------------------------------------------------------- 1 | {% extends "calibration/base.html" %} 2 | 3 | {% block content %} 4 |Your upload has been successfully processed (i.e., unpacked and 7 | EXIF-tagged). {{ admin_name }} will 8 | contact you as soon as he has analysed the pictures.
9 | {% endblock %} 10 | -------------------------------------------------------------------------------- /docs/man/README: -------------------------------------------------------------------------------- 1 | The man pages are created from restructuredText files (extension .rst). So 2 | please do not edit the man pages (extension .1). Edit the rst files instead an 3 | call 4 | 5 | rst2man xxx.1.rst > xxx.1 6 | 7 | rst2man is part of the package python3-docutils. 8 | 9 | The .1 file are included for convenience into the repository. They may be 10 | removed someday, possiby along with this README file. 11 | -------------------------------------------------------------------------------- /tools/calibration_webserver/calibration/templates/calibration/error.html: -------------------------------------------------------------------------------- 1 | {% extends "calibration/base.html" %} 2 | 3 | {% block content %} 4 |The following error occured after your upload:
7 | 8 |{{ error }}
9 |
10 | If you have questions regarding this, 11 | contact {{ admin_name }}.
12 | 13 | {% endblock %} 14 | -------------------------------------------------------------------------------- /tools/check_database/reformat_database.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | SCRIPT=$(realpath -e "$0") 4 | SCRIPTPATH=$(dirname "$SCRIPT") 5 | 6 | for A in "$SCRIPTPATH"/../../data/db/*.xml 7 | do 8 | XMLLINT_INDENT=" " xmllint --format --encode utf-8 "$A" > /tmp/lensfun_xmllint.xml 9 | sed 's+\( \(lens\|mount\|camera\)>\)+\1\n+;s/\(Your upload is now being processed. This may take a couple of minutes. If 7 | something wents wrong, you get an email. 8 | Otherwise, {{ admin_name }} will 9 | contact you as soon as he has analysed the pictures.
10 | 11 |Thank you for your upload!
12 | 13 | {% endblock %} 14 | -------------------------------------------------------------------------------- /data/db/slr-panasonic.xml: -------------------------------------------------------------------------------- 1 | 2 |
17 | $doxygenversion
18 |
19 |
20 |