2016-04-28 10 views
0

Ich möchte einige Werte durchforschen und für jeden Wert des Indexes möchte ich ein Bild auf dem Datenträger speichern. Gibt es eine Möglichkeit, Folgendes zu erreichen:Octave: Wie kann ich eine Saite aus 2 Saiten und einer Variablen erzeugen?

N = 16; 
name_RGB = ["RGBN" N ".jpeg"]; 

imwrite(image1, name_RGB, "jpeg"); 

??

Um zu erklären, ist die Schleife derzeit auf Index 16. Ich möchte ein Bild mit dem Namen "RGBN16.jpeg" speichern. Wer weiß, ob es möglich ist, Strings und Variablen in Octave miteinander zu verbinden?

+0

Mögliche doppelte von [Wie verkette ich eine in MATLAB gespeicherte Variable und eine Zahl] (http://stackoverflow.com/questions/20694149/how-do-i-concatenate-a-string-stored-in-variable-and- a-number-in-matlab) – ederag

+0

Betrachte 'newString = sprintf ('% s% d', oldString, Nummer) 'in [diese Antwort] (http://stackoverflow.com/a/20696062/3565696) – ederag

Antwort

2

Sie müssen nur den numerischen Wert in eine Zeichenfolge konvertieren, dann können Sie, wie diese verketten:

N = 16; 
name_RGB = ["RGBN" num2str(N) ".jpeg"]; 

imwrite(image1, name_RGB, "jpeg"); 

Weitere Optionen finden Sie in der Dokumentation hier:

https://www.gnu.org/software/octave/doc/v4.0.1/Converting-Numerical-Data-to-Strings.html

+0

Wörtlich nur bekam es, wie Sie die Antwort eingereicht !!! Vielen Dank für Ihre Probleme :) – whatwhatwhat

+0

Ich würde etwas wie 'fn = sprintf (" RGBN% i.jpeg ", N) verwenden;' – Andy

+0

@whatwhatwhat: Bitte beachten Sie dies als Antwort zu akzeptieren, wenn es Ihre Frage beantwortet, auch wenn Sie habe die Antwort selbst gefunden, bevor du Gariepys Antwort gelesen hast. – Andy