[OT ITA] Lo spamm bar (Part 1)

lesto:
nche se non riesco immaginare cossa possa avere di più un embedded a meno che non te lo fai fare apposta

Per cominciare le dimensioni che sono minori di quelle di una mb per netbook, la dotazione di periferiche, p.e, 4 seriali vere e almeno una RS485, vari GPIO controllabili, lo stadio di alimentazione è di gran lunga migliore (maggiore immunità ai disturbi), possibilità di poterci collegare quello che ti pare come memoria di massa sia su bus IDE che SATA, quasi sempre è presente uno slot per SSD e tante altre cosette che fanno la differenza in ambiente embedded.
Per farti capire di cosa stiamo parlando ti allego una foto, fatta al volo con lo smartphone, di un pc embedded che normalmente uso per lavoro, è un Dual Atom @1.6GHz, dimensioni 140x100 mm (ne esistono di più piccoli), dotazione full di periferiche, 2 USB 2.0, 2 USB 3.0, Ethernet, 4 seriali una delle quali su DB9 le altri su connettori molex, due RS485, 24 GPIO, connettore per monitor VGA e HDMI, connettore lvds per display LCD, input per tastiera e mouse ps/2 (serve il cavo a y), slot per SSD (nel lato inferiore su cui è inserito un SSD da 64 Giga), slot PCI Express (c'è installata un scheda WiFi) e altre cose che adesso non mi vengono in mente.
Il bello di questo pc embedded è che a 12V richiede solo 0.6 Ampere quando lavora in risparmio energetico (condizione di idle) con un massimo di 1.7 A rms (20.4Watt) quando lavora al 100%, nel consumo è incluso anche quello del SSD.

legacy:
Astro, pero' prima ancora di parlare di mobo, a me interessava la risposta a questa domanda =P

Spero che ti rendi conto che è un argomento talmente vasto per il quale non è possibile dare una risposta su un forum, il riconoscimento di oggetti generici su sfondo generico, nel caso del UAV gli ostacoli, è una cosa decisamente complessa da implementare.
Io sono fermo al riconoscimento e tracciamento della posizione di due solidi di forma regolare e colore omogeneo su sfondo generico, e ho dovuto penare non poco per riuscirci :slight_smile:

bhe ma vedere un fascio colorato (che poi sia laser o no) è molto più facile del riconoscimento di un oggetto.

In primis con una mascera escludi i colori che non ti servono, o meglio che differiscono troppo dal colore che stai cercando, cosa che credo tu faccia di già.

mettiamo che la sorgente luminosa sia parallela alla telecamera e sotto di essa a distanza fissa (asse Y) e centrata orizzontalmente (asse X)

a questo punto avremo un fascio che copre tutto l'asse X, a diverse altezze rispetto all'asse Y.

elimini tutti i punti X per cui ci siano troppi punti Y (fascio che ha perso di inconsistenza o fascio che interseca qualcosa dello stesso colore) o che i punti Y abbiano una varianza troppo alta (qualcosa dello stesso colore del fascio ma che non lo interseca, quì si potrebbe approfondire mavabe)

poi a questo punto estrapoli dall'immagine x e y dei punti validi che compongono la linea colorata che ti rimane, e li sbatti in una funzione precalcolata che per ogni Y ti dice la distanza, e salvi in un array di X.

Volendo possimao fermarci quì.

Oppure, volendo creare la mappa 3d del luogo il problema grosso diventa integrare i dati con le precedenti letture.
Ora invece bisogna tirare in mezzo qualcosa che pare essere simile al mean-shift (quello che hai fatto te), ma fatto con un'intera immagine;
In pratica calcolare in che direzione si è mossa l'immagine, e grazie anche alla distanza nota degli oggetti calcolare lo spostamento relativo in modo da poter aggiornare la mappa globale con i nuovi punti. questo non ho idea di come farlo

lesto:
In primis con una mascera escludi i colori che non ti servono, o meglio che differiscono troppo dal colore che stai cercando, cosa che credo tu faccia di già.

Prova a "giocare" sul serio con la visione artificiale così ti rendi conto da solo che le cose non sono così semplici come le stai descrivendo, sopratutto quando si lavora su uno sfondo generico.

sono l'unico che utilizzerebbe, invece di riconoscimento software avanzato, un semplice filtro o una telecamera a infrarossi direttamente? (esistono, l'esempio più lampante è la classica "termocamera")

una volta che viene riprodotto solo il riflesso dell'infrarosso o laser o ciò che si vuole semplicementer il software (dopo un'accurata taratura) è in grado di riconoscere la distanza. non si tratta di sfondo generico ma semplicemente uno sfondo nero e dei punti che compaiono XD
la nintendo è riuscita a sviluppare un tracking di 4 punti semplicemente su un telecomando che vende a 40€ che integra una telecamera a infrarossi da 1024x768 :wink:

poi ad essere sinceri un filtro ad infrarossi si fa con una vecchia pellicola XD

sì, ci ho pensato ma sinceramente è difficile trovare un fascio coerente, ovvero una fonte luminosa che non si dispedere "a cono" ma tende a rimanere fascio anche a lunghe distanze. Il laserè proprio questo.

Però è vero che una cosa del genere, magari con debite lenti, può essere fattibile

ahah! allora, visto che non avevo niente da fare (a parte mille cose) ho tirato giù openCV e ho fatto un piccolo test.

non mi sono sbattuto troppo, ho semplicemente cercato IL BANCO BRILLANTE, non il verde, o meglio colori con r, g e b > 200 (valore empirico)

direi che per essere 10 righe di codice in croce non c'è male :wink:

Immagine di partenza (edit: l'immagine è presa da internet, giusto per verificare la fattibilità):

Immagine risultato allegata...

ah, il codice:

come si usa: nomeprogramma nomeFileImmagine maxRed maxGreen maxBlue

#include <cv.h>
#include <highgui.h>

// basic file operations
#include <iostream>
#include <fstream>

using namespace cv;

int main( int argc, char** argv )
{
  
  //apriamo l'immagine
  IplImage* img=cvLoadImage(argv[1]);
  if (!img){
    printf("Could not load image file: %s\n",argv[1]);
    exit(0);
  }
  
  CvScalar s;
  int i, j;
  
  //prepariamo il file di output csv che conterrà i punti estratti (width, heigth)
  std::string name;
  name = argv[1];
  name += ".csv";
  std::ofstream myfile;
  myfile.open ( (char*)name.c_str() );

  
  //valori minimi per estrarre il punto, da implementare i massimi
  int r, g, b;
  r = atoi(argv[2]);
  g = atoi(argv[3]);
  b = atoi(argv[4]);
  
  //scorro tutti i pixel dell'immagine
  for (i =0; i < img->width;i++){
    for (j =0; j < img->height;j++){
      //estraggo il valore BGR (RGB al contrario)
      s=cvGet2D(img,j,i); // get the (i,j) pixel value
      
      //controllo se punti validi
      if (s.val[0] > b && s.val[1] > g && s.val[2]>r){
	//se vlaidi stampo i punti su seriale e sul file
	printf("B=%f, G=%f, R=%f\t",s.val[0],s.val[1],s.val[2]);
	printf("W=%d, H=%d\n",i, j);
	myfile <<  i << "," << j << "\n";
      }else{
	//se non validi modifico il colore del pixel in blu, ovviamente da usare un altro colore se state estraendo il blu o simili!
	s.val[0] = 150;
	s.val[1] = 0;
	s.val[2] = 0;
	
	//salvo la modifica del pixel sull'immagine
	cvSet2D(img,j,i,s);
      }
    }
  }
  
  //chiudo il file CSV
  myfile.close();
  
  //salvo l'immagine di risultato su file
  name += ".jpg";
  if (!cvSaveImage((char*)name.c_str(), img)){
    printf("Errore salvataggio, deve essere 8 bit e 1 (b/w) o 3(rgb) channel");
  }
  
  //mostro a video l'immagine risultato (tutto blu tranne i punti prescelti non modificati)
  cvShowImage("mainWin", img );
  
  //non far chiudere il programma da solo
  waitKey(0);

  //fin quì tutto bene
  return 0;
}

sistema molto simile ma 3d: un proiettore disegna delle bande bianche, la telecamera le cattura e con questo metodo ricostruisce l'immagine.

http://wiki.makerbot.com/3d-scanner

C'è anche un test in live, però ha molti "salti", il problema è dato dal fatto di riuscire a coordinare il fascio luminoso con i dati della telecamera. In pratica avete presente i film in cui il fascio laser scansiona la retina/faccia? ecco stessa cosa, però con tanti fasci che si accendono/spengono in maniera alternata. (gira a 10 FPS)

----> ora, come posso creare un fascio luminoso simile a quello del raggio in figura, ma senza usare un laser da millemila euro? <-----

avendo ancora tendenze verso la personale salvezza del mondo e l'abolizione di ingiustizie (sono ancora giovane probabilmente ma mi passera' :stuck_out_tongue_closed_eyes:)
stavo pensando alla Copia personale.

?????? (state pensando :))

io la ritengo una legge comica, leggiamo insieme:

"Riproduzione privata ad uso personale" è regolata dall'art. 71-sexies, che consente la copia privata di "fonogrammi e videogrammi su qualsiasi supporto" a patto che sia effettuata da una persona fisica (e non sia effettuata da terzi), ad uso personale (senza scopi di lucro né commerciali) e nel rispetto di misure tecnologiche di protezione (regolati dall'art. 102-quate).

cioe': compro un DVD,

  • ho diritto a fare una copia personale di backup ? SI
  • ho diritto di rimuovere le protezioni anticopia ? NO
  • mi prendete per il xxxx ? credo proprio di si :stuck_out_tongue_closed_eyes:

dite la vostra

mi scuso se interrompo la discussione, ma ho appena scoperto l'esistenza di questo thread XD quindi mi iscrivo :stuck_out_tongue:

legacy:
Tu "giochi" con OpenCV, o sviluppi cose ex novo ?

Una via di mezzo, in parte mi appoggio alle Open CV e in parte mi scrivo io il software.

Testato:
avendo ancora tendenze verso la personale salvezza del mondo e l'abolizione di ingiustizie (sono ancora giovane probabilmente ma mi passera' :stuck_out_tongue_closed_eyes:)
stavo pensando alla Copia personale.

?????? (state pensando :))

io la ritengo una legge comica, leggiamo insieme:

"Riproduzione privata ad uso personale" è regolata dall'art. 71-sexies, che consente la copia privata di "fonogrammi e videogrammi su qualsiasi supporto" a patto che sia effettuata da una persona fisica (e non sia effettuata da terzi), ad uso personale (senza scopi di lucro né commerciali) e nel rispetto di misure tecnologiche di protezione (regolati dall'art. 102-quate).

cioe': compro un DVD,

  • ho diritto a fare una copia personale di backup ? SI
  • ho diritto di rimuovere le protezioni anticopia ? NO
  • mi prendete per il xxxx ? credo proprio di si :stuck_out_tongue_closed_eyes:

dite la vostra

la siae è la società dichiarata illegale a livello globale.
la UE l'ha dichiarata illegale ed anche giustamente direi.

sarebbe corretto secondo te se la polizia venisse a casa tua e ti arrestasse perchè un giorno potresti compiere un omicidio? neanche fossimo in minority report..
ti sembra dunque giusto dover pagare alla siae una tassa di 20€ su un disco da 1TB perchè teoricamente potresti metterci su materiale protetto da copyright?

io ho un disco da 1TB in cui vi sono solamente giochi puramente acquistati tramite piattaforma steam e scaricati tramite essa, quindi perchè devo pagare una tassa alla siae? allora lasciatemi il permesso di scaricare giochi/film/musica per un valore almeno pari alla tassa che ho pagato, almeno sarà spesa in modo decente.

erro?

on sapevo della tassa anche sugli HD, ma quindi se compri un harddisk in italia costa di piu' perche'ì negli altri paesi non c'e' questa tassa ?

sapevo della tassa sui supporti ottici, il che porta ad una doppia presa per xxxx perche' non solo non posso farmela la copia in modo legale, ma sto' anche pagando il servizio.
Siamo agli assurdi piu' impensabili, la decenza e' stata superata e nessun politico si alza e dice nulla.

ho approfondito un po' la questione copia personale, ho trovato una sentenza per wuanto riguarda il Live at Pompei dei Pink floid.
Un tizio ha portato i causa la universal perche' non puo' appunto eseguire il backup del dvd.
il giudice ha dato ragione alla universal, se ho caspito bene e' una questione di livello alto o basso del diritto. Cioe' tu hai il diritto di fare una copia, ma la universal ha piu' diritto di te di mettere la protezione.

Entra in campo il concetto di Singola Copia. Sembra c he la legge dica che tu hai diritto a farti una singola copia e non di piu', pero' se tecnicamente non e' possibile limitarti a fare una singola copia allora la societa' che gestisce il prodotto ha diritto di non fartene fare nessuna.

Ma togliamola di mezzo la legge se deve essere una stupidaggine, si dice che non si possono fare copie e basta, pero' questo comporterebbe l'abolizione della tassa sui supporti.

La quale e' ridicola anche per altri motivi, se voglio mettere le foto di mia figlia su un dvd devo pagare ugualmente la tassa. non va bene cosi' :slight_smile:

Testato:
on sapevo della tassa anche sugli HD, ma quindi se compri un harddisk in italia costa di piu' perche'ì negli altri paesi non c'e' questa tassa ?

sapevo della tassa sui supporti ottici, il che porta ad una doppia presa per xxxx perche' non solo non posso farmela la copia in modo legale, ma sto' anche pagando il servizio.
Siamo agli assurdi piu' impensabili, la decenza e' stata superata e nessun politico si alza e dice nulla.

ho approfondito un po' la questione copia personale, ho trovato una sentenza per wuanto riguarda il Live at Pompei dei Pink floid.
Un tizio ha portato i causa la universal perche' non puo' appunto eseguire il backup del dvd.
il giudice ha dato ragione alla universal, se ho caspito bene e' una questione di livello alto o basso del diritto. Cioe' tu hai il diritto di fare una copia, ma la universal ha piu' diritto di te di mettere la protezione.

Entra in campo il concetto di Singola Copia. Sembra c he la legge dica che tu hai diritto a farti una singola copia e non di piu', pero' se tecnicamente non e' possibile limitarti a fare una singola copia allora la societa' che gestisce il prodotto ha diritto di non fartene fare nessuna.

Ma togliamola di mezzo la legge se deve essere una stupidaggine, si dice che non si possono fare copie e basta, pero' questo comporterebbe l'abolizione della tassa sui supporti.

La quale e' ridicola anche per altri motivi, se voglio mettere le foto di mia figlia su un dvd devo pagare ugualmente la tassa. non va bene cosi' :slight_smile:

pensa che io e mio zio abbiamo una "combriccola" e facciamo viedo a livello semi-professionale di video fatti da noi che spesso vengono rivenduti tramite dvd (naturalmente).. capisci quanto può venire a costare prendere 100 DVD e masterizzarli di una cosa di nostra proprietà intellettuale

assurdo,
grazie del link

finalmente mi sta per arrivare la imu (almeno credo, il tracking delle poste dice che è nella mia città oggi, quindi conto di averla fra le mani domani/dopodomani).

certo devo dire che sono sempre stato fortunato con la dogana alle poste, su 2 pacchi (escluso questo) uno è arrivato (senza tracking ne da pagare) in 7 giorni, uno (col tracking) una volta in italia altri 7 giorni per essere a casa.

questo ha fatto un giro della madonna (passato per 2 centri di milano, quindi arrivato a verona, quindi a trento ed ora qui a riva) e ci ha impiegato una decina di giorni (è arrivato il 18 in italia).

magari il mio quadri volerà XD

rimane che le poste dovrebbero fare solo poste e cercare di farlo bene e non anceh banca, telefonia ecc.. (altrimenti capisco perchè molti produttori esteri non spediscono in italia..)

Veramente le poste non sono più poste perché subappaltano a SDA. Il loro core business adesso sono i servizi telefonici ma soprattutto finanziari.

PaoloP:
Veramente le poste non sono più poste perché subappaltano a SDA.

Non subappaltano nulla, SDA è di proprietà delle poste e si occupa solo dei pacchi.

astrobeed:
... e si occupa solo dei pacchi.

Infatti 2 volte su 3 non ti arriva. :astonished:

PaoloP:
Infatti 2 volte su 3 non ti arriva. :astonished:

Ci sarà un motivo per cui si chiamano "pacchi" :grin: