Konvertieren der Adobe-Objektivkorrektur für Lensfun / Darktable

Ich versuche, die Objektivprofile von Adobe in Lensfun zu importieren (zur Verwendung mit Darktable). Ich verwende darktable 2:2.6.2-1 auf Arch Linux, installiert über Pacman, wodurch Lensfun 0.3.2-7 heruntergefahren wurde. (Ich verwende nicht die Pakete darktable-git oder lensfun-git). Daher ist das Skript lensfun-convert-lcp nicht in meiner Installation enthalten. Ich habe Lensfun separat von Github geklont und es mit den Profilen des Adobe DNG-Konverters erfolgreich ausgeführt, um _lcps.xml zu generieren. Im Stammknoten dieser Datei sehe ich jedoch

<lensdatabase version="2">

Ich habe lensfun-update-data ausgeführt und die Datenbank in /var/lib/lensfun-updates/version_1/*.xml-Dateien gespeichert

<lensdatabase version="1">

Bei einigen Attributen sind die Schemata unterschiedlich. zB Verzerrung hat k1, k2, k3 in einem und a, b, c in dem anderen.

Ich habe mich gefragt, wie ich diese Profile unter Darktable laden kann.

=========================================

Aktualisieren

Also das habe ich bisher versucht:

  1. Darktable und Lensfun deinstalliert. Lensfun-git installiert. Darktable installiert. Es gibt jetzt überhaupt kein Modul für die Objektivkorrektur :( lensfun.get_database_version() ist 2.
  2. Darktable und Lensfun deinstalliert. Lensfun-git und darktable-git installiert. Verwendet lensfun db v2, und alles wird abgeholt. Die Darktable-Benutzeroberfläche sieht auf einem 4k-Monitor etwas naff aus. lensfun.get_database_version() ist 2.
  3. Durch die Installation von darktable und lensfun (weder git) funktioniert es noch, aber das von Adobe konvertierte lcps.xml-Zeug wird nicht abgeholt. lensfun.get_database_version() ist 1.

Gibt es eine Möglichkeit, Darktable (nicht Darktable-Git) dazu zu bringen, Lensfun-Git zu verwenden? Oder damit lensfun v2-Datenbanken abholt, wenn lensfun.get_database_version() 1 zurückgibt?

Aktualisierung 2

In Szenario 1 (lensfun-git + darktable non-git) gibt mir das Starten von darktable über die Befehlszeile Folgendes:

[iop_load_module] failed to open operation `lens': liblensfun.so.1: cannot open shared object file: No such file or directory

Aktualisierung 3

Ich habe einen Symlink für die fehlende Datei zu liblensfun.so.2 erstellt, und darktable hat alles gut aufgenommen. Schritte im Kommentar unten.

Antworten (2)

Für Adobe-Profile benötigen Sie die DB-Version 2. Die Unterschiede sind jedoch gering: Neben den Adobe-Profilen <real-focal-length>wurde das Tag zum Attribut von <distortion>.

Darktable ist es egal, welche DB-Version Sie verwenden. Insbesondere funktionieren Adobe-Profile mit jeder Darktable-Version, da sie die API des aktuellen Lensfun unterstützen.

Ich habe die Frage mit dem aktualisiert, was ich sehe. darktable-git mit lensfun-git scheint v2-Datenbanken abzurufen, aber sonst scheint nichts zu funktionieren.

Also, was für mich funktioniert, ist:

  1. yaourt -S lensfun-git -> deinstalliert lensfun (kein Git dabei).
  2. cd /lib
  3. sudo ln -s liblensfun.so.2 liblensfun.so.1
  4. Darktable starten.

Ich erhalte einen Verbindungsverweigerungsfehler, wenn lensfun-update-data ausgeführt wird, aber da die Updates selten und alle meine Objektive in den Profilen von Adobe enthalten sind, bin ich damit zufrieden.