Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI
Snapdragon Soung Gen 2 è la piattaforma Qualcomm per i dispositivi audio sempre più integrati nel mondo dell'intelligenza artificiale: al prorpio interno tanta potenza elaborativa per gestire al meglio le necessità d'uso dell'agentic AI
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
In occasione del proprio Snapdragon Summit Qualcomm annuncia i due nuovi chip per dispositivi mobile di fascia alta che entreranno nel mercato nel corso del 2027: tanta potenza a disposizione per elaborazioni di intelligenza artificiale sempre più complesse
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
Hogwarts arriva in fascia media grazie a realme, con una special edition che unisce la Quadra Light-Sensing Color-changing Tech, un baule in stile Hogwarts Express pieno di collezionabili e una scheda tecnica sostanzialmente identica al 16 Pro di partenza: ecco cosa cambia davvero, come si comporta nell'uso quotidiano e quanto vale in base al prezzo di 699,99 euro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-06-2017, 07:46   #1
carlo.29
Bannato
 
Iscritto dal: Jun 2017
Messaggi: 21
Programmino da creare con Processing!Bloccato

Ciao a tutti,
devo scrivere un programmino con processing ma mi sta facendo diventare matto.Mi blocco in un punto.

Il testo chiede di caricare un immagine da disco e creare un programma che abbia 2 modalità : mostra e modifica.In seguito alla pressione del tasto "m",il programma deve entrare in modalità "mostra" e visualizzare semplicemente l'immagine caricata (e sono riuscito a farlo).Premendo per la seconda volta il tasto "m",il programma entra in modalità "modifica".Deve suddividere l'immagine in 2 bande verticali.La divisione parte dal pixel mouseX-5,Y (Y,di logica, sarà uguale a quella del mouse,mouseY).
La funzione creaImmagine() avrà una variabile locale color c che leggerà il pixel in esame e lo trasferirà in due funzioni,bandadestra() e bandasinistra(),che riceveranno entrambe in input una variabile locale color,estrarranno le tonalità RGB del pixel in esame, e le altereranno in due modi diversi.Uno da applicare alla banda destra e l'altro alla banda sinistra.Quindi,restituiranno entrambe i colori modificati,che verranno richiamati in creaimmagine().Alla banda sinistra verrà applicato il colore modificato da bandasinistra(),alla banda destra il colore di bandadestra().
Successivamente,bisognerà richiamare creaImmagine() nella funzione predefinita draw(),che riceverà l'immagine,precedentemente caricata da disco, modificata da creaimmagine() e si comporterà nei modi elencati sopra alla pressione del tasto "m".
L'effetto da creare è ovviamente che, al movimento infinito del mouse,l'immagine sarà sempre divisa in 2 bande verticali colorate in base a qual'è il pixel mouseX-5,che cambia in continuazione, e le bande possono ovviamente restringersi e allargarsi.per esempio se sposto il mouse verso sinistra,sarà più grande quella di destra e viceversa.

Ho creato tutto il codice riguardante il caricamento dell'immagine da disco,setup,draw e le due funzioni bandasinistra() e bandadestra().
Mi blocco nella funzione creaimmagine().Non riesco a dividere l'immagine in due e colorare.Suppongo si possa fare con dei cicli FOR nidificati,che controllino le coordinate di x e di y di entrambe le bande.Però non ci capisco più nulla.Non capisco se tutto dipende da una sola x e y,del punto in esame,o le bande abbiano entrambe le loro coordinate.Non capisco nemmeno come richiamare le due funzioni e colorare due intere bande in base al movimento del mouse.
Per ora,dopo giorni di tentativi,visualizzo una sola banda,e non a colore fisso.Sposto il mouse e lampeggia di continuo.
Se inserisco le coordinate per la seconda banda,il programma non restituisce errore ma non visualizzo più nulla.

Potete darmi una mano con i cicli?

P.S. Il testo dell'esercizio dice che addirittura si potrebbero colorare le due bande attraverso una sola funzione,che applichi ad ogni banda la sua alterazione di colore ma non ho capito come si fa.Quindi ho creato due funzioni separate.
carlo.29 è offline   Rispondi citando il messaggio o parte di esso
Old 16-06-2017, 13:02   #2
carlo.29
Bannato
 
Iscritto dal: Jun 2017
Messaggi: 21
Non volevo allargare troppo il post precedente.
Escludendo la procedura per caricare l'immagine da disco,che mi funziona,inserisco le due funzioni e i cicli che sto provando a fare e non funzionano.Ci deve essere un casino enorme con le variabili e le coordinate.
Impostato così,mi colora solo la parte a sinistra del mouse ma il colore non è fisso.Lampeggia durante lo spostamento.A destra non colora nulla.
Come vedete,ho disattivato dei comandi.Se li attivo,non funziona nulla nemmeno a sinistra.

Codice :



PImage img,img1;


void setup()
{
surface.setResizable(true);
img= getImage();
surface.setSize(img.width, img.height);

image(img,0,0);

}


void draw()
{
if (key=='m')
{
noStroke();
image(img,0,0);
}
else if (key=='g')
{

img1=creaimmagine(img);
noStroke();
image(img1,0,0);

}

}


PImage creaimmagine(PImage img1)


{
int x0;int y0;int x1;int y1;int n_x=img.width;int n_y=img.height;
color c,csx,cdx;
c=img1.get(mouseX-5,mouseY);

for(x0=0;x0<=mouseX-5;x0=x0+1)
{
for(y0=0;y0<=mouseX-5+n_y-1;y0=y0+1)
{
//for(x1=mouseX-4;x1>n_x-mouseX-5;x1=x1+1)
//{
//for(y1=0;y1>=mouseX-4+n_y-1;y1=y1+1)
//{
c=img1.get(mouseX-5,mouseY);
csx=calcolapixelsx(c);
//cdx=calcolapixeldx(c);
img1.set(x0,y0,csx);
//img1.set(x1,y1,cdx);
//}
//}
}
}
return img1;
}

color calcolapixelsx(color csx)
{
float r,g,b;

r=red(csx);
g=green(csx);
b=blue(csx);


if(((r*1.5)+10.0)>255.0)
{
r=255.0;
}
else
{
r=(r*1.5)+10.0;
}

if(((g*1.3)+20.0)>255.0)
{
g=255.0;
}
else
{
g=(g*1.3)+20.0;
}

if((b+50.0)>255.0)
{
b=255.0;
}
else
{
b=b+50.0;
}


csx=color(r,g,b);

return csx;
}




color calcolapixeldx(color cdx)
{
float r,g,b;
float d;
d=sqrt(((mouseX-mouseX-5)*(mouseX-mouseX-5))+((mouseY-mouseY)*(mouseY-mouseY)));

r=red(cdx);
g=green(cdx);
b=blue(cdx);

if((r-d)>255.0)
{
r=255.0;
}
else
{
r=r-d;
}

if((g-d)>255.0)
{
g=255.0;
}
else
{
g=g-d;
}

if((b-d)>255.0)
{
b=255.0;
}
else
{
b=b-d;
}



cdx=color(r,g,b);

return cdx;
}
carlo.29 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Auto elettriche UE al 21,7%: sorpasso si...
GPT-6 Astra ha decifrato un messaggio na...
Registra a 7.471 fps e costa quanto un'u...
Microsoft riporta in vita Surface Mouse ...
OpenAI porta le funzioni agentiche vocal...
La Cina indaga su DeepSeek e Moonshot: a...
Sono 68.450 gli oggetti oltre i 10 centi...
950 agenti, 210 milioni di token e 21 or...
Dopo quasi 40 anni l'Italia riapre al nu...
Apple Intelligence su macOS 27 potrebbe ...
NVIDIA prepara la grafica del futuro con...
YouTube annuncia nuovi strumenti per per...
Phishing a nome ACI sul bollo auto: una ...
3 mini-PC ASUS per usare l'intelligenza ...
YouTube punta sempre di più sull'...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:44.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v