اطلاعیه

Collapse
No announcement yet.

سوال در مورد رابطه اسکنر و متلب

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

    سوال در مورد رابطه اسکنر و متلب

    سلام خدمت همه دوستان

    من با دستور :
    b=videoinput('winvideo',2);

    میتونم از یه وبکم که به یه پورت usb متصل هست عکسمو بگیرم و پردازش تصویر انجام بدم
    الان به جایی رسیدم که باید از اسکنر استفاده کنم.
    ولی روش بالا جوابگو نیست. :angry: :angry:
    در ضمن اسکنر هم مشکلی از لحاظ درایور و ... نداره و به صورت دستی اسکن انجام میده
    اما من میخام با دستور متلب بیاد واسکن کنه.

    لطفا راهنمایی کنید.
    تشکر :bye :bye

    #2
    پاسخ : سوال در مورد رابطه اسکنر و متلب

    سلام ..

    اگر قصد این رو دارید که از طریق MATLAB به device مورد نظرتون (اسکنر) پیغام بدید؛ فایل رو اسکن کنید و در انتها، فایل اسکن شده رو بخونید؛ نیاز به برنامه نویسی سطح بالا در MATLAB دارید؛ نه از جهت خواندن دیتا، که از جهت برقراری ارتباط با device تون .. یکی از روش های اون میتونه load کردن فایل های API و استفاده از dll های ساپورت شده باشه که با نصب درایور اسکنر؛ در قسمتی از سیستم شما ذخیره میشن .. البته این فایل ها (SDK ها) رو کمپانی برخی از device ها به صورت آزاد در اختیار کاربر قرار میدن (--معمولا در مرحله ی نصب و setup دستگاه بر روی سیستم؛ فایل ها هم فرا خوانده میشن و در یک قسمت به عنوان library files ذخیره میشن--) و یا اینکه لازم هست اونها رو سفارش بدید و از کمپانی ها دریافت کنید (--معمولا در سایت هایی که این دستگاه ها رو ساپورت میکنن؛ این اطلاعات هم ثبت میشن--) .. بعد از دریافت این فایل ها؛ میتونید از توابع سطح بالای اونها که برای Interface دستگاه نوشته شدن؛ استفاده کنید و اونها رو در MATLAB فرا خوانی کنید .. برای این کار هم میتونید از دستور loadlibrary استفاده کنید که به عنوان آرگومان های ورودی نام کتابخانه (library_name_dll.dll) و نام هدر فایل (header_api.h) رو دریافت میکنه .. بعد از این مرحله؛ میتونید توابع سطح بالا رو در MATLAB فراخوانی کنید با دستور calllib و از اونها به صورت مستقیم استفاده کنید .. از ایـن دستور و منطق هم میتونید استفاده کنید (--تا بحال استفاده اش نکردم--)؛ امــا به اون شرط که داده ی ورودیتون از پورت، آماده باشه (--توضیحات دستور رو یک بار، گذرا بررسی کنید--) .. اینها راه حل هایی هستن که به ذهن من میرسن (--نه الزاما بهترین ها--) .. شاید هم سوالتون رو صحیح متوجه نشدم .. امــا به صورت کلی، برای ارتباط مستقیم با یک device از طریق MATLAB نیاز به توابعی دارید که دستگاه؛ در Interface ارائه شده توسط کمپانی، با اونها طراحی و تطابق داده شده هست .. پیروز باشید ..
    دوستان! مدتی کمتر به سایت میام ..

    دیدگاه


      #3
      پاسخ : سوال در مورد رابطه اسکنر و متلب

      سلام به همه دوستان
      با استفاده از راهنمایی ارزشمند شما مسئله مربوط اسکنر حل شد
      اما حالا یه سوال دیگه.

      من یه برگه در ابعاد A4 رو اسکن میکنم و دقیقا به موازات ضلع بالای این برگه اطلاعات مربوط به این برگه رو پردازش میکنم. و مشکلی هم پیش نمیاد.
      اما شرایطی هست که برگه در اسکنر کمی جابجا میشه و باعث گوشه دار شدم تصویر و در نتیجه غلط در اومدن محاسبات میشه.
      سوالم اینه که چطور یه راستای موازی با ضلع بالایی برگه رو پیدا کنم؟؟

      چیزی که خودم به نظرم میرسه اینه که دو تا علامت (مثلا دایره کوچک) در گوشه چپ و راست بزارم و با پیدا کردن مراکز این دو دایره بتونم یه خط که همیشه موازی ضلع بالایی هست رو داشته باشم(ولی خود پیدا کردن این دو دایره هم واسه ی من مسئله هست)

      دوستان اگه راه حل دیگه ای دارند راهنمایی کنند .
      با تشکر

      دیدگاه


        #4
        پاسخ : سوال در مورد رابطه اسکنر و متلب

        سلام ..

        دقیقا متوجه مشکلی که اشاره کردید نشدم؛ امــا شاید Hough Transfer بتونه به نوعی کمکتون کنه .. چه بهتر اینکه نگاه گذرایی به اون بندازید .. پیروز باشید ..
        دوستان! مدتی کمتر به سایت میام ..

        دیدگاه


          #5
          پاسخ : سوال در مورد رابطه اسکنر و متلب

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

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



          تعداد تصاویر این فولدر هم دقیق نیست که بتونم یک لوپ از یک تا n استفاده کنم.
          در واقع میخام کاربر بیاد فولدر حاوی تصویر با نام معین رو توی دایرکتوری کپی کنه و با run کردن برنامه متلب،،، تک تک این تصاویر انتخاب و پردازش تصویر بشه.
          در ضمن در هر دفعه تعداد تصاویر متغیر هست.


          تشکر :job: :job:



          دیدگاه


            #6
            پاسخ : سوال در مورد رابطه اسکنر و متلب

            سلام ..

            اگر صحیح سوالتون رو متوجه شده باشم: برای این منظور میتونید از دستورات نمونه ی زیر استفاده کنید .. دقت کنید که دستور cd رو لازم هست که در ابتدای m.file تون بنویسید .. برای نمونه؛ در این مثال؛ 11 تصویر نمونه ی ذخیره شده در یک folder خوانده و در آبجکت address ذخیره میشن .. برای فراخوانی اونها هم میتونیم یک for تعریف کنیم که آغاز اون از 1 هست و پایان اون هم تا سایز آبجکت address پیش میره (--نمونه ی کد زیر رو برای این قسمت؛ ملاحظه کنید--) .. امید که مطالب این پست بتونن کمکتون کنن .. پیروز باشید ..

            دوستان! مدتی کمتر به سایت میام ..

            دیدگاه

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