Pages: 1 ... 8 9 [10] 11 12   Go Down
Print
Author Topic: progetto del 5 marzo  (Read 28745 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
vincenzo86
Forumista
***
Offline Offline

Gender: Male
Posts: 505



« Reply #135 on: 09-03-2009, 17:29:50 »

Quote
Nell'ultimo laboratorio vi erano diversi compiti, il mio consisteva nel trovare il pixel con i più alti valori RGB e evidenziarlo con un cerchietto spesso 3 pixel e di colore rosso.
In questo tipo di modifica, cosa si intende per valore piu alto? Devono essere tutti e tre oppure uno dei tre?
Io avevo pensato di inizializzare una BufferedImage temp, ed un vettore di interi RGB con cui andavo a prelevare le terne RGB tramite il getPixels; dopo di ciò devo trovare il massimo tramite un ciclo for ed alla fine conservare il massimo che mi servirà per la costruzione dell'ovale.. E' giusta come idea? Se avete fatto qualcosa, postate qualche esempio. Grazie
Logged
AmNeSiA
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 318



« Reply #136 on: 09-03-2009, 17:42:49 »

io lho fatto pure ma in modo diverso... intanto penso si riferisse al massimo valore di ogni canale all'interno del pixel...
cmq con due cicli for e  getSample ho trovato il pixel che mi serviva e ho assegnato a due interi  w e h la larghezza e la lunghezza per poi disegnare con drawOval il cerchio attorno al punto pc
Logged
luckynosky
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 178



« Reply #137 on: 09-03-2009, 17:56:52 »

altri tipi di esercizi?
Logged
MissCooper
Apprendista Forumista
**
Offline Offline

Posts: 181



« Reply #138 on: 09-03-2009, 18:02:48 »

Quote
Nell'ultimo laboratorio vi erano diversi compiti, il mio consisteva nel trovare il pixel con i più alti valori RGB e evidenziarlo con un cerchietto spesso 3 pixel e di colore rosso.
In questo tipo di modifica, cosa si intende per valore piu alto? Devono essere tutti e tre oppure uno dei tre?
Io avevo pensato di inizializzare una BufferedImage temp, ed un vettore di interi RGB con cui andavo a prelevare le terne RGB tramite il getPixels; dopo di ciò devo trovare il massimo tramite un ciclo for ed alla fine conservare il massimo che mi servirà per la costruzione dell'ovale.. E' giusta come idea? Se avete fatto qualcosa, postate qualche esempio. Grazie

credo si riferisca al valore della terna e non di un singolo canale, quindi il tuo ragionamento può andare
Logged
DEvil
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 184



WWW
« Reply #139 on: 09-03-2009, 18:25:32 »

ragazzi quando andate a tracciare il cerchietto come parametri di drawOval cosa mettete?
Logged
Crazy Diamond
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 243



WWW
« Reply #140 on: 09-03-2009, 18:42:32 »

ragazzi quando andate a tracciare il cerchietto come parametri di drawOval cosa mettete?

http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Graphics.html#drawOval(int,%20int,%20int,%20int)
Logged

"God does not care about our mathematical difficulties. He integrates empirically." (A. Einstein)
________________________

www.davidemoltisanti.com | La mia galleria fotografica
vincenzo86
Forumista
***
Offline Offline

Gender: Male
Posts: 505



« Reply #141 on: 09-03-2009, 18:43:44 »

Quote
ragazzi quando andate a tracciare il cerchietto come parametri di drawOval cosa mettete?
Devi andare a mettere la posizione del pixel (individuata da x e y) e poi lo spessore (w e h).. Quando finisci la tua implementazione postala così la confrontiamo
Logged
DEvil
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 184



WWW
« Reply #142 on: 09-03-2009, 18:47:42 »


Grazie tante, lo so che tipo di parametri bisogna mettere in un drawOval... e so guardare pure la documentazione...
Logged
Acicatena86
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 404


See full me now who neon


« Reply #143 on: 09-03-2009, 18:48:23 »


Grazie tante, lo so che tipo di parametri bisogna mettere in un drawOval... e so guardare pure la documentazione...

Allora perchè domandi?  [Emoticon] Asd
Logged
DEvil
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 184



WWW
« Reply #144 on: 09-03-2009, 18:49:27 »

infatti la domanda era un'altra...
Logged
DEvil
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 184



WWW
« Reply #145 on: 09-03-2009, 18:51:28 »

Quote
ragazzi quando andate a tracciare il cerchietto come parametri di drawOval cosa mettete?
Devi andare a mettere la posizione del pixel (individuata da x e y) e poi lo spessore (w e h).. Quando finisci la tua implementazione postala così la confrontiamo

Code:
import java.awt.*;
import javax.swing.*;
import java.awt.image.*;
import java.awt.color.*;

public class maxRGBOp
{
    public BufferedImage maxRGB(BufferedImage I)
    {
        int maxR=0; int maxG=0; int maxB=0;
        int x=0; int y=0;
       
        for(int i=0; i<I.getWidth(); i++)
            for(int j=0; j<I.getHeight(); j++)
                if(I.getRaster().getSample(i,j,0)>=maxR &&
                   I.getRaster().getSample(i,j,1)>=maxG &&
                   I.getRaster().getSample(i,j,2)>=maxB)
                {
                    maxR=I.getRaster().getSample(i,j,0);
                    maxG=I.getRaster().getSample(i,j,1);
                    maxB=I.getRaster().getSample(i,j,2);
                    x=i;
                    y=j;
                }
        Graphics2D g=I.createGraphics();
        g.setStroke(new BasicStroke(3F));
        g.setColor(Color.RED);
        g.drawOval(x,y,1,1);
        g.dispose();
       
        return I;
    }
}

però ho un dubbio... il cerchietto deve essere fatto intorno al pixel, e non sopra...
Logged
Aigor
Forumista Esperto
****
Offline Offline

Gender: Male
Posts: 1.184


"Il destino non è una catena, ma un volo."[A.B.]


« Reply #146 on: 09-03-2009, 19:38:08 »

se punti AL pixel,la drowOval te lo fa ATTORNO al pixel ... quindi la tua soluzione è corretta !
Logged

"Era d'altronde uno di quegli uomini che amano assistere alla propria vita, ritenendo impropria qualsiasi ambizione a viverla.
Si sarà notato che essi osservano il loro destino nel modo in cui, i più, sono soliti osservare una giornata di pioggia." - Seta,Baricco
DEvil
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 184



WWW
« Reply #147 on: 09-03-2009, 20:03:18 »

se punti AL pixel,la drowOval te lo fa ATTORNO al pixel ... quindi la tua soluzione è corretta !

ok, grazie mille... ok
Logged
luckynosky
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 178



« Reply #148 on: 09-03-2009, 20:48:03 »

Quote
DrawOval

public DrawOval(int x,
                int y,
                int width,
                int height)

    Returns DrawOval which fits into specified rectangle.

Parameters:
    x - left edge of the rectangle
    y - top edge of the rectangle

    width - width of the rectangle
    height - height of the rectangle

le coordinate x,y dovrebbero rappresentare l' angolo sinistro del quadrato in cui è inscritto il cerchio e non il centro del cerchio...o mi sbaglio?

per farlo attorno a un punto dovrebbe essere cosi drawOval(x-width,y-height,width,height)...giusto?
Logged
Naive
Matricola
*
Offline Offline

Posts: 57


Impossible is Nothing


« Reply #149 on: 09-03-2009, 21:42:03 »

Una domanda nell'ultima parte del punto B era possibile applicare un filtro di soglia????essendo ke si lavorava su un'immagine a scala di grigi e si otteneva una RGB?Huh?Huh?
Logged
Pages: 1 ... 8 9 [10] 11 12   Go Up
Print
Jump to: