دانلود پروژه شناسایی الگو Pattern Recognization با Verilog

بازگشت به آموزشگاه

تشخیص الگو ( Pattern Recognition )

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

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

 


تشخیص الگوی رشته های محدود ( Finite String Pattern Recognition )

در دنیای دیجیتال که تمامی داده ها به صورت 0 و 1 هستند ، از کنار هم قرار گرفتن آنها در یک مجموعه یک فایل شکل می گیرد مانند یک فایل تصویری یا یک فایل متنی . هر جزئی از درون این فایل الگوی خاص خود را دارد و تعدادی 0 و 1 به خود اختصاص می دهد . مثلا الگوی حرف “ب” درون فایل متنی از تعدادی 0 و 1 که کاراکتر “ب” را تشکیل می دهند ، تشکیل شده است که به تعدادی که این کاراکتر در فایل متنی وجود دارد ، این الگو نیز تکرار شده است .

در تشخیص الگوی رشته های محدود ( FSPR ) ، دیتای دیجیتال از یک فایل که ذخیره شده باشد یا یک سیگنال آنلاین که در حال عبور است ، یکی یکی خوانده می شود و سپس در سیستم تشخیص الگو با استفاده از روش های تشخیص الگو ، الگوی مورد نظر شناسایی شده و در صورت شناسایی شدن خروجی 1 و در غیر این صورت خروجی 0 نمایش داده می شود . بنابراین در این روش میتوان الگوهای دیتای دیجیتال را که با سرعت بسیار بالا از یک خط عبور می کند ، تشخیص داد .

الگویی که میخواهیم تشخیص دهیم می تواند یک کاراکتر متشکل از تعدادی 0 و 1 به صورت ماتریس تک بعدی ( مانند فایل متنی ) باشد یا اینکه میتواند یک ماسک خاص که متشکل از تعدادی 0 و 1 به صورت ماتریس دو بعدی ( مانند فایل تصویری ) باشد .

 


طراحی و پیاده سازی FSPR تک بعدی

fspr

همانطور که در شکل فوق مشاهده می کنید ، در سیستم تشخیص الگوی FSPR یک سیگنال ورودی و یک سیگنال خروجی وجود دارد . سیگنال خروجی در حالت عادی Low است و سیگنال ورودی به صورت بیت به بیت وارد سیستم می شود . زمانی که سیستم الگوی مورد نظر را تشخیص دهد ، خروجی High می شود . همچنین میتوان برای سیستم ، الگویی برای شروع به کار تشخیص یا الگویی برای پایان تشخیص تعریف کرد .

برای مثال میخواهیم تمامی الگوهای موجود به صورت “010” را در ورودی شناسایی کنیم و با آمدن “100” کار تشخیص را پایان دهیم . ورودی را سیگنال X و خروجی را سیگنال Z می نامیم . نحوه عملکرد سیستم به این صورت است که خروجی فقط در هنگام پایان تشخیص الگوی “010” فعال می شود و بعد از آمدن الگوی “100” کار تشخیص پایان می پذیرد و سیستم متوقف می شود . شکل زیر دو مثال برای این عملکرد را نشان می دهد .

fspr2برای طراحی چنین سیستمی کافی است برای رشته هایی که میخواهیم شناسایی شود دیاگرام حالت FSM را به صورت مدل مور رسم کنیم و سپس کد Verilog  آن را بدست آوریم ….

 


FSPR دو بعدی

fspr

همانطور که در شکل فوق مشاهده می کنید ، در سیستم تشخیص الگوی FSPR دو بعدی نیز همانند یک بعدی ، یک سیگنال ورودی و یک سیگنال خروجی وجود دارد . تفاوت آن در این است که داده هایی که به صورت یک به یک وارد میشوند به جای اینکه یک رشته متنی باشند ، مربوط به یک فایل دو بعدی همانند عکس ( picture ) هستند.

در تشخیص الگوی رشته ای محدود دو بعدی ، هم دیتایی که ذخیره شده یا آنلاین در حال عبور است و هم الگویی که میخواهیم شبیه آن را تشخیص دهیم ، هر دو ، دو بعدی هستند . به چنین الگویی ماسک ( Mask ) گویند که میتوان آن را به صورت ماتریس m در n در نظر گرفت و دیتا را نیز میتوان به صورت ماتریس j در k در نظر گرفت به طوری که j>m و k>n باشد. همانطور که میدانید یک تصویر سیاه و سفید در کامپیوتر را میتوان به صورت 0 و 1 نمایش داد به طوری که 1 نمایانگر رنگ سیاه و 0 نمایانگر رنگ سفید باشد….

 


طراحی و پیاده سازی FSPR دو بعدی

برای طراحی و پیاده سازی سیستم FSPR فوق همانند تک بعدی نیاز به طراحی دیاگرام FSM و سپس پیاده سازی کد وریلاگ از روی آن داریم . برای این کار میخواهیم از نرم افزار JavaFSM استفاده نماییم . کار با این نرم افزار بسیار راحت بوده به طوری که ابتدا در این نرم افزار دیاگرام FSM دلخواهی که می خواهیم را با استفاده از ابزارهای موجود رسم کرده و سپس خروجی VHDL ، Verilog یا KISS را نرم افزار تولید می کند ….

 

تست کد وریلاگ نهایی در Modelsim

fspr3

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


محتویات پروژه :

  • گزارش کامل پروژه در word ( در 39 صفحه )
  • سورس کامل پروژه شامل :

– سورس کدهای Verilog

– سورس نرم افزار Modelsim

– سورس نرم افزار های JavaFSM و StateCAD

  • فایل نصبی StateCAD

 

قیمت : 10 هزار تومان

لینک خرید آنلاین این پروژه

بازگشت به آموزشگاه