我試圖通過使用opencv java api來實現以下示例代碼 question 。爲了在java中實現findContours(gray, contours, CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE);
,我使用了這個語法Imgproc.findContours(gray, contours, new Mat(), Imgproc.RETR_LIST, Imgproc.CHAIN_APPROX_SIMPLE);
。如何在OpenCV java api中將MatOfPoint轉換爲MatOfPoint2f
所以現在等高線應該是List<MatOfPoint> contours = new ArrayList<MatOfPoint>();
而不是vector<vector<cv::Point> > contours;
。
然後我需要實現這個approxPolyDP(Mat(contours[i]), approx, arcLength(Mat(contours[i]), true)*0.02, true);
。在java api中,Imgproc.approxPolyDP接受參數爲approxPolyDP(MatOfPoint2f curve, MatOfPoint2f approxCurve, double epsilon, boolean closed)
。我如何將MatOfPoint轉換爲MatOfPoint2f?
或者有沒有辦法像C++接口一樣使用向量來實現這一點。任何建議或示例代碼非常感謝。
mMOP2f2從哪裏來? – user2534365