Что означает «InitGoogleLogging»? делать?

Я модифицировал пример программы на C ++ из библиотеки глубокого обучения Caffe, и я заметил этот код на линия 234 на это, кажется, не ссылаются снова.

::google::InitGoogleLogging(argv[0]);

Предоставленный аргумент представляет собой файл с прототипом, который определяет параметры модели глубокого обучения, которую я вызываю. Меня смущает то, куда идут результаты этой строки? Я знаю, что они в конечном итоге используются в программе, потому что, если я сделаю ошибку в файле prototxt, то произойдет сбой программы. Однако я изо всех сил пытаюсь увидеть, как данные передаются в класс, выполняющий задачи классификации.

5

Решение

Прежде всего, argv[0] является не первый аргумент, который вы передаете в свой исполняемый файл, а скорее имя исполняемого файла. Итак, вы переходите к ::google::InitGoogleLogging имя исполняемого файла, а не файл prototxt.
'glog' Модуль (Google Logging) использует это имя для оформления записей журнала, которые он выводит.

Во-вторых, caffe использует google logging (ака 'glog') как его модуль регистрации, и, следовательно, этот модуль должен быть инициализирован один раз при запуске caffe. Вот почему у вас есть это

::google::InitGoogleLogging(argv[0]);

в вашем коде.

8

Другие решения


По вопросам рекламы [email protected]