Capitolo 2: Accessibilità - Tecnologia2.2.2 Software

Esistono varie tipologie di software AT, anche in questo caso differenziati in base alle varie esigenze e ai vari problemi dell'utenza. Si possono infatti trovare software ausiliari che, coadiuvando software già presenti all'interno del computer, hanno il compito di estenderne o semplificarne le funzionalità; software specifici, cioè creati appositamente con fine didattico e/o terapeutico; infine estensioni o plug-in mirati, sono molto simili ai software ausiliari ma sono parte integrante del programma nel quale risiedono.

Di seguito saranno elencate alcune soluzioni software, le principali, con le loro funzionalità e possibili applicazioni.

2.2.2.1 Screen magnifier

Uno screen magnifier è un software che, interfacciandosi allo schermo di un computer permette di ingrandire porzioni desiderate di schermo senza l'ausilio di nessuna apparecchiatura hardware esterna, infatti consente di potenziare il normale output grafico di un computer, estendendone le funzionalità.

Gli screen magnifier sono principalmente pensati per persone con difetti visivi non troppo gravi, in qual caso sarà necessario uno screen reader.

Il funzionamento è molto semplice: viene ingrandita una porzione di testo, tramite la selezione di opzioni a video oppure tramite la pressione di una sequenza di tasti, dopo di che la zona ingrandita viene controllata tramite il movimento del mouse.

Funzionalità

Screen Magnifier integrati in sistemi operativi

2.2.2.2 Screen reader

Uno screen reader è un software che permette di identificare ed interpretare ciò che è presente a schermo e ripresentarlo agli utenti in forme alternative. Queste forme alternative possono essere programmi di tipo text-to-speech oppure dispositivi di output Braille, entrambi verranno successivamente trattati in maggior dettaglio.

Gli screen reader sono pensati per persone non vedenti, con difficoltà visive, analfabete o con difficoltà di apprendimento.

Funzionamento

Il funzionamento di uno screen reader è molto semplice e segue una determinata logica nel selezionare di volta in volta quale testo vocalizzare. Se ad esempio si apre il menu Start, lo screen reader legge la prima voce del menu. Se ci si sposta con i tasti freccia, la sintesi leggerà le varie voci del menu e darà informazioni aggiuntive, ad esempio indicando se una determinata voce ha un sottomenu.

Lo screen reader fornisce anche messaggi che aiutano ad orientarsi, ad esempio avverte se si è aperta una finestra di dialogo.

Durante l'esplorazione dello schermo lo screen reader può leggere ogni tipo di testo, ma non può far nulla se si trova davanti a delle scritte presenti in immagini. Per questo motivo è sempre utile inserire, al momento della creazione di pagine web, gli opportuni tag che consentono allo screen reader di leggere del testo alternativo.

Funzionalità

Tipi di screen reader

Command Line Interface (CLI)

Gli screen reader, come qualsiasi dispositivo informatico, seguono direttamente lo sviluppo dei sistemi sui quali vengono utilizzati. Di conseguenza i primi screen reader, nati negli anni ottanta presso il Research Centre for the Education of the Visually Handicapped[9] presso l'Università di Birmingham[10], funzionavano leggendo singolarmente linee di comando. Chiaramente questo tipo di screen reader non può funzionare in sistemi che utilizzano GUIs (Graphical User Interface). Questo tipologia, con l'avanzare dei tempi, sta passando in disuso e viene ormai solo utilizzata in particolari sistemi che prevedono ancora l'utilizzo della linea di comando.

Graphical User Interface (GUI)

Con il passaggio da sistemi costituiti da solo testo a sistemi grafici il lavoro degli Screen Reader ha subito un ulteriore complicazione. Un sistema GUI è formato sia da parti testuali che da parti grafiche (come ad esempio bottoni, menu e tab) e sta allo screen reader, in alcuni casi anche con la collaborazione del sistema operativo, interpretarli correttamente.

Uno screen reader che opera su delle GUI può funzionare principalmente in due modi.

Sfortunatamente non tutto il software supporta l'utilizzo delle API e di conseguenza l'uso del off-screen model deve sempre essere reso disponibile.

Applicazioni self-voicing

Sono programmi che integrano la funzione di lettura o di produzione di suoni di avviso, essi consentono alle persone con problemi visivi di interagire direttamente senza l'uso di applicazioni screen reader esterne. Di questa categoria fanno parte i talking web browser, ovvero browser con la funzione di screen reader integrata al loro interno. Questi browser però sono ormai diventati obsoleti, in favore di add-on mirate a browser più conosciuti e funzionali quali Mozilla Firefox[12] oppure Opera[13]. Grazie a Fire Vox[14], estensione per Mozilla Firefox, viene reso disponibile un ottimo browser con funzionalità di self-voicing su i tre principali sistemi operativi (Linux, Mac OS e Windows).

Web-based

Una relativamente nuova tipologia di screen reader è quella web-based. Vi sono principalmente due software che compiono questo genere di "lavoro", uno è Spoken Web[15] disponibile solo per Microsoft Internet Explorer[16] e di conseguenza solo per il sistema operativo Microsoft Windows, l'altro è BrowseAloud[17], disponibile sia per Windows che per Mac OS X. In questo genere di screen reader sono presenti solo le più elementari funzioni e se ne consiglia l'uso solamente in casi eccezionali, ad esempio per la navigazione da un computer pubblico nel quale non si ha libertà di accesso software.

Screen reader integrati in SO

2.2.2.3 Text-to-speech

I software di text-to-speech, in italiano chiamati di sintesi vocale, come già detto nel capitolo precedente hanno il compito di trasformare del testo scritto in parlato mediante una riproduzione artificiale della voce umana.

I software di sintesi vocale rivestono un ruolo di fondamentale importanza per l'accessibilità informatica. Combinati con screen reader consentono agli utenti non vedenti di poter interagire con i computer ed assistono anche persone con problemi visivi nella lettura dei testi. Inoltre questa tipologia di software è ottima per aiutare persone affette da dislessia ad ascoltare e di conseguenza a comprendere documenti di testo con maggior facilità.

Funzionamento

Il lavoro di un software di tipo text-to-speech si divide in due parti.

La sintesi vocale vera è propria si può realizzare mediante l'incatenazione di parti vocali memorizzati in un database, ad ogni fonema codificato corrisponde una di queste registrazioni. Un sistema costituito dal campionamento di singoli fonemi o coppie di essi avrà un database relativamente piccolo ma in compenso ne perderà la qualità della registrazione, un sistema che invece ricorre alla registrazione di parole intere o addirittura di intere frasi avrà una qualità migliore a discapito questa volta della velocità e dello spazio occupato dal database.

Un'alternativa a questo sistema è predisporre il sintetizzatore con dei modelli di tratti vocali in modo da cercare di simulare la voce umana nel modo più fedele possibile, questa tecnica però è molto più complicata della precedente.

Il livello di comprensione della voce prodotta da un computer è molto più importante che il livello di qualità della voce stessa, soprattutto se il software in questione è usato da persone non vedenti, le quali affidato alla sola voce digitale la comprensione di interi testi.

2.2.2.4 Speech-to-text

I software di speech-to-text, in italiano chiamati di riconoscimento vocale, funzionano esattamente all'opposto di quelli di text-to-speech appena trattati. Si occupano di riconoscere il linguaggio umano e di trasformarlo in un input valido ad un computer. Sono utilizzati sia per riconoscere testi, e quindi trascriverli direttamente senza dovere digitare alcuna parola, oppure per controllare diversi sistemi solamente con l'uso della voce. Com'è facile intuire questo tipo di software è estremamente utile per chi ha problemi di mobilità degli arti e quindi l'interazione con la macchina potrebbe risultare alquanto complicata, ma non solo anche i normali utenti posso trarre giovamento da questa tipologia di applicazioni.

Funzionamento

Un software di riconoscimento vocale funziona mediante un algoritmo di tipo statistico inferenziale, ricostruendo il linguaggio in base alla frequenza delle associazioni fra parole. Il riconoscimento a basso livello si basa anche su un vocabolario fonetico che contiene le pronunce base di numerose parole nella lingua impostata.

Esiste un altra tipologia di riconoscimento vocale, più incentrata sul riconoscimento delle singole parole. Questo tipo di software necessita di una maggiore interazione dell'utente in quanto in questo caso il riconoscimento della pronuncia ricopre un ruolo fondamentale. Il programma si limita a trascrivere quanto detto dall'utente senza addentrarsi in ulteriori analisi della frasi o calcoli di abbinamento tra parole.

In entrambi i casi l'uso di un vocabolario non solo di singole parole, ma anche di loro associazioni tipiche, sia esso inserito ed aggiornato dal programmatore, dall'utente o per mezzi statistici, è di notevole aiuto a migliorare la qualità del riconoscimento.

Come già accennato, solitamente prima dell'uso di un software di riconoscimento vocale è necessario configurarlo, leggendo per esempio un brano davanti al microfono, per "addestrare" il programma alla voce del lettore. Questa procedura consente al software di ridurre drasticamente il numero di errori nei quali può incappare durante il riconoscimento vocale. Al momento dell'addestramento viene costruita una libreria di file vocali specifica per l'utente, questo viene fatto registrando campioni di voce, analizzandoli e campionandoli. L'addestramento può proseguire quando il programma non riconosce la pronuncia di una parola, digitando il testo e registrando la pronuncia corrispondente in modo che il programma crei un file vocale, creando di fatto un abbinamento testuale/ vocale. Alla parola può essere abbinata, in alternativa, una sequenza di simboli dell'alfabeto fonetico.

2.2.2.5 Optical Character Recognition (OCR)

I software OCR (Riconoscimento Ottico dei Caratteri in italiano) hanno lo scopo di trasformare il testo, sia esso stampato o scritto a mano, contenuto in un'immagine, solitamente prodotta mediante l'utilizzo di uno scanner, in testo digitalmente modificabile per mezzo di un editor.

Sono utilizzati per digitalizzare grandi quantità di testi disponibili solamente in formato cartaceo, come ad esempio vecchi libri. Questo, oltre a consentire una notevole editabilità e riusabilità dei testi, permette anche una maggior accessibilità alla cultura e alle informazioni da parte di persone con difficoltà visive, mediante l'utilizzo di software text-to-speech o screen reader, e soprattutto non dovendo necessariamente passare per decodificazioni più scomode e dispendiose che possono essere rappresentate ad esempio dai libri scritti in Braille.

Funzionamento

Il funzionamento di questa tipologia di software ha notevoli analogie con quello dei sistemi speech-to-text. Il riconoscimento del testo si basa sia sul riconoscimento dei singoli caratteri sia a come essi si trovano scritti all'interno di una parola e più in generale all'interno di una frase.

Data la grande varietà in cui si può presentare un testo scritto un software di riconoscimento ottico dei caratteri ha bisogno di un "addestramento" per migliorare notevolmente il suo funzionamento.

Le ultime versioni di questo tipo di software posseggono funzioni di riconoscimento ed interpretazione dei contorni del testo, in questo modo consentono di mantenere l'impaginazione dei documenti elaborati.

2.2.2.6 Spell Checker

Sono software o parti di esso che si occupano del controllo degli errori ortografici all'interno di un testo computerizzato. Possono essere programmi autonomi capaci di interagire con qualunque altro programma nel quale sia possibile introdurre un testo, oppure parte di altre applicazioni, come ad esempio nei word processor, in questo caso il loro scopo è di integrare le funzioni offerte da tale applicativo.

Le prime versioni di spell checker si limitavano alla sola messa in evidenza degli errori, ora la maggior parte di essi consente di suggerire possibili correzioni e in alcuni casi si possono addirittura impostare sostituzioni automatiche, sia di parole errate o di errori di capitolazione o di forma.

Funzionamento

Solitamente il lavoro di uno spell checker si divide in due parti:

Esistono tipologie di spell checker che non si limitano al solo controllo ortografico della singola parola ma ampliano il controllo, e di conseguenza i vari suggerimenti dati, sia alla sintassi che alla grammatica.

Referenze

  1. ^ http://www.microsoft.com/ - pagina ufficiale di Microsoft Corporation.
  2. ^ http://www.microsoft.com/WINDOWS/ - pagina del sistema operativo Microsoft Windows.
  3. ^ http://windows.microsoft.com/it-it/windows/make-screen-items-bigger-magnifier - pagina relativa allo screen magnifier di Microsoft Windows.
  4. ^ http://www.apple.com - pagina ufficiale di Apple Inc.
  5. ^ http://www.apple.com/osx/ - pagina del sistema operativo Apple Mac OS X.
  6. ^ http://www.linux.org/ - pagina ufficiale del progetto Linux di Linus Torvalds.
  7. ^ http://www.compiz.org/ - pagina ufficiale del progetto Compiz, windows manager per Linux.
  8. ^ http://wiki.compiz.org/Plugins/Ezoom - pagina ufficiale del progetto EZoom per Compiz.
  9. ^ http://www.education.bham.ac.uk/research/victar/ - link al Visual Impairment Centre for Teaching and Research dell'Università di Birmingham.
  10. ^ http://www.bham.ac.uk/ - sito ufficiale dell'Università di Birmingham.
  11. ^ API - Application Programming Interface (Interfaccia di Programmazione di un'Applicazione in italiano) è un insieme di procedure che permette di astrarre e di conseguenza semplificare il funzionamento di un determinato programma, per permettere ad altro software di interagire con esso.
  12. ^ http://www.mozilla.com/firefox/ - pagina ufficiale del browser Mozilla Firefox.
  13. ^ http://www.opera.com/ - pagina ufficiale del browser Opera.
  14. ^ http://firevox.clcworld.net/ - pagina ufficiale del progetto, sviluppato da Charles L. Chen.
  15. ^ http://www.spoken-web.com/ - pagina ufficiale del progetto Spoken Web.
  16. ^ http://windows.microsoft.com/it-it/internet-explorer/download-ie - pagina ufficiale del browser Microsoft Internet Explorer.
  17. ^ http://www.browsealoud.com - pagina ufficiale di TextHelp System, sviluppatori di BrowseAloud.
  18. ^ http://www.apple.com/accessibility/voiceover/ - sezione sul sito Apple dedicata al software VoiceOver.
  19. ^ http://www.apple.com/ios/ - pagina ufficiale di iOS, sistema operativo per Apple iPhone.
  20. ^ http://www.gnome.org/ - GNOME (GNU Network Object Model Environment), Linux Desktop Environment.
  21. ^ https://wiki.gnome.org/Attic/LSR - pagina ufficiale del progetto Linux Screen Reader per GNOME.
  22. ^ http://www.microsoft.com/enable/training/windowsvista/narrator.aspx - pagina relativa allo screen reader Microsoft Narrator.
  23. ^ http://www.nvaccess.org/ - pagina ufficiale del progetto NVDA (NonVisual Desktop Access).