Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[wd9] Manipulation d'un champ image

4 réponses
Avatar
Vincent Barré
Bonjour,
Je cherche à accélérer la manipulation d'un champ image, quelqu'un aurait-il
des Astuces ?
- Copier une image dans un tableau ?
- Accélérer dPixelCouleur ?
- Convertir rapidement en RVB ?

Si vous aviez quelque pistes...

@+
Vincent Barré

4 réponses

Avatar
Romain PETIT
Vincent Barré avait soumis l'idée :

Si vous aviez quelque pistes...



Charger l'image dans le champ mais la travailler par ailleurs (via le
fichier d'origine) par une DLL externe ou un OCX, spécialisé dans le
traitement d'image ?

Les librairies d'acquisition d'image MS :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wiaaut/wia/wiax/overviews/startpagewiaaut.asp
(pas essayé depuis la version beta, mais ça a l'air de s'être simplifié
:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wiaaut/wia/wiax/overviews/howtousefilters.asp

Sinon, il y a l'excellente DLL de Gougelet, GflSdk ou l'ActiveX GflAx :
(utilisation commerciale soumise à licence)
http://www.xnview.com/

A+

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Vincent Barré
Merci pour les liens, je vais regarder.
Mais je doit pouvoir accéder aux pixels d'un image Webcam pour faire de la
reconnaissance.
Et je cherche si qqu à dèja transférer une image dans un tableau avec la
fonction dSauveImageBMP(WebCam,EnMemoire) ?
@+
Vincent
Avatar
Jean-Yves BURLOT
Vincent Barré a couché sur son écran :
Merci pour les liens, je vais regarder.
Mais je doit pouvoir accéder aux pixels d'un image Webcam pour faire de la
reconnaissance.
Et je cherche si qqu à dèja transférer une image dans un tableau avec la
fonction dSauveImageBMP(WebCam,EnMemoire) ?
@+
Vincent



oui
Table Tbl_Image avec :
- une colonne libellé
- une colonne au format Image

sMem est une chaine
sMem = dSauveImageBMP(WebCam,EnMemoire)
TableAjouteLigne(Tbl_Image,sLibelle,sMem)

--
Jean-Yves BURLOT
Avatar
Vincent Barré
Jean-Yves BURLOT a tapoté sur son clavier :

Et je cherche si qqu à dèja transférer une image dans un tableau avec la
fonction dSauveImageBMP(WebCam,EnMemoire) ?
@+
Vincent



oui
Table Tbl_Image avec :
- une colonne libellé
- une colonne au format Image

sMem est une chaine
sMem = dSauveImageBMP(WebCam,EnMemoire)
TableAjouteLigne(Tbl_Image,sLibelle,sMem)



Merci de ta réponse, mais j'ai du mal m'exprimer, je cherche à transférer
une image dans un tableau d'entier, pas dans une table.
Mais, j'ai fini pas réussir, je donne le résultat, si cela peu intéresser
quelqu'un d'autre :

@+
Vincent Barré
Le monde se divise en 10 catégories, ceux qui savent compter en binaire et
ceux qui ont des amis...

----------------------------------------------
// (640*480*3)+100 = 921700 Taille maximum du Bitmap en 640x480
// MemImg est le tableau d'octet ou l'on récupérera l'image pour effectuer
des traitement plus rapide.
MemImg est un tableau de 921700 entiers sans signe sur 1 octets
StMemImg est une chaîne fixe sur 921700

// Pour vérifier le transfert, on affiche dans IMG_RESULTAT, un champ image
dDébutDessin(IMG_RESULTAT)

// Vidéo1 est un champ WebCam
StMemImg = dSauveImageBMP(Vidéo1,enMémoire)
// Récupère le début du Bitmap
Offset est un entier = Asc(StMemImg[[11]])
// Transfert dans le tableau
Transfert(&MemImg,&StMemImg+Offset,(640*480*3)+Offset)
// Test le résultat du transfert
xy = 1
POUR yf = 480 A 1 PAS -1 // Hauteur : doit être un Multiple de 4
POUR xf = 1 A 640 // Largeur : doit être un Multiple de 4
dPoint(xf,yf,RVB(MemImg[xy+2],MemImg[xy+1],MemImg[xy]))
xy += 3
FIN
FIN