ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

  • شنبه ۴ تیر ۱۴۰۱
  • بازدید ۱۹۶ نفر

تصویر optical-sensor-image-generation-matlab_5156_1 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

ایجاد تصویر حسگر نوری از داده های حرکتی در MATLAB

این مثال نحوه تولید یک فیلم با 64 فریم و اندازه فریم 64 در 64 پیکسل (با سرعت 10 فریم در ثانیه) را نشان می دهد. این فیلم شامل شبیه سازی یک هدف متحرک است که در حال حرکت در یک پس زمینه ساختار یافته می باشد و خود نیز در حال حرکت است. یک حرکت لرزش ناشی از ارتعاش تصادفی نیز ایجاد می شود (در یک مدل Simulink با نام aero_vibrati) و حرکت لرزش به حرکت کلی حسگر اضافه می شود. در نهایت، تصویر از طریق یک تابع گسترش نقطه نوری گاوسی تار می شود. توجه: تغییر جزئیات در اینجا مستلزم تغییر در کادر محاوره ای و تنظیم پارامترها در ارتعاش مدل سیمولینک می باشد.

تولید هدف و تعیین حرکت

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

 

تصویر optical-sensor-image-generation-matlab_5156_2 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

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

یک پس زمینه با همبستگی سینوسی ایجاد کرده و یک حرکت انحرافی به آن بدهید. سپس، هدف را روی تصویر پس زمینه قرار دهید.

 

تصویر optical-sensor-image-generation-matlab_5156_3 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

شبیه سازی ارتعاش چرخشی ردیاب

 ارتعاش چرخشی ردیاب با استفاده از مدل aero_vibrati شبیه سازی شده است. داده های مورد نیاز برای شبیه سازی ارتعاش ردیاب با اجرای مدل aero_vibrati در محیط سیمولینک تولید می شود. مدل ارتعاش سیمولینک را با استفاده از دستور sim اجرا کنید. توجه داشته باشید که اگر delt از 0.1 ثانیه تغییر کرد، مدل سیمولینک نیز باید تغییر کند تا اطمینان حاصل شود که زمان نمونه برای لرزش با زمان نمونه در این مدل تصویر ردیاب مطابقت دارد. چرخش های تصادفی حاصله در شکل Figure 1 نشان داده شده است.

 

تصویر optical-sensor-image-generation-matlab_5156_4 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

تصویر optical-sensor-image-generation-matlab_5156_5 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

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

فریم هایی که فیلم را تشکیل می دهند اکنون در یک آرایه چند بعدی (خارجی) ایجاد و ذخیره می شوند. هر فریم دارای پس زمینه و هدف در موقعیت های مختلف به دلیل حرکت هدف، انحراف پس زمینه و لرزش ردیاب است. اولین فریم فیلم در شکل Figure 1 نشان داده شده است.

 

تصویر optical-sensor-image-generation-matlab_5156_6 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

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

عبور تصاویر از طریق اپتیک – استفاده از عملکرد دیافراگم گاوسی

در این بخش کد می توانید از یک تابع دیافراگم اندازه گیری شده به همین راحتی استفاده کنید. به سادگی پنج خط بعدی را با load measured_aperture جایگزین کنید، جایی که measured_aperture تابع اندازه گیری شده را در ASCII ذخیره می کند. داده های ذخیره شده در فایل measured_aperture.mat قرار دارد. این فایل mat حاوی تابع ماتریس است. برای راهنمای بیشتر و آشنایی با نحوه استفاده از mat فایل در متلب، دستور help load را تایپ کنید و به کد c و fortran نگاه کنید، در آنجا می توانید نحوه خواندن و نوشتن فایل های mat را مطالعه کنید. توجه داشته باشید که وقتی تابع Point Spread گاوسی است، تابع دیافراگم نیز گاوسی می باشد. برای شبیه سازی اثر اپتیک ردیاب، هر یک از فریم های فیلم اکنون با استفاده از یک FFT دو بعدی (تبدیل فوریه سریع) تار می شوند. اولین فریم از تصویر به دست آمده در شکل Figure 1 نشان داده شده است.

 

تصویر optical-sensor-image-generation-matlab_5156_7 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

تولید و پخش فیلم MATLAB

فریم فیلم را طوری تنظیم کنید که دارای 64 مقدار شدت از حداقل تا حداکثر باشد و سپس نتیجه را به صورت تصویر نشان دهید. راهنمای MATLAB را برای نحوه کار فیلم in و getframe ببینید.

 

تصویر optical-sensor-image-generation-matlab_5156_8 ایجاد تصویر حسگر نوری از داده های حرکتی در متلب

اختیاری: ذخیره فیلم در یک فایل mat

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

 

نکته پایانی: این مقاله آموزشی متلب از مثال های آماده خود نرم افزار MATLAB است که اگر تولباکس سیمولینک (Simulink) بر روی متلب شما نصب باشد، می توانید با تایپ دستور زیر در پنجره کامند متلب به این کدها و دستورات دسترسی داشته باشید.

منبع: mathworks

مطالب مرتبط
بررسی چالش های داده کاوی
ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است