Interpolacja 1-wymiarowej tablicy przy użyciu OpenCV

Definiuję tablicę 2 wartości i próbuję użyć funkcji zmiany rozmiaru modułu imgproc, aby zmienić jego rozmiar na 10 elementów z interpolacją liniową jako metodą interpolacji.

cv::Mat input = cv::Mat(1, 2, CV_32F);
input.at<float>(0, 0) = 0.f;
input.at<float>(0, 1) = 1.f;
cv::Mat output = cv::Mat(1, 11, CV_32F);
cv::resize(input, output, output.size(), 0, 0, cv::INTER_LINEAR);
for(int i=0; i<11; ++i)
{
    std::cout<< output.at<float>(0, i) << " ";
}

Oczekiwałem wyjścia:

0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0

Dostaję jednak:

0 0 0 0.136364 0.318182 0.5 0.681818 0.863636 1 1 1

Oczywiście zrozumienie, jak działa zmiana rozmiaru, jest błędne na podstawowym poziomie. Czy ktoś może mi powiedzieć, co robię źle? Wprawdzie OpenCV jest przesadą dla takiej prostej interpolacji liniowej, ale proszę mi pomóc w tym, co jest tutaj nie tak.

questionAnswers(1)

yourAnswerToTheQuestion