Visual Studio 10、qt アドイン、および opecv ライブラリを使用しています。
私がやりたいことは、for ループを使用して複数のファイルをロードすることです。
(私は ui.image_templates_comboBox->currentText() = "cat" を持っています)
for (int i = 1; i <= 15; i++){
string currentText = ui.image_templates_comboBox->currentText().toStdString();
char name[40];
sprintf(name, "Logos/cat/%s_%d.tif", ¤tText, i);
templ_img [i] = cv::imread( name );
だから、これはうまくいくはずだと思ったのですが、デバッグするときにマウスを「name」の上に置くと、 currentText 値の前に英語以外の文字が 4 つあることに気付きました。
私は2つの質問をします:
a) どうすればこれらの 4 つの役に立たない文字を省略することができますか? (このサイトでは表示できなかったので、「1234」と入力しました)
- name 0x003a7b04 "Logos/cat/1234cat_1.tif" char [40]
b) imread() 内の式を使用して、これらの 4 行を 1 つに折りたたむことは可能ですか?