Biomedical Signal Processing

پردازش سیگنال ـ پردازش سیگنال پزشکی _Matlab Learning

Biomedical Signal Processing

پردازش سیگنال ـ پردازش سیگنال پزشکی _Matlab Learning

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

نویسندگان
آخرین نظرات

۱۵ مطلب توسط «سبحان بامداد» ثبت شده است

_ کارگاه ها با توجه به شرایط بهداشتی پیش آمده در کشور، صد در صد به صورت غیر حضوری و آنلاین برگزار میگردد و شرکت کنندگان در کارگاه میبایست نرم افزار های متلب (ورژن های 2011 به بعد) و اسکایپ را نصب داشته باشند.

_ کارگاه های گروهی به صورت نهایتا 6 نفره برگزار می شود.

_ برای  دانشجویان گروه های پزشکی ، مهندسی پزشکی و روانشناسی آموزش متلب با رویکرد پردازش سیگنال های پزشکی صورت میگیرد.

_ هرجلسه کارگاهی 2 ساعت بوده و در هفته با توجه به نیاز دانشجو یک یا دو جلسه برگزار میگردد (امکان برگزاری کارگاه فشرده طی دو هفته نیز می باشد).

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

 

سوابق مربی کارگاه :

 

کارشناسی مهندسی برق مخابرات

کارشناسی ارشد مهندسی پزشکی بیوالکتریک

مدرس درس برنامه نویسی متلب (Matlab) گروه کامپیوتر دانشگاه شاهد تهران

 

جهت مشاوره و هماهنگی بیشتر با شماره 09174087913 تماس حاصل فرمایید.

 

۱ نظر موافقین ۰ مخالفین ۰ ۲۰ خرداد ۹۹ ، ۱۱:۱۶
سبحان بامداد

در این شکل ابتدا سیگنال مورد نظر بدون نویز برق شهر ترسیم گردیده است، سپس به آن نویز برق شهر با اس ان آر (SNR) دلخواه اضافه گردیده است. پس چی شد؟؟؟ دلم خواسته به سیگنالم نویز برق شهر اضافه کنم و ببینمش ...

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

 

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

۰ نظر موافقین ۰ مخالفین ۰ ۲۳ ارديبهشت ۹۹ ، ۱۷:۳۲
سبحان بامداد

در این پست قصد داریم سیگنال ECG را که از سایت فیزیونت دانلود کرده ایم، در محیط نرم افزار متلب فراخوانی و سپس ترسیم نماییم.

 

اگر بخواهیم سیگنال ECG  (الکتروکاردیوگرام) را در محیط نرم افزار متلب ابتدا 20 ثانیه از آن را بر اساس سمپل (نمونه)، و سپس بر اساس زمان (ثانیه) در دو subplot زیر هم ترسیم نماییم، به صورت زیر عمل مینماییم:

 

کدهای متلبی شکل فوق در ادامه مطلب قرار داده شده است...

۰ نظر موافقین ۰ مخالفین ۰ ۲۳ ارديبهشت ۹۹ ، ۰۲:۰۶
سبحان بامداد

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

 

ما در همین وبسایت قبلا نیز  نحوه دقیق دانلود دیتا از این سایت را طی پستی قرار داده بودیم. اما اخیرا اپراتورها و ادمین های سایت فیزیونت قالب کلی سایت شون را تغییر دادند.

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

https://archive.physionet.org/cgi-bin/atm/ATM

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

 

۱ نظر موافقین ۰ مخالفین ۰ ۱۶ ارديبهشت ۹۹ ، ۱۸:۵۱
سبحان بامداد

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

 

همچنین جهت ایجاد ماتریس همانی (ماتریسی که درایه های روی قطر اصلی برابر با یک باشد و سایر عناصر صفر باشند) از دستور eye در محیط نرم افزار ک متلب استفاده میشود.

در شکل زیر مثال های متعددی از ایجاد ماتریس همانی و ماتریس صفر را مشاهده مینماییم.

 

ماتریس همانی و ماتریس صفر

۰ نظر موافقین ۰ مخالفین ۰ ۱۵ ارديبهشت ۹۹ ، ۱۹:۴۲
سبحان بامداد

جهت ایجاد ماتریسی که تمامی درایه های آن (عناصر آن) یک باشد، از دستور ones استفاده میگردد. تصویر زیر مثال های متعددی از ایجاد ماتریس واحد (ماتریس یک) در نرم افزار متلب میباشد.

 

۰ نظر موافقین ۰ مخالفین ۰ ۱۵ ارديبهشت ۹۹ ، ۱۹:۲۹
سبحان بامداد
 
#آموزش_متلب

1_تابع سینوس را در بازه بین -10 تا 10 ترسیم نمایید.

 
مشاهده میگردد که برای تعریف دامنه، گام انتخاب نگردیده است (مطابق با خط سوم کد متلبی).
در صورتی که گام انتخاب نگردد، به صورت خودکار خود نرم افزار متلب گام را برابر با یک انتخاب میکند. یعنی به صورت کلی x اعداد زیر خواهد بود:
10 9 8 ... 8- 9- 10-


باقی این مطلب را از قسمت ادامه مطلب دنبال کنید.
۰ نظر موافقین ۰ مخالفین ۰ ۲۷ فروردين ۹۹ ، ۱۳:۵۶
سبحان بامداد

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

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

:3: در صورتی که دنبال کد خاصی هستید ، سایت mathwork.com ، سایت اصلی نرم افزار متلب هستش (البته فیلتره یا هم بدون فیلتر شکن سایت درست باز نمیکنه). تیم نرم افزاری متلب سالانه دو نسخه a و b رو ارائه میده (مثلا 2018b و 2018a) .

در صورتی که در مثال ها و تمارین ارسالی در این کانال به مشکل برخورد کردین با ما در میون بذارین

۰ نظر موافقین ۰ مخالفین ۰ ۲۷ فروردين ۹۹ ، ۱۳:۰۷
سبحان بامداد


سوال : اگه بخوایم یه دیتایی که با فرمت فایل تکست هست رو فراخوانی کنیم در متلب، چیکار کنیم ؟؟؟



پاسخ : از دستور csvread استفاده میکنیم.
مثال : شما فایل دیتایی با فرمت تکست بانام data1.txt دارید. پس جهت فراخوانی در متلب و تبدیل به مَت_فایل (mat file) بدین گونه عمل خواهید نمود:

Data1= csread ( ' data1.txt ' )

پس شما در متلب، مت_فایلی با نام Data1 خواهید داشت.

 

۰ نظر موافقین ۰ مخالفین ۰ ۲۷ فروردين ۹۹ ، ۱۳:۰۴
سبحان بامداد
سوال اول : این دیتای صدای قلب 10 ثانیه رو داره نشون میده. اگه من بخوام یه قسمت خاص از سیگنال مثلا از سمپل 1 تا 70000 رو ببینم باید چیکار کنم ؟

جواب : ازونجایی که دیتامون (که مثلا نامش y1 هست) یک بردار 424560*1 یا 1*424560 هستش، پس برای انتخاب یک قسمت خاص از دیتا بدین گونه عمل میکنیم:
y2=y1(1:70000)
یا مثلا از سمپل 80000 تا سمپل 120000 را میخوام :
y3=y1(80000:120000)


سوال دوم : توی شکل صدای قلب نمونه ای که داشتیم، ده تا سیکل صدای قلبی رو داریم. اگه بخوام مثلا سیکل اول رو فقط داشته باشم چیکار کنم ؟
جواب : خب در کمال سادگی از دستور length استفاده میکنیم .
مثل من مینویسم plot(t(1:length(t)/10),y1(1:length(y1)/10)) تا به راحتی بتونم سیکل اول صدای قلب را ترسیم کنم. پس کل کد من به صورت زیر خواهد بود :

clc;clear;close all
[y1,fs]=audioread('normal.mp3'); % read Heart sound data
T = 1/fs; % Sample time
L = length(y1); % Length of signal
t = (0:L-1)*T; % time vector

plot(t(1:length(t)/10),y1(1:length(y1)/10))

 

 

 

 
 
 
 
ترسیم یک سیکل صدای قلب
۰ نظر موافقین ۰ مخالفین ۰ ۰۷ فروردين ۹۹ ، ۲۲:۰۳
سبحان بامداد