cv::sort和cv::sortIdx

//按行按 升序排序
    uchar a[][3] = {{1,2,13},{6,5,14},{7,8,19}};
    cv::Mat mat(1,9,CV_8UC1,a,1);
    cv::sort(mat,mat,CV_SORT_EVERY_ROW + CV_SORT_ASCENDING);

//按行按 升序排序索引
uchar a[][3] = {{11,12,13},{6,5,14},{7,8,19}};
    cv::Mat mat(1,9,CV_8UC1,a,1);
    cv::Mat idx(1,9,CV_8UC4,0);
    cv::sortIdx(mat,idx,CV_SORT_EVERY_ROW + CV_SORT_ASCENDING);

结果为:4,3,6,7,0,1,2,5,8 表示mat[0][4]最小,mat[0][3]次小,mat[0][6]第三小。

你可能感兴趣的:(#,OpenCV)