جدول المحتويات:

معالجة الصور مويامويا: 8 خطوات
معالجة الصور مويامويا: 8 خطوات

فيديو: معالجة الصور مويامويا: 8 خطوات

فيديو: معالجة الصور مويامويا: 8 خطوات
فيديو: مرض مويامويا (Moyamoya) - دكتور أحمد الشرقاوى - حكايتى مع المرض - الصحة والجمال 2024, شهر نوفمبر
Anonim
معالجة الصور مويامويا
معالجة الصور مويامويا

مويامويا ، "نفث الدخان" ، مرض نادر ينتج عن انسداد الشرايين في العقد القاعدية ، وهي منطقة في قاعدة الدماغ. هذا المرض هو مرض دماغي وعائي تدريجي يصيب الأطفال في الغالب. تشمل أعراض المويامويا السكتة الدماغية الأولية ، والسكتات الدماغية الصغيرة المستمرة ، والضعف العضلي ، والشلل ، أو النوبات نتيجة التضييق التدريجي للشرايين. بدون علاج ، سيتسبب المويامويا في مشاكل في الكلام والضعف الحسي والوعي التالف. في مشروعنا ، سوف نستخدم MATLAB من أجل المعالجة المسبقة لصورة MRI أو MRA باستخدام مرشحات مختلفة لتقليل الضوضاء داخل الصورة لتحديد المنطقة المتأثرة. بالإضافة إلى ذلك ، سوف نستخدم ميزة تحسين لتحديد المناطق المتأثرة بدقة أكبر. علاوة على ذلك ، سنجري بعد ذلك اختبارًا لعينات مستقلة لتحديد ما إذا كان هناك فرق كبير بين كمية الأوعية الدموية في الدماغ الطبيعي مقارنة بالدماغ المتأثر بالمويامويا.

الخطوة 1: ابحث عن فحوصات التصوير بالرنين المغناطيسي والتصوير بالرنين المغناطيسي (MRA) لدماغ طبيعي ودماغ متأثر بمويامويا

ابحث عن فحوصات التصوير بالرنين المغناطيسي و MRA لدماغ طبيعي ودماغ متأثر بمويامويا
ابحث عن فحوصات التصوير بالرنين المغناطيسي و MRA لدماغ طبيعي ودماغ متأثر بمويامويا
ابحث عن فحوصات التصوير بالرنين المغناطيسي والتصوير بالرنين المغناطيسي (MRA) لدماغ طبيعي ودماغ متأثر بمويامويا
ابحث عن فحوصات التصوير بالرنين المغناطيسي والتصوير بالرنين المغناطيسي (MRA) لدماغ طبيعي ودماغ متأثر بمويامويا
ابحث عن فحوصات التصوير بالرنين المغناطيسي والتصوير بالرنين المغناطيسي (MRA) لدماغ طبيعي ودماغ متأثر بمويامويا
ابحث عن فحوصات التصوير بالرنين المغناطيسي والتصوير بالرنين المغناطيسي (MRA) لدماغ طبيعي ودماغ متأثر بمويامويا
ابحث عن فحوصات التصوير بالرنين المغناطيسي والتصوير بالرنين المغناطيسي (MRA) لدماغ طبيعي ودماغ متأثر بمويامويا
ابحث عن فحوصات التصوير بالرنين المغناطيسي والتصوير بالرنين المغناطيسي (MRA) لدماغ طبيعي ودماغ متأثر بمويامويا

هذه الصور هي عمليات المسح التي استخدمناها للمشروع الذي وجدنا على الإنترنت. الصورتان مع الأوعية الدموية الموجودة في المنتصف هما فحوصات MRA ، بينما الصورتان الأخريان عبارة عن فحوصات بالرنين المغناطيسي.

الروابط التالية هي مكان العثور على هذه الصور:

static.cambridge.org/resource/id/urn:cambr…

static.cambridge.org/resource/id/urn:cambr…

الخطوة 2: تحميل الصور على MATLAB وتعيين الصور إلى متغير لعرض الصور

قم بتحميل الصور على MATLAB وقم بتعيين الصور إلى متغير لعرض الصور
قم بتحميل الصور على MATLAB وقم بتعيين الصور إلى متغير لعرض الصور

لبدء العملية ، ابدأ بمسح نافذة الأوامر ، وأغلق جميع الأشكال والرسوم البيانية الممكنة التي قد تكون مفتوحة بالفعل وامسح المتغيرات المعينة بالفعل في مساحة العمل الخاصة بك.

بعد ذلك ، أنشئ حلقة for من 1 إلى 2 باستخدام الأمر i = [1: 2]

بعد ذلك ، قم بتحميل صور MRA باستخدام الأمر imread (sprintf ('filename٪.filetype' ، i)) لقراءة الصور من الملفات المحددة بواسطة اسم الملف متبوعًا بالرقم المستخدم للحلقة باستخدام sprintf لتحميل الدُفعات والتعيين إلى متغير.

ثم لعرض الصورة في شكل ، استخدم الأمر imshow (I).

لتعيين مخطط ألوان رمادي ، استخدم الأمر Colormap (رمادي).

لإزالة اللون تمامًا وتحويل المصفوفة ثلاثية الأبعاد للصور إلى ثنائية الأبعاد ، استخدم الأمر rgb2gray (I) وقم بتعيينه لمتغير منفصل.

ثم قم بتحميل صور التصوير بالرنين المغناطيسي باستخدام الأمر المذكور مسبقًا أو imread (sprintf ('filename٪.filetype' ، i)) وقم بتعيينه لمتغير جديد

كرر الأمر rgb2gray مع المتغير الجديد المستخدم في صور التصوير بالرنين المغناطيسي.

إذا لزم الأمر ، يمكنك تغيير حجم الصورة باستخدام الأمر imresize (A ، scale) وتعيينها إلى متغير منفصل.

الخطوة 3: تحسين الهياكل المستطيلة في صورة مكثفة باستخدام الترشيح متعدد النطاقات

قم بتحسين الهياكل المطولة في صورة كثافة مع تصفية متعددة النطاقات
قم بتحسين الهياكل المطولة في صورة كثافة مع تصفية متعددة النطاقات

باستخدام متغير جديد ، استخدم متري قياس الألياف الأمر (A) لتحسين الهياكل الأنبوبية في الصور

باستخدام المتغير السابق ، استخدم أمر Histeq (B) لتحسين معادلات الرسم البياني عن طريق تحويل شدة الصور وتخصيصها لمتغير جديد.

اعرض الرسم البياني باستخدام صيغة الأمر (B)

قم بإنشاء متغير جديد لإنشاء عتبة للتصفية. في هذه الحالة ، قم بتعيين المتغير السابق> 0.875 ، مع تصفية كثافة البكسل تحت قيمة 0.875

بعد ذلك ، قم بإنشاء شكل جديد واستخدم الأمر imshow (A) لعرض الصورة المصفاة الجديدة.

الخطوة 4: قم بتشغيل مرشح متوسط ثنائي الأبعاد

قم بتشغيل مرشح متوسط ثنائي الأبعاد
قم بتشغيل مرشح متوسط ثنائي الأبعاد

باستخدام الأمر medfilt2 (A ، [m n]) ، قم بتشغيل مرشح متوسط ثنائي الأبعاد ، حيث يحتوي كل بكسل إخراج على القيمة المتوسطة في حدود mxn حول البكسل المعني في صورة الإدخال.

قم بإنشاء شكل جديد واستخدم imshow (A) لعرض الصورة المصفاة المتوسطة.

الخطوة 5: إخفاء الصورة

اخفاء الصورة
اخفاء الصورة

باستخدام متوسط الصورة المفلترة ، استخدم الأمر [labeledImage، numberOfBlots] = bwlabel (A) لحساب عدد البقع البيضاء في الصورة

بعد ذلك ، استخدم area props function state = regionprops (labeledImage، "Area") لحساب مناطق كل بقعة أو وعاء دموي

خصص كل المناطق في متغير واحد

ثم باستخدام متغير آخر ، احسب عدد اللقطات التي تتجاوز 50 بكسل

بعد ذلك ، قم بفرز أي بقع أقل من 50 بكسل بترتيب تنازلي باستخدام الأمر [SortedAreas، SortedIndicies] = Sort (Area، 'descend')

بعد ذلك ، باستخدام متغير آخر ، استخدم الأمر ismember (labeledImage، SortedIndicies (1: numberToExtract)) لإرجاع مصفوفة تحتوي على عناصر LabedImage الموجودة في الدلالات المفروزة من الرقم 1 إلى عدد الأوعية الدموية لإرجاع رقم منطقي 1 (صحيح) أو 0 منطقي (خطأ).

باستخدام المتغير في الخطوة السابقة ، ابحث عن النقاط الصحيحة (القيم> 0) وأنشئ مصفوفة منطقية لعمل صورة ثنائية وتخصيصها لمتغير جديد.

قم بإنشاء شكل جديد واستخدم imshow (A) الصورة الثنائية الجديدة.

بعد ذلك ، اقلب الصورة باستخدام الأمر imcomplement (A) وقم بتعيينه إلى متغير مختلف.

لإنشاء صورة مقنعة ، استخدم متغيرًا جديدًا مع أمر بحجم الصورة. * uint8 (صورة معكوسة)

قم بإنشاء شكل جديد واستخدم imshow (A) لعرض الصورة المقنعة.

لإنهاء الكود بالكامل ، تأكد من استخدام الأمر "end" لإنهاء حلقة for بأكملها

الخطوة 6: حدد عمليات مسح MRA للاختبار الإحصائي

حدد عمليات مسح MRA للاختبار الإحصائي
حدد عمليات مسح MRA للاختبار الإحصائي
حدد عمليات مسح MRA للاختبار الإحصائي
حدد عمليات مسح MRA للاختبار الإحصائي
حدد عمليات مسح MRA للاختبار الإحصائي
حدد عمليات مسح MRA للاختبار الإحصائي

للتحضير للاختبار الإحصائي ، حدد عمليات مسح MRA التي سيتم استخدامها لاختبار t للعينات المستقلة. نظرًا لأن عينتنا ستكونان أدمغة متأثرة بمويامويا ، وأدمغة طبيعية ، حدد كمية مناسبة من فحوصات MRA لكل مجموعة.

الخطوة 7: حساب مساحة أوعية الدم في التحضير للاختبار الإحصائي

احسب مساحة أوعية الدم استعدادًا للاختبار الإحصائي
احسب مساحة أوعية الدم استعدادًا للاختبار الإحصائي

سيركز الاختبار الإحصائي على طول أو كمية الأوعية الدموية الموضحة في فحوصات MRA. لذلك يجب حساب مساحة الأوعية الدموية قبل المقارنة.

ابدأ بتصفية MRAs للعقول الطبيعية وحساب كمية الأوعية الدموية. للقيام بذلك ، قم بتشغيل حلقة for. نظرًا لوجود ثلاث صور ، سيكون الشرط i = [1: 3].

افتح الصورة باستخدام الأمر imread وقم بتعيينها لمتغير.

بعد ذلك ، قم بإنشاء جملة if / else باستخدام الأمر if ، else. بالنسبة إلى جملة if ، استخدم حجم الأمر (A ، 3) == 3 ، حيث A هو المتغير المستخدم لفتح الصورة ، لإنشاء عبارة if عندما يكون البعد الثالث للصفيف 3. ثم قم بتحويل الصورة إلى 2D والتخلص من اللون باستخدام الأمر rgb2gray (A) وقم بتعيينه لمتغير جديد. استخدم الأمر imresize (A، [m n]) لتغيير حجم الصورة. في هذه الحالة ، قمنا بتغيير حجم الصور إلى 1024 × 1024 مصفوفة. لتحسين الهياكل الأنبوبية للصورة ، استخدم الأمر fibermetric مرة أخرى ، وقم بتعيينه لمتغير جديد.

التالي لبيان else. إذا لم تكن الصورة عبارة عن مصفوفة ثلاثية الأبعاد ، فنحن نريد تخطي التحويل. افعل الأمر نفسه مثل تعليمة if ، لكن بدون الأمر rgb2gray (A).

أنشئ متغيرًا جديدًا ، واضبطه على مساوٍ للمتغير من الخطوة الليفية المترية أكبر من 0.15. يؤدي هذا إلى تحديد الصورة لشدة أكبر من 0.15.

سنكرر أسطر الرموز من الخطوتين 4 و 5 من التعليمات من خط المرشح الوسيط حتى سطر imshow (I). بعد ذلك ، استخدم الأمر sum (I (:)) لإضافة جميع وحدات البكسل التي تتكون منها الأوعية الدموية ، وقم بتعيينها لمتغير منفصل. قم بتسمية متغير جديد NormalBloodVessels (i) وقم بتعيينه مساويًا للمتغير من الأمر sum (I (:)). هذا يضيف البيانات إلى المصفوفة.

أنهي الحلقة وكرر الأمر لكن مع MRAs للأدمغة المتأثرة بمويامويا. قم بتسمية المتغير في النهاية MoyaMoyaBloodVessels (i) لعدم الخلط بينه وبين MRAs العادية للدماغ.

الخطوة 8: قم بإجراء اختبار T للعينات المستقلة

قم بتشغيل اختبار T للعينات المستقلة
قم بتشغيل اختبار T للعينات المستقلة

نظرًا لوجود عينتين مستقلتين ، وعدد قليل من السكان ، قم بإجراء اختبار t لعينات مستقلة.

قم بإنشاء وتسمية وظيفة تدير عينات مستقلة لاختبار t لتحديد ما إذا كانت كمية الأوعية الدموية في MRAs للأدمغة الطبيعية مساوية بشكل كبير أم لا لتلك الموجودة في MRAs للأدمغة المتأثرة بـ Moyamoya.

اعرض الفرضية المحددة للاختبار باستخدام الأمر disp ('X'). في السطر الأول ، قم بعرض "فرضيات لعينة اختبار t". في السطر الثاني ، اعرض ، "H0 = كمية الأوعية الدموية في الدماغ الطبيعي تساوي كمية الأوعية الدموية في الدماغ المصاب بمرض مويامويا" ، لتوضيح الفرضية الصفرية. في السطر الثالث ، اعرض ، "HA = كمية الأوعية الدموية في الدماغ الطبيعي لا تساوي كمية الأوعية الدموية في الدماغ المصاب بمرض مويامويا." لذكر الفرضية البديلة.

باستخدام فاصل ثقة 95٪ وحجم عينة 3 ، احسب درجة t باستخدام الأمر tinv ([0.025 0.975] ، 2) وقم بتعيين المتغير t. استخدم الأمر var (NormalBloodVessels) و var (MoyaMoyaBloodVessels) وقم بتعيينهما إلى المتغيرات لحساب التباينات بين مجموعتي البيانات.

تحقق مما إذا كانت الفروق قريبة من المساواة أم لا. افعل ذلك عن طريق إنشاء جملة if / else باستخدام الأمر if ، else. للشرط في عبارة if ، اكتب A / B == [0.25: 4] ، حيث A هو المتغير الذي يفسر تباين الأوعية الدموية الطبيعية و B هو المتغير الذي يفسر تباين الأوعية الدموية Moyamoya. 0.25 و 4 يأتيان من تقدير عام لتحديد ما إذا كانت الفروق متساوية أم لا. ثم قم بتشغيل الاختبارين للعينة t مع [h، p] = ttest2 (A، B، 0.05، "كلاهما"، "متساوٍ") ، مع كون A و B نفس المتغيرات المذكورة من قبل. بالنسبة لعبارة else ، استخدم [h، p] = ttest2 (A، B، 0.05، 'both'، 'unequal') لإجراء اختبار t من عينتين في حالة عدم تساوي الفروق. قم بإنهاء عبارة if / else. هذا سوف يحسب p.

قم بإنشاء عبارة if / else التي ستعرض استنتاجًا بناءً على قيمة p. سيكون شرط عبارة if هو p> 0.05. نظرًا لأننا نفشل عادةً في رفض فرضية العدم عندما تكون قيمة p أكبر من 0.05 ، استخدم الأمر disp ('X') لعرض "نظرًا لأن قيمة p أكبر من 0.05 ، فإننا نفشل في رفض فرضية العدم" و " لذلك نفشل في رفض أن كمية الأوعية الدموية في الدماغ الطبيعي تساوي تلك الموجودة في الدماغ المصاب بمرض مويامويا ". في عبارة else ، نظرًا لأننا نرفض عادةً الفرضية الصفرية عندما تكون قيمة p أقل من 0.05 ، استخدم الأمر disp ('X') لعرض "نظرًا لأن قيمة p أقل من 0.05 ، فإننا نرفض فرضية العدم" ، و " لذلك نفشل في رفض أن كمية الأوعية الدموية في الدماغ الطبيعي لا تساوي تلك الموجودة في الدماغ المصاب بمرض مويامويا ". قم بإنهاء عبارة if / else.

موصى به: