Я использую набор данных человека INRIA, я повторяю изображения, и все в порядке, и после того, как у меня есть эта функция
vector<Mat> HOG_extract(Mat input_image, bool patch_size, int width, int height)
{
Mat gray_image;
cvtColor(input_image, gray_image, CV_BGR2GRAY);
HOGDescriptor hog;
hog.winSize = Size(width, height);
hog.blockSize = Size(block_size, block_size);
hog.blockStride = Size(block_stride, block_stride);
hog.cellSize = Size(cell_size, cell_size);
hog.nbins = bin_size;
vector<float> hog_value;
vector<Point> locations;
hog.compute(gray_image, hog_value, Size(0, 0), Size(0, 0), locations);
}
, когда он добирается до hog.compute, я получаю исключение и ошибку libpng: IDAT: неверное расстояние слишком далеко назад.
как, как я могу решить это?выглядит как что-то, что происходит при использовании imread и конвертации в серый