Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 02-09-2010, 16:07   #1
antedesk
Junior Member
 
Iscritto dal: Aug 2010
Messaggi: 7
[java] effettuare dct su una matrice

Salve a tutti!
ho un problema un pò più serio questa volta, dovrei effettuare il calcolo della trasformata discreta del coseno(dct) su una matrice di interi, che rappresenta l'immagine.
il codice per il calcolo della dct è una semplice formula matematica che ho trovato in rete e riconvertita in codice java. Il problema è che così su immagini molto grandi di mette un eternità, tempo che non sono disposto ad aspettare
Studiando un pò di materiale sulla compressione jpeg dove viene utilizzata la dct e dove:
Quote:
"Ogni matrice saràsuccessivamente divisa in blocchi di dimensione 8x8, ovvero ogni blocco conterrà 64 pixel dell’immagine originale. Quindi se M o N non risultano multipli di 8, sono aggiunte delle copie dell’ultima riga o dell’ultima colonna alla matrice dell’immagine originale, sino a che la dimensione della nuova matrice non diventi un multiplo di 8.
Ad ogni blocco è applicata la trasformata DCT bidimensionale, che restituisce ancora un bloccodi dimensioni 8x8."

il problema è che nono so proprio dove mettere le mani per suddividere la matrice in blocchetti 8x8 e di aggiungere una riga qualora non dovesse essere un multiplo di 8

potete aiutarmi? se serve posso postare il codice della funzione dct.

Grazie a tutti, spero di avere risposta
antedesk è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2010, 00:49   #2
Vheon
Member
 
L'Avatar di Vheon
 
Iscritto dal: Oct 2007
Città: Ardea
Messaggi: 270
se usi una matrice bidimensionale, basta che al metodo passi la matrice intera ed i rispettivi indici di partenza, no? ovvero se la matrice per esempio e' una 16x16 (sciocchezza) hai 4 blocchi da 8x8, se al metodo passi la matrice intera e deve elaborare il secondo blocco della prima fila, passerai anche gli indici (0, 8) ovvero partira' dalla prima riga ed ottava colonna, ed il metodo poi incrementera' gli indici solamente di 8... Non so se mi sono spiegato bene. Per il fatto di aggiungere la riga quello basta fare un controllo all'inizio e in caso riallocare la matrice in una piu grande... Cmq dato che devi fare l'operazione su piu blocchi, ed e' sempre la stessa operazione, non so se qui l'utilizzo dei thread puo' aiutare... fai un tentativo..
Vheon è offline   Rispondi citando il messaggio o parte di esso
Old 03-09-2010, 15:01   #3
antedesk
Junior Member
 
Iscritto dal: Aug 2010
Messaggi: 7
ok provo a fare un tentativo come mi hai appena suggerito
tentar non nuoce tanto :P

ps: avevo trovato una soluzione moooolto meno elegante dove scorrevo la matrice riga per riga e applicavo l'algoritmo per il calcolo della dct(quindi usando un metodo d'appoggio) ma , tralasciando che lo devo ancora testare per capire cosa mi ritorna, penso che non mi dia la dct come abbiamo studiato nel corso di TLC(in alto a sinistra le basse frequenze ed in basso a destra le alte frequenze)

Ultima modifica di antedesk : 03-09-2010 alle 15:04.
antedesk è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Tesla Semi arriva in Europa: fino a 500 ...
realme 16 Pro Harry Potter Edition &egra...
Siri potrebbe permettere di scegliere tr...
OpenAI acquisisce Glass Imaging per oltr...
Steam Deck 2: Valve non trova ancora il ...
Il CEO di Microsoft chiede una supervisi...
Dreame T15 Pro Heat, aspira la polvere e...
Apple rilascia iOS 27, iPadOS 27 e macOS...
DDRop, l'attacco hardware da meno di 200...
LG OLED G6 55'' a 1.368€ e LG NANO 98'' ...
OpenRGB 1.0 arriva dopo tre anni: una so...
OpenAI paga centinaia di revisori per le...
Opel scarica l'adrenalina elettrica al S...
Volkswagen Mission Efficiency: Cd di 0,1...
Dreame L10s Pro Gen 3 a 179€: ottimo pre...
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: 10:14.


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