這是C++代碼。如何獲得輪廓的質心? Android opencv
vector<Moments> mu(contours.size());
for(int i = 0; i < contours.size(); i++){
mu[i] = moments(contours[i], false);
}
//Mass center
vector<Point2f> mc(contours.size());
for(int i = 0; i < contours.size(); i++){
mc[i] = Point2f(mu[i].m10/mu[i].m00 , mu[i].m01/mu[i].m00);
}
這是我迄今爲止在android中的代碼。我無法將大衆中心轉換爲android。
//moments
List<Moments> mu = new ArrayList<Moments>(contours.size());
for (int i = 0; i < contours.size(); i++) {
mu.add(i, Imgproc.moments(contours.get(i), false));
}
//mass center
List<MatOfPoint2f> mc = new ArrayList<MatOfPoint2f>(contours.size());
for(int i = 0; i < contours.size(); i++){
mc.add((mu.get(i).get_m10()/mu.get(i).get_m00() , mu.get(i).get_m01()/mu.get(i).get_m00()));
}
錯誤在這行:
mc.add((mu.get(i).get_m10()/mu.get(i).get_m00() , mu.get(i).get_m01()/mu.get(i).get_m00()));
在此先感謝。
什麼是錯誤信息? – Aurelius