Archivio app BH

Analisi della macinatura del caffè

Avvio veloce – L'idea di utilizzare un'immagine di caffè macinato per misurare la distribuzione delle dimensioni è venuta dal dottor Jonathan Gagné. Con il generoso aiuto di Jonathan e del personale di Barista Hustle, questa versione basata su browser apre la tecnica a un pubblico più ampio.

I numeri NON sono ancora ottimizzati o convalidati, ma avrai un'idea generale. L'immagine di prova che si apre ha una risoluzione relativamente bassa, quindi non è rappresentativa di un'immagine di alta qualità, ma è utile per mostrare i principi. La sua larghezza calibrata è di 138 mm per iniziare.

Come funziona?

Spiegazione di base – L'idea è semplice. Scatta una foto delle macinature e identifica automaticamente ogni vera particella nell'immagine, conta il numero di pixel in quella particella, quindi calcola come i grani sono distribuiti su varie dimensioni

Spesso si immagina che una tale tecnica di "analisi dell'immagine" sarebbe molto difficile. In realtà, ci sono due grandi difficoltà che non hanno nulla a che fare con l'analisi di immagini fantasiose:

1 – Ottenere un'illuminazione uniforme, con fagioli neri/marroni perfetti su uno sfondo bianco perfetto è molto difficile. Qualsiasi imperfezione nell'illuminazione, nello sfondo, nel colore dei fagioli rende più difficile distinguere le particelle dallo sfondo o dal rumore.

2 – La calibrazione è molto più complicata di quanto tu possa immaginare. Una pre-calibrazione richiede di prendere sempre l'immagine esattamente dalla stessa distanza. Un oggetto di calibrazione nell'immagine (a) toglie spazio ai grind e (b) necessita di un'identificazione utente basata sul mouse o di un algoritmo intelligente da definire.

Sul principio del "keep it simple", il primo problema viene risolto fornendo una retroilluminazione ai grind. Nel mio caso ho usato lo schermo del mio laptop che si piega in modo piatto: avrei potuto ugualmente usare un monitor appoggiato sul retro. Mi aiuta ad avere un eccellente palmare vuoto detergente che aspira velocemente i grani dopo una prova.

L'altro semplice approccio utilizzato qui è che in qualche modo conosci con precisione l'intera larghezza in mm della tua immagine. La mia tecnica preferita consiste nell'includere una scala lungo la parte superiore o inferiore dell'immagine. L'app lo "blob" in un unico oggetto di grandi dimensioni che viene automaticamente scartato dal controllo MaxPixel, oppure il colore è impostato in modo così debole che il blobbing lo ignora comunque.

Basta leggere la scala (ad es. contando i marker da 5 mm e interpolando gli ultimi mm) e inserire il valore. Poiché utilizzo lo schermo di un laptop, posso creare la mia scala come un'immagine grafica, ottimizzando le dimensioni, la spaziatura, il colore ecc. Per la massima precisione con la minima interferenza con il conteggio. 

Analisi dimensionale – Carica un'immagine. Con l'opzione Pic-only selezionata puoi avere una buona idea della qualità dell'immagine e puoi leggere la scala e inserire un buon valore di calibrazione. Ora devi decidere un valore di soglia. Tutto ciò che è meno luminoso sarà considerato come una particella, tutto ciò che è più luminoso verrà ignorato. Puoi spostare il mouse sull'immagine e ottenere un valore RGBK. La K (per blacK) è il valore della scala di grigi utilizzato per la soglia. Spostati su alcuni grani e fatti un'idea dei loro valori K (piccolo) rispetto allo sfondo (grande). Quindi scegli un valore di soglia che includa in modo sicuro i tuoi grani ma escluda ombre strane, segni ecc. – nel miglior modo possibile. Jonathan ha utilizzato il valore del canale Blu poiché questo è più sensibile al colore marrone dei chicchi di caffè. Puoi scegliere questa opzione se lo desideri. Se fai clic e trascini il mouse su un grano avrai un'idea delle sue dimensioni, a condizione che la calibrazione sia corretta.

Se hai un'immagine rumorosa con molti punti di 1-2 pixel, imposta un valore Min-Pixel di, diciamo, 5, in modo che questo rumore venga ignorato. Di course questo potrebbe escludere alcuni grani reali, quindi è necessario raggiungere un valore di compromesso. Il valore Max-Pixels può spesso essere impostato su un valore medio per poter escludere cose come i segni di scala o un po' di bordo nero che è apparso nell'immagine. Impostalo troppo piccolo e alcuni grani veri vengono esclusi. Troppo grande e un po' di spazzatura saranno inclusi e generalmente ridurranno il valore dei calcoli. Più perfette sono l'illuminazione e l'immagine, meno devi preoccuparti di questi dettagli.

Per analizzare le taglie è consuetudine metterle in “bidoni”. Tutto da 0-0,1 mm potrebbe essere in un contenitore, tutto da 0,1-0,2 mm in un altro ecc. N-Bins ti consente di scegliere. Troppo pochi e non si ottiene un'analisi sensata. Troppi e probabilmente non hai abbastanza grani per contenitore perché i dati abbiano un senso statistico.

Ogni volta che cambi i tuoi input, le cose vengono ricalcolate automaticamente: le velocità sembrano essere OK se non scivoli troppo selvaggiamente. Ottieni NGrounds, il numero di singole particelle identificate (all'interno dei tuoi pixel Min-Max) e Max quello più grande. Questa scatola è molto utile. Se cambi Soglia o Pixel Min-Max  

entro un intervallo ragionevole e se questi valori non rimangono molto modificati, allora sei in una parte felice dello spazio di analisi dell'immagine in cui le tue misurazioni sono molto al di sopra di qualsiasi livello di rumore dalla spazzatura nell'immagine. Se i numeri cambiano molto, i risultati finali dipendono dal tuo giudizio piuttosto che dai numeri difficili. Più tempo dedichi a ottenere immagini ben illuminate con pochi artefatti, meno avrai bisogno di giocherellare con le variabili di controllo.

I risultati - Supponiamo di avere 99 particelle ciascuna di diametro 1 e 1 particella di diametro 100. Puoi dire correttamente "La mia macinatura è 99% taglia 1" e potresti essere molto felice - finché non assaggi il caffè. Un altro modo di pensare è dire che quelle 99 particelle peseranno, diciamo, 1 unità ciascuna, quindi il loro peso combinato è 99. Poiché il peso dipende dal volume che dipende dal diametro³, l'unica grande particella peserà 1.000.000. Pertanto, in termini di peso, le tue 99 particelle sono insignificanti ed effettivamente hai solo un unico grande pezzo di caffè, che non verrà estratto in modo efficiente.

Quindi, quando mostriamo la distribuzione delle dimensioni, potremmo mostrarla in termini numerici, quanti sono per ogni diametro (o sono nel cestino con quell'intervallo di diametri). Questo corrisponde alla nostra intuizione quando guardiamo l'immagine: vediamo tutti quei piccoli grani e a malapena notiamo quelli grandi. Possiamo anche mostrarli in termini di Area che esprime quanta parte della superficie proviene da varie dimensioni delle particelle. E possiamo mostrarli in termini di volume che ci dice dove si trova realmente il volume o la massa di caffè. Ho scelto di tracciare tutti e tre. Possiamo anche tracciarli in modo cumulativo in modo da poter vedere prontamente a quali dimensioni accadono cose interessanti. Ad alcuni piace vederli in logaritmico scala. L'aritmetica dei calcoli è discussa di seguito.

Se hai una grande particella canaglia, i tuoi primi contenitori potrebbero essere vuoti, con un salto nel contenitore finale (volume). Diminuisci Max-Pixel sotto il valore Max mostrato nella casella delle informazioni in alto. Il bidone dei ladri dovrebbe scomparire e la tua trama sembrerà più sensata. Di course, se quella particella canaglia è reale ed è di dimensioni significativamente più grandi, allora (come vedrai nel grafico del volume cumulativo) la tua estrazione di caffè sarà dominata da quella grande particella!

Diffondere la macina - L'app non si stanca di contare. Quindi più particelle puoi inserire nell'immagine, migliori sono le statistiche per l'analisi della dimensione delle particelle. Il problema è che se due particelle si toccano, verranno contate come una particella più grande. Trovare un modo per diffondere il numero massimo di particelle toccando il numero minimo è una delle tue grandi sfide. Jonathan suggerisce di spruzzare con la punta delle dita - un'idea che ho trovato sorprendentemente buona. Ha anche un'opzione per eliminare le particelle che si toccano dall'immagine, ma richiede di effettuare il giudizio e di eliminarle con il mouse.

La tua macchina fotografica - Con l'analisi del caffè macinato, come con tutto il resto, è spazzatura dentro, spazzatura fuori. Puoi facilmente scattare una foto con la fotocamera del tuo smartphone, ma tenderai a scoprire che la parte "intelligente" del telefono è una vera seccatura. Potrebbe autofocus su qualcosa di importante per lui, e non per te. Potrebbe decidere che il tuo netto contrasto è davvero sgradevole, quindi appianerà automaticamente la tua illuminazione. Chissà quali algoritmi “intelligenti” invocherà. Gli smartphone non sono stati progettati da persone i cui interessi erano principalmente l'acquisizione di dati precisi, ad alto contrasto,

primi piani per l'analisi delle immagini. Se sei abbastanza intelligente da sapere come disattivare le funzioni della fotocamera intelligente sul tuo telefono, allora sei partito bene.

La mia esperienza è che con la mia fotocamera Canon abbastanza buona, ho bisogno di disattivare automaticamente tutto. Provando alcune impostazioni manuali, potrei ottenere un bilancia di risoluzione, contrasto, messa a fuoco che di volta in volta mi ha dato gli stessi risultati. Quando ho permesso che prendesse il sopravvento con funzioni automatiche, non sapevo mai cosa avrei ottenuto, al livello di dettaglio richiesto per una buona analisi della macinatura del caffè.

Per rendere le cose ancora più semplici (a lungo termine), imposta un rig per la fotocamera in modo che sia sempre perfettamente in linea con la sorgente retroilluminata, con la scala chiara in alto, a una distanza ottimale. Nell'immagine vedi che ho la mia macchina fotografica su un robusto treppiede e uso una "livella a slitta" (il blob giallo-verde) per ottenere tutto quadrato.

I calcoli – Non ci sono abbastanza informazioni in un'immagine 2D di grani 3D per creare un'analisi accurata delle loro dimensioni. I calcoli si riducono quindi a una scelta di approssimazioni.

Joanathan ha scelto un metodo più sofisticato che utilizza le informazioni sulla forma 2D. Per velocità e semplicità ho scelto un approccio diverso. Forse una versione futura tenterà qualcosa di più sofisticato.

Tutto quello che so dopo l'elaborazione dell'immagine è il numero di pixel che compongono un "blob". Posso chiamarla un'area, A, quindi so che se questo fosse un cerchio, il raggio sarebbe dato da Α=πr². Ora ho lo pseudo-raggio, r=√(A/π), di ogni blob. Posso quindi dire che la superficie del grano è 4πr² e il suo volume è 4/3πr³. Questo mi consente, per ogni contenitore di raggio (sebbene lo riporto come il diametro più comodo), di conoscere il numero di particelle in quel contenitore, l'area di quelle particelle e il loro volume.

Per riportare i risultati, per semplicità do un valore medio di Numero, Area e Volume per catturare una "media". Per chi ha familiarità con l'argomento, questi valori sono D[1,0], D[2,1] e D[3,2]. C'è anche un Dx che definisci come D90, D80 ecc. tramite il cursore. Questo è il diametro al di sotto del quale si trovano 90%, 80% ecc. dei grani. Sono disponibili altri valori “medi” e ulteriori opzioni potrebbero essere aggiunte in seguito.

Realizzato dal Professor Steven Abbott, appositamente per Barista Hustle!

Questa app è stata creata appositamente per Barista Hustle e i nostri abbonati dal professor Steven Abbott. La sua straordinaria carriera lo ha portato in giro per il mondo, con concerti che hanno incluso il lavoro con i coltivatori di banane nelle Filippine, aziende di stampa in Colombia e una società di valvole per sacchetti di caffè negli Stati Uniti. Il prof Abbott è un esperto mondiale di scienza dell'essiccazione e diffusione. Le sue app e gli ebook sono un punto di riferimento per chiunque sia seriamente interessato alla scienza dell'estrazione.

Guarda la collezione di libri del professor Steven Abbott qui!