iOS 13 : Apple offre une fonction d'OCR à tous les développeurs
À partir d'iOS 13, les développeurs pourront ajouter dans leurs applications une fonction d'OCR, de la reconnaissance de caractères à partir d'une image, fournie par Apple.
Depuis deux ans dans Notes, on dispose d'une fonction de scanner avec laquelle on peut photographier une carte de visite, un panneau, un bloc de texte dans une page, le détail d'une addition, etc. iOS détecte cet élément dans l'image et, même s'il est photographié de biais, il sait le plus souvent corriger la perspective pour le redresser et en améliorer la présentation en uniformisant l'éclairage.
Sur iOS 13, Apple a amélioré cette fonction en la dotant d'une reconnaissance de caractères. Elle propose le framework VisionKit contenant l'API Document Camera que tous les développeurs peuvent utiliser. Ce framework assure le gros du travail d'analyse de l'image et de reconnaissance du texte, déchargeant les développeurs d'une bonne partie de cet effort.
Lors de la présentation de VisionKit à la WWDC 2019, les deux ingénieurs d'Apple venus décrire son fonctionnement n'ont pas trop insisté sur la question de la langue, mais il a été dit que seul l'anglais était utilisé pour le moment [vidéo].
Ce que le nouveau Notes sait faire, des apps utilisant cette API en seront capables aussi. Dans iOS 13, lorsqu'un contenu texte a été scanné, Notes utilise automatiquement les premiers mots pour les affecter au titre de la note créée. Dans iOS 12, toutes ces notes portaient un nom générique de "Nouvelle note" et le scan était marqué comme "Document scanné". C'est du temps de gagné.

Cet OCR ouvre la voie à une fonction de recherche sur les contenus plus complète, puisqu'on peut retrouver un mot dans une image. Ici le nom du cyclone "Fani" a été indexé après qu'on ait photographié, un peu de travers, une légende (en anglais) dans un hebdo. Ça va même plus loin puisqu'iOS 13 sait parfois comprendre ce qu'il y a dans l'image, et permet de le retrouver par une recherche texte (ce sera par exemple la photo d'un avion sur une couverture, lire iOS 13 : toutes les nouveautés dans Notes).

Par contre le scan d'un texte en français ne donnera rien avec la recherche de texte, sauf exception lorsque le document contient des mots anglais ou des termes existant dans les deux langues.
La possibilité suivante qui s'offre aux développeurs est d'extraire le texte reconnu et de le présenter sous une forme éditable toute bête ou de le reformater. Le nom, l'adresse et le numéro de téléphone pris dans une carte de visite pourront être affectés à des champs ad-hoc ou injectés dans un tableau. Tout dépend de ce que le développeur entend proposer avec son app.


La démonstration par les deux ingénieurs d'Apple a abordé les bonnes pratiques dont les développeurs seraient avisés de s'emparer, comme de décider s'ils ont besoin d'une reconnaissance rapide (qui utilisera le CPU de l'iPhone) ou plus précise mais plus longue (qui s'appuie sur les capacités de calcul de la puce graphique). C'est une affaire de contexte, la reconnaissance d'un code barre n'a pas besoin de beaucoup de puissance, alors autant laisser le GPU vaquer à des tâches plus importantes ou urgentes.

Ce point est néanmoins important car cette opération d'OCR est effectuée en local, directement sur le téléphone. Il n'y a pas d'aller et retour de l'image de votre document vers les serveurs d'Apple, comme le fait Microsoft avec son système d'OCR dans OneNote et que des développeurs tiers utilisent comme service intégré à leurs apps.
Si l'app et la fonction d'OCR visent un public particulier, comme des catégories de professionnels, il y aura tout intérêt à doter son app d'un lexique adapté, avec les spécificités de vocabulaire, insiste Apple.
Autre conseil, celui de proposer une reconnaissance où l'on n'embête pas l'utilisateur en lui demandant d'abord ce qu'il veut scanner comme type de document : un seul bouton "Scanner" plutôt qu'un choix entre "Scanner un reçu", "Scanner une carte", "Scanner autre chose"… Charge à l'app de se débrouiller pour identifier le document qu'on lui présente.
Ça va pas plaire ça ^^
C’est la principale nouveauté de la version payante dans la majorité des applis de scanner ^^
Si c’est fourni en standard, ça risque de pas leur plaire 🙂
@romainB84
J’ai l’impression qu’Apple s’inspire (a juste titre) de pas mal de bonnes choses sur l’App Store pour permettre à tous ses utilisateurs d’en profiter et je trouve ça génial pour nous !
En revanche pour les développeurs de ce genre d’applications oui ça va râler :( entre la recopie d’écran et ça sans parler du reste, c’est plein de petits ajouts !
@Bounty23
Ah c’est exactement ce que je voulais dire !!
Ça va râler « côté développeur » pas coté « utilisateur » 🙂
ils ne seront jamais leur clients. et personne va utiliser en plus, même si le système le permet.
les gens qui ont besoin de ces fonctions, ils achètent le meilleur logiciel qui existe.
@marenostrum
Bah personnellement j’utilise Scanbot (j’ai acheté la version payant) mais depuis 2 mois ils sont passé à une version à abonnement !
Bah je te confirme que si lappli de base d’Apple fait le boulot, pour mon besoin ça me suffira bien largement 😉
même avec ce que fait Apple, si personne ne s'intéresse vraiment, la fonction disparaitra. parce que eux ne peuvent pas payer le développement pour des trucs que personne n'utilise.
ils ont le même problème que les autres développeurs, qui arrêtent le programme si pas suffisamment d'utilisateurs. d'ailleurs le pas vers l'abonnement c'est leur dernier cartouche. ça montre qu'ils ne gagnent pas suffisamment d'argent, ils sont pas rentables.
@marenostrum
Je comprend parfaitement !
Personnellement je n’avais pas hésité à payé les 8€ car lappli est vraiment bien!
Mais payer 5€/mois pour 3 ou 4 scans... c’est trop cher pour mon usage !
Sûrement que ça intéressera les pro qui rentabiliseront facilement cet achat mais pas moi en tout cas 🙂
@bidibout
Je trouve les résultats de scanner pro largement meilleurs que ce que propose iOS perso. J’espère que ça s’arrangera avec iOS 13.
@bidibout
Le scan plus lumineux décrit me semblait indiquer une préférence pour le scanner d’iOS ;) Mais j’ai peut-être lu un peu vite également !
C’est vraiment génial et une super nouvelle !! En espérant que le support du français arrive vite... Qu’Apple démontre encore qu’on peut faire en local ce que les autres veulent absolument faire sur leurs serveurs ne peut être que bon pour la vie privée (mais aussi l’accessibilité en zones moins couvertes ou pas du tout, pour les petits forfaits, les connexions très lentes ou faibles, etc.) !
Je ne comprends pas pourquoi l’appli ne peut indexer que l’anglais, je pensais que les mots n’étaient qu’une succession de caractères, peut importe la langue...
il lui faut un dictionnaire derrière. et souvent ça c'est pas gratuit. il faut payer des droits.
@marenostrum
Les dictionnaires oui, mais s’ils se contentent d’assembler des lettres les unes après les autres et d’indexer le résultat ça pourrait marcher quelle que soit la langue.
je crois que c'est le dico qui fait l'assemblage justement, par comparaison. comme nous en fait, qu'on l'a le dico dans le cerveau. sinon pour les langues qu'on ne connait pas (chinois, japonais, grec, russe, etc) on peut rien distinguer du tout. on peut se tromper de caractères qui se ressemblent.
Je ne savais même pas qu’IOs faisait ça en natif !
Même si ScannerPro est géniallissime de a à z et mérite largement les qq euros qu’ils demandent, ça m’intéresse de savoir comment faire sur iOS.
Quelqu’un peut me dire où ?
@bidibout
Merci !
@Yves SG
Le gros défaut de la version d’iOS , c’est que au moment de la génération’ du pdf... il rajoute une énorme marge sur les cotes...
Assez étrange 🙂
Trouvé !
Ça marche effectivement bien pour intégrer un document à une note, mais rien à voir avec scanner pro pour la création de documents pdf multi pages, nommés et automatiquement téléchargés dans un dossier sur le Mac...
Quid du framework sur macOS ? Ce serait super à intégrer dans PDFZone ...
D’abord il y a plantage iOS 13 changeant écriture ou emoji ça saute iPhone se soit Facebook ou bloc note donc arrêter vos connerie mise à jour iOS 13 mais il ne l’a pas fait iOS 11 et iOS 12 plantage