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

نام تاپیک: تشخیص تعداد دایره های درون عکس (Matlab)

  1. #1
    کاربر دائمی آواتار کامروا
    تاریخ عضویت
    دی 1388
    محل زندگی
    ایالات متحده جهرم
    پست
    535

    Red face تشخیص تعداد دایره های درون عکس (Matlab)

    سلام

    از طریق نرم افزار متلب میخوام که تعداد سکه های درون عکس زیر رو پیدا کنم :



    بوسیله کد زیر تونستم تعداد سکه ها رو بشمارم :
    function p = CountCoins(i)
    subplot(2,2,1);
    imshow(i);
    subplot(2,2,2);
    t=im2bw(i);
    imshow(t);
    subplot(2,2,3);
    imhist(i);
    subplot(2,2,4);
    x=zeros(size(i));
    x(i>100)=1;
    imshow(x);
    c=bwconncomp(x);
    p=c.NumObjects;
    end


    اما من میخوام بدون استفاده از تابع bwconnconp این کارو انجام بدم.

    ممنون میشم راهنمایی کنید


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

    نقل قول: تشخیص تعداد دایره های درون عکس (Matlab)

    از circle hough استفاده کنید.

  3. #3
    کاربر دائمی آواتار کامروا
    تاریخ عضویت
    دی 1388
    محل زندگی
    ایالات متحده جهرم
    پست
    535

    نقل قول: تشخیص تعداد دایره های درون عکس (Matlab)

    نقل قول نوشته شده توسط mostafa.sataki مشاهده تاپیک
    از circle hough استفاده کنید.
    در مورد Circle Hough جستجو کردم و باهاش خیلی کارها کرده بودند و من یکم گیج شدم.
    میشه یه مثال ساده بزنید؟

    سپاس

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

    نقل قول: تشخیص تعداد دایره های درون عکس (Matlab)

    عملکردش ساده هستش.
    مثلاً به شما گفته میشه که دایره های با شعاع 10 را در تصویر ورودی پیدا کنید.
    معادله دایره
    x= a + r* cos(theta);
    y= b+ r* sin(theta);


    شما از تصویر ورودی لبه گیری می کنید و به ازای هر نقطه غیر صفر معادله دایره با شعاع 10 به ازای 360 در جه در آن نقطه محاسبه می کنید و حال همه نقاط را در یک تصویر انباشتگر بریزید.
    با انجام اینکار بر روی کلیه نقاط غیر صفر انباشتگر تون پر میشه.
    حالا به انباشتگر خودتون نگاه کنید به ازای تعداد دایره های که در صفحه با شعاع 10 وجود داره در انباشتگر peek می بینید حالا با یک آستانه گیری فقط نقاط peek در انباشتگر باقی می مونن حالا کلیه ماکزیمم های محلی را در انباشتگر بدست بیارید اینا میشه مراکز دایره های موجود در تصویر ورودی.

    موفق باشید.

  5. #5
    کاربر دائمی آواتار کامروا
    تاریخ عضویت
    دی 1388
    محل زندگی
    ایالات متحده جهرم
    پست
    535

    نقل قول: تشخیص تعداد دایره های درون عکس (Matlab)

    ممنون از راهنمایی تون.

    میشه در مورد روش bwLabel هم توضیح بدید ؟
    numberOfCoins = round(sum(image1(:)) / averageNumberOfPixelsInACoin));


    سپاس

تاپیک های مشابه

  1. سوال: مشکل در بدست آوردن تعداد داده های درون datalist
    نوشته شده توسط adineh67 در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: چهارشنبه 23 آذر 1390, 07:48 صبح
  2. سوال: تعداد کاراکتر های درون یک تیبل یا فیلد
    نوشته شده توسط Rahimiyan در بخش C#‎‎
    پاسخ: 0
    آخرین پست: یک شنبه 01 آبان 1390, 10:46 صبح
  3. یافتن تعداد رکورد های درون یک جدول در دیتابیس Mdb
    نوشته شده توسط earse+erse در بخش مطالب مرتبط با بانکهای اطلاعاتی در VB6
    پاسخ: 1
    آخرین پست: جمعه 14 خرداد 1389, 21:04 عصر
  4. سوال: بدست آوردن تعداد فایل های درون پوشه
    نوشته شده توسط shytonak در بخش C#‎‎
    پاسخ: 1
    آخرین پست: چهارشنبه 13 شهریور 1387, 02:38 صبح
  5. بدست آوردن تعداد Pixel های یک عکس
    نوشته شده توسط Mahmood_M در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: جمعه 01 دی 1385, 18:25 عصر

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

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