صفحه 1 از 2 12 آخرآخر
نمایش نتایج 1 تا 40 از 64

نام تاپیک: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

  1. #1

    Lightbulb نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    با سلام
    عنوان پروژه من راجع به نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب هست. که این تصویر در حال حاضر تصویر یک هندوانه هست.(لازم به ذکره که این تصویر هندوانه شبیه یک بیضی هست )می بایست در این برنامه چندین تصویر در حلقه ای مثل for خوانده بشه و هم چنین برای هر کدام به صورت مجزا یک سری پارامترها مثل مساحت،محیط،حجم،مساحت دایره محیطی ومحاطی آن،طول بزرگ و کوچک تصویر ،ضریب کرویت ،شعاع انحنا ،رنگ و میانگین rgb همه تصاویر و.... محاسبه و نمایش داده بشه. در حال حاضر به یک سری دستورات برای اجرای چنین برنامه ای نیاز دارم. باید بگم که یه آشنایی جزیی از متلب دارم و خیلی نا آشنا نیستم .ممنون از توجه و راهنمایی هاتون. یا علی

  2. #2

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    سلام
    همین طور که اشاره کردید شما با متلب کمی آشنایی دارید.
    فرض کنید یک ماتریس داریم که اعداد داخل اون شامل اعداد 1 تا 255 باشند حالا می خواهیم اون خانه هایی از ماتریس را جدا کنیم که عدد اونها برابر مثلا 30 باشند چیکار باید بکنیم؟
    خب اگه این را بدونید در ادامه کار شما راحت تر خواهد شد. از اینجا شروع کنید

  3. #3

    Exclamation نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط nadaf.m مشاهده تاپیک
    با سلام
    عنوان پروژه من راجع به نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب هست. که این تصویر در حال حاضر تصویر یک هندوانه هست.(لازم به ذکره که این تصویر هندوانه شبیه یک بیضی هست )می بایست در این برنامه چندین تصویر در حلقه ای مثل for خوانده بشه و هم چنین برای هر کدام به صورت مجزا یک سری پارامترها مثل مساحت،محیط،حجم،مساحت دایره محیطی ومحاطی آن،طول بزرگ و کوچک تصویر ،ضریب کرویت ،شعاع انحنا ،رنگ و میانگین rgb همه تصاویر و.... محاسبه و نمایش داده بشه. در حال حاضر به یک سری دستورات برای اجرای چنین برنامه ای نیاز دارم. باید بگم که یه آشنایی جزیی از متلب دارم و خیلی نا آشنا نیستم .ممنون از توجه و راهنمایی هاتون. یا علی

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

  4. #4

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

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

  5. #5

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

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

  6. #6

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    خب کد خودتون را بذارید اینجا تا بر اساس اون بقیه چیزها را به دست بیاریم

  7. #7

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg 1.jpg‏ (20.6 کیلوبایت, 103 دیدار)
    آخرین ویرایش به وسیله nadaf.m : سه شنبه 31 تیر 1393 در 11:54 صبح

  8. #8

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%
    آخرین ویرایش به وسیله nadaf.m : سه شنبه 31 تیر 1393 در 11:53 صبح

  9. #9

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%
    آخرین ویرایش به وسیله nadaf.m : سه شنبه 31 تیر 1393 در 11:53 صبح

  10. #10

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    شما که ماشالله خوب کد می زنی این که دیگه کاری نداره ( اگه هندونه ها همشون افقی باشن)

    I=imread('1.jpg');
    I1=rgb2gray(I);
    labe1= edge(I1,'roberts');
    labe=zeros(size(I1,1),size(I1,2));
    labe(2:end-1,2:end-1)=labe1(2:end-1,2:end-1);
    x=repmat(1:size(I1,2),size(I1,1),1);
    y=repmat(1:size(I1,1),size(I1,2),1)';
    y=repmat(size(I1,1):-1:1,size(I1,2),1)';

    index=find(labe==1);
    labex=x(index);
    labey=y(index);

    toolbozorg=max(labex)-min(labex);
    toolkoochek=max(labey)-min(labey);

    x1bozorg=min(labex);%mean(labex(labex==min(labex)) );
    y1bozorg=mean(labey(labex==x1bozorg));
    y1koochek=min(labey);%mean(labex(labey==min(labey) ));
    x1koochek=x1bozorg+toolbozorg/2;

    drawcircle(x1bozorg+toolbozorg/2,y1bozorg,toolbozorg/2);
    hold on
    imshow(I);
    drawcircle(x1bozorg+toolbozorg/2,y1bozorg,toolbozorg/2);
    drawcircle(x1koochek,y1koochek+toolkoochek/2,toolkoochek/2);

  11. #11

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    خیلی ممنون از لطفتون و راهنمایی هاتون .....
    ببینید توی دستوری که گفتید ،دستور draw circle برای متلب ناشناخته هست و خطای زیر رو میده:
    Undefined function 'drawcircle' for input arguments of type 'double'.
    اتفاقا توی هلپ متلپ که جستجو کردم ،خیلی تلاش کردم دستوری مشابه پیدا کنم مثل pdecircle یا circle یا حتی viscirclel اما باز نتیجه ای ندادند و خطا میداد، یا اگر چیزی نشون میداد کاملا بی ربط با چیزی که می خواستم بود.لطفا میشه اگه دستور جایگزینی مد نظرتون هست بهم بگید....
    با نهایت سپاس از همراهیتون.....

  12. #12

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    از این سایت گرفتم
    blog.ubifeel.com/?p=54


    function drawcircle(xc, yc, r)
    t = [0:0.1:2*pi];
    x = r * cos(t);
    y = r * sin(t);
    plot(x + xc, y + yc);
    end

  13. #13

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    تو سایتی که گفتید رفتم ،اما متاسفانه اونجا هم به نتیجه ای نرسیدم.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    آخرین ویرایش به وسیله nadaf.m : سه شنبه 31 تیر 1393 در 11:58 صبح

  14. #14

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    بازم بابت کمکتون تشکر میکنم...اما مشکلی که پیش اومد این بود که این قسمت آخری برنامه یعنی همین رسم دایره های محیطی و محاطی و....ومحاسبات مربوط به اونها . با توجه به این ضریب حساسیت 0.99455 فقط برای تصویر اول نتیجه داد .یعنی برای مابقی تصاویر این ضریب متفاوت هست ...یا حتی مقدار بازه ی
    Rminو Rmax
    هم برای هر تصویر باید متفاوت باشه تا نتیجه بده.حالا به نظرتون باید چه کار کنم تا این قسمت هم برای همه ی تصاویر نتیجه بده.یا مثلا چه چیزی رو باید داخلش تغییر بدم؟؟؟؟؟
    یه سوال دیگه ای که دارم این هست که:به نظرتون مقدار شعاع دایره محیطی طبق این دستورات جدید درسته(در قسمت مرکز1 و شعاع 1)؟؟؟؟
    البته من حساب که کردم درست نبود!!!!!باید چی کار کنم؟؟؟؟
    لطفا کمکم کنید.....ممنون
    آخرین ویرایش به وسیله nadaf.m : سه شنبه 31 تیر 1393 در 11:59 صبح

  15. #15

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    اگه بتونید کدها را داخل تگ بذارید شکل بهتری پیدا می کنه
    من فرض کردم همه شکل ها به صورت بیضی افقی هست مثل همون هندونه. نمیدونم شکل های دیگه به چه صورتی هست.

  16. #16

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    منظورتون رو متوجه نمیشم!!!یعنی دقیقا باید چی کار کنم.منظورتون از تگ چیه؟؟؟(فرضتون هم صحیح هست،یعنی همه تصاویر تقریبا شکلی شبیه بیضی دارندو افقی هستند ،منتهی با یه مقدار تغییرات جزیی...)
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg 60.jpg‏ (19.7 کیلوبایت, 86 دیدار)
    • نوع فایل: jpg 8.jpg‏ (20.3 کیلوبایت, 85 دیدار)
    آخرین ویرایش به وسیله nadaf.m : دوشنبه 16 تیر 1393 در 23:14 عصر

  17. #17

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب


  18. #18

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    این دو تصویری که فرستادین به این صورت میشه با اون برنامه که نوشتم. بیضی کامل نیستند
    http://www.sharefile.ir/uploads/1404720806.zip

  19. #19

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

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

  20. #20

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    از روش سوبل استفاده کنید
    مثلا مساحت این جور به دست میاد

    I=imread('8.jpg');
    I1=rgb2gray(I);
    labe1= edge(I1,'sobel');
    labe=zeros(size(I1,1),size(I1,2));
    labe(2:end-1,2:end-1)=labe1(2:end-1,2:end-1);
    x=repmat(1:size(I1,2),size(I1,1),1);
    y=repmat(size(I1,1):-1:1,size(I1,2),1)';

    labey1=y.*labe;
    labey1(labey1==0)=1.5;
    masahat=sum(max(labey1)-min(labey1))

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

  21. #21

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

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

  22. #22

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    ffoadn اون کد مساحت را اشتباه حساب می کرد این یکی داخل هندونه را سفید می کنه و مساحت می گیره
    خودتون خط به خط کدها را خروجی بگیرین ببنید محتویاتش چیه
    مختصات را با repmat به دست میاریم

    I=imread('8.jpg');
    I1=rgb2gray(I);
    labe1= edge(I1,'sobel');
    labe=zeros(size(I1,1),size(I1,2));
    labe(2:end-1,2:end-1)=labe1(2:end-1,2:end-1);
    x=repmat(1:size(I1,2),size(I1,1),1);
    y=repmat(1:size(I1,1),size(I1,2),1)';

    labey1=y.*labe;
    mx=max(labey1);
    labey1(labey1==0)=max(mx);
    mn=min(labey1);
    idxmx=find(mx~=0);
    idxmn=find(mn~=max(mx));
    idxmnmx=intersect(idxmn,idxmx);
    segment=zeros(size(I1,1),size(I1,2));
    for i=idxmnmx
    segment(mn(i):mx(i),i)=1;
    end
    masahat=sum(segment(:))
    imshow(segment)


    http://www.sharefile.ir/uploads/1404860527.png

  23. #23

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    با نهایت سپاس از کمک و توجهتون...
    بعد از اجرای کدتون یک سری خطوط سیاه در سطح هندونه ایجاد میشه!!یعنی حتی روی تصویر اول که هیچ مشکلی نداشت هم یه سری خطوط سیاه رنگ ایجاد میکنه!!!خیلی تلاش کردم مشکلشو رفع کنم اما بی فایده بود ،از فیلتر هم استفاده کردم اما اثری نداشت!!!به نظرتون چه جوری باید مانع از ایجاد این خطوط شد و یا حذفشون کرد!!؟؟؟!

  24. #24

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

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

    I=imread('1.jpg');
    I1=rgb2gray(I);
    labe1= edge(I1,'sobel');
    labe1=bwmorph(labe1,'bridge',5);
    labe=zeros(size(I1,1),size(I1,2));
    labe(2:end-1,2:end-1)=labe1(2:end-1,2:end-1);
    x=repmat(1:size(I1,2),size(I1,1),1);
    y=repmat(1:size(I1,1),size(I1,2),1)';

    labey1=y.*labe;
    mx=max(labey1);
    labey1(labey1==0)=max(mx);
    mn=min(labey1);
    idxmx=find(mx~=0);
    idxmn=find(mn~=max(mx));
    idxmnmx=intersect(idxmn,idxmx);
    segment=zeros(size(I1,1),size(I1,2));
    for i=idxmnmx
    segment(mn(i):mx(i),i)=1;
    end
    masahat=sum(segment(:))
    imshow(segment)

  25. #25

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

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

  26. #26

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط nadaf.m مشاهده تاپیک
    فقط برای یادگیری بیشتر می خواستم ازتون بپرسم چه جوری میشه از چپ به راست هم سطح هندونه رو سفید کرد؟؟؟؟!!!و کلا ترکیب دستوراتش با حالت از بالا به پایین به چه شکل میشه؟؟؟!!
    خیلی راحته اگه تونستید پیدا کنید یه جایزه پیش من دارید

    ویه سوال اساسی دیگه ای که از خدمتتون دارم این هست که پارامتر محیط رو به چه صورت میشه به صورت صحیح بدست آورد؟؟!!

    seg1=bwmorph(segment,'majority',5);
    border=seg1-bwmorph(seg1,'erode');
    mohit=sum(border(:))
    imshow(border)

    اگه امکان داره بگید از چه روشی داخل هندونه را پر کردید

  27. #27

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    راستش در مورد ترکیب این دستورات( از بالا به پایین و چپ به راست) که گفتید ،فکر میکنم کدی که براتون فرستادم ،قسمت بیشترش تکمیل هست و فقط احتیاج به یه اصلاح کوچولو داره!!!!ولی اگه میشه یه مقدار بهم فرصت بدید تا اون کد الگوی چپ به راست رو پیدا کنم!!همون طور که گفتید من هم احساس میکنم باید کد ساده ای باشه!!!ولی لطف کنید اگه از نظرتون این کد خیلی اشتباه هست،بهم بگید!!!! (ولی من تستش کردم بد جواب نمیداد!!!)
    I=imread('8.jpg');
    I1=rgb2gray(I);
    labe1= edge(I1,'sobel');
    labe1=bwmorph(labe1,'bridge',5);
    labe=zeros(size(I1,1),size(I1,2));
    labe(2:end-1,2:end-1)=labe1(2:end-1,2:end-1);
    x=repmat(1:size(I1,2),size(I1,1),1);
    y=repmat(1:size(I1,1),size(I1,2),1)';
    z=rot90(y,2);
    labey1=y.*labe;
    labex1=z.*labe;
    mx1=max(labey1);
    mx2=max(labex1);
    labey1(labey1==0)=max(mx1);
    labex1(labex1==0)=max(mx2);
    mn1=min(labey1);
    mn2=min(labex1);
    idxmx1=find(mx1~=0);
    idxmx2=find(mx2~=0);
    idxmn1=find(mn1~=max(mx1));
    idxmn2=find(mn2~=max(mx2));
    idxmnmx1=intersect(idxmn1,idxmx1);
    idxmnmx2=intersect(idxmn2,idxmx2);
    segment1=zeros(size(I1,1),size(I1,2));
    segment2=zeros(size(I1,1),size(I1,2));
    for i=idxmnmx1
    segment1(mn1(i):mx1(i),i)=1;
    end
    for i=idxmnmx2
    segment2(mn2(i):mx2(i),i)=1;
    end
    img_3=imadd(segment1,segment2);
    figure,
    imshow(img_3);
    masahat=sum(img_3(:))
    آخرین ویرایش به وسیله nadaf.m : پنج شنبه 19 تیر 1393 در 02:26 صبح

  28. #28

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    ببخشید من نتونستم از این تگ که گفتید درست استفاده کنم.
    اما باید بگم که ،کد خودتون رو با یه ذره تغییر کوچیک تونستم واسه اکثر تصاویر کاربردیش کنم ،منظورم این هست که سطح اکثر هندونه ها سفید میشه،که تنها تغییرش توی خط 4ام بود و به صورت زیر شد:
    [CPP]
    labe1=bwmorph(labe1,'dilate',13);
    [/CPP]

  29. #29

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    و در آخر ضمن تشکر از کمک های خوب شما........
    کدی که گفتم برای همه ی تصاویرخیلی خوب جواب داد به صورت زیر هست:

    close all
    clc
    clear all
    fontSize = 13;
    p=imread('8.jpg');
    v = rgb2gray(p);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    hy = fspecial('sobel');
    hx = hy';
    Iy = imfilter(double(v), hy, 'replicate');
    Ix = imfilter(double(v), hx, 'replicate');
    gradmag = sqrt(Ix.^2 + Iy.^2);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    L = watershed(gradmag);
    Lrgb = label2rgb(L);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    se = strel('disk', 50);
    Io = imopen(v, se);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Ie = imerode(v, se);
    Iobr = imreconstruct(Ie, v);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Ioc = imclose(Io, se);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Iobrd = imdilate(Iobr, se);
    Iobrcbr = imreconstruct(imcomplement(Iobrd),imcomplement(Iob r));
    Iobrcbr = imcomplement(Iobrcbr);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    fgm = imregionalmax(Iobrcbr);
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    I2 = v;
    I2(fgm) = 255;
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    se2 = strel(ones(5,5));
    fgm2 = imclose(fgm, se2);
    fgm3 = imerode(fgm2, se2);
    fgm4 = bwareaopen(fgm3, 20);
    I3 = v;
    I3(fgm4) = 255;
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    bw = im2bw(Iobrcbr, graythresh(Iobrcbr));
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    bw=~bw;
    figure, subplot(1,1,1);
    imshow(bw), title('tasvire baynere shodeh')

    آخرین ویرایش به وسیله nadaf.m : پنج شنبه 19 تیر 1393 در 13:05 عصر

  30. #30

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    شرمنده !!!یه سوال دیگه داشتم:اینکه به نظرتون زمانی که سطح هندونه کلا سفید شد و بعد از یه مقدار تغییرات روی تصویر، حالتی بوجود میاد که فقط لبه های هندونه باقی می مونند :(یعنی یه تصویر کلا سیاه اما با لبه های سفید هندونه.)اون موقع میشه از دستور bw area برای بدست آوردن محیط استفاده کرد؟؟؟!!!آخه من تصورم این هست که این دستور فقط کار شمردن پیکسل های سفید رو انجام میده!!!!و این طوری محیط برحسب پیکسل بدست میاد!!!؟!!!!!!!

  31. #31

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط nadaf.m مشاهده تاپیک
    راستش در مورد ترکیب این دستورات( از بالا به پایین و چپ به راست) که گفتید ،فکر میکنم کدی که براتون فرستادم ،قسمت بیشترش تکمیل هست و فقط احتیاج به یه اصلاح کوچولو داره!!!!ولی اگه میشه یه مقدار بهم فرصت بدید تا اون کد الگوی چپ به راست رو پیدا کنم!!همون طور که گفتید من هم احساس میکنم باید کد ساده ای باشه!!!ولی لطف کنید اگه از نظرتون این کد خیلی اشتباه هست،بهم بگید!!!! (ولی من تستش کردم بد جواب نمیداد!!!)
    لازم نبود rotate کنید دو تصویر segment را ببینید یکیش کله پا شده در ضمن از چپ به راست هم پر نشده از لبه پیکسل ها معلومه از بالا به پایین پر شده

  32. #32

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط nadaf.m مشاهده تاپیک
    شرمنده !!!یه سوال دیگه داشتم:اینکه به نظرتون زمانی که سطح هندونه کلا سفید شد و بعد از یه مقدار تغییرات روی تصویر، حالتی بوجود میاد که فقط لبه های هندونه باقی می مونند :(یعنی یه تصویر کلا سیاه اما با لبه های سفید هندونه.)اون موقع میشه از دستور bw area برای بدست آوردن محیط استفاده کرد؟؟؟!!!آخه من تصورم این هست که این دستور فقط کار شمردن پیکسل های سفید رو انجام میده!!!!و این طوری محیط برحسب پیکسل بدست میاد!!!؟!!!!!!!
    حرف شما کاملا درسته ولی به bwarea نمیشه محیط بدست آورد باید فاصله بین دو پیکسل مجاور که روی لبه هستند را برای تمام اون پیکسل ها محاسبه کنید و با هم جمع بزنید دو پیکسلی که ضلع مشترک دارند فاصله 1 و دو پیکسلی که از گوشه به هم چسبیدند فاصله رادیکال 2 دارند.

  33. #33

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط nadaf.m مشاهده تاپیک
    ببخشید من نتونستم از این تگ که گفتید درست استفاده کنم.
    اما باید بگم که ،کد خودتون رو با یه ذره تغییر کوچیک تونستم واسه اکثر تصاویر کاربردیش کنم ،منظورم این هست که سطح اکثر هندونه ها سفید میشه،که تنها تغییرش توی خط 4ام بود و به صورت زیر شد:
    [CPP]
    labe1=bwmorph(labe1,'dilate',13);
    [/CPP]
    این یه کم میتونه خطرناک بشه . واسه اینکه از حاشیه های هنونه هم مساحت را بالا می بره

  34. #34

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    یعنی این bwarea حتی مساحت رو هم صحیح نمیده !!!؟(ولی مگه دستور تعریف مساحت نیست؟؟؟!!)پس یعنی همیشه باید از دستور sumبرای شمردن پیکسل ها جهت بدست آوردن پارامترا استفاده کنیم.!!!!!!؟

  35. #35

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط rahnema1 مشاهده تاپیک
    لازم نبود rotate کنید دو تصویر segment را ببینید یکیش کله پا شده در ضمن از چپ به راست هم پر نشده از لبه پیکسل ها معلومه از بالا به پایین پر شده
    البته باید بگم: متوجه بودم که این کد تصویر رو وارون میکنه !!!و فقط پرسیدم که ترکیبش درست هست یا نه؟؟!!و اصلا منظورم این نبود که این الگویی برای چپ به راست هست!!!!!!!!!!!!!!!

  36. #36

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط nadaf.m مشاهده تاپیک
    یعنی این bwarea حتی مساحت رو هم صحیح نمیده !!!؟(ولی مگه دستور تعریف مساحت نیست؟؟؟!!)پس یعنی همیشه باید از دستور sumبرای شمردن پیکسل ها جهت بدست آوردن پارامترا استفاده کنیم.!!!!!!؟
    به درد محاسبه محیط که نمی خوره هیچ حالا که به الگوریتمش در هلپ متلب نگاه کردم به درد محاسبه مساحت هم نمی خوره.(فکر کنم برای کاربردهای خاصی باشه).
    همون sum مناسبترین روشه برای محاسبه مساحت

  37. #37

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

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

  38. #38

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب


    labex1=x.*labe;
    mx1=max(labex1,[],2);
    labex1(labex1==0)=max(mx1);
    mn1=min(labex1,[],2);
    idxmx1=find(mx1~=0);
    idxmn1=find(mn1~=max(mx1));
    idxmnmx1=intersect(idxmn1,idxmx1);
    segment1=zeros(size(I1,1),size(I1,2));
    for i=idxmnmx1'
    segment1(i,mn1(i):mx1(i))=1;
    end
    imshow(segment1)

  39. #39

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    بابت همه ی کمک ها و راهنمایی های مفیدتون، تشکر میکنم .امیدوارم همیشه موفق و پیروز باشید.

  40. #40

    نقل قول: نوشتن برنامه ای برای استخراج خصوصیات فیزیکی از یک تصویر با پردازش تصویر در متلب

    نقل قول نوشته شده توسط rahnema1 مشاهده تاپیک

    labex1=x.*labe;
    mx1=max(labex1,[],2);
    labex1(labex1==0)=max(mx1);
    mn1=min(labex1,[],2);
    idxmx1=find(mx1~=0);
    idxmn1=find(mn1~=max(mx1));
    idxmnmx1=intersect(idxmn1,idxmx1);
    segment1=zeros(size(I1,1),size(I1,2));
    for i=idxmnmx1'
    segment1(i,mn1(i):mx1(i))=1;
    end
    imshow(segment1)


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

صفحه 1 از 2 12 آخرآخر

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

  1. نوشتن برنامه ای برای تحلیل مدار های الکتریکی
    نوشته شده توسط abbas198 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 6
    آخرین پست: پنج شنبه 02 اردیبهشت 1389, 00:54 صبح
  2. پاسخ: 1
    آخرین پست: دوشنبه 20 آبان 1387, 13:43 عصر
  3. نوشتن برنامه ای برای ارتباط با بانک اکسس تحت وب
    نوشته شده توسط h_sadeghynejad در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: چهارشنبه 12 اردیبهشت 1386, 03:30 صبح
  4. نوشتن برنامه ای برای پیغام رسانی در شبکه
    نوشته شده توسط samandari در بخش برنامه نویسی در Delphi
    پاسخ: 7
    آخرین پست: چهارشنبه 11 بهمن 1385, 21:02 عصر
  5. مشکل در نوشتن برنامه ای برای اجرا بر روی یک هاست
    نوشته شده توسط taze kar در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 12
    آخرین پست: شنبه 14 آبان 1384, 08:18 صبح

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

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