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

یافتن مرکز ماسک

+1 امتیاز
72 بازدید

سلام به همگی

ما با آستانه گیری از تصویر به یک ماسکی رسیدیم بعد با کد زیر مرکز ماسک را بدست آوردم .آیا راه حل من درسته؟

float sum_x=0, sum_y=0;
    float num_pix = 0;
    for(int x=0; x<mask.cols; x++) {
        for(int y=0; y<mask.rows; y++) {
            int val = mask.at<uchar>(y,x);
            if( val >= 50) {
                sum_x += x;
                sum_y += y;
                num_pix++;
            }
        }
    }
    Point p(sum_x/num_pix, sum_y/num_pix);

OpenCV تابعی برای اینکار نداره؟

سوال شده آذر 7, 1392  بوسیله ی farnoosh (امتیاز 2,350)   5 12 47

1 پاسخ

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

چرا تقریباً درسته ولی اگر بجای 50 تو شرط تون بذارید 1 کاملاً میشه مومنت مرتبه اول که از طریق آن مرکز ثقل آبجکت را محاسبه می کنند.

برای اطلاعات بیشتر این پست را مطالعه کنید.

پاسخ داده شده آذر 9, 1392 بوسیله ی مصطفی ساتکی (امتیاز 16,732)   17 25 66
...