Prise en charge des nouveaux boîtiers

La prise en charge par darktable d’un nouvel appareil est un processus complexe qui peut se décomposer en sept étapes pour être tout à fait complète. Ces sept étapes ne sont pas toutes réalisées pour tous les boîtiers. La prise en charge nécessite au strict minimum les étapes 1 et 2. Cependant, la plupart des boîtiers sont dès le départ, pris en charge jusqu’à l’étape 4 en utilisant des caractérisations standard pour les étapes 3 et 4.

Voici les 7 étapes détaillées

[list=1]
[*]L’identification du boîtier.
Le boîtier est identifié grâce à la lecture des données EXIF qui contiennent des informations sur le nom du constructeur, celui du modèle, le type de fichiers, etc. Cette opération est déléguée à un élément logiciel indépendant : Exiv2. Si Exiv2 n’arrive pas à reconnaître dans le fichier, la référence du boîtier, aucune prise en charge ne pourra être faite.
[*]La lecture des fichiers raw et le dématriçage.
Tous les fichiers raws sont différents ; non seulement d’une marque à l’autre, mais aussi dans une même marque, d’un boîtier à l’autre. Les données du capteur incluses dans le raw (la matrice), diffèrent aussi puisque les capteurs sont différentes d’un boîtier l’autre. Pour faire ce travail de prise en charge, les développeurs ont besoin d’échantillons de raw. C’est pour cela qu’on demande à ce que ces échantillons soient déposés sur un site dédié : raw.pixl.us. Le décodage du raw - pas le dématriçage qui est fait par darktable -, est confié à la couche logicielle Rawspeed. Rawspeed était un autre logiciel indépendant, mais son support à maintenant été repris par les développeurs de darktable.
[*]La matrice de couleur.
En général, un nouveau boîtier utilisera une matrice de couleur standard. Mais il est possible de réaliser des matrices de couleur spécifiques à chaque boîtier : cela peut être réalisé par n’importe quel utilisateur de darktable et être ensuite intégré dans les données du logiciel.
[*]La courbe de base.
Comme pour la matrice de couleur, en général, un nouveau boîtier utilisera la courbe de base générique de la marque. Mais, comme pour la matrice de couleur, il est possible d’établir une courbe de base spécifique à chaque boîtier. Cela peut également être fait par tout un chacun. De nombreux articles et / ou tutoriels sont disponibles sur ce site et partout sur Internet.
Le support minimum d’un nouveau boîtier s’arrête en général ici, mais il manque encore trois étapes pour que le support puisse être complet.
[*]Les pré-réglages de la balance des blancs.
À nouveau, ces préréglages dépendent de prises de vues faites par les utilisateurs. La procédure de réalisation et de soumission est décrite sur le blog de darktable.
[*]Les profils de bruit.
Le débruitage est dépendant du capteur et de la sensibilité ISO utilisée lors de la prise de vue. Pour faciliter ce traitement, darktable utilise un algorithme qui tient compte de ces deux facteurs et utilise des données mesurées à partir de prises de vues réelles, faites dans les mêmes conditions. Les utilisateurs sont donc invités à effectuer ces prises de vue et à calculer le profil de bruit de leur nouvel appareil photo. Des outils logiciels sont fournis avec darktable pour cela. Une fois le profil calculé et vérifié, il suffira de le fournir à l’équipe de développement pour qu’il soit intégré à darktable, comme les courbes de bases, les matrices de couleurs et les pré-réglages de la balance des blancs. La procédure est également sur le blog de darktable.
[*]la correction des objectifs.
Pour assurer la correction des diverses aberrations des objectifs, darktable fait à nouveau appel à un autre logiciel : Lensfun. Lensfun doit connaître les références des objectifs, mais aussi celles des boîtiers. Pour qu’un nouveau boîtier puisse être pris en charge par lensfun, il faut faire une demande sur le site de Lensfun en fournissant un fichier (raw ou jpeg, je crois que c’est indifférent). Notez que je n’ai traité dans ce paragraphe que de la prise en charge du boîtier, pas de celle des objectifs qui est également faite par lensfun.

[/list]Voilà, c’est tout !!!

Vous trouverez ICI un tableau qui résume l’état du support des trois premiers niveaux pour tous les boîtiers pris en charge par darktable.

Vous trouverez ICI un article résumant les procédures pour les 5 premiers niveaux de prise en charge.

Vous trouverez ICI un article décrivant la réalisation d’un profil de bruit.

Et enfin, vous trouverez ICI un article traitant de la correction des objectifs.

Excellent Daniel. Merci.

Et non c’est de JPV, qui voulait le mettre sur le blog mais ca a davantage sa place ici sur le forum.

Ben c’est bien ici, mais là ou je l’ai mis, dans la FAQ, ça peut éviter des questions récurentes, non ?

Et bien excellent et merci Jean-Pierre, pour moi ça peut bien être dans les 2.

En fait, je n’ai fait que reprendre le texte que j’avais rédigé il y a quelques temps mais que je ne peux pas retrouver maintenant car je suis sur ma tablette avec Tapatalk [emoji20].
J’ai souhaité le pérenniser pour qu’on puisse permettre de répondre facilement à toutes les questions posées sur le support des nouveaux boîtiers. Je pense même que ce sujet devrait être épinglé en tête de la partie chambre noire. Qu’en pensez vous ?

Envoyé de mon Nexus 10 en utilisant Tapatalk

Je suis d’accord pour qu’il soit épinglé pour la chambre noire.

Merci pour toutes ces explications très utiles :slight_smile:

Bonjour à tous,

J’ai un Nikon Z6 avec adaptateur FTZ et un Nikkor AF-S 24-120mm f/4G ED VR, ainsi qu’un télé.
Je suis nouvel utilisateur de Darktable, j’ai installé la version 2.6.2 sur un Mac avec le système Mojave (10.14.6).

Lorsque je vais dans les corrections d’objectifs, mon boitier n’est pas reconnu, mais l’objectif oui si je choisi, par exemple le Nikon D750. Hors dans la BDD Lensfun, la dernière version intègre bien les boitiers Z6 et Z7.
Mon problème est de pouvoir mettre à jour cette bibliothèque, car si j’ai bien compris, sur Mac, l’application contient déjà une BDD de Lensfun, disponible lors de la sortie de la version de DT. En fait on télécharge une application complète avec les librairies intégrées.
Avez-vous une solution pour mettre à jour ces librairies, ou dois-je attendre une nouvelle version de DT, comme la 2.7, et si c’est le cas, quand sort-elle, sur Mac ?

Merci de vos réponses

S’il te plaît… On réexplique ça presque chaque semaine sur ce forum depuis 2 ans…

La base de données Lensfun fournie avec le binaire exécutable, quand tu l’installes, n’est pas à jour, pour une raison qui regarde les développeurs de Lensfun.

Il faut exécuter un script Python fourni avec le binaire sudo lensfun-update-data qui va chercher les mises à jour sur http://lensfun.sourceforge.net/db/versions.json et http://wilson.bronger.org/lensfun-db/versions.json pour actualiser la BDD /var/lib/lensfun-updates/version_1.

Merci pour toutes ces explications, bon travail

Bonjour,
Ça ne fait pas 2 ans que je viens sur ce forum, puisque je me suis inscrit ce matin.
Et désolé, mais j’ai effectué, hier, sur mon Mac, depuis Terminal « sudo lensfun-update-data », mais ça n’a rien changé dans DT, les boitiers Z6 et Z7 n’apparaissent pas.
C’est pour cela que je pose la question, comment peut-on mettre à jour Lensfun sur Mac, à sa dernière version, sachant que j’utilise DT 2.6.2 ?
Merci

Si lensfun-update-data ne fonctionne pas, il va falloir que tu modifies manuellement le fichier : https://github.com/lensfun/lensfun/blob/master/data/db/mil-nikon.xml pour qu’il soit lu par la version de ton lensfun.
Tu peux voir ce document : https://darktable.fr/les-fichiers-de-configuration/
Il faut aussi qu’un utilisateur Macd’aide à repérer mil-nikon.xml.

Et du coup, le moteur de recherche du forum est là pour ça ! Pour les boitiers, rien à voir avec lensfun. Voir ma réponse à ton autre post (un post pour un même sujet est d’ailleurs suffisant…). Du coup, ça vaudrait le coup aussi de jeter un oeil par là : https://darktable.fr/reglement-du-forum/

Bien à toi !

Pour info, l’objectif est bien reconnu si je sélectionne un boitier Nikon D750 (capteur quasi identique), mais les boitiers Z6 ou Z7 n’apparaissent pas.
J’ai remplacé dans l’application, car les bibliothèques sont dans l’application sur Mac, le fichier « mil-Nikon.xml » en version V1 existant par la version V2, comme proposé par jpg54, mais pas mieux, les boitiers Z de Nikon ne sont pas visibles.
Je vais attendre la nouvelle version de DT, en espérant quelle intégrera la dernière MAJ de lensfun, boitiers et objectifs.

Merci encore et bonne journée

Tu peux modifié l’entête de mil-nikon.xml
Il suffit de remplacer « 2 » par « 1 ». Sous Linux, on met ces fichiers modifiés dans un répertoire .local/share/lensfun (que l’on crée) et pas dans le répertoire système car il va être écrasé par une mise à jour de lensfun. Pour un Mac, je sais pas.

Attention si tu fais un copier/coller depuis ton navigateur, il ne faut pas copier :

<!DOCTYPE lensdatabase SYSTEM "lensfun-database.dtd">

Lis-tu ? Allez, une dernière fois, Lensfun = support des objectifs et non des boîtiers. Lensfun est une bibliothèque externe à darktable. Tu peux modifier Lensfun comme tu veux, ça ne changera rien pour la reconnaissance d’un boîtier, quelque qu’il soit… Par contre, une mise à jour de darktable (comme de tout logiciel photo) voit son lot de nouveaux boîtiers supportés.

Oui et non Nicolas, dans les fichiers lensfun, il faut une petite défintion :

<camera> <maker>Nikon Corporation</maker> <maker lang="en">Nikon</maker> <model>Nikon Z6</model> <model lang="en">Z6</model> <mount>Nikon Z</mount> <cropfactor>1</cropfactor> </camera>
Et c’est bien ce que cherche notre ami pour pouvoir avoir le boîtier dans la correction d’objectifs.

Certes, mais si le support du RAW n’est pas présent, la définition dans Lensfun ne sert à rien. Et comme il utilise darktable 2.6.2 et que le support réel des Z6 et Z7 n’arrive que dans darktable 3.0, la mise à jour actuellement de Lensfun pour ces boîtiers ne sert à rien (à moins de basculer sur la version master)… C’est ce que je souligne : le support d’un boîtier, c’est d’abord darktable (Rawspeed pour être précis) et Lensfun c’est pour les objectifs. La définition d’un boîtier dans Lensfun ne sert qu’à une chose : faire le lien avec l’objectif utilisé en précisant le cropfactor principalement et le nom mais ça ne permet pas de lire le raw du boîtier, juste afficher le nom, gérer la correction d’objectif correctement selon le boîtier utilisé (pour faire simple).

Edit : j’ai regardé sur ma version master de darktable (je n’ai pas mis à jour Lensfun depuis plusieurs mois) et j’ai bien les Z6 et Z7 qui apparaissent.