Код: Выделить всё
// n: number of points
// polygon_: a vector of points forming a polygon
// image_points: an empty vector of points but reserve()d size n
// keep: a vector of bool of size n, initialized to false
#pragma omp parallel for
for (size_t pt_idx = 0; pt_idx < n; ++pt_idx) {
keep[pt_idx] =
cv::pointPolygonTest(polygon_, image_points[pt_idx], false) > 0;
}
В противном случае, каждый поток обращается только к одному местоположению в входных и выходных векторах и не вмешиваюсь, поэтому я в утрате. Данные раса на саме счетчике цикла, но это, по -видимому, ложное положительное. и Homebrew Libomp 19.1.6.
Подробнее здесь: https://stackoverflow.com/questions/795 ... ng-results
Мобильная версия