Tuesday, December 15, 2009
anonymous comment
La cosa è strana perché secondo GoogleAnalytics non ho visite da almeno 3 mesi.
Vabbé che in rete c'è un sacco di gente strana, però come fanno a chiedermi se ci sono novità in un post di luglio. Non ho scritto molto, ma qualcosa ho scritto da quella volta.
Comincio a sospettare che dietro a quei commenti non ci siano utenti reali e quindi da oggi cambio qualcosina. Lascio ancora l'opzione anonymous, ma ho aggiunto il captcha, così almeno stoppo i troll stupidi.
Personalmente poi non mi piacciono i commenti anonimi, se hai qualcosa da dire e credi in quello che dici non dovresti aver paura di mettere la faccia. Anche un avatar va bene, è comunque meglio di niente.
....
qualche novità ci sarebbe, magari con la prossima settimana ho un po' di tempo libero in più e scriverò qualcosa.
Wednesday, November 18, 2009
quanto tempo
Veramente solo poco più di un mese, ma sono successe tante di quelle cose che sembra quasi una vita.
Magari nei prossimi giorni provo a fare un po' il punto della situazione.
Wednesday, October 14, 2009
Segnali
2) ho iniziato un corso di Wed Designer
3) cercano un camerire per la sera
4) sono pieno di idee nuove
5) ero gia pieno di idee
...
tutto mi dice che mi devo liberare di questa zavorra
Thursday, September 17, 2009
C#, quindi?
"Ora il linguaggio C# non dovrebbe avere più segreti per te e dovresti saper utilizzare senza problemi Visual Studio 2008 per creare applicazioni professionali. [ ] Hai superato il primo ostacolo, ma i migliori programmatori C# si perfezionano esercitandosi continuamente e puoi fare esperienza solo creando applicazioni C#."
John Sharp - Visual C# 2008 Step by Step
....
vediamo che non vada come il C++
Tuesday, September 15, 2009
would get a mac
ieri c'è mancato poco, il pc è stato molto vicino ad avere un incontro ravvicinato con il muro. Un incontro ravvicinato e traumatico, molto traumatico. Se non fosse stato abbastanza traumatico, gli avrei procurato un secondo incontro.
A salvarlo è stato il mio budget, ma soprattutto il fatto che non ricordavo da quando avevo fatto il backup e quindi non sapevo bene quanta roba nei documenti avrei perso. Un po' anche il pensiero di prendere un pc nuovo, configurarlo e installare tutti i software che uso e mi servono. Più o meno un weekend di lavoro duro e una manciata di giorni a seguire di lavoro fino.
Ma malgrado il titolo, non mi è neppure sfiorata l'idea di prendere un mac. Perché i programmi che uso non sono per mac. Matlab e Visual Studio su tutti. Per gli altri si ci sono le versioni da mac, ma dovrei procurarmele.
Qualcuno potrebbe dire che posso usarle in emulazione: ma perché dovrei comprare un computer nuovo per emulare uno vecchio? Perché dovrei comprare un mac, che è un pc fichissimo che costa almeno 500€ di più, per emulare un pc vecchio e sottopperformante?
Tanto vale comprare un vero pc, magari in offerta che è comunque meglio del mio, e usarlo per quello che è: un pc con i suoi pregi e difetti.
Comunque per adesso io e il pc abbiamo stipulato una tregua. Ho disabilitato SpywareTerminator (che a dirla tutta mi aveva rotto i coglioni fin dall'inizio) e per adesso va tutto bene. Gli altri anti-malware non hanno trovato niente quindi sono relativamente tranquillo di non avere un pc zombie.
....
la verità è che sto aspettando dopo natale per acquistare un windows7 nativo, senza dover per forza passare da Vista.
Sunday, September 13, 2009
get a mac
Quando rallenta
Quando non fa quel che gli si ordina
Quando non si sa cosa faccia
Quando si blocca e non ne vuole sapere si andare avanti
Quando lo devi spegnere e farlo ripartire
Quando lo devi spegnere un'altra volta
Quando lo vorresti prendere a pugni, sbatterlo contro il muro e fracassarlo con una mazza pesante
In quei momenti che mi viene voglia di prendere un mac
Saturday, September 12, 2009
Full of C#
Mi sono fatto un'altra settimana intensiva di C#. Così in 15 giorni ho divorato oltre 500 pagine di manuale. Negli ultimi giorni facevo una media di due capitoli al giorno. Avanzano ancora gli ultimi capitoli, quelli su ADO.NET e le applicazioni per il web. Poi non contento mi sono preso anche il terzo manuale, quello grossissimo. Adesso ho la serie completa:
- Visual C# Express Edition per i principianti (211pag)
- Visual C# Passo per Passo per diventare esperto (666pag)
- Visual C# Il linguaggio per gli sviluppatori (738pag)
In totale fanno 1625 pagine e non ho ancora fatto un programmino decente tutto mio. Ci sono un sacco di progetti per la testa, molti c'erano anche prima dei manuali e adesso hanno qualche possibilità in più di diventare reali. Almeno adesso so da dove iniziare e dove cercare aiuti. Anche con Matlab all'inizio era tanto se realizzavo un grafico in 2d con qualche dato, adesso invece mi faccio le gui per qualunque cosa. Quindi con C# devo avere un approccio simile: iniziare con cose semplici e via via complicarle. Il difficile e acquisire una mentalità ad oggetti.
Per adesso la priorità c'è l'ha il mal di testa. Sono in crisi di astinenza da corsa.
Domani riposo tutto il giorno.
Lunedì ricomincio a correre
....
in tutti i sensi
Monday, September 07, 2009
Altro
La settimana passata non ho postato niente perché mi sono dedicato ad altro.
Forse lo stress dei giorni prima, forse il fisico in astinenza da corsa forse le solite cose, fatto sta che ho dovuto staccare un attimo.
Ho fatto altro. Ho macinato un po' di capitoli di C#. Adesso dovrei avere in mano le conoscenze più importanti di questa lingua. In teoria dovrei, in pratica magari meno. Era così anche per MatLab, anzi li non avevo nessuna guida passo per passo, tutta pratica. Imparato tutto macinando script su script. Però li c'è una guida in linea dove trovavi sempre le risposte e i suggerimenti che servivano.
Visual C# è un bel po' più complesso, ma è solo questione di impratichirsi quanto serve.
....
per questioni di scaramanzia nessuna anticipazione sul da farsi, il futuro non esiste, esiste solo l'oggi e il passato è solo un ricordo
Monday, August 31, 2009
giornata sospesa (aggiornamento)
Era qualcosa di importante? Non lo so, ma era qualcosa che io volevo fare, qualcosa che mi piace fare e, forse, qualcosa che mi servirà in futuro. Quindi almeno per me è qualcosa di importante.
giornata sospesa
Prima un incubo di quelli che ti fanno sudar freddo, dove tutte le tue paure diventano reali. Per fortuna dagli incubi ti puoi svegliare e ritrovarti in un altro mondo, quello reale. Ma l'altro ti resta dentro come una macchia che non è andata via.
Poi il resto della giornata prosegue senza meta. Tante le cose da fare, tante le cose iniziate, tante le cose lasciate la, sospese, in attesa di momenti migliori.
Alla fine mi ritrovo a fare cose che non facevo da mesi, lasciate sospese in altri momenti e che adesso devo per forza riprenderle. Ma il solo toccarle mi fa ricordare che ci sono altre cose più urgenti più importanti da fare, da riprendere e concludere.
Alla fine anche quelle restano sospese, in attesa...
Alla fine mi ritrovo a girare in tondo chiuso dentro le quattro mure che ho innalzato per proteggermi o solo per nascondermi da quello che c'è fuori e che non posso combattere.
E mi ritrovo prigioniero di me stesso.
E mi ritrovo a tirar avanti fino a domani. Perché domani è un altro giorno.
...
adesso è meglio se vado a fare cose più importanti...
Sunday, August 30, 2009
Videolab 0.5 Beta Version
Con il form Save ho riscritto tutte le componenti per gestire in modo dinamico i movie.
Con questa ultima fatica Videolab si merita una bel avanzamento e arriva alla beta version 0.5.
Si lo so ho saltato la 0.4, ma le modifiche fatte erano tali che da meritarsi un doppio scatto.
Non solo adesso i movie sono gestiti in modo dinamico, con un bel alleggerimento quando si usa il .mat, ma anche le parti che gestiscono i parametri dei filtri, videosetup e filtrisetup, hanno subito numerose modifiche.
Infine ho fatto anche da beta-tester (se non lo faccio io chi vuoi che lo faccia) e ho trovato e coretto un paio di bugs. Adesso funziona proprio per benino.
Si, adesso è tempo di pensare ai filtri
Si, adesso è proprio tempo di mandare quella email
...
quando sarà finita mi tolgo tutte queste catene
Friday, August 28, 2009
nuovi percorsi
Ecco fatto, Videolab è libero dai tassativi e domani libero anche tutti gli altri. Se no sai che ridere.
...
ridendo e scherzando Videolab è arrivato a 1298 righe
Innesti dinamici
l'innesto di cma è riuscito piuttosto bene e ha funzionato fin da subito senza dare grossi problemi. Mi sono sorpreso dal successo dell'innesto.
Ben altra musica l'idea di passare al modo dinamico. Questo nuovo modo di trattare i movie mi costringere a una profonda revisione di molte e fondamentali parti del progetto. Filtramimovie, la function che esegue la chiamate dei singoli filtri mi è costato più di un giorno di lavoro. E ancora non ho messo mano alla parte di save e open.
Non basta, sono ormai convito di rinunciare anche alla parte di tassativo che imponeva di passare i path dei file in parti separate dentro una struct. Ho scoperto l'esistenza di fileparts, una cosina interessante che se usata mi semplifica non poco. Quasi come l'uso di try+catch.
A proposito, li sto mettendo un po' ovunque e in parte mi hanno risolto una cosa fastidiosa, ma non del tutto. Però adesso ho meno l'esigenza di uccidere i processi.
Wednesday, August 26, 2009
Innesti
L'innesto di CMA in VideoLab è riuscito.
Ci è voluto un po' ma alla fine si è integrato bene. Restano ancora un po' di cosette da definire, ma il grosso è stato fatto. Poi con calma, durante il percorso post operatorio e la riabilitazione, farò i restanti correttivi.
Pensavo peggio, comunque.
.....
Ho scoperto che come C#, anche in Matlab c'è il comando Try... Catch...
Ne farò un uso molto intensivo
......
Si, lo scoperto solo adesso e allora?
Tuesday, August 25, 2009
Grande e Lento 2
il riassunto della puntata precedente si trova qui
I test per lavorare sui video in modo dinamico sono andati bene. Si può caricare di volta in volta solo i frame che servono senza dover creare un object con tutti i dati del movie. Non solo mi sono creato una function anche per salvare i frame in modo dinamico. A essere onesti non è eccezionale, carica tutto il movie e sostituisce il frame in questione, però funziona ed è pratica almeno quanto la function di lettura.
Convertire VideoLab al lavoro dinamico però non è semplice. Non mi aspettavo certo una passeggiata, fosse altro per il numero di righe in gioco. Ma la conversione richiede di ripensare tutta la struttura che sta sotto e gestisce tutti i dati usati dalle varie funzioni.
Usare due file .mat si sta rilevando inutile, come inutile la gestione dei nomi dei file per manipolare i movie. Inoltre dovrò mettere mano ai form di open e save. La volta del tassativo me le ero cavata con poco, rinunciando a un funzionamento completo ma questa volta non posso tralasciarli.
Ma devo mettere mano anche al modo di chiamare i filtri. Anche questa dovrà essere fatta in modo dinamico.
Alla fine dovrei ottenere un programma più snello, con file temp più piccoli e con codice di più facile lettura e quindi più maneggiabile.
Pagherò in un funzionamento generale più lento, infatti lavorare in modo dinamico vuol dire fare più accessi al disco che sono più lenti, soprattutto sul mio portatile. Per adesso mi accontento.
Friday, August 21, 2009
Cose da filtrare
Magari in qualche vecchio post avevo già spiegato che cosa sto cercando di fare, ma visto che sono entrato nel vivo del progetto un breve ripasso fa bene. Anche a me.
Lo scopo di VideoLab è di prendere un vecchio film, analizzarlo un po', filtrarlo e restituire il film bello e pulito come se fosse nuovo e magari anche meglio. Una specie di Perlana per i filmini anziché per i golfini.
Si ma cosa deve filtrare? Filtra quelli che per il momento sto chiamando genericamente errori. Sono tutte quelle schifezze che si vedono sui vecchi film. Graffi, polveri, linee o puntini che appaiono, si muovono veloci sulla scena e scompaiono nel nulla. Neanche fossero degli UFO.
Insomma tutto quel sporco che i più fighi aggiungono alle immagini per dagli un atmosfera vintage o grunge, come va tanto di moda tra i photoshopolic.
La natura di questi errori è la più varia, di solito sono il prodotto di una cattiva conservazione del nastro (si sono filmini realmente vecchi e registrati su nastro magnetico) e di una poco attenta digitalizzazione.
Poco importa da cosa sono dovuti, a me interessa come si comportano.
Principalmente ho a che fare con righe bianche e orizzontali che appaiono all'improvviso e si muovono velocemente attraverso lo schermo per sfuggire verso l'alto. Hanno forma e lunghezza irregolare che cambia durante al loro breve vita. Spesso non sono neanche delle righe ma semplici punti bianchi.
Visti però un frame alla volta sono solo dei agglomerati di pixel bianchi o comunque diversi da tutti gli altri intorno.
Ecco, lo scopo dei filtri è riconoscere queste cose e cercare pixel buoni con cui ricoprire le zone danneggiate.
Il lavoro di Roug Chi Chang e Timothy K. Shish è stato molto utile per darmi un metodo, ma come ho detto i loro filtri mal si adattano ai miei filmini.
Oggi ho sviluppato la quarta versione del prototipo di CMA aggiungendo il controllo spaziale del frame. I risultati sono molto buoni. Nei prossimi giorni conto di trasformarlo in una function e di implementarlo dentro VideoLab.
....
Mi aspettano giorni di tanti errori stupidi
Thursday, August 20, 2009
CMA vs BMA+TMA
Wednesday, August 19, 2009
I Filtri
i filtri implementati in VideoLab si basano su un lavoro di Roug Chi Chang e Timothy K. Shish trovato da qualche parte in IEEE.
I filtri implementati sono quattro e lavorano in successione. I primi due BMA e TMA fanno una prima ricerca grossolana delle aree sospettate di contenere errori, gli altri due rifiniscono queste zone, scartando i falsi positivi ed eventualmente definendo meglio i contorni degli errori.
BMA fa un controllo spaziale selezionando una piccola porzione del frame. Se in questa porzione ci sono un certo numero di pixel diversi dalla media degli altri, allora tutto la zona viene segnata come errata.
BMA è piuttosto grezzo e non distingue un bordo di un oggetto da un vero errore. Il risultato che molte zone segnate sono in realtà buone.
Spetta poi a TMA fare un controllo migliore su queste zone segnate. Facendo un controllo spaziale e temporale (cioè con i pixel dei frame precedenti) scarta i pixel che non sono sbagliati.
TMA lavora meglio, è più accurato, ma paga in termini di tempo. Anche perché quando trova dei pixel sospetti, fa un ulteriore controllo più approfondito. Inoltre paga i tanti falsi positivi segnati da BMA.
Nel momento in cui mi sono concentrato sulle caratteristiche degli errori che cercavo, è stato evidente che l'accoppiata BMA e TMA non erano adatti ai mie problemi. Questo malgrado che Roug e Timothy avessero un problema simile al mio.
Per questo sta prendendo forma CMA.
....
nel mezzo mi diletto a mettere giù un algoritmo per risolvere i sudoku. le prime prove sono incoraggianti a conforme che il mio metodo sistematico è valido. Da migliorare
....
si lo so, sono deficiente ma è nella mia natura
Thursday, August 13, 2009
Un caldo autunno
Si avvicina la resa dei conti, sarà un autunno molto caldo.
Dovrò contattare lui per vedere cosa fare di videolab e di tutto il resto.
Dovrò decidere se continuare a ballare oppure no, comunque in un posto nuovo.
Dovrò decidere se fare un corso di inglese o se meglio fare qualcos altro, per esempio .NET o come si chiama, magari anche tutte e due
Dovrò vedere se trovo una work-experience.
Dovrò curarmi il ginocchio come si deve e vedere se riesco a correre la mezzamaratona.
Dovrò sopravvivere e se mi riesce restare sufficientemente sano.
....
Non vedo l'ora che sia natale.
Monday, August 10, 2009
CMA
La Candidate Mask Area inizia a prendere forma.
Non sarà troppo immediata, ma comincia ad avere una sua forma.
La Best Mask Area era effettivamente poco adatta al mio caso.
Intanto continuo a trovare e a coreggere cose fastidiose, anche in questo caso centra il tassativo.
Saturday, August 08, 2009
Cose Fastidiose
Ci sono ancora un paio di cosette fastidiose.
Una è la lentezza con cui si apre, ma questo problema è noto ed esiste un prototipo di soluzione. La sua implementazione richiederà un po' di tempo e un po' di pazienza
L'altra è il fatto che non filtra i primi tre frame.
Questa limitazione nasce dal fatto che i filtri, non tutti, per funzionare fanno dei confronti tra il frame in esame e i due precedenti. Ovviamente il primo e il secondo non hanno i due precedenti, quindi in attesa di nuove implementazioni sono esentati dall'essere oggetto di filtraggi. Si insomma se filtro il primo frame, VideoLab va in errore.
Fastidioso, qualche volta.
....
Visto che sto lavorando sui filtri
Friday, August 07, 2009
Aperture fastidiose
Da un po' di tempo che avevo un errore fastidioso. Se lanciavo Videolab da una directory che non fosse la sua natia, quando andavo ad aprire un movie, con l'apposito form frmOpen, ricevo un errore e il tutto si fermava.
Errore fastidioso, molto fastidioso. Ma anche errore mai approfondito. Lo lasciavo là ad aspettare. Si era fastidioso, ma tutto sommato si presentava in situazioni particolari e quindi più di tanto non mi interessava.
Però che fastidio. Soprattutto dopo la fatica per realizzare un frmOpen decente.
Oggi l'ho sistemato. Mi sono messo li di buona voglia e non ci è voluto neanche più di tanto. L'errore nasceva con l'adozione del tassativo sui nomi dei path. Una carenza che dava errore quando uscivo dalla directory nativa, per l'appunto.
Anche in frmSave c'era la stessa carenza, ovviamente lì non si vedeva dato che non arrivavo mai fino a là.
...
No, non è come pensi. Ho messo mano anche ai filtri. La BMA sta per essere sostituita dalla CMA. MA questa è un'altra storia
Wednesday, August 05, 2009
Grande e Lento
VideoLab crescendo è diventato anche lento. Questa lentezza è dovuta al fatto che gli faccio caricare tre movie in un file .mat. Questo perché mi serviva un sistema per scambiare i dati tra i diversi moduli di cui è fatto.
Ovviamente il .mat diventa di dimensioni enormi e accedervi, magari solo per leggere se ci sono i dati dei filtri diventa un operazione lentissima, insopportabile direi.
Fisto che Videolab è nato per velocizzare certe operazioni, non può rallentarmi su altre.
Oggi ho fatto un paio di prove con gli attrezzi che dispone MatLab. C'è il modo di operare sui movie senza doverli caricare tutti quanti in memoria. Infatti è possibile leggere solo il frame che interessa. Chiaro che questo rende superfluo memorizzare tutti i movie nel .mat. Una bella comodità e un bel risparmio di spazio e di tempo.
Purtroppo per scrivere un solo frame nel mezzo di un movie, non c'è verso che caricare tutto il movie. Però nuovamente, non mi serve più scriverlo nel .mat.
Tutto questo l'ho fatto in uno script di prova. Adesso sarebbe da trasferire queste nuove tecniche dentro VideoLab. Cosa che non è immediata, non è facile, non è indolore. VideoLab è diventato veramente grande.
....
Si, non ho ancora messo mani ai filtri, e allora?
Monday, August 03, 2009
Funziona ancora
Buone notizie: Videolab funziona ancora, e questo non è poco.
No non è poco visto che di solito il giorno dopo aveva sempre qualche nuovo_e_piccolo problema. Invece è passato indenne a uno stop di oltre un mese durante il quale c'è stata una forzata formattazione completa con successiva reinstallazione di tutto il necessario. Gli dei dell'informatica mi hanno detto bene per una volta.
....
Lo so che non ve può fregare di meno, ma sono cose che a me rendono felice
.......
si questo vuol dire che ho ripreso a lavorare sulla tesi, e anche questo non è poco
Sunday, August 02, 2009
Ormai si era capito
Si era capito, vero? Ormai questa correlazione dovrebbe essere chiara.
Scuse che potrei accampare: beh le più varie, e tutte vere a loro modo.
Ma la sola verità è la solita poca voglia di affrontare i fatti e di combattere l'ultimo round.
...
domani è un altro giorno, come sempre
Monday, July 06, 2009
11 giorni
11 giorni scollegato dal mondo. Il telefono fisso muto e adsl a singhiozzo per poi restare con un filo di rumore.
Ma forse finalmente è stata fatta la riparazione definitiva e in futuro non dovrei aver più problemi. Ma non è mai detto.
……
I tecnici della Telecom valgono molto più della azienda che gli sfrutta
Friday, June 26, 2009
Wednesday, June 24, 2009
Videolab 0.3 Beta Version
Però come è cresciuto il bambino.
Vidolab è nato perchè avevo il bisogno di una interfaccia grafica che mi facilitasse nel tedioso compito di fare un sacco di test sui frames dei filmati. L’idea era di avere una cosa semplice che mi permettesse di aprire un video, mostrare i frames al volo, applicare i filtri, modificare i parametri dei filtri, riapplicare i filtri, mostrare il filmato cosi filtrato.
Un lavoro lungo e noioso se fatto andando ogni volta ad agire sullo script nudo e crudo. Pensa che bello sarebbe avere una bella GUI con qualche button per fare tutte queste operazioni velocemente.
MatLab mi mette a disposizione degli strumenti potenti, non come un Visual Studio, ma sufficienti a fare quello che avevo in mente. Dopo tutto lo stesso prof mi aveva consigliato di dottarmi degli attrezzi giusti.
Detto, fatto. Mi sono buttato a capofitto in quest’impresa. Ma mai avrei pensato quanto tempo, energia, risorse mi avrebbe preso. Mai avrei pensato a quanti problemi avrei dovuto far fronte, quanto fosse difficile fare una GUI realmente pratica e funzionante. C’è da dire che molte cose me le sono andato a cercare, che ho voluto fare lo splendido a tutti i costi.
Comunque Videolab è cresciuto davvero tanto. Da un sola GUI per mostrare i film , si è arricchito di un’altra GUI per la gestione dei parametri dei filtri, un’altra finestra per mostrare le info del movie e di altri tre form: uno per aprire i file, uno per salvare i movie filtrati e uno di allerta (tanto per fare lo splendido).
A questi .fig corrispondono altrettanti script con l’aggiunta di altri due script, senza i quali VideoLab sarebbe una scatola vuota. Filtrisetup per la gestione dei parametri dei filtri e l’ultimo Filtramimovie che è lo script che materialmente esegue il filtraggio sui singoli frames (anche qui per fare lo splendido ho aggiunto la famosa waitbar che mi ha rotto le palle più di tutto il resto dello script)
Tutti assieme fanno la bellezza di 4590 righe di codice. Non credo di aver programmato così tanto in tutti gli altri lavori fatti in Matlab.
Videolab non è finito, ci sono alcune cose che funzionano solo sotto le condizioni giuste, mancano tutte una serie di controlli sui dati e la gestione degli errori è da rendere più coerente e adesso è diventato lento nell’accesso in scrittura dei file .mat (si anche questi sono cresciuti troppo).
insomma c’è ancora un sacco di cose da fare. Però per adesso funziona, ed è venuto tempo di lavorare sui filtri!
……..
Scrivendo mi sono ricordato che c’è una cosetta da modificare, una sciocchezza ma abbastanza fondamentale, almeno se voglio salvare quello che filtro
Tuesday, June 23, 2009
a un passo dall’orizzonte
qualche errore di sbaglio, ma l’impianto generale funziona in tutte le sue parti.
Vista l’ora è inutile andare a cercare di correggerli.
……
Adesso mi premio con un po’ di Nutella
3° tappa
La 3° tappa si sta rivelando più ostica di quanto non sembrasse all’inizio.
La parte della selezione del video da mostrare è andata via abbastanza liscia. Solo che invece dei previsti radio button, per motivi si spazio nella gui ho scelto di usare un popupmenu. Poco male, funziona abbastanza bene, anche se a un terzo utente potrebbe avere un uso meno intuitivo: questione di abitudine.
I radio button invece gli usati come previsto per la selezione dei frames da filtrare. Anche qui lo spazio sulla gui non era abbondante, ma sono riuscito a mettere tutto quello che volevo, senza dover stringere le taglie. Un bel lavoro.
Però la gestione di questi button mi costringere a una pesante revisione dello script, soprattutto di FiltramiMovie. Su quest ultimo il lavoro sarà più incisivo.
Non solo dovrò mettere a posto la parte di loop su frames multipli (non credo di averla implementata a regola d’arte), ma dovrò rivedere il passaggio delle variabili. Probabilmente dovrò adottare una struct per le var out, con tutte le conseguenze del caso.
Che dire: hai voluto la bicicletta… buona pedalata.
…..
magari per qualcuno non è gran che, ma videolab.m è arrivato alla bellezza di 1350 righe.
Monday, June 22, 2009
on the Road Map
bene fatta anche la prima tappa, adesso ho il movie filtrato separato da quello originale con in parte il video della maschera. Mi mancano i bottoni per selezionare qual è da visualizzare, ma lo lascio per domani. Così aggiungo anche i bottoni per la selezione di quanti frame filtrare. E anche la terza tappa sarà fatta.
FiltramiMovie fatto in precedenza era la seconda tappa e con i bottoni di domani avrò fatto anche la terza.
Poi della road map resterà poche cosucce. Dettagli da fare in seguito.
Con al terza tappa sarò finalmente giunto all’orizzonte e da li potrò guardare al cuore del lavoro: i filtri.
Che poi è il motivo per cui nasce videolab.
Ci sarà da fare il debutto in società.
Già che c’ero ho scoperto che FiltriSetup non era stato adeguato ai nuovi standard in fatto di percorsi. Funzionava lo stesso, per culo o forse per la robustezza del programma… no, solo per culo! Il fatto di aver sempre usato gli stessi nomi per le stesse cose mi ha salvato da un ennesimo errore_in_seguito_a_qualche_piccola_modifica.
Come sia adesso è a posto.
Friday, June 19, 2009
ah filtrami
adoro la rete. Adoro quelli che usano la rete. Adoro quelli che riempiono la rete. Adoro quelli che hanno avuto il tuo problema e l’hanno risolto e hanno messo in rete la soluzione. Adoro soprattutto quelli che l’hanno indicizzata.
Adoro quelli che hanno messo un esempio funzionante e completo di come usare waitbar. E’ più semplice di quello che stavo pensando di buttare giù io.
Però perchècazzo una volta usano close e la volta dopo delete?
Thursday, June 18, 2009
eh Filtrami
la barra di progressione si chiama waitbar.
Usarla è facilissimo, usarla bene è facile, usarla da dio è un casino.
……
Cosa gli costava mettere un esempio completo con tutte le opzioni usabili?
Wednesday, June 17, 2009
però Filtrami
Non male, davvero niente male. Mi ci sono voluti solo due giorni, forse neanche 15 ore di lavoro. 395 righe tra codice e commenti ed ecco che FiltramiFrames è bello che pronto. E’ funziona pure.
Sono servite un paio di ore per inglobarlo dentro Videolab, qualche affinamento per sistemare i soliti errori di sbaglio e via che filtra che è un piacere.
Rispetto a prima però ho perso le indicazioni di stato, ma c’era un modo per usare una specie di barra di progressione: adesso ci starebbe come la ciliegina sulla panna.
…………….
bon, mi sono meritato una bella cucchiaiata di Nutella
Tuesday, June 16, 2009
Filtrami i Movie
Dopo un bel po’ di ripensamenti e indecisioni, alla fine l’ho fatto.
Ecco a voi FiltramiFrames, un bellissimo function che effettua il filtraggio dei frames.
E si, alla fine ho ceduto e ho messo tutta la parte che filtra i frames, richiamando in sequenza i vari filtri, in uno script a se. Così alla galassia di VideoLab si aggiunge un nuovo componente, una costola che esce dallo script principale per prendere forma e funzioni a se stanti.
Dopo Filtrisetup, con la creazione di FiltramiFrames Videolab perde tutte le funzioni operative diventando esclusivamente il file di gestione della GUI e poco altro.
….
178 righe e solo per gestire le varargin
Friday, June 12, 2009
La strada mappa
un paio di post fa inizia a parlare di road map, beh forse più di un paio di post.
All’inizio, come tante altre altre qui sul blog, era solo un gioco. Poco più di uno scherzo, un modo come un altro per darsi un finto tono di finta serietà.
Così per gioco ho iniziato a parlare delle cose da fare come di una road map. Ho fatto una lista di cose da fare e lo chiamata road map. Finite quelle cose, ho buttato giù altre due cose da fare assolutamente, ed ecco che avevo la seconda road map.
Le mie road map non vogliono essere niente di eccezionale, niente di professionale. Solo un elenco di cose da fare.
Adesso però che non ho più una road map non riesco a fare niente. Non che non abbia cosa fare e ma manca l’input iniziale, la scintilla che da fuoco alle polveri.
Così oggi la giornata sta passando con la testa piena di cose che potrei fare. Potrei fare questo, ma anche questo, e se facessi questo, e questo come lo faccio, e poi non dimenticare di fare questo oppure e meglio se faccio questo.
Ordine. Manca ordine nel caos di questo da fare. Manca la road map.
Quindi, prima cosa da fare: una road map. Fare ordine al caos, mettere per iscritto e in ordine quello che devo fare. Il resto verrà di conseguenza.
Devo mettere mano ai filtri, le opzioni sono tante, la road map dovrà essere il più dettagliata possibile.
Thursday, June 11, 2009
Aggiuntina
Qualche modifica alla GUI e una aggiuntina
Ho spostato un po’ i button in vista di profondi cambiamenti sui controlli dei filtri. Poi ho aggiunto un paio di button per gestire la velocità di riproduzione.
Incredibile, ho dovuto abbassarla del 30% per avere il giusto frame/sec di riproduzione. Sospetto che ci sia qualche errore di sbaglio da qualche parte, ma tant’è non è tra le priorità.
Sunday, June 07, 2009
Ho scopato selvaggiamente…
Ho scopato selvaggiamente con Ronald McDonald in mezzo all’oceano indiano perché sono fetish, e ora sono all’altezza di Chuck Norris!
…
qualche volta Facebook mi strappa un sorriso
……
si ma chi cazzo è Ronald McDonald
Friday, June 05, 2009
Che bello adesso (Videolab 0.2.1)
si ok, non era poi così grave, quasi una stupidaggine, roba di poco conto, giusto una dimenticanza una distrazione. Una di quelle cose di cui mi son detto la faccio dopo. Invece è rimasta li, pronta a fregarmi.
Comunque adesso videolab funziona che è una meraviglia e ho passato il pomeriggio a giocarci un po’. Che bello. Che soddisfazione.
Intanto che ci giocavo, pensavo a tutte le cosa che gli posso aggiungere e modificare.
Che ci vuoi fare, è più forte di me.
Thursday, June 04, 2009
Che bello!
Ma quanto bello è dopo tanto lavoro, dopo tante prove, dopo tante correzioni, quando ormai pensavi di aver messo tutto a posto, quando pensavi che tutto funzionasse, quando pensavi di aver sistemato tutto, tornare a riprendere dopo un paio di giorni e ritrovarsi con bel “Error using ==> horzcat”
Ma quanto bello è?
….
eh che palle
Monday, June 01, 2009
Videolab beta versione 0.2
Insomma non so godermi i momenti di successo.
Non ho mai festeggiato dopo un esame, dopo una prova difficile, dopo aver raggiunto qualcosa di importante. Un po' come se ci fosse sempre qualcos'altro oltre, come se comunque quello ottenuto non sia niente di che.
Si lo so, ho avuto una infanzia difficile. Dover fare per farla vedere agli altri, gli altri che erano sempre meglio e quello che facevo io niente di più che il mio dovere.
Così alla fine mi sono abituato a non dare importanza ai miei sucessi.
Le mie vittorie le ho tenute tutte per me, non le ho mai condivise con nessun altro, anche perché nessun altro ha mai capito quanto valessero le mie vittorie...
Va bé, piccolo sfogo senza troppo senso.
Tutto per dire che ho messo a posto anche la parte di Test di Videolab. Praticamente ho finito la seconda road map e non so cosa fare adesso.
Ovvero, non so cosa farmene del traguardo appena raggiunto perché sto gia pensando al prossimo: come cambiare la parte di test.
Intanto da oggi Videolab è nella versione beta 0.2
Saturday, May 30, 2009
Stupidità 3
A fare le cose come si vuole si corre il rischio di ottenere solo delusioni. Si rischia di perdere tempo in cose che non servono realmente e che ai più sembrano stupidaggini.
E ogni tanto pensi che magari hanno ragione gli altri, che stai realmente perdendo tempo su stupidaggini, che stai facendo cose stupide e che allora sei stupido. Perché stupido è chi stupido fa. Ma è stupido anche chi fa cose stupide? E poi stupide perché? Perché si possono fare in modo più semplice? Perché ci sono cose più importanti da fare? Perché non servono? E chi lo decide? Chi decide cosa è più importante e cosa serve?
A fare le cose come si vuole si corre il rischio di passare per stupidi, però quando ci riescono, quando arriviamo là dove volevamo arrivare, quando otteniamo quello che volevamo. Allora, forse ancora ci prenderanno per stupidi, però dentro di noi la nostra propria soddisfazione sarà enorme e non c'è ne fregherà più niente di cosa gli altri pensano di noi.
Perché stupido è chi stupido lo fa.
....
la miglior vendetta è il successo
Thursday, May 28, 2009
Stupidità 2
Adesso anche frmsave funziona. Non è elegante ma funziona. Avrebbe bisogno di una profonda messa a punto, ma funziona quel tanto che basta. Fa quello che deve fare, basta non chiederli troppo. Appunto ho ottenuto il risultato di farlo funzionare.
A fare le cose non stupide si ottengono più risultati, ma meno soddisfazioni.
Adesso pensiamo alla parte di Test, seconda tappa della road map.
Wednesday, May 27, 2009
Tuesday, May 26, 2009
That long road...
Dunque mi ero imposto come tassativo un nuovo modo di gestire i percorsi. Adottando una struct, potevo facilmente disporre in modo separato della directory sia del nome del file. Questo mi concede una certa flessibilità, ma come controparte mi complica un po' il codice. Niente di impossibile, si tratta di due linee anziché di una e comunque sono poca cosa. Il difficile semmai è andare a cercare tutti i punti dove devo fare le modifiche.
Anche qui, il processo non ha particolari difficoltà, semmai è un po' lungo.
Tutto questo rappresenta la prima tappa della attuale road-map.
Ma come per tutte le piccole modifiche che faccio, ci sono errori che emergono. Errori che vanno cercarti e corretti... che palle.
Il lavoro su videosetup è andato via abbastanza velocemente, anche quello su videolab non ha dato particolari difficoltà, almeno finche non ho messo le mani su frmopen e frmsalva.
Questi due fanno un uso intenso dei percorsi e andare a mettere le mani lì è statao come smuovere la merda: viene fuori solo merda.
Se per frmopen me la sono cavata abbastanza agevolmente, in fondo si è trattato di sistemare un po' la parte iniziale dove, ormai che c'ero, ho aggiunto qualche controllo più raffinato. Ben altra musica mi aspetta in frmsalva.
I due sono form abbastanza simili e infatti sono stati fatti su una ossatura gemella. Ma frmsalva serve due servizi e usa più dati. Questo fa si che sia intrisicamente più complicato e infatti stà affiornado merda a nastro.
Risultato: ad ogni modifica, nuovi errori; ad ogni aggiustamente, nuovi errori; a ogni, errori e ancora errori.
Si insomma si è capito no? Che palle.
Naturalmente tutto questo allunga i tempi e rimando il lavoro sulla parte di Test, la seconda tappa sulla road map.
Friday, May 22, 2009
Thursday, May 21, 2009
Position
Position ha quattro numeri: due per le coordinate e due per le dimensioni delle finestre.
Ogni oggetto ha il suo Position e quando hai capito come si chiamano i vari oggetti, li puoi mettere un po' dove ti pare.
Già perché gli oggetti prendono un nome diverso a seconda di dove ti trovi.
In genere hObject è il nome di dove ti trovi, ma lo puoi chiamare anche gcbo. Con gcbf invece chiami l'oggetto corrente il cui callback è in esecuzione.
Per chi studia l'italiano vuol dire che se ci troviamo in un oggetto che è stato attivato da un altro oggetto, gcbf ci dà il numero dell'oggetto chiamante.
Semplice vero? Inoltre se l'oggetto corrente in esecuzione è lo stesso oggetto chiamante, allora con gcbf chiami lo stesso oggetto corrente. Easy, isn't it?
Capito questo ho messo VideoLab al centro e, faccendogli un po' di spazio, al suo fianco gli ho messo VideoSetup. Adorabili.
Tuesday, May 19, 2009
Test stress
Tra le due road map, quella appena conclusa e quella che mi appresto a iniziare, avevo programmato qualche test giusto per vedere come videolab digeriva videosetup.
Bene, questi semplici test stanno mettendo in luce alcune cose che erano rimaste in sospeso. Niente di grave, almeno spero, ma nascono dai cambiamenti che avevo fatto nei giorni scorsi e, ovviamente, generano qualche errore nelle procedure.
Niente di grave, solo una grande rottura di palle per sistemarli.
at the end of the road
Per adesso mi basta che funzioni, ma resta un adattamento che si porta dietro un sacco di cose che non servono più, se non a farlo funzionare senza messaggi di allerta. Prima o poi lo rifarò da zero.
Comunque sia, sono arrivato alla fine della road map. Adesso farò ancora qualche test per vedere se tutto l'insieme funziona e poi butto giù la seconda road-map.
Voglio aggiustare un po' la disposizione delle finestre sul desk e ampliare la parte con cui lanciare i filtri. L'idea è sempre quella di avere una function esterna che dovrebbe darmi più flessibilità nel caso di manutenzione o ampliamenti. Ma non è questa la priorità.
Friday, May 15, 2009
Guido un autodafé
Se poi ci si mettono anche le cose che non dovrebbero andare, ecco che non c'è proprio modo di far andare quelle che dovrebbero andare.
Il corpo certe cose le capisce meglio del cervello.
...
conto fino a 3, poi via
Thursday, May 14, 2009
Yeah... un po' meno
(segue post tecnico)
Il problema risolto è: come diavolo fare a chiamare una function passandoli gli handles della figure corrente quando questa figure non è ancora stata aperta e quindi non ci sono i riferimenti?
Si insomma, la figure è l'ultima cosa che fa la gui quando lanci l'aplicativo, ma durante l'open_function ho il bisogno di chiamare una sotto function per visualizzare una serie di dati in vari edit_text. Questa function funziona benissimo una volta che la figure è attiva, ma durante l'open non ne vuole sapere di lavorare.
Perché?
Ma perchè il gcbo non è ancora definito, e siccome la function è chiamata con il gcbo come parametro, ecco che la povera function non ha i parametri che le servono. Poverina
E perchè non c'è il gcbo?
Boh, questo non lo so ancora. Però il gcbo è di fatto l'object corrente della gui. Scoperto questo, è bastato sostuire il gcbo con il valore object, che esiste fin da subito, e il tutto funziona.
Per un problema che va, c'è ne subito pronto uno che arriva.
La sotto function serve per scrivere numeri negli edit_text, adesso ne voglio una che li legga. Ma questa nuova function, sorella quasi gemella della prima, non ne vuole sapere di funzionare.
Magari lei funziona, difatti non ci sono errori di runtime, però i risulatati non sono quelli previsti.
Quindi oggi sono un po' meno yeah, e mi vado a ripassare qualche lezione di speaking Matlab
Wednesday, May 13, 2009
Less is More
La base è buona con molte soluzioni furbe. Devo solo adattarlo per lavorare con le specifiche di filtriSetup.
Nel frattempo anche lui ha subito qualche modifica. Niente di che, solo modifiche di forma, ma ne ha guadagnato in semplicità tutto l'insieme di videoLab.
Al grido di: "less-is-more"
Sunday, May 10, 2009
Saturday, May 09, 2009
On the Road
Però non si è iniziato bene, il mezzo si è piantato di buon mattino. Neanche il tempo di accenderlo e di iniziare a muoversi. Fermo, piantato, intasato da un casino di roba che non si capisce che ci faceva li, che neanche una settimana fa c'avevo fatto una bella pulizia.
Così la mattinata è andata in manutenzione straordinaria.
Mi sono anche procurato con un nuovo attrezzo, dal nome PROfessionalee che promette il raddoppio e anche di più delle prestazioni. Come per tutti gli altri non si capisce cosa fanno e ne se servono realmente, però qualcosa fanno e dopo tutto sembra girare meglio. Ma il dubbio resta.
Con un po' di fortuna da Lunedì si inizia a lavorare sui filtri e poi ricominciamo anche a correre.
Friday, May 08, 2009
Che palle 2
Ora bisogna decidere se conviene adattarlo alle nuove specifiche opure se sia il caso di rifarlo ex nuovo.
si insomma, che palle...
Serve che mi dia un metodo: non posso andare avanti faccendo piccole aggiunte che mi costano grandi modifiche a quanto gia fatto e testato. Certo che però così mi sembra che funzioni in modo più pulito e bello.
si però, due palle...
Thursday, May 07, 2009
Che palle
E perchè? Boh, chi lo capisce più.
C'ho perso un bel po' di tempo per farlo funzionare e c'ero pure riuscito.
Si, insomma, funzionava. Almeno così mi sembrava, e si che l'avevo provato un po' e quella volta tutto era filato liscio.
Oggi, invece, niente. Non funziona.
Mi da errori che non dovrebbe darmi. Forse è solo che c'è qualcosa che non torna, cioé qualcosa che magari l'altra volta non c'era o se c'era era diversa, mentre oggi per qualche ragione no è come l'altra volta e quindi mi da errore, e non funziona.
Si, però che palle... mi tocca rivedere tutto di nuovo.
Monday, April 06, 2009
Thursday, April 02, 2009
I used to spoke Matlab
Mi sorprendo a vedere come ho tradotti gli algoritmi, come ho risolto diversi problemi pratici e come ho scritto codice asciutto e snello. Ero proprio bravo. (auto-pacca sulla spalla n segno di auto-stima)
Ma soprattutto ringranzio il prof del Maligno e per la sua mania sui commenti, senza tutti quelli che ho lasciato non saprei davvero dove mettere le mani.
Tuesday, March 24, 2009
riprendo
ho ripreso a programmare in Visual Web e in C#
ho ripreso a leggere libri
ho ripreso a fare fotografie belle
ho ripreso a lavorare sulla tesi (era ora)
I have resumed doing a english course
ho ripreso a scrivere post
ho ripreso a frequentare gente
ho ripreso a vivere, nel bene e nel male
Friday, March 13, 2009
27
Dovrei aver chiuso il conto anche con gli esami, ma in realtà restano ancora due cose da chiarire.
Una la sto affrontando a modo mio: lavoro ben pianificato e strategia su orizzonti lunghi.
L'altra invece riveste sfere burocratiche che esulano dalle mie capacità e contro cui dovrò sbattere la testa.
Guardo avanti e tengo la mente sgombra, ogni scelta ha un prezzo che pago in prima persona.
Thursday, January 15, 2009
novità?
Se io ho novità? Mah, veramente c'eravamo lasciati con io che aspettavo novità da parte vostra.
Ricordate: avevo chiesto in che condizioni era il laboratorio e mi avevate risposto che c'era da aspettare e che mi avreste fatto sapere.
Io ho aspettato.
Voi non mi avete fatto sapere.
No, io non ho novità, e voi?
No, non mi sembra che voi abbiate novità; non le novità che io mi aspettavo.
Si appunto, aspetta e spera.
Comunque mi sembra una buona idea quella di concludere in qualche modo, per quel che vale.