OpenCV
中是否有随机混乱matrx(按行排序)的函数?
输入:
1 2 3
4 5 6
7 8 9
输出:
4 5 6
7 8 9
1 2 3
cv :: randShuffle函数似乎只是随机排序整个数组中的元素 我正在使用更新的C ++ API
答案 0 :(得分:7)
用于混洗矩阵行的代码:
cv::Mat shuffleRows(const cv::Mat &matrix)
{
std::vector <int> seeds;
for (int cont = 0; cont < matrix.rows; cont++)
seeds.push_back(cont);
cv::randShuffle(seeds);
cv::Mat output;
for (int cont = 0; cont < matrix.rows; cont++)
output.push_back(matrix.row(seeds[cont]));
return output;
}