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 21-05-2005, 10:04   #1
marcus81
Senior Member
 
L'Avatar di marcus81
 
Iscritto dal: Dec 2001
Città: Partinico(PA)-Torino
Messaggi: 2885
Trovare il massimo...

Salve,
sto implementando un algoritmo in matlab e devo trovare il valore definito nell'intervallo tra 0 e 255 che mi massimizza una certa funzione.
Attualmente l'ho implementato in modo brutale, cioè con un ciclo for da 0 a 255 che mi calcola ogni volta il valore della funzione e che controlla se ho trovato un nuovo massimo.
Ovviamente l'algoritmo, che lavora su immagini, risulta piuttosto lento...
avete consigli al riguardo?
Grazie
__________________
Main: Barton 2500@3200+ Asus A7N8X-dlx 2*512 DDRPowercolor 9800Pro Maxtor 80GB sATA + Seagate 160GB pATA LCD Acer AL1721 Epson C62 Antec T.P. 430w Tin.it ADSL Muletto: Pentium4 1800 Notebook: Idea Progress P4 Auto e moto d'epoca
marcus81 è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2005, 10:47   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
dipende dalla funzione
puoi riportarla qui?
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2005, 17:39   #3
Blackat
Senior Member
 
L'Avatar di Blackat
 
Iscritto dal: Oct 2004
Città: Acireale
Messaggi: 447
se non ricordo male dovrebbe essere

> max(f([0..255])

dove f è la funzione che devi massimizzare.
__________________
Ho concluso acquisti e/o vendite con : SHIVA>>LuR<<, TheGaiden, ArvMau
Blackat è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2005, 19:33   #4
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
appunto, io volevo sapere com'è fatta f...
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2005, 19:40   #5
lombardp
Senior Member
 
L'Avatar di lombardp
 
Iscritto dal: Jun 2002
Città: Firenze
Messaggi: 630
Quote:
Originariamente inviato da 71104
appunto, io volevo sapere com'è fatta f...
Blackat, se interpreto bene quello che 71104 vuole dirti, se si conosce la funzione f di cui parli, la ricerca del massimo potrebbe essere fattibile per via analitica, il che semplificherebbe molto la ricerca. Altrimenti non c'è modo, l'unico miglioramente che puoi ottenere è nell'implementazione in C/C++.

...sempre che abbia capito il problema.
__________________
---> Lombardp
CSS Certified Expert (Master Level) at Experts-Exchange
Proud user of LITHIUM forum : CPU technology
Webmaster of SEVEN-SEGMENTS : Elettronica per modellismo
lombardp è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2005, 19:51   #6
Blackat
Senior Member
 
L'Avatar di Blackat
 
Iscritto dal: Oct 2004
Città: Acireale
Messaggi: 447
Quote:
Attualmente l'ho implementato in modo brutale, cioè con un ciclo for da 0 a 255 che mi calcola ogni volta il valore della funzione e che controlla se ho trovato un nuovo massimo.
Lombardp io ho capito che lui ha una funzione f, fa un ciclo da 0 a 255
e ogni volta calcola il valore di f applicato all'indice del ciclo.

Volevo rispondere a 71104 dicendo che dipende da che calcolo deve
fare la funzione f.

Ricorda che il motore di matlab lavora con gli array e le matrici e che
quindi i cicli for risultano molto lenti.

Per utilizzare le operazioni come moltiplicazione e divisione
tra matrici o array devi utilizzare il punto prima dell'operatore.
Se devi fare, ad esempio, la somma tra due array dovresti scrivere:

> [ 1 2 3 ] + [ 4 5 6 ]
[5 7 9]

> [1 2 3] .* [ 4 5 6 ]
[4 10 18]

le funzioni in matlab si definiscono come
function [r1,r2,...,rn] = f(p1,p2,...pn)
.....
.....

....

dove r1,r2, ..., rn sono i valori di ritorno e p1,p2,pn sono i
parametri in input.
La funzione deve essere salvata in un unico file che si chiama
con lo stesso nome della funzione e con estensione ".m" .

Esempio ( somma.m )

function r = somma(a,b)
r = a + b
__________________
Ho concluso acquisti e/o vendite con : SHIVA>>LuR<<, TheGaiden, ArvMau
Blackat è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2005, 20:08   #7
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
morta'...
allora possono essere funzioni qualunque, e quindi non c'è scampo a meno che non sia possibile fare proprio il parsing della funzione e far procedere il programma come se fosse un essere umano che studia la funzione
dovresti fare la derivata e trovare i punti in cui si annulla... abbastanza facile una volta fatto il parsing, ma il parsing chi lo fa?
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2005, 09:32   #8
lombardp
Senior Member
 
L'Avatar di lombardp
 
Iscritto dal: Jun 2002
Città: Firenze
Messaggi: 630
Quote:
Originariamente inviato da 71104
morta'...
allora possono essere funzioni qualunque, e quindi non c'è scampo a meno che non sia possibile fare proprio il parsing della funzione e far procedere il programma come se fosse un essere umano che studia la funzione
dovresti fare la derivata e trovare i punti in cui si annulla... abbastanza facile una volta fatto il parsing, ma il parsing chi lo fa?
Si infatti, allora avevo capito bene, se c'è possibilità di farlo per via analitica bene, altrimenti on c'è scampo.
__________________
---> Lombardp
CSS Certified Expert (Master Level) at Experts-Exchange
Proud user of LITHIUM forum : CPU technology
Webmaster of SEVEN-SEGMENTS : Elettronica per modellismo
lombardp è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2005, 12:30   #9
marcus81
Senior Member
 
L'Avatar di marcus81
 
Iscritto dal: Dec 2001
Città: Partinico(PA)-Torino
Messaggi: 2885
Salve ragazzi, la funzione non è semplicissima.
Perchè calcola la media dei pixel di 2 classi ricavate da un'immagine, poi effettua la deviazione standard e altre cosette.
L'ho alleggerita parecchio grazie al fatto che calcolo la media invece che sui pixels dell'immagine direttamente, sui valori dell'istogramma dell'immagine.
Adesso calcola il massimo in modo quasi immediato!
Più di questo non credo si possa fare, anche perchè ripeto la funzione non è banale.
Cmq grazie a tutti
__________________
Main: Barton 2500@3200+ Asus A7N8X-dlx 2*512 DDRPowercolor 9800Pro Maxtor 80GB sATA + Seagate 160GB pATA LCD Acer AL1721 Epson C62 Antec T.P. 430w Tin.it ADSL Muletto: Pentium4 1800 Notebook: Idea Progress P4 Auto e moto d'epoca
marcus81 è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2005, 16:57   #10
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da marcus81
Salve ragazzi, la funzione non è semplicissima.
Perchè calcola la media dei pixel di 2 classi ricavate da un'immagine, poi effettua la deviazione standard e altre cosette.
L'ho alleggerita parecchio grazie al fatto che calcolo la media invece che sui pixels dell'immagine direttamente, sui valori dell'istogramma dell'immagine.
Adesso calcola il massimo in modo quasi immediato!
Più di questo non credo si possa fare, anche perchè ripeto la funzione non è banale.
Cmq grazie a tutti
quindi non erano funzioni qualunque: questa tua funzione era comunque ricondicibile a qualche forma canonica; forse ti sarebbe stato di aiuto studiarne la derivata in questa forma canonica e trovare i punti in cui si annulla (anche se in funzione di qualche variabile).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2005, 17:47   #11
marcus81
Senior Member
 
L'Avatar di marcus81
 
Iscritto dal: Dec 2001
Città: Partinico(PA)-Torino
Messaggi: 2885
Si ma sarebbe stato molto lungo come procedimento. Con il for ho fatto prima e siccome la variabile va da 0 a 255 non risulta per niente pesante
__________________
Main: Barton 2500@3200+ Asus A7N8X-dlx 2*512 DDRPowercolor 9800Pro Maxtor 80GB sATA + Seagate 160GB pATA LCD Acer AL1721 Epson C62 Antec T.P. 430w Tin.it ADSL Muletto: Pentium4 1800 Notebook: Idea Progress P4 Auto e moto d'epoca
marcus81 è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2005, 01:00   #12
a2000.1
Senior Member
 
L'Avatar di a2000.1
 
Iscritto dal: Aug 2004
Messaggi: 311
Quote:
Originariamente inviato da marcus81
Salve,
sto implementando un algoritmo in matlab e devo trovare il valore definito nell'intervallo tra 0 e 255 che mi massimizza una certa funzione.
Attualmente l'ho implementato in modo brutale, cioè con un ciclo for da 0 a 255 che mi calcola ogni volta il valore della funzione e che controlla se ho trovato un nuovo massimo.
Ovviamente l'algoritmo, che lavora su immagini, risulta piuttosto lento...
avete consigli al riguardo?
Grazie
algoritmo dei 5 punti o della sezione aurea.
__________________
Senior Member
Registrato il: Jan 2001
Messaggi: 2609
a2000.1 è offline   Rispondi citando il messaggio o parte di esso
Old 13-10-2005, 13:27   #13
Marcalessio
Bannato
 
Iscritto dal: Jan 2005
Messaggi: 580
L'algoritmo della sezione aurea è utile e veloce solo che da delle informazioni di tipo locale...
Marcalessio è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2005, 08:22   #14
marcus81
Senior Member
 
L'Avatar di marcus81
 
Iscritto dal: Dec 2001
Città: Partinico(PA)-Torino
Messaggi: 2885
Come funziona, in sintesi, questo algoritmo della sezione aurea?
sono curioso
__________________
Main: Barton 2500@3200+ Asus A7N8X-dlx 2*512 DDRPowercolor 9800Pro Maxtor 80GB sATA + Seagate 160GB pATA LCD Acer AL1721 Epson C62 Antec T.P. 430w Tin.it ADSL Muletto: Pentium4 1800 Notebook: Idea Progress P4 Auto e moto d'epoca
marcus81 è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2005, 11:35   #15
giannimesa
Senior Member
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 727
se non erro quindi il problema è di ricerca operativa...di solito viene ricercato il minimo... di una f... invece te devi cercare il max... bhe... basta invertire la f...
poi dovresti applicare a mio avviso un algoritmo del simplesso... matlab dovrebbe lavorarci bene... però se te hai bisogno di un numero nell'intervallo [0, 255] allora il problema è più complesso e devi andare sulla programmazione lineare intera...PLI...o ILP (inglese), un algoritmo che andrebbe bene dovrebbe essere quello del Cutting Plane...ma ce ne sono molti altri... fatto sta che per capirli ci vogliono delle nozioni di Programmazione lineare, in particolare bisogna conoscere il metodo del simplesso...con i varii test di ottimalità, aggiornamento di base, e aggiornamento della matrice inversa della base (corrente).... si insomma non è proprio una passeggiata, ma se ti interessa la velocità penso sia il miglior metodo...

Tra l'altro trovi diversi programmini che sviluppano l'algoritmo del simplesso... CIAO
__________________
If You want a job done right you do it yourself

A64 3200+@240x10 Mhz | A8N SLI | X800GT 256MB Sapphire 570/580 | HD WD160GB | MASTER DVD SONY DRU-810A | 2x512 ram twinmos @480Mhz | LCD 17''SAMSUNG 730BF
---->IL MIO SITO : TESTE DI...<-----VENDO PC P4!!
giannimesa è 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, ...
Dopo 23 anni di silenzio, Warcraft 3 spi...
Roblox sfida l'ecosistema gaming: app st...
OpenAI accusata di plagio dai migliori m...
Altro attacco hacker dell'IA: gli agenti...
Stiamo davvero perdendo il controllo del...
Microsoft perde un pilastro: Frank Shaw ...
Diablo V annunciato a sorpresa: il colpo...
Meno di 5 euro per il 5G: l'offerta Kena...
World of Warcraft: Forever è il Classic+...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
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: 18:09.


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