.NET

Hand Gesture Recognition powered by EmguCV

In questi giorni prima di rimettermi in moto in vista della tesi di laurea, ho ultimato e perfezionato un progetto personale che consiste nel riconoscere i gesti della mano utilizzando EmguCV. Le tecniche con cui è possibile estrarre e riconoscere una mano sono molteplici. Nell’approccio scelto sono andato a lavorare su alcuni spazi di colore quale ad esempio YCrCb oppure Hsv definendo una particolare regione dello spazio che contiene la distribuzione di colore della pelle. Eseguito questo filtraggio si ottiene una maschera binaria della nostra mano, che successivamente viene processata al fine di rimuovere il rumore residuo. Dopo aver ottenuto...

posted @ Friday, September 3, 2010 6:22 PM | Feedback (64)

Object Oriented Parser Design

Sulla scia del post precedente e dei commenti ricevuti, in particolar modo ho riflettuto molto sull’accusa :) mossa da Antonio circa la violazione dell’information hiding (aka stupro di oggetti) condivido l’approccio che ho seguito nel disegnare il parser per espressioni regolari a discesa ricorsiva (Recursive Descent Parser). Senza scendere troppo nei dettagli di come operi un parser, diciamo che in una prima fase il Parser esegue analisi lessicale appoggiandosi ad un oggetto Tokenizer che ha il compito di trasformare una stringa in input (nel caso in esame una regex) in uno stream di Tokens. Un token rappresenta un elemento di...

posted @ Thursday, April 29, 2010 11:18 AM | Feedback (25)

Ancora sulla complessità del codice

Sulla scia dei post educativi di Luka e di Antonio ho riflettuto sul codice che sto producendo per il mio ultimo progetto che andrà a breve su codeplex, ovvero un parser di regex con successiva conversione ad automa deterministico minimizzato. L’implementazione “hand made” del parser  (lo scopo del progetto dovrebbe essere propedeutico per gli studenti che affrontano un primo corso sui compilatori o di informatica teorica) segue i consigli dell’ottimo testo Flexible Pattern Matching in Strings. Questo è la prima implementazione che segue passo passo lo pseudo codice del libro (con l’aggiunta del campo enum sulla tipologia di...

posted @ Monday, April 26, 2010 12:37 PM | Feedback (32)

ThinkCode.TV, screencast di programmazione in italiano

Un paio di mesi fà mi sono imbattuto in ThinkCode.TV, una startup nordamericana fondata da tre italiani con l’obiettivo di creare e vendere screencasts di programmazione in italiano. La cosa che inizialmente mi ha fatto riflettere è che la tendenza a lasciare il “bel” paese per  motivi di lavoro “purtroppo” non si arresta, contribuendo di fatto ad un ulteriore impoverimento nazionale.  A livello tecnico, la cosa che mi ha incuriosito è stata la varietà di tematiche offerte dagli screencasts; si passa infatti attraverso SmallTalk, Python, Jquery, Silverlight fino ad arrivare al TDD. Dopo essere entrato in contatto con...

posted @ Friday, March 5, 2010 11:38 AM | Feedback (34)

SSAS: SVM algorithm Plugin

Difficilmente posto news, stavolta però farò un eccezione in quanto su codeplex, alcuni sviluppatori di Avanade hanno realizzato un plugin per Sql Server hostato su codeplex che implementa una SVM. Al momento attuale può essere utilizzato per eseguire classificazione confrontando le prestazioni del modello con gli altri che si possono costruire usando gli algoritmi inclusi in SSAS(Decision Trees, Naive Bayes, Neural Network ); ho condotto alcuni esperimenti e devo dire che l'implementazione dell'algoritmo è buona anche se come ho suggerito nel forum è necessario inserire un modo per calcolare i parametri ottimali per l'addestramento della macchina; il mio suggerimento è...

posted @ Thursday, February 5, 2009 9:54 PM | Feedback (33)

Microsoft Robotics Studio: Custom Drive by Wire

Apro questo post ringraziando gli amici che hanno accompagnato la mia avventura da student partner, bella esperienza terminata lo scorso anno... non voglio dilungarmi sulle motivazioni di questa decisione, resta il fatto che il bello di essere studenti DOVREBBE essere quello di avere la libertà di scegliere senza avere vincoli o restrizioni del caso... detto questo lo scorso fine settimana è arrivato il premio per il "lavoro" che ho svolto da MSP... un bel Lego Mindstorm NXT!!!! Il kit è davvero bello e dopo aver preso contatto con i vari sensori e aver costruito il primo semplice robottino ho deciso...

posted @ Monday, January 26, 2009 5:50 PM | Feedback (103)

Aggiornamento Data Structure and Algorithms Book

Proprio prima di Natale, con il mio amico Granville abbiamo rilasciato un aggiornamento del libro gratuito che abbiamo scritto su algoritmi e strutture dati. Sono stati introdotti alcuni capitoli aggiuntivi e revisionati quelli già presenti nella prima release. I numeri lasciano spesso il tempo che trovano però aver ricevuto oltre 14.000 download per l'ultima release fà davvero piacere. Data Structures and Algorithms: Annotated Reference with Examples Technorati Tag: .NET,Data Structure

posted @ Friday, December 19, 2008 10:00 AM | Feedback (10)

Data Structures and Algorithms 0.6 released!

Abbiamo appena rilasciato la versione 0.6 della nostra libreria Data Structure and Algorithms. Questa nuove release include come feature principali: AVL Tree (albero bilanciato) Deque (double ended queue) Radix Sort (algoritmo ordinamento) Download Data Structures and Algorithms 0.6!

posted @ Friday, September 12, 2008 3:24 PM | Feedback (11)

Download gratuto: Data Structure and Algorithms eBook

E' con grande piacere che dopo alcuni mesi di gestazione insieme al mio amico Granville, abbiamo pubblicato il libro  Data Structures and Algorithms: Annotated Reference with Example. Allo stato attuale il libro è ancora un work in progress ma personalmente sono soddisftatto di come sia evoluto nel corso del tempo (sono un pò di parte... ). Il libro è rivolto a tutti coloro che conoscono un linguaggio di programmazione ad oggetti, senza particolari requisiti; l'utilizzo dello pseudo codice pone infatti l'attenzione sulla parte algoritmica piuttosto che su quella di implementazione. La scelta di renderlo totalmente free è data dalla convinzione che...

posted @ Wednesday, August 27, 2008 7:45 PM | Feedback (12)

[University Stuff] Simple NAry Tree

In questi giorni, per un esame di algoritmi distribuiti ho avuto la necessità di lavorare con un particolare albero nario. Genericamente un albero nario è un albero in cui ogni nodo presenta al massino n figli. Un albero binario è un caso particolare di albero nario dove n=2; in figura viene mostrato un albero 3ario. Vediamo come realizzare un semplice albero nario che permetta di specificare il fattore di ramificazione e che permetta di inserire nodi all'interno dell' albero in modo tale che l'albero venga riempito livello per livello (prima ci creare un nuovo livello si...

posted @ Thursday, June 26, 2008 7:01 PM | Feedback (6)

Full .NET Archive