Wie bereinige ich Keyword-Hierarchien in Lightroom?

Ich nutze Lightroom seit einigen Jahren. Irgendwann habe ich Schlüsselwörter in einer Hierarchie gehalten, also hätte ich so etwas wie:

Tiere > Vögel > Adler

Das hat gut funktioniert, ich konnte die Option zum Exportieren von übergeordneten Schlüsselwörtern hinzufügen und alles war gut. Dann wurde ich faul und fing an, Dinge überall zu markieren. Während also mein "Eagles"-Tag gut unter Animals and Birds ist, habe ich vielleicht ein Falcons- oder Parrot-Keyword, das für sich allein steht und nicht die übergeordnete Struktur hat.

Das Neuanordnen der Schlüsselworthierarchie in Lightroom ist sehr zeitaufwändig ... das Ziehen und Ablegen geht nicht so schnell, wenn Tausende von Elementen im Spiel sind.

Ich weiß, dass Lightroom Schlüsselwörter exportieren und importieren kann, aber ich kämpfe mit der besten Möglichkeit, dies vielleicht zu bereinigen. Gibt es eine gute Möglichkeit, die Schlüsselwörter extern zu manipulieren und diese dann wieder in Lightroom einzufügen?

Oh Junge, ich fühle deinen Schmerz. Ich bin in einer ähnlichen Situation, nachdem ich Tausende von JPEG-Dateien importiert habe, die ich auf Flickr richtig (und stark) getaggt hatte. Das Schlüsselwort UI in LR ist wirklich schwierig und langsam zu verwenden, selbst bei einer hierarchischen Struktur. Schlüsselwörter werden jedoch genau wie die übrigen Daten von LR in seiner SQLite-Datenbank (dh dem LR-Katalog) gespeichert. Ich habe darüber nachgedacht, eine kleine App in Qt zu schreiben, um die Schlüsselwörter zu manipulieren, aber das Problem ist, dass ich auch die entsprechenden Fotos sehen muss, wenn ich meine Schlüsselwörter bereinige oder reorganisiere, um beispielsweise zu sehen, ob dieses Schlüsselwort wirklich benötigt oder richtig angewendet wird.
Ich mache mir keine allzu großen Sorgen um die Fotozuordnung - ich möchte nur die Schlüsselwörter hierarchisieren und sie den jeweiligen Fotos zugeordnet lassen.

Antworten (3)

Wie Sebastien erwähnt hat, ist die Bibliotheksdatei SQLite. Ich habe in meinem eigenen Katalog herumgewühlt und diesen AgLibraryKeywordTisch gefunden. Es gibt drei Spalten, die Sie interessieren: id_local, name, und parent. Wie zu erwarten, parentverweist auf das id_localdes übergeordneten Schlüsselworts. In meiner Bibliothek hat das Schlüsselwort "root" id_local73.

Angenommen, Sie hatten so etwas:

  id_local | name    | parent
-----------+---------+--------
  12345    | animals | 73
  12346    | birds   | 73
  12347    | eagles  | 73
  12348    | parrots | 73
  12349    | falcons | 73

Sie könnten die Hierarchie wie folgt "reparieren":

UPDATE AgLibraryKeyword
    SET parent = (SELECT id_local FROM AgLibraryKeyword WHERE name = 'animals')
    WHERE name = 'birds';

UPDATE AgLibraryKeyword
    SET parent = (SELECT id_local FROM AgLibraryKeyword WHERE name = 'birds')
    WHERE name IN ( 'eagles', 'parrots', 'falcons' );

Dies würde als Tiere > Vögel > Adler, Tiere > Vögel > Papageien usw. enden. Die Tabelle sieht am Ende so aus:

  id_local | name    | parent
-----------+---------+--------
  12345    | animals | 73
  12346    | birds   | 12345
  12347    | eagles  | 12346
  12348    | parrots | 12346
  12349    | falcons | 12346

Es ist nicht so manuell wie von Hand über die Benutzeroberfläche, aber es wird immer noch etwas Arbeit erfordern. Sollte aber genauso funktional sein.

Ich sollte anmerken, dass ich während dieser Untersuchung einige Male ähnliche Änderungen vorgenommen habe, die nicht zu dauern schienen. Ich würde vorschlagen, Ihr SQL in einer Datei zu speichern, damit Sie es erneut ausführen können, wenn es beim ersten Mal nicht zu funktionieren scheint. Und natürlich sollten Sie Ihre Bibliothek vorher sichern :)

Wenn Sie die Hierarchie mit SQLite bearbeiten möchten, wie in der Antwort von bleything vorgeschlagen, beachten Sie, dass (zumindest in LR4; bei 3 nicht sicher) die Schlüsselworthierarchie tatsächlich an zwei verschiedenen Stellen in der AgLibraryKeywordTabelle dargestellt wird:

sqlite> select id_local, parent, genealogy, lc_name from AgLibraryKeyword;
[...]
1757015|989984|/240/6802186/6989984/71757015|karen people
1757016|1757015|/240/6802186/6989984/71757015/71757016|red karen
1757018|1757016|/240/6802186/6989984/71757015/71757016/71757018|kayan people
1757019|1757018|/240/6802186/6989984/71757015/71757016/71757018/71757019|kayan lahwi

Die genealogySpalte ist ein vollständiger Dump der Knoten der Hierarchie, wobei die Knoten durch Schrägstriche begrenzt sind und die erste Ziffer jedes Eintrags die Anzahl der Ziffern in der ID des Knotens angibt. Im obigen Auszug hat der Stammknoten die ID 40, das Schlüsselwort der obersten Ebene in meiner Hierarchie ist die ID 802186 usw.

Sie möchten wahrscheinlich sicherstellen, dass sowohl die Spalte als auch die parentSpalte korrekt aktualisiert werden, wenn Sie die Hierarchie in SQLite manuell manipulieren.

Warum sie die Anzahl der Ziffern in die Node-ID aufnehmen, ist mir unklar; Meine beste Vermutung ist, dass LIKE-Abfragen unterstützt werden, um Unterbäume schnell zurückzugeben, ohne Mehrdeutigkeiten zwischen IDs unterschiedlicher Länge zu riskieren, aber sie hätten dies genauso gut auf weniger Platz tun können, indem sie ein Endtrennzeichen erforderten, also gibt es vielleicht einen anderen Grund.

Ich hoffe, meine Antwort wird nicht als Werbung wahrgenommen.

Kürzlich hat unser Unternehmen eine neue digitale Fotoverwaltungssoftware namens Daminion herausgebracht .

Daminion und Lightroom können problemlos über XMP interagieren: Beide Tools können hierarchische Schlüsselwörter lesen/schreiben. Aber Daminion ist eine reine Fotoverwaltungssoftware, also haben wir uns hauptsächlich auf Medienverwaltungsaufgaben konzentriert.

Das Programm ist kostenlos (weil es sich in einer Beta-Phase befindet). Ich schlage Ihnen vor:

  1. Schreiben Sie Ihre Schlüsselwörter in Metadaten von Lightroom
  2. Importieren Sie Ihre Ordner mit Fotos in Daminion
  3. Reorganisieren Sie Ihre Schlüsselwörter in Daminion nach Ihren Wünschen.
  4. Daminion schreibt automatisch alle Ihre Schlüsselwortänderungen (sowie andere 30+ Tags) zurück in die XMP-Metadaten
  5. Kehren Sie zu LR zurück und lesen Sie die Metadaten der Datei erneut

Hoffe das hilft.

Ich glaube nicht, dass das das Problem löst, da es sich nur auf die Schlüsselwörter für einzelne Bilder auswirkt, anstatt die interne Lightroom-Schlüsselworthierarchie zu reparieren.
Was passiert, wenn sich die Metadaten der Datei und die Metadaten des LR-Katalogs unterscheiden?