C++ Z轴上的Dlib旋转图像

C++ Z轴上的Dlib旋转图像,c++,c++11,image-processing,dlib,C++,C++11,Image Processing,Dlib,我试图通过使用dlib在Z轴上旋转来生成一些图像。 我发现了点变换法,仿射3D旋转法,但我不知道如何使用它 我的起点是从JPG文件加载的array2d图像,我需要将该图像从-10度旋转到+10度 例如,要使用一组图像在X轴和Y轴上旋转,我使用了这个cose(工作正常): dlib::数组图像; std::矢量对象位置,忽略; //解析器[0]是一个输入XML 忽略=加载图像数据集(图像、对象位置、解析器[0]); //在-7到+7之间以1度的步长为每个训练图像添加旋转。 矩阵角; 双台阶=1.0

我试图通过使用dlib在Z轴上旋转来生成一些图像。 我发现了点变换法,仿射3D旋转法,但我不知道如何使用它

我的起点是从JPG文件加载的
array2d图像
,我需要将该图像从-10度旋转到+10度

例如,要使用一组图像在X轴和Y轴上旋转,我使用了这个cose(工作正常):

dlib::数组图像;
std::矢量对象位置,忽略;
//解析器[0]是一个输入XML
忽略=加载图像数据集(图像、对象位置、解析器[0]);
//在-7到+7之间以1度的步长为每个训练图像添加旋转。
矩阵角;
双台阶=1.0*M_PI/180.0;
对于(int r=-7;r
        dlib::array<array2d<unsigned char> > images;
        std::vector<std::vector<rectangle> > object_locations, ignore;
        // Parser[0] is an input XML
        ignore = load_image_dataset(images, object_locations, parser[0]);

        // Add rotations for every training image in steps of 1 degrees from -7 to +7.
        matrix<double,15,1> angles;
        double step = 1.0 * M_PI / 180.0;
        for (int r = -7; r <= 7; ++r) angles(r) = (double) r * step;
        add_image_rotations(angles, images, object_locations, ignore);