0
我有以下問題。我試圖做一個水平翻轉,我的代碼正在編譯,但之後,我有運行時錯誤。我在下面發佈我的代碼,以及發生錯誤的mat.inl.hpp頭部分。opencv庫中的水平翻轉
int HorizontalFlip(Mat img)
{
Mat img4 = img.clone();
for (int i = 0; i < img4.rows; i++)
{
for (int j = 0; j < ceil(img4.cols/2); j++)
{
Vec3b &intensity = img4.at<Vec3b>(i, j);
Vec3b &intensity2 = img4.at<Vec3b>(i, img4.cols);
Vec3b bufor;
int k = ceil(img4.cols/2);
for (int channel = 0; channel < img4.channels(); channel++)
{
do
{
bufor = intensity;
intensity = intensity2;
intensity2 = bufor;
} while (ceil(img4.cols/2) < k);
}
}
}
namedWindow("Horizontal Flip", WINDOW_AUTOSIZE);
imshow("Horizontal Flip", img4);
return 0;
}
CV_DbgAssert((unsigned)(i1 * DataType<_Tp>::channels) < (unsigned)(size.p[1] * channels()));
謝謝你的時間,你花在解決我的問題。
已經有一個叫做函數['翻轉()'](http://docs.opencv.org/2.4/modules/core/doc/operations_on_arrays.html#void%20flip (InputArray%20src,%20OutputArray%20dst,%20int%20flipCode))在opencv – PSchn
,但我必須做到這一點,沒有任何功能與opencv提供的圖像處理連接。 – Linnot
然後請將這些重要信息添加到答案中! – PSchn