2
私はC++プログラミングの新人です。私のコードの1つの部分でこの問題を抱えています。このエラーは、メモリ割り当てタイプのエラーであることがあります。ダブルフリーまたはメモリ割り当てエラー
エラーコードは以下の通りです。
cv::Mat obstacles = cv::Mat::ones(output.size(), CV_8UC1);
for (int r=0; r<obstacles.rows; ++r) {
int x_cord = cvRound((r - intercet)/slope);
if (x_cord >= 0 && x_cord <= disp_size){
for (int c=0; c<obstacles.cols; ++c) {
int d = output.at<int>(r,c);
if ((d/(256/disp_size)) <= x_cord+5){//<= x_cord+5 && d>= x_cord-5){
obstacles.at<int>(r,c) = 0; //error is in this line
}
}
}
}
obstacles.at<int>(r,c) = 0;
行を削除してもエラーはありません。
r
とc
はそれぞれ行列の行番号と列番号であるため、これはわかりません。
この点に関するお手伝いがあります。
説明のおかげで多くのことを、私はそれが働いているか理解する上で問題がありました。ありがとう – Hasi