2012-05-02 4 views
0

Я работаю над проектом OpenCV и должен выполнить множество тестов. Поэтому я хочу создать какой-то графический интерфейс с некоторыми трекболами, чтобы я мог выполнять эти тесты более эффективно. (конечно, я могу запустить их 1 на 1, но это будет стоить много времени и не очень эффективно)set image path with createTrackbar

Например, я использую эту строку кода, где я загружаю .jpg изображение в виде матрицы:

Mat testSample = imread("test-01/subject-01_01.jpg"); 

Возможно ли вставить все эти значения «01» с 3 отдельными трекболами вместо жесткого кодирования пути к изображению .jpg.

Я пробовал поиск по Google с помощью «пути переменной изображения», но все поисковые запросы указывают на переменные окружения, и это не то, что мне нужно. Может ли кто-нибудь предоставить мне полезную ссылку или какие-то подсказки, как решить эту проблему.

ответ

1

У меня есть два предложения:

  1. ссылка каждый TrackBar к целой переменной (int testIdx, int subjIdx и int imgIdx), а затем использовать класс std::stringstream для создания имени файла из шаблона именования, используя TrackBar обратные вызовы для взаимодействие пользователя

  2. или написать неинтервативную программу, которая использует входной файл конфигурации (например, my_file.xml или my_file.yml). OpenCV способен обрабатывать эти файлы, и вы можете легко создавать и заполнять их с помощью сценариев оболочки.

+0

Используется ваше первое предложение, и все работает отлично – pimmes111