Skip to content

Plans for Updating Database with Missing Camera/Lens Profiles and Integration with Adobe LCP Files #61

@Code-dogcreatior

Description

@Code-dogcreatior

Hello Lensfun maintainers,

First off, thank you for the excellent lensfunpy package! It's a fantastic Python wrapper around Lensfun, providing easy access to automatic lens correction (distortion, vignetting, chromatic aberration) for various camera systems like Canon, Nikon, Sony, etc. I've been using it successfully in a photo processing tool, and it integrates smoothly with libraries like OpenCV for image remapping.

However, I have a couple of questions that might help improve lensfunpy's ecosystem and make it more comprehensive for users who rely on commercial profile databases (e.g., Adobe Lightroom profiles).

Question 1: Database Completeness and Updates
I've noticed that the Lensfun database doesn't yet include profiles for some newer camera/lens combinations. For example:

Some Canon EOS R-series bodies (e.g., EOS R5c or recent RF lenses).
Specific Sony FE lenses (e.g., FE 24-70mm F2.8 GM II).
Third-party lenses that might not be fully modeled yet.
Are there plans to regularly update the Lensfun database with newer camera/lens profiles? If so:

What is the typical update cycle (e.g., quarterly or based on community contributions)?
How can users contribute by submitting profiles (e.g., via tool calibration or sharing measurement data)?
Is there a priority list for which systems/manufacturers get updated first?
Any insights into how the database is sourced (e.g., reverse-engineering from manufacturer data or community measurements) would also be helpful for understanding potential gaps.

Question 2: Integration with Adobe LCP Files
Many photographers use Adobe Photoshop/Lightroom's Lens Correction Profiles (LCP files), which are XML-based and contain calibration data (e.g., distortion parameters like A, B, C coefficients, vignetting curvers, TCA corrections).

Is there any interest or existing plans to integrate support for reading/parsing Adobe LCP files as an alternative to the native Lensfun database? This could be beneficial because:

Adobe provides profiles for hundreds of lenses that might not be in Lensfun yet.
Users could import their own LCP files (e.g., from camera manufacturers or third parties) directly into lensfunpy.
It would bridge the gap for professional workflows where LCP files are standardized.
Possible implementation ideas:

Add a method like db.load_adobe_lcp(lcp_file_path) that parses LCP XML and creates a Lens object.
Support for interpolation between LCP focal lengths/apertures, similar to existing interpolation in Lensfun.
Ensure compatibility with the current API (e.g., reusing Modifier class for correction).
I've seen some related discussions in the broader Lensfun project (e.g., integrating ExifTool for metadata extraction), so this might align well with ongoing efforts.

I'm happy to contribute code or help test if this is feasible! Thanks in advance for your thoughts.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions