اطلاعیه

Collapse
No announcement yet.

مشکل در آموزش شبکه عصبی در پردازش تصویر

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل در آموزش شبکه عصبی در پردازش تصویر

    یا حق


    سلام دوستان

    اگر ممکنه منو راهنمائی کنید. من می خوام یک شبکه عصبی رو آموزش بدم. ورودی هام درون یک عکس هستش و خوروجی های صحیح و غلط هم درون عکس بعدی که از تناظر اینها می خوام شبکه رو آموزش بدم اما هر کاری کردم داره خطا می گیره.



    %################################################# #########################
    %#########################??? ???? ?????? ??????##############################
    %################################################# #########################



    clear all;
    close all;


    P = imread('C:\Documents and Settings\jhgf\Desktop\blood vessel\program me\NNProject\Train pic\01_original.png'
    T = imread('C:\Documents and Settings\jhgf\Desktop\blood vessel\program me\NNProject\Train pic\01_manual1.png'

    P =rgb2gray(P);


    net=newp([0 255;0 255;0 255;0 255;0 255;0 255;0 255;0 255;0 255],1);

    M=560;
    N=580;


    for i=2:M
    for j=2:N


    c=i


    p1=P(i-1,j-1);
    p2=P(i,j-1);
    p3=P(i+1,j-1);
    p4=P(i-1,j);
    p5=P(i,j);
    p6=P(i+1,j);
    p7=P(i+1,j-1);
    p8=P(i,j+1);
    p9=P(i+1,j+1);


    if T(i,j)>225
    t=1;
    end
    if T(i,j)<=225
    t=0;
    end

    p=[p1 p2 p3 p4 p5 p6 p7 p8 p9];
    net.trainParam.epochs = 50;
    net.trainParam.goal = 0.01;

    net=train(net,p,t);



    end
    end

    #2
    پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

    یا حق


    سلام دوستان

    من این فایل برنامه رو گذاشتم چون اون بالائی کج و کوله شد

    ممنون می شم این مشکل رو بر طرف کنید

    http://shahreghashang.persiangig.com/document/NN.m

    دیدگاه


      #3
      پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

      لطفا عکس ها رو هم پلود کنید.
      از این لحاظ گفتم عکس ها رو پلود کنید که بشه برنامه رو اجرا کرد و دید که چه خطیش error میده.
      انجمن طراحی مدارهای مایکرویو(فرکانس بالا)(http://www.eca.ir/forum2/index.php?board=283.0)
      انجمن شبکه های عصبی(http://www.eca.ir/forum2/index.php?board=207.0)
      *****

      دیدگاه


        #4
        پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

        یا حق


        سلام دوست عزیز
        ممنون از پاسختون

        عکسها عکسهای معمولی هستش چیز خاصی نیست از هر عکسی که خواستین استفاده کنین فقط عکس دوم سیاه و سفید هستش و تقریبا لبه عکس رنگی اولی هستش می خوام آموزش بدم که شبکه بتونه لبه یابی کنه همون اول هم خطا می گیره که خطاشو می زارم اینجا

        c =

        2

        Error in ==> network.train>trainargs at 237
        switch class(P)

        ??? Output argument "Q" (and maybe others) not assigned during call to "d:\Program
        Files\MATLAB\R2009a\toolbox\nnet\nnet\@network\tra in.m>trainargs".

        Error in ==> network.train at 142
        case 3, [err,X,T,Xi,Ai,Q,TS,matrixForm] = trainargs(net,X,T,[],[]);

        Error in ==> NN at 52
        net=train(net,p,t);

        دیدگاه


          #5
          پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

          یا حق


          سلام جناب وزیری ممنون بابت پاسخهاتون . یعنی راهی نداره تا به این روش آموزشش داد؟ که ورودی ها و هدف مون هرکدوم از یک عکس جدا باشن

          دیدگاه


            #6
            پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

            سلام دوست عزیز
            من برای اینکه با شما همراه بشم نیاز دارم که این برنامه رو در سیستم ام اجرا کنم
            دو تا عکسی که باهاش برنامه رو اجرا می کنید رو پلود کنید و درباره خط های برنامه توضیح بدید
            شاید اون موقع اطلاعات ناچیز من تونست کمکی بکنه.


            انجمن طراحی مدارهای مایکرویو(فرکانس بالا)(http://www.eca.ir/forum2/index.php?board=283.0)
            انجمن شبکه های عصبی(http://www.eca.ir/forum2/index.php?board=207.0)
            *****

            دیدگاه


              #7
              پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

              یا حق



              سلام دوست عزیز

              ممنون از اینکه وقت می زارین و پاسخ می دین. شاید این نکته هام پس به دردتون بخوره که هدف از این کارم چیه. من می خوام به شبکه فیلتر Cany رو آموزش بدم تا بوسیله آن به جای اعمال فیلتر از شبکه عصبی استفاده کنم. البته می دونم که استفاده از خود فیلتر آسونتره ولی این میتونه بهم کمک کنه تا فیلترهای دیگه رو آموزش بدم مثلا فیلترهایی که برمبنای فازی کار می کنن. من تازه این اولین باری هستش که با عصبی کار می کنم. عکسهای زیر رو هم براتون می زار م که حاصل اعمال فیلتر Cany برروی یک یک تصویر آنجیو هستش. این هم لینک عکسها فکر می کنم توضیحاتم دیگه کامل باشه.

              http://shahreghashang.persiangig.com/image/01_original.PNG


              http://shahreghashang.persiangig.com/image/01_manual1.PNG

              دیدگاه


                #8
                پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                1-اول از همه یه سئوال: ایا شما این پروژه رو دارید زیر نظر استاد راهنما خودتون جلو میرید یا خودتون به این موضوع علاقمند هستید؟
                ***
                2-کد شما را مطالعه کردم و با هدفتون اشنا شدم،اولا در مورد جواب دادن این روش یعنی لبه یابی به این صورت با شبکه عصبی جایی مقاله ای دیدید،که الان دارین پیاده سازی می کنید یا ایده ی خودتون هست؟
                ***
                ببینید کاری که شما کردید رو توضیح می دم:
                شما از یک پرسپترون (یعنی فقط یک نرون)استفاده کردید برای آموزش دیدن (M*Nتا) پیکسل
                یعنی حلقه ی For شما باید (M*N) بار اجرا بشه تا یه دونه تک نرون این همه خونه رو آموزش ببینه
                صرف نظر از اینکه اصلا آیا این روش جواب میده یا اینکه کدی که نوشتین درست هست،استفاده فقط از یک نرون به نظر من از این لحاظ اشتباه است که یک نرون قدرت محاسباتی بسیار کمی داره و باید از ساختار پیچیده تری نظیر شبکه عصبی چند لایه استفاده بشه.
                استفاده از عبارت Newp و استفاده از تک نرون برای مثال دسته بندی بسیار ساده استفاده میشه و برای چنین کاری این ساختار قدرت پاسخگویی ندارد.
                توجهتون رو به توضیح هلپ متلب در باره این دستور جلب مب کنم:
                Perceptrons can classify linearly separable classes in a
                finite amount of time
                .
                ***
                بعنوان اولین اشکال در کد بالا:
                در استفاده از دستور newp باید تعداد ستون های ماتریس p و ماتریس T با هم برابر باشند
                که برای کد شما این اتفاق نمی افتد
                به مثال ذیل دقت کنید:

                ***
                انجمن طراحی مدارهای مایکرویو(فرکانس بالا)(http://www.eca.ir/forum2/index.php?board=283.0)
                انجمن شبکه های عصبی(http://www.eca.ir/forum2/index.php?board=207.0)
                *****

                دیدگاه


                  #9
                  پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                  یا حق

                  سلام دوست عزیز بازم ممنون بابت پاسختون. این اولین کار من در مورد شبکه عصبی هستش و من جائی این روش رو ندیدم اما تو ذهنم بود که این کارو انجام بدم و به اتفاق چندتن از دوستان روش کار می کنیم. تو مطالعه صرفا تئوری که داشتم من می دونستم که شبکه تک لایه با یک نرون احتمالا جواب گو نباشه اما چون من برای اولین بار هستش که دارم کار می کنم واسه همین گفتم پله پله برم جلو و نتایج رو ببینم. اساتیدی هم هستند که تو این کار کمکم می کنن و در جریان هستن اما الان در دسترسم نیستن

                  یه چندتا سوال جناب وزیری

                  1 از چه شبکه ای استفاده کنم که بتونه به هر حال این تابع غیر خطی رو آموزش ببینه؟
                  2- نظرتون در مورد عملی بودن این روش چیه؟

                  دیدگاه


                    #10
                    پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                    ببینید هر تحقیقی نیاز به مطالعه زیاد کار های قبلی و استفاده از یک دکترای تخصصی اون رشته داره.
                    دکترای مخابراتی که کار پردازش تصویر انجان داده باشه و بتونه راهنمایی کنه
                    خدای نکرده قصد دلسرد کردن شما رو ندارم ولی به تنهایی جلو رفتن بدون مشورت و استفاده از مقالات قبلی،کار اشتباهیه.
                    ***
                    باید از ساختار
                    Multi Layer Feed forward Neural Network
                    استفاده کنید که ساده ترین ساختار شبکه عصبی است.
                    ***
                    مطالعه ی تمامی فصل های راهنمای تولباکس متلب و همچنین یادگیری کامل شبکه عصبی رو توصیه می کنم.
                    ***
                    انجمن طراحی مدارهای مایکرویو(فرکانس بالا)(http://www.eca.ir/forum2/index.php?board=283.0)
                    انجمن شبکه های عصبی(http://www.eca.ir/forum2/index.php?board=207.0)
                    *****

                    دیدگاه


                      #11
                      پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                      یا حق


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

                      پس الان از شبکه عصبی چندلایهای که گفتین شروع می کنم.

                      دیدگاه


                        #12
                        پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                        یا حق


                        سلام دوست عزیز

                        البته من منظوری از صحبتهای بالایی خودم نداشتم. امیدوارم ناراحت نشده باشین. اگر اساعه ادب شده من معضرت می خوام.

                        دیدگاه


                          #13
                          پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                          یا حق

                          سلام جناب وزیری بازم ممنون بابت پاسختون و راهنمایی هاتون

                          من تو یکی از کتابهای شبکه عصبی که داشتم و در مورد شبکه های عصبی چندلایه مشغول مطالعه بودم خوندم که گویا این شبکه ها فیلتر ها رو نیز آموزش می بینن.

                          فکر می کنم با یک طراحی ساختار مناسب و آموزش شبکه بشه فیلتر ها رو آموزش داد. البته با شناخت مختصری که من دارم این شبکه قادر به یادگیری فیلترها خواهد بود.به هر حال سعی می کنیم تا ببینیم چه می شه.

                          دیدگاه


                            #14
                            پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                            یا حق

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

                            دیدگاه


                              #15
                              پاسخ : مشکل در آموزش شبکه عصبی در پردازش تصویر

                              فرض کنید شما شبکه ای تحت عنوان net2 با دستور ذیل ساخته اید
                              net2=network
                              و کار آموزش شبکه به اتمام رسیده است
                              اکنون با دستور save net2 تمامی وزن ها و خصوصیات شبکه ذخیره می شود
                              برای فراخوانی نیز باید تایپ کنید load net2
                              انجمن طراحی مدارهای مایکرویو(فرکانس بالا)(http://www.eca.ir/forum2/index.php?board=283.0)
                              انجمن شبکه های عصبی(http://www.eca.ir/forum2/index.php?board=207.0)
                              *****

                              دیدگاه

                              لطفا صبر کنید...
                              X