مرتب سازی کانتور ها بر اساس مساحت - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

وبـــلاگ هــفت خــط کــد


آموزش های برنامه نویسی
۱۷۱ نفر آنلاین
۳۴ عضو و ۱۳۷ مهمان در سایت حاضرند

مرتب سازی کانتور ها بر اساس مساحت

+1 امتیاز
سلام مجدد.

برای مرتب سازی کانتور ها بر حسب مساحت چطوره ؟ آیا Opencv تابعی برای اینکار داره؟
سوال شده اردیبهشت 12, 1393  بوسیله ی hamed_akbari (امتیاز 60)   2 8 11

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

تابع خاصی که نه ولی خودتون با contourArea و sort می تونید همچین چیزی را پیاده کنید.

	Mat img = imread("c:\\test.bmp", 0);
	vector<vector<Point>> contours;
	findContours(img.clone(), contours, CV_RETR_EXTERNAL, CV_CHAIN_APPROX_SIMPLE);

	typedef pair<vector<Point>, int> ACType;
	vector <ACType > contours_area;
	for (auto contour : contours){
		int area = contourArea(contour);
		contours_area.push_back(make_pair(contour,area));
	}

	sort(contours_area.begin(), contours_area.end(), [](const ACType& contorL, const ACType& contorR){return contorR.second > contorL.second; });

 

پاسخ داده شده اردیبهشت 16, 1393 بوسیله ی مصطفی ساتکی (امتیاز 21,998)   24 34 75
انتخاب شد اردیبهشت 6, 1394 بوسیله ی hamed_akbari
...