Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

KDE Gear 24.05.0

The KDE Project has announced the release of KDE Gear 24.05.0, with new features and updates for the more than 200 applications that are part of the project. In addition to new versions of the Dolphin file manager, Kdenlive video editor, and Elisa music player, this release includes five applications new to KDE Gear: the Audex CD-ripper application, an application Accessibility Inspector, the Francis Pomodoro timer, Kalm to teach breathing techniques, and a Sokoban-like game called Skladnik. See the full changelog for a complete list of changes.

[$] The twilight of the version-1 memory controller

Almost immediately after the merging of control groups, kernel developers set their sights on reimplementing them properly. The second version of the control-group API started trickling into the kernel around the 3.16 release in 2014 and users have long since been encouraged to migrate, but support for (and users of) the initial API remain. At the 2024 Linux Storage, Filesystem, Memory-Management and BPF Summit, memory-management developers discussed whether (and when) it might be possible to remove the version-1 memory controller. The session was led by Shakeel Butt and (participating remotely) Roman Gushchin.

Security updates for Thursday

Security updates have been issued by Debian (chromium), Fedora (chromium, libxml2, pgadmin4, and python-libgravatar), Mageia (ghostscript), Red Hat (389-ds:1.4, ansible-core, bind and dhcp, container-tools:rhel8, edk2, exempi, fence-agents, freeglut, frr, ghostscript, glibc, gmp, go-toolset:rhel8, grafana, grub2, gstreamer1-plugins-bad-free, gstreamer1-plugins-base, gstreamer1-plugins-good, harfbuzz, httpd:2.4, idm:DL1, idm:DL1 and idm:client modules, kernel, kernel-rt, krb5, LibRaw, libreoffice, libsndfile, libssh, libtiff, libX11, libxml2, libXpm, linux-firmware, motif, mutt, openssh, osbuild and osbuild-composer, pam, pcp, pcs, perl-Convert-ASN1, perl-CPAN, perl:5.32, pki-core:10.6 and pki-deps:10.6 modules, pmix, poppler, postgresql-jdbc, python-dns, python-jinja2, python-pillow, python27:2.7, python3.11, python3.11-cryptography, python3.11-urllib3, python39:3.9 and python39-devel:3.9 modules, qt5-qtbase, resource-agents, squashfs-tools, sssd, systemd, tigervnc, tomcat, traceroute, varnish:6, virt:rhel and virt-devel:rhel modules, vorbis-tools, webkit2gtk3, xorg-x11-server, xorg-x11-server-Xwayland, and zziplib), SUSE (chromium, perl, postgresql14, and python-sqlparse), and Ubuntu (klibc, linux-aws-hwe, openssl, and vlc).

Créatures ou IA : consultez, manipulez & annotez les images des bibliothèques, musées… grâce à IIIF

L’initiative IIIF, pour International Image Interoperability Framework, est née de la constatation que la diffusion d’images patrimoniales sur le web était « trop lente, trop coûteuse, trop décousue, trop complexe ». IIIF apporte une solution pérenne et élégante à ces difficultés en conciliant accessibilité, interopérabilité et sobriété. Il intéresse les GLAM (collections, bibliothèques, archives, musées, etc.) ainsi que les acteurs de l’enseignement et de la recherche.

Concrètement, IIIF créé un cadre technique commun grâce auquel les fournisseurs peuvent délivrer leurs contenus sur le web de manière standardisée, afin de les rendre consultables, manipulables et annotables par n’importe quelle application compatible.

International Image Interoperability Framework

Sommaire

Origine de IIIF

En 2010, constitution d’un groupe de réflexion et d’expérimentation sur l’interopérabilité des manuscrits médiévaux numérisés à l’initiative de l’université de Stanford. Ses travaux ont conduit à l’élaboration d’un modèle de données Shared Canvas basé sur le modèle d’annotation du W3C.

À la même époque, de grandes bibliothèques nationales et des universités ont travaillé à la définition d’un mécanisme d’échange des images pour aboutir en 2012 à la publication de la version 1 de l’API Image de l'International Image Interoperability Framework (IIIF).

Le Consortium IIIF a été créé en 2015 par onze institutions : la British Library, Artstor, Die Bayerische Staatsbibliothek, la Bibliothèque nationale de France, Nasjonalbiblioteket (Norvège), Wellcome Trust, et les universités d’Oxford, Stanford, Cornell, Princeton et Yale. Il compte actuellement 69 membres.

Qu’est-ce que IIIF ?

Un aspect spectaculaire de IIIF réside dans la visualisation fluide des images et le zoom profond, cf. Sagami River, Kyoto (1660?-1670?). Princeton University, mais IIIF ne se résume pas à ça, loin de là.

_Sagami River, Kyoto (1660?-1670?) affiché par le visualiseur libre UniversalViewer

IIIF désigne à la fois le cadre technique partagé d’un ensemble de protocoles ouverts et une communauté humaine qui les implémente, développe des logiciels et in fine expose des contenus audiovisuels interopérables.

Ce standard de fait est utilisé par de plus en plus d’institutions culturelles — collections, bibliothèques, musées, archives, etc. — et scientifiques — universités, labos, muséums, etc. Ses fonctionnalités s’étendent maintenant à l’audio et à la vidéo ; la prise en compte de la 3D est en cours.

Pour l’heure, IIIF est surtout utilisé pour la diffusion d’images numériques. Ce sont ainsi des centaines de millions d’images qui deviennent véritablement découvrables, consultables, comparables, manipulables, citables, annotables et mixables par n’importe quelle application compatible capable de se « brancher » sur les entrepôts des uns et des autres.

Sans téléchargement de fichiers images, ces ressources de « première main » sont immédiatement utilisables par les professionnels comme par les amateurs. Elles intéressent aussi les chercheurs, les enseignants et les élèves, et les médiateurs culturels, scientifiques et artistiques. IIIF facilite grandement la diffusion, la réutilisation et la valorisation de toutes ces ressources disséminées.

Principe général d’interopérabilité de IIIF : trois applications différentes sont branchées à trois entrepôts IIIF (source : Biblissima+ — Licence Ouverte / Open License 2.0)
Principe général d’interopérabilité de IIIF : trois applications différentes sont branchées à trois entrepôts IIIF (source : Biblissima+ — Licence Ouverte / Open License 2.0)

Visualisation d’un document

Photo de Bob Fitch, Martin Luther King Jr. & Joan Baez (1966), visualisée avec le logiciel libre Tify

Copie d’écran du logiciel libre Tify présentant une photographie de Martin Luther King et de Joan Baez (Bob Fitch, 1966). Ce document est fourni par un serveur IIIF opéré par l’université de Stanford.

Visualisation de plusieurs documents

La magie IIIF c’est la capacité de jongler avec les références des ressources, par exemple, pour les réunir dans des bibliothèques virtuelles ou encore pour servir de points d’entrée aux robots et autres IA afin d’analyser les documents.

Léonard Limosin est un peintre, émailleur, dessinateur et graveur français du XVIe siècle. Deux de ses œuvres sont présentées ci-après dans le visualiseur libre IIIF Mirador.

Vues d’œuvres de Léonard Limosin avec le logiciel libre Mirador

Sur cette page, vous pouvez explorer chaque image et zoomer, les comparer, lire leurs métadonnées, passer en plein écran ou agencer différemment les fenêtres. L’interface de Mirador vous permet aussi d’accéder à d’autres références en cliquant sur le bouton rond bleu puis en sélectionnant les documents préenregistrés.

Vous avez aussi la possibilité d’en ajouter d’autres via le bouton bleu Ajouter une ressource en bas à droite, ensuite en insérant l’URL d’un manifeste IIIF. En faisant une recherche sur Léonard Limosin vous trouverez différentes collections comportant certaines de ses œuvres. Certaines les exposent au standard IIIF. Dans ce cas, pour chaque notice il s’agit de récupérer le lien d’un manifeste IIIF (explicite ou associé au logo IIIF). Exemple, avec cette Crucifixion au Fitzwilliam Museum (Cambridge).

Le logiciel libre Omeka dispose de fonctionnalités IIIF et permet de créer des bibliothèques virtuelles de ressources IIIF.

Apports de IIIF

D’après IIIF en 5 minutes.

Pour les usagers

L’accès à des images de haute qualité ainsi qu’à leurs métadonnées, large choix de visualiseurs libres :

Ces outils, et d’autres encore, offrent une large palette d’interfaces riches et universelles pour :

Il existe de nombreux dispositifs pour utiliser ces ressources de « première main » et corpus dans un environnement éducatif et de recherche.

Pour les diffuseurs

  • bénéficier d’une manière standardisée, cohérente et efficace, de présenter et de partager leurs collections,
  • améliorer leur visibilité, l’accessibilité à leurs données et développer des espaces de collaboration et de recherche,
  • faciliter la gestion des ressources numériques en garantissant un accès homogène et pérenne,
  • promouvoir la participation des usagers en mobilisant des outils avancés pour l’exploration et l’utilisation des ressources,
  • proposer des projets de transcription, de crowdsourcing ou de sciences participatives en fournissant des documents annotables,
  • réduire et mutualiser les coûts en utilisant un standard ouvert, des services et des logiciels éprouvés.

Pour les développeurs

Il existe de nombreux logiciels et composants compatibles avec les API de IIIF, beaucoup sont libres. La page officielle Awesome IIIF recense les principaux ainsi qu’un grand nombre de ressources documentaires et de services.

IIIF est entièrement basé sur les standards et l’architecture du Web (principes REST et du Linked Data, Web Annotation Model du W3C, JSON-LD) ce qui facilite le partage et la réutilisation des données.

Le découplage entre la couche serveur et la couche cliente, la modularité des composants logiciels, la ré-utilisabilité des ressources offrent une grande souplesse et réduit la dépendance à un logiciel ou un prestataire.

La communauté des usagers et des développeurs est active.

Comment ça marche ?

Le manifeste est un élément essentiel de IIIF. C’est un document au format JSON-LD qui représente généralement un objet physique numérisé tel qu’un livre, une œuvre d’art, un numéro de journal, etc. Il peut également rassembler des éléments de provenances diverses. Il décrit l’ensemble du document, ses métadonnées, sa structure et référence les images et les médias qu’il embarque.

Les liens des manifestes IIIF sont plus ou moins faciles à trouver dans les notices des catalogues. Une méthode simple consiste à rechercher le logo IIIF ou à explorer les informations fournies par les visualiseurs. Le site officiel de IIIF alimente un annuaire non exhaustif des sites et, site par site, fournit généralement un mode d’emploi pour récupérer les manifestes.

Techniquement, IIIF comporte deux API principales, l’API Image et l’API Presentation qui fonctionnent de concert.

API Image

L’API Image fournit des informations basiques sur l’image ainsi que les pixels de l’image entière ou de zones à la demande.

Elle se présente avec les éléments suivants :

  • une URL d’accès aux informations techniques d’une image, abcd1234 est un exemple d’identifiant :
    http://www.example.org/image-service/abcd1234/info.json
  • une URL à construire à la carte pour récupérer et manipuler tout ou partie de l’image en précisant la zone, la taille, l’orientation, la qualité et le format de l’image à produire.

schéma de l’URL API Image

Voilà ce que ça donne en pratique avec l’image de test. Attention ! LinuxFR met en cache les images, si vous souhaitez effectuer les manipulations, copiez et modifiez les paramètres des url ci-après.

Le fichier info.jsonest le suivant :

  • https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/info.json

  • rendu homothétique de l’image entière avec une largeur de 300px

    https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/full/300,/0/default.jpg

    image entière rendue homothétique avec une largeur de 300px

  • détail de la même image

    https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/300,/0/default.jpg

    détail

  • rotation et transformations

    https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/150,/45/default.jpg

    détail

    https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/150,/0/bitonal.jpg

    détail
    https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/150,/0/gray.jpg

    le rendu en niveaux de gris ne fonctionne pas avec ce serveur IIIF.

Pour en savoir plus consultez les spécifications de l’API Image (version 3.0 actuellement).

L’API Presentation

En complément à l’API Image, l’API Presentation fournit les propriétés d’un document IIIF : métadonnées, structures, annotations, etc.

Principales composantes d’un Manifeste IIIF

Principales composantes d’un Manifeste IIIF (source : Biblissima+ — Licence Ouverte / Open License 2.0)

Il existe de nombreux visualiseurs pour afficher ces documents et les informations associées. On distingue alors dans différentes zones le rôle de chacune des deux API principales.

API Image

Source : Biblissima+ — Licence Ouverte / Open License 2.0.

API Presentation

Source : Biblissima+ — Licence Ouverte / Open License 2.0.

À noter que le visualiseur optimise le trafic en ne demandant au serveur que la partie de l’image à afficher

Pour en savoir plus consultez les spécifications de l’API Presentation (version 3.0 actuellement).

Les autres API

Voir la page des spécifications, extensions, traductions et travaux en cours.

  • Authorization Flow (version 2.0) - décrit un système de contrôle d’accès.
  • Change Discovery (version 1.0) - fournit les informations nécessaires pour découvrir et utiliser les ressources IIIF.
  • Content Search (version 2.0) - définit le mécanisme d’interopérabilité permettant d’effectuer des recherches dans les annotations textuelles associées à un objet.
  • Content State (version 1.0) - permet de référencer tout ou partie d’un manifeste IIIF et de décrire des modalités d’accès.

Au-delà de l’image : l’audio, la vidéo et la 3D

Les références à des ressources audio et vidéo sont prises en compte dans la version 3.0 de l’API de présentation IIIF. À noter qu’il n’existe pas pour l’audio et pour la vidéo d’équivalents de l’API Image, en effet, cet aspect est pris en charge par les navigateurs. Exemple : audio et vidéo d’un morceau musical associés à la partition.

Il y a une forte demande pour la prise en compte de la 3D par IIIF. Un groupe de travail rassemble les institutions et les personnes intéressées. Il anime un dépôt Github qui rassemble les documents et expérimentations du groupe.

IIIF et IA

IIIF est de plus en plus utilisé par des dispositifs d’apprentissage et de reconnaissance automatique en raison de la facilité d’accès aux images entières ou à des zones, dans les définitions et qualités nécessaires. Il est aussi possible d’imaginer des IA qui génèrent automatiquement des manifestes annotés.

La société française Teklia s’est spécialisé dans ce domaine. Elle vient d'annoncer le passage sous licence libre de sa plateforme Arkindex.

Harvard Art Museums a créé AI Explorer qui mobilisent un certain nombre d’IA pour décortiquer des reproductions d’œuvres et des photographies.

Le Consortium IIIF a mis en place un groupe de travail et il existe une formation en ligne sur le sujet.

Commentaires : voir le flux Atom ouvrir dans le navigateur

Conférence Rust 2024, journée pour les devs et utilisateurs

Passionnés de RUST, bloquez le 25 juin dans votre agenda ! Première édition de la conférence Rust Paris 2024 à l'ISEP (Institut supérieur d’électronique de Paris). C'est une journée dédiée aux développeurs et utilisateurs de Rust très axée sur le retour d'expérience des intervenants, dont certains sont très impliqués dans le monde Open Source. Cette journée souhaite mettre en avant les réussites, mais aussi les limites de l'utilisation de Rust.

Pour rappel, Rust est un langage de programmation multi-paradigme, généraliste, qui met l’accent sur les performances, la sécurité des types et la concurrence. Il a été créé en 2006 comme un projet personnel au sein de Mozilla Research. Mozilla a officiellement parrainé le projet en 2009 dans le cadre du projet de nouveau moteur de rendu Servo. Suite à l'impact du COVID-19 et aux importants licenciements de 2020 et l'abandon de Servo, Rust a été confié aux bons soins d'une fondation dédiée. Rust a été largement adopté par les « big tech » telles qu’Amazon, Discord, Dropbox, Google, Meta, Microsoft… et se retrouve même au sein de notre noyau préféré.

Bannière de la conférence

📅 25 juin 2024
⏰ 9h00 — 18h30
📍 Institut supérieur d’électronique de Paris, 10 rue de Vanves à Issy-les-Moulineaux

C'est une conférence payante (89 € HT) mais…

  • moitié prix pour les lecteurs de LinuxFr.org si vous utilisez le code Linux_RustParis2024
  • voire gratuite si votre employeur est membre de Systematic (Pôle de compétitivité organisateur via le Hub Open Source)

Programme détaillé

  • 09h00 - 09h30 : Accueil des participants
  • 09h30 - 09h45 : Introduction
  • 09h45 - 10h30 : Langages à bonnes propriétés, la fin des analyseurs de code ? par Patricia Mouy (CEA List)
  • 10h35 - 11h05 : Construire un logiciel de dessin architectural à haute performance dans un navigateur web grâce à Rust et Webassembly par Bastien Dolla (Rayon)
  • 11h25 - 11h55 : Passer à l'échelle grâce à Rust dans le développement d'applications sociales : le cas de Amo par Lucas Pluvinage (Amo)
  • 12h00 - 12h30 : WebAssembly has been hailed as the future of the web: enabling fast, small, secure web applications (written in rust, of course). But does it live up to the hype? par Joe Neeman (Modus Create)
  • 14h35 - 15h05 : Rust et PikeOS pour la Cyberdéfense par Thierry Maudire (Sysgo) et Pierre Boinet (Thales La Ruche)
  • 15h10 - 15h40 : La voie de Rust pour les systèmes embarqués certifiables par José Ruiz (AdaCore) et Benoît Souyri (Thales)
  • 16h00 - 16h30 : Comment on a migré Parsec de Python vers Rust par Florian Bennetot (Parsec)
  • 16h35 - 17h05 : Seven Years in Rust par Angelo Corsaro (ZettaScale)
  • 17h05 - 17h10 : Conclusion
  • 17h10 - 18h30 : Cocktail networking

En parallèle de cette session, une salle dédiée est prévue pour des présentations de développeur à développeur autour des technologies Rust.

Origine du nom Rust

Petite anecdote si vous avez lu jusqu’ici. Il y a plusieurs théories sur l’origine du nom du langage. L’une d’elle suggère que Rust est nommé d’après un champignon qui est robuste, distribué et parallèle. De plus, Rust est une sous-séquence du mot « robust ». Selon une autre théorie, le nom reflèterait le but du langage qui est d’utiliser des techniques éprouvées, aka «  rusty  » (rouillées), plutôt que de mettre en œuvre des fonctionnalités expérimentales pointues. Quoi qu’il en soit, Rust est un langage de programmation de plus en plus influent et répandu.

Commentaires : voir le flux Atom ouvrir dans le navigateur

❌