نمایش نتایج 1 تا 4 از 4

نام تاپیک: بذست آوردن مرکز یک شکل در پردازش تصویر

  1. #1
    کاربر دائمی آواتار JalaliMehr
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    صندلی جلوی کلاس
    پست
    146

    بذست آوردن مرکز یک شکل در پردازش تصویر

    سلام
    جهت بدست آوردن مرکز یک blob روش من بدین صورت است که rectangle ی که blob رو احاطه می کند را بدست آورده و سپس مرکز این recangle رو بعنوان مرکز blob در نظر می گیریم البته در همه موارد جواب صحیح نیست
    آیا روش دیگری هم وجود دارد که مرکز را دقیق تر محاسبه نماید

  2. #2
    کاربر دائمی آواتار مصطفی ساتکی
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    www.7khatcode.com
    پست
    1,193

    نقل قول: بذست آوردن مرکز یک شکل در پردازش تصویر

    در ابتدا جهت توضیحات تکمیلی به این پست نگاه کنید.
    اون روشی که شما ذکر کردید فوق العاده به نویز حساسه و در موارد نویزی دقت جوابش پایینه.
    اما روش آماری که برای این کار توصیه میشه استفاده از spatial moment می باشدName:  untitled.PNG
Views: 1046
Size:  3.9 کیلوبایت

    برای background مقدار f(x,y)=0 و برای foreground مقدار f(x,y)=1 می باشد
    حال مقادیر m00 و m01 و m10 را با توجه به فرمول مذکور بدست آورید حال برای بدست آوردن مرکز ثقل object از رابطه زیر استفاده نماید ( c مرکز ثقل )
    Cx = m10/m00
    Cy = m01 / m00
    آخرین ویرایش به وسیله مصطفی ساتکی : شنبه 09 فروردین 1393 در 18:48 عصر

  3. #3

    نقل قول: بذست آوردن مرکز یک شکل در پردازش تصویر

    x مرکز رو با میانگین x های همه نقاط شکل، و
    y مرکز رو با میانگین y های همه نقاط شکل حساب کن.
    function [yc, xc] = centermass(image)

    [y, x] = find(image == 1);

    xc = sum(x) / size(x, 1);
    yc = sum(y) / size(y, 1);

    end

  4. #4
    کاربر دائمی آواتار مصطفی ساتکی
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    www.7khatcode.com
    پست
    1,193

    نقل قول: بذست آوردن مرکز یک شکل در پردازش تصویر

    بدین صورت

    point centerOfMass(image)
    {
    M00 = 0;
    M10 = 0;
    M01 = 0;
    for(int i=0;i< image->height;i++)
    for(int j=0;j <image->width;j++)
    {
    M00 += image->pixels(j,i);
    M10 += i * image->pixel(j,i);
    M01 += j * image->pixel(j,i);
    }
    point pnt;
    pnt.x = M10 / M00;
    pnt.y = M01 / M00;
    return pnt;
    }

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •