dlib shape_predictor обучение после нейронной сети

Я пытаюсь воспроизвести примеры dnn_mmod_train_find_cars_ex.cpp а также dnn_mmod_find_cars_ex.cpp описан изначально в авторской блог, но застрял с обучением предиктору формы для предсказания блоков объектов. Этот шаг в примерах пропускается, даже если shape_predictor включен в предварительно обученную модель.
Вот мой код, где shape_predictor не работает:

#include <iostream>
#include <dlib/dnn.h>
#include <dlib/image_io.h>
#include <dlib/image_processing.h>
#include <dlib/data_io.h>

using namespace std;
using namespace dlib;// The rear view vehicle detector network
template <long num_filters, typename SUBNET> using con5d = con<num_filters,5,5,2,2,SUBNET>;
template <long num_filters, typename SUBNET> using con5  = con<num_filters,5,5,1,1,SUBNET>;
template <typename SUBNET> using downsampler  = relu<affine<con5d<32, relu<affine<con5d<32, relu<affine<con5d<16,SUBNET>>>>>>>>>;
template <typename SUBNET> using rcon5  = relu<affine<con5<55,SUBNET>>>;
using net_type = loss_mmod<con<1,9,9,1,1,rcon5<rcon5<rcon5<downsampler<input_rgb_image_pyramid<pyramid_down<6>>>>>>>>;

// ----------------------------------------------------------------------------------------

int main(int argc, char** argv) try
{
const std::string data_directory = argv[1];
net_type net;

deserialize("mmod_net.dat") >> net;

std::vector<matrix<rgb_pixel>> images_train;
std::vector<std::vector<full_object_detection>> boxes_train;
load_image_dataset(images_train, boxes_train, data_directory+"/training.xml");

shape_predictor_trainer trainer;
trainer.set_num_threads(2);
trainer.be_verbose();

shape_predictor sp = trainer.train(net(images_train), boxes_train);cout << "Fiished. Hit enter to end program" << endl;
cin.get();
}
catch(std::exception& e)
{
cout << e.what() << endl;
}

Здесь вы можете скачать mmod_net.dat. Это та же сеть, которая была обучена в примере, но сериализована в отдельный файл без shape_predictor. Обучающий набор данных доступен Вот.

Как тренировать shape_predictor в этих примерах?

3

Решение

Задача ещё не решена.

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

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector