Une image de CT cancéreuse est stockée à l'intérieur d'un réseau court non signé (unidimensionnel). J'ai les informations de localisation de la région cancéreuse à l'intérieur de l'image, mais les coordonnées (x, y) sont en superpixel (128x128 non signé court). Ma tâche est de mettre en évidence cette région.Traitement d'image: solution intelligente pour convertir les coordonnées superixel (128x128 pixels) nécessaires
J'ai déjà résolu celui-ci en convertissant des coordonnées de superpixel en un décalage que peut utiliser le tableau court non signé. Cela fonctionne bien mais je me demande s'il existe une façon plus intelligente de résoudre ce problème, car ma solution nécessite 3 boucles for-imbriquées.
Est-il possible d'accéder au tableau ushort "superpixelwise", donc je peux naviguer dans le tableau ushort en superpixels.
Je sais que cela ne fonctionne pas. Pour vous donner une idée de ce que je pensais:
typedef struct
{
unsigned short[128x128]
}
spix;
spix *spixptr;
unsigned short * bufptr = img->getBuf();
spixptr = bufptr;
Mise à jour 1:
Yep sa vague, je vais essayer à nouveau avec une image:
[0][1][2] ... [127]| ... [x] |
[1] | |
[2] | |
. | |
. | <-- this is a superpixel
. | |
[127] | |
-------------------- |
. |
. |
. |
[y] |<--whole picture stored in a ushort* buf = new ushort[x*y]
------------------------------
J'aime accéder le 128x128 ushorts
à la fois avec un pointeur, donc je peux memcpy
données dans le champ 128x128.
Mise à jour 2:
L'indice de transfert de bitblit beaucoup aidé.
Spécifier la langue (C++ je suppose) dans les balises pourrait vous aider ... – PhiLho
question est un peu vague pour dire le moins, je vous suggère de poster votre code de travail avec 3 pour les boucles, quelqu'un sera sans doute en mesure d'améliorer le code, ou vous dire qu'il ne peut pas être amélioré ... – Pieter