Newsgroup: it.comp.lang.visual-basic
Titolo: Colore di una immagine

Salve,
un grazie in anticipo a ki mi possa aiutare.
Lavoro coi tessuti.
Ho 3000 jpg archiviate in un db access 2000.
Non sono foto incorporate ma collegate....quindi nel campo "indirizzo"...ho
l'indirizzo fisico della foto.
Mi servirebbe una routine che mi "veda" il colore RGB di quel tessuto...
facendo una media dei singoli valori rgb di tutti i pixel.....
Esempio: la routine passa un tessuto rosso e dovrebbe inserire nei campi
R,G,B, rispettivamente 240.10.8
Kiaro?
Per un programmatore basterebbero 5 minuti......
Per me una vita!
P.s. Potrei anche convertire tutte le immagini in un formato bmp 24 bit(piu
semplice da elaborare)
Grazie per l'aiuto!
Private Declare Function GetPixel Lib "gdi32.dll" (ByVal hdc As Long, ByVal
nXPos As Long, ByVal nYPos As Long) As Long
Private Declare Function GetCursorPos Lib "user32.dll" (lpPoint As
POINT_TYPE) As Long
Private Type POINT_TYPE
  X As Long
  Y As Long
End Type
Dim RGBVal As Long
Private Sub Form_Load()
Form1.Picture = LoadPicture(App.Path & "\immagine.jpg")
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single,
Y As Single)
RGBVal = GetPixel(Form1.hdc, X, Y)
Label1.Caption = "Valore RGB =  " & RGBVal & "  del Pixel"

 Per un programmatore basterebbero 5 minuti......
Io ti avevo già risposto dandoti un punto di partenza.
Se usi GetPixel sull'intera area di un'immagine, per 3000 immagini, il
tempo di attesa  - anche con un PC potente - è paragonabile a quello
necessario per trovare il 128° numero di Marsenne.
GetPixel si usa per pescare *un* pixel non per analizzare un'immagine.
Se usi le funzioni che ti avevo indicato ti ritrovi tutti i pixel in un
array in cui sono già separate le componenti dei colori RGB.
Il problema è che bisogna conoscere VB per modificare l'esempio che ti ho
indicato.
Visto che il programma ti serve a scopo professionale per risparmiare un
sacco di lavoro, è ovvio che, se non lo sai fare, lo devi commissionare a
qualcuno.
Visto che dici che ci vogliono 5 minuti (ma come diavolo fai a dirlo se
non lo sai fare?), la persona a cui ti rivolgerai non dovrebbe chiederti
molti euro.
In alternativa potrei consigliarti di usare .Net che ha funzioni di
elaborazione delle immagini relativamente rapide e facili da usare.
P.s. Non ci vogliono 5 minuti. In 5 minuti non si apre neppure un progetto
nuovo.
termoPilucco
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 qualcuno.
Io mi occupo di contabilità; voglio semplicemente dare una mano al
magazzino;
l'azienda non è certo disposta a pagare un programmatore.
Se la cifra fosse di entità modesta, potrei pensare comunque di pagare io.
Lasciami un recapito o un modo dove scriverti in privato.
Grazie ancora.

 Grazie ancora.
Uh, no grazie: io ho già il mio di lavoro e mi basta, magari si fa avanti
qualcun altro del gruppo..
I miei programmi li creo e li pubblico gratis ma li faccio solo su mia
ispirazione.
Quello che non capisco e perchè se il problema è grosso e di soluzione
problematica (farlo a mano costerebbe uno sproposito in termini di
manodopera), l'azienda non sia disposta a pagare.
Pare che tutta questa moda per il software free stia illudendo le
aziende...
Renditi conto che ci sono due tipi di software free:
-Quelli fatti con un secondo fine (per esempio diventare leader del
settore o farsi un nome o servizzare il cliente)
-Quelli fatti per semplice passione.
Il software su misura non rientra in nessuna delle due categorie.


 -Quelli fatti per semplice passione.
Apprezzo sempre e cmq i consigli e le critiche.
Capisco ma non condivido questo cercare di creare un problema che non c'č.
Il mio "software" se cosi si puo kiamare un database e 4 routine
č di quelli fatti per passione dell'informatica....
Ma come tutte le cose fatte per passione, non avendo a disposizioni manuali,
tutor, corsi...
non ho neanche l'MSDN......ho pensato di rivolgermi ad un NG di appassionati
di questo linguagio.....
Io ho accettato e risposto alla tua ben 2 volte
Ora una piccolo DUBBIO la sollevo io:
Le cose sono 2:
- o veramente questa routine (ciclo loop dal primo pixel fino all'ultimo
togliendo l'header e poi facendo la media)
   non si puo fare con 5 minuti.........
- oppure come disse qualcuno  NON SI FA NIENTE PER NIENTE..........
Vista l'ignoranza in materia io non rispondo....
Ai posteri l'ardua sentenza....
P.s.   Io nei momenti liberi continuo a provare a farla....
         Se ci riesco vuol dire che era vera la seconda.....
Grazie ancora.
Buon Lavoro e Buona Pasqua a tutti!

          Se ci riesco vuol dire che era vera la seconda.....
Se ci riesci in 5 minuti sì, ma mi sa che sono già passati :P
