Ich arbeite mit Bildern und Computer-Radon-Transformation für ein Objekt. Die Funktion, die die Transformierte berechnet akzeptiert Vektor als Eingabe:Werte zuweisen zu std :: vector <benutzerdefiniert>
pixel p;
vector<pixel> segObj //segObj is the object segmneted from the image
Pixel ist eine benutzerdefinierte struct definiert als:
struct pixel
{
float x, y; //x,y coordinates of the pixel
};
Derzeit I ein Element weise Zuordnung zu dem Vektor tue:
Die for-Schleife verlangsamt den Umgang mit großen Bildern. Gibt es eine Möglichkeit xCoordArray
und yCoordArray
direkt zuordnen zu vector<pixel>segObj
ich nicht mit der Verwendung von Vektoren expereinced bin so jede mögliche Hilfe würde geschätzt.
Auch Wenn xCoordArray
, yCoordArray
kann als Vektoren berechnet werden, gibt es eine Möglichkeit, sie zu verbinden, so dass jeder Vektorindex als zwei Werte.
Haben Sie versucht mit 'segObj.reserve (element_count);' vor 'für'loop, so dass' vector' beim Einfügen nicht die Größe ändert und der 'push_back' eine konstante Zeitoperation wird? – Naveen