我知道OpenMP包含在NDK中(使用示例在這裏:http://recursify.com/blog/2013/08/09/openmp-on-android)。我已經完成了它在該頁面上所說的內容,但是當我使用:#pragma omp for對掃描矢量的簡單for循環時,該應用程序與着名的「致命信號11」崩潰。Android OpenCV並行化循環
我在這裏錯過了什麼?順便說一句,我使用了一個來自Android示例的修改示例,它是Tutorial 2 Mixed Processing。我所需要的是並行化(多線程)一些for循環,並嵌套用於使用OpenCV時jni C++文件中的循環。
任何幫助/建議表示讚賞!
編輯:示例代碼添加:
#pragma omp parallel for
Mat tmp(iheight, iwidth, CV_8UC1);
for (int x = 0; x < iheight; x++) {
for (int y = 0; y < iwidth; y++) {
int value = (int) buffer[x * iwidth + y];
tmp.at<uchar>(x, y) = value;
}
}
在此基礎上:http://www.slideshare.net/noritsuna/how-to-use-openmp-on-native-activity 謝謝!
很難回答沒有代碼 – 2015-02-17 22:02:50
好吧,樣本添加,我的代碼是基於這個:http://www.slideshare。net/noritsuna/how-to-use-openmp-on-native-activity。我使用OpenCV,我在我的jni文件中包含了,並且它與致命的信號11一起崩潰...我也嘗試過使用單個for循環(或使用if語句)並添加:pragma omp parallel ..仍然崩潰! –
Razvan
2015-02-17 22:15:28