我正在尝试将Hue-histogram的输出(5 * 1)旋转到另一个应该具有(1 * 5)维度的图像。
我使用以下代码但是我遇到了分段错误:
MatND hist_input;
calcHist( &hsv_input, 1, channels, Mat(), hist_input, 1, histSize, ranges, true, false );
normalize( hist_input, hist_input, 0, 1, NORM_MINMAX, -1, Mat() );
MatND rotated_histogram;
rotated_histogram.create( 0, hist_input.rows, CV_32FC1);
for (int i=0; i<hist_input.rows; i++)
{
rotated_histogram.at<float>(0,i) = hist_input.at<float>(i,0);
}
答案 0 :(得分:0)
我认为使用cv::MantND::t()
功能更容易。它正在返回转置,所以它正在为你转动它。
我也会添加一个观察:at
非常慢,所以如果你没有这样做测试就可以,但我建议你使用ptr
来申请