Имитация MrDlab с 2 квадратными матрицами

У меня есть 2 квадратные матрицы 19x19 (a & b), и я пытаюсь использовать оператор косой черты (mrdivide) для выполнения деления таким образом, чтобы

c = a / b

Я пытаюсь реализовать это в OpenCV. Я нашел несколько человек, предлагающих использоватьcv::solve но до сих пор я не смог найти ничего, что дает мне результат, близкий к matlab.

У кого-нибудь есть идеи, как я мог бы реализовать mrdivide с opencv?

Я пробовал следующий код:

cv::Mat mldivide(const cv::Mat& A, const cv::Mat& B ) 
{
    //return  b * A.inv();
    cv::Mat a;
    cv::Mat b;
    A.convertTo( a, CV_64FC1 );
    B.convertTo( b, CV_64FC1 );

    cv::Mat ret;
    cv::solve( a, b, ret, cv::DECOMP_NORMAL );

    cv::Mat ret2;
    ret.convertTo( ret2, A.type() );
    return ret2;
}

Затем я реализовал mrdivide следующим образом:

cv::Mat mrdivide(const cv::Mat& A, const cv::Mat& B ) 
{
   return mldivide( A.t(), B.t() ).t();
}

(редактировать: Согласно ответам это действительно дает мне правильный ответ, когда я использовал его правильно!)

Это дает мне неправильный ответ, то есть ничего подобного Matlab. По комментариям я тоже попробовал

cv::Mat mrdivide(const cv::Mat& A, const cv::Mat& B ) 
{
    return A * B.inv();
}

Это дает тот же ответ, что и выше, но также неверно.

Ответы на вопрос(2)

Ваш ответ на вопрос