Как решить различные результаты изменения размера в openCv и imresize в matlab? - PullRequest
0 голосов
/ 03 декабря 2018

Я хочу написать программу matlab на C ++ и столкнулся с различными результатами изменения размера в openCV и imresize в matlab. Я читал много сообщений об этом, большинство решений заключается в изменении «сглаживания» в matlab. Однако, imresize в моей программе Matlab не может быть изменен. Вот небольшой пример.

Matlab:

a=[1,4,5.6,7;
   2,5.3,4,2;
   4,7,0.8,9;
   2,1.3,4,5];
b=imresize(a,[2,2]);
b=[3.09116821289063 5.13890991210938
   3.06820678710938 4.70171508789063]

c ++:

double a[4][4]={1,4,5.6,7,2,5.3,4,2,4,7,0.8,9,2,1.3,4,5};
Mat a1(4,4,CV_64FC1,a);
Mat b;
resize(a1,b,Size(2,2),INTER_CUBIC);
b=[3.075   4.65
   3.575    4.699999999999999]

Что мне нужно, это масштабирование матрицывниз, и я не знаю, как изменить «сглаживание» при изменении размера. Эта проблема беспокоила меня в течение долгого времени, поэтому я надеюсь, что некоторые друзья, которые сталкиваются с той же проблемой, могут дать некоторые решения. Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...