Pyradiomics: [FEAT EXTRACTION] كيف تتعامل ميزة الاستخراج المعتمدة على voxel مع حدود صناديق التمييز؟

تم إنشاؤها على ٢٧ يوليو ٢٠٢٠  ·  6تعليقات  ·  مصدر: AIM-Harvard/pyradiomics

أهلا.

سؤال
أود أن أفهم كيف يتعامل الاستخراج المستند إلى voxel مع حدود صناديق التقدير.
أنا أعمل مع حجم حاوية ثابتة (الحجم = 10) على صور التصوير المقطعي المحوسب في الوقت الحالي.
عندما لا نطبق نطاق إعادة التجزئة ، أو عندما تكون حدود نطاق إعادة التجزئة المطبقة أكبر من نطاق القيم الحقيقية المستمرة للصورة ، يمكنني أن أرى أنه يتم تطبيق التمييز ، من 0 ، بحيث يتم تطبيق الحد الأدنى والحد الأقصى من سلال الصورة تتوافق مع القيم التي يمكن وضع الحد الأدنى والحد الأقصى الحقيقيين فيها. في هذه الحالة ، يمكن أن تختلف حدود الصناديق التقديرية من صورة إلى أخرى ، حتى إذا طبقنا إعادة التجزئة. بهذه الطريقة ، تتجنب الكثير من الأصفار المحتملة في GLCM على سبيل المثال. حدسيًا ، أود أن أقول إنه أمر جيد لأن الهدف من الميزات المستخرجة بعد ذلك هو استكشاف المعلومات المفيدة الموجودة في الصورة. لذلك نريد تجنب إدخال أصفار "عديمة الفائدة" في GLCM لتحليلنا.
لكنني لست مرتاحًا جدًا بشأن كيفية القيام بذلك في الاستخراج المستند إلى فوكسل. في الواقع ، إذا قمنا بتعيين الإسهاب إلى الحد الأقصى ، يمكننا أن نرى أن التقدير يتم قبل استخراج مصفوفات GLCM المتعددة (لكل فوكسل والجيران). لذا يبدو أن مصفوفات GLCM لها نفس حدود الصناديق لجميع وحدات البكسل في المريض. لكن يمكننا أن نتخيل أنه في بيئة محلية للغاية في الورم (فوكسل والجيران) ، ستكون الكثير من الصناديق فارغة وبالتالي ستحتوي GLCM على الأصفار "غير المجدية" المذكورة سابقًا؟
هل يمكنك مساعدتي في فهم هذا الاختيار في تحديد حدود الصناديق بين وحدات البكسل ولكن ليس بين المرضى من فضلك؟ أو هل يمكن أن تشرح لي إذا أسأت فهم شيء؟
أسأل هذا لأنني أرغب في ملاءمة نموذج التعلم الآلي القائم على voxel ، لذلك أود أن تكون وحدات voxels داخل نفس المريض قابلة للمقارنة ولكن أيضًا voxels بين المرضى.

شكرا جزيلا لك مقدما.

تكوين PyRadiomics
نوع الصورة:
أصلي: {}

إعدادات:
عرض bin: 10
تباعد البكسل: [1 ، 1 ، 1]
ما قبل القص: صحيح
مسافة الوسادة: 20
resegmentRange: [-10، 60]

ميزة:
glcm: []

فوكسل
النواة: راديوس: 4
نواة ملثمين: صحيح
initValue: 0
voxel الدفعة: 30000

ملف سجل PyRadiomics بدون نطاق إعادة التجزئة
Log_no_reseg.txt

ملف سجل PyRadiomics مع نطاق إعادة تجزئة كبير
Log_large_range_reseg.txt

ملف سجل PyRadiomics بنطاق تجزئة رفيع
Log_thin_range_reseg.txt

الإصدار (يرجى استكمال المعلومات التالية):

  • نظام التشغيل: Ubuntu 20.04
  • إصدار Python: Python 3.6.10 :: Anaconda، Inc.
  • إصدار PyRadiomics: pyradiomics v3.0
question

التعليق الأكثر فائدة

لم ألقي نظرة على رمز الاستخراج المستند إلى voxel ، لكني أتخيل أن كل nhood glcm بنفس حجم الصورة الكاملة glcm لذلك المريض. أم أنك تقول حي glcms _bet بين_ المرضى بنفس الحجم؟

بافتراض الحالة السابقة ، هل تريد أن تعرف لماذا يتم ذلك بدلاً من إعادة التجميع في كل مرة؟ في حالة عرض bin ، أعتقد أنهما متكافئان ، فسيتم اقتصاص الأصفار الزائدة / البادئة في مصفوفة النسيج ولكن الميزات الإشعاعية ربما لا تتأثر بذلك.

ال 6 كومينتر

أنت تشير ضمنًا إلى أن GLCM المتناثر أمر سيء ("الأصفار عديمة الفائدة"). هل يمكنك أن تشرح لماذا؟ من الممكن نظريًا القيام بعملية binning لكل حي ، لكنني لست متأكدًا من الفائدة التي ستحصل عليها. معظم الأحياء ليست كبيرة جدًا ، لذلك لا يزال بإمكانك الحصول على GLCM متناثر ما لم تحدد مبلغًا منخفضًا للغاية.

أود أن تكون وحدات البكسل داخل نفس المريض قابلة للمقارنة ولكن أيضًا بين المرضى

ثم يعد استخدام نفس الصناديق لكل فوكسل ، كما هو الحال حاليًا ، مناسبًا.

إذا كنت قلقًا بشأن نطاقات التصوير المقطعي المحوسب المختلفة للمرضى الداخليين التي تسبب تباينًا متفاوتًا ، فما عليك سوى تطبيع التصوير المقطعي المحوسب؟ بافتراض أنهم جميعًا في جامعة هليوبوليس ، يمكنك إجراء تسوية خطية بسيطة.

بدلاً من ذلك ، قد يؤدي استخدام binwidth بدلاً من bincount إلى تخفيف التباين الإشعاعي ، ولكن بعد ذلك سيكون لدى بعض المرضى عدد أكبر من الصناديق أكثر من غيرهم.

مرحبا ، شكرا جزيلا على إجابتك.

أنت تشير ضمنًا إلى أن GLCM المتناثر أمر سيء ("الأصفار عديمة الفائدة"). هل يمكنك أن تشرح لماذا؟

لم أقصد أن أقول إنه أمر سيء ، لقد أخطأت في الكلام (أنا فرنسي). لشرح نفسي ، دعنا نضع أنفسنا في سياق الاستخراج الشامل / الكامل للورم للخصائص (وليس من وجهة نظر فوكسل) ، مع حجم صندوق ثابت لدراسة عدم التجانس على نفس مقياس التباين:

لقد لاحظت أن binning يتم بطريقة أن الحد الأدنى والحد الأقصى بعد binning يتوافق مع الصناديق غير الفارغة ، بغض النظر عن نطاق قيم إعادة التجزئة المختارة. لذلك إذا تم تضمين نطاق قيم الصورة في نطاق إعادة التجزئة المختار ، فإن الحد الأدنى والحاوية القصوى للصورة بعد الربط لا تتوافق مع نطاق قيمة إعادة التجزئة المختار ، بل الحد الأدنى والأقصى لـ " إهدار "نسخة من الصورة. هذا يعني أنه من صورة إلى أخرى في المجموعة ، لا تحتوي GLCMs على نفس الأبعاد (عدد الصناديق).

حدسيًا ، أود أن أقول إن الأصفار الموجودة في GLCMs بهذه الطريقة هي بالتالي مفيدة لأنها تعني "القيمتان ليسا متجاورتين (بالنسبة إلى d = 1) على الرغم من وجودهما في الصورة" ، وهو هدف GLCM.

إذا تم "إجبار" جميع GLCM على أن يكون لها نفس الأبعاد ، فسيكون هناك "نوع جديد" من الأصفار في العديد منها ، نظرًا لأن العدد الكبير من الصناديق الفارغة كان سيؤدي بوضوح إلى حقيقة أن احتمال العثور على القيمة في الصورة ، المجاورة لبعض القيم الأخرى ، من الواضح أنها صفر. ومن هنا جاء المصطلح الخاص بي في الاقتباسات: "عديم الفائدة" ، لا يعني أن GLCM المتناثرة أمر سيء.

هذه الحقائق تجعلني أعتقد أنه ليس من الضروري وجود GLCMs من نفس الأبعاد بين الصور لمقارنتها / ميزاتها. لكن ربما أسيء فهم شيء ما ...

الآن إذا عدنا إلى سياق فوكسل:

في الاستخراج المستند إلى voxel ، يتم إجراء عملية التجميع "على مستوى المريض" المذكورة مسبقًا أولاً ، وبالتالي لا يمتلك جميع المرضى نفس عدد الصناديق. بعد ذلك ، يتم حساب GLCM بنفس الأبعاد لجميع حي voxels في الصورة ، كما قلت ، باستخدام نفس الصناديق لكل فوكسل في صورة معينة.

كان سؤالي هو أن أفهم لماذا على مستوى المريض لا تحتوي GLCMs بالضرورة على نفس الأبعاد ولكن على مستوى فوكسل لديهم؟
شيء آخر ، بالنظر إلى الصيغ الخاصة ببعض ميزات GLCM ، حيث يبدو أن معظمها يتعامل مع الصناديق غير الفارغة ، فربما لا يكون لكل هذا أي تأثير على الميزات وأنا أطرح على نفسي أسئلة غير مجدية؟

إذا كنت قلقًا بشأن نطاقات التصوير المقطعي المحوسب المختلفة للمرضى الداخليين التي تسبب تباينًا متفاوتًا ، فما عليك سوى تطبيع التصوير المقطعي المحوسب؟ بافتراض أنهم جميعًا في جامعة هليوبوليس ، يمكنك إجراء تسوية خطية بسيطة.

لا أفضل لأنه سيمحو الاختلافات المطلقة بين المرضى.

شكرا مرة اخرى.

لم ألقي نظرة على رمز الاستخراج المستند إلى voxel ، لكني أتخيل أن كل nhood glcm بنفس حجم الصورة الكاملة glcm لذلك المريض. أم أنك تقول حي glcms _bet بين_ المرضى بنفس الحجم؟

بافتراض الحالة السابقة ، هل تريد أن تعرف لماذا يتم ذلك بدلاً من إعادة التجميع في كل مرة؟ في حالة عرض bin ، أعتقد أنهما متكافئان ، فسيتم اقتصاص الأصفار الزائدة / البادئة في مصفوفة النسيج ولكن الميزات الإشعاعية ربما لا تتأثر بذلك.

لم ألقي نظرة على رمز الاستخراج المستند إلى voxel ، لكني أتخيل أن كل nhood glcm بنفس حجم الصورة الكاملة glcm لذلك المريض. أم أنك تقول حي glcms بين المرضى بنفس الحجم؟

نعم ، بين المرضى ، الأبعاد مختلفة ، وبين voxels في المريض ، هي نفسها بغض النظر عن القيم الموجودة في nhood.

بافتراض الحالة السابقة ، هل تريد أن تعرف لماذا يتم ذلك بدلاً من إعادة التجميع في كل مرة؟

نعم كان هذا سؤالي.

في حالة عرض bin ، أعتقد أنهما متكافئان ، فسيتم اقتصاص الأصفار الزائدة / البادئة في مصفوفة النسيج ولكن الميزات الإشعاعية ربما لا تتأثر بذلك.

أنا أستخدم bin-width لذا أجبت على سؤالي. صحيح أننا إذا نظرنا إلى صيغ الميزات ، يبدو أن الأصفار ليس لها تأثيرات.

شكرا جزيلا لك على مساعدتك.

لا يؤثر التقليل في مصفوفات GLCM مطلقًا على قيم الميزة نفسها ، فهو يضيف فقط المزيد من وقت الحساب. في الواقع ، كمقياس للأداء ، تتم إزالة "القيم الرمادية الفارغة" بعد حساب المصفوفة ولكن قبل حساب الميزة.

في معظم ميزات GLCM ، لا يهم إزاحة قيم bin (أي ما إذا كانت هناك صناديق بادئة أم لا) (لأنها غالبًا ما تتعامل مع شكل من أشكال وصف التباين وإلقاء نظرة على الفرق i و j وليست قيمة i و j أنفسهم). ومع ذلك ، بالنسبة لبعض الميزات ، هناك تأثير للقيمة المطلقة i / j (الأكثر وضوحًا هو JointAverage و Autocorrelation). ومع ذلك ، في هذه الحالات الأخيرة ، يكون عدد الصناديق الرائدة فقط هو الذي له أي تأثير ، وهو يعرض لنا مشكلة معينة تتمثل في تحديد كيفية ترتيب الصناديق. القيود الرئيسية هي أنه لا يُسمح بأن يكون i سالبًا ، لذا فإن توجيههم ببساطة حول 0 لا يعمل.

حتى استخدام إعادة تجزئة الحد الأدنى من شأنه أن يعمل فقط مع الصورة الأصلية ، حيث يمكن أن تغير المرشحات الشدة بطريقة تجعلها تقع خارج نطاق إعادة التجزئة. يمكنك إعادة تطبيق إعادة التقسيم ولكن 1) ليس هذا هو الغرض من إعادة التجزئة (لاستبعاد القيم الخارجية / غير الصالحة في البيانات الأصلية) و 2) سيتطلب منك تحديد نطاق إعادة التصنيف المخصص لكل مرشح (وتصفية فرعية ، على سبيل المثال LHL في Wavelet ).

لذلك ، في PyRadiomics ، اخترنا نوعًا من التسوية. يتم ترتيب الصناديق المحددة باستخدام عرض / حجم حاوية ثابتة بحيث تحتوي الحاوية الأولى على الحد الأدنى من القيمة في الصورة (سواء كانت الأصلية أو المصفاة) ، مع محاذاة إضافية إلى 0 (أي أن الحافة السفلية قابلة للقسمة دائمًا بواسطة binwitdh. هذا يضمن أن القيم الرمادية دائمًا ما تكون محاذاة تمامًا ، حتى بين المرضى ، على الرغم من أن القيمة الفعلية i المرتبطة بهذه الحاوية قد تختلف.
يعني هذا النهج أن ميزات النسيج في PyRadiomics ستحتوي فقط على معلومات حول التباين بين القيم الرمادية ، وليس الحجم المطلق (الأمر الذي يتطلب بعض القيمة الثابتة لتحديد مكان بدء نطاق الحاوية). IMHO ، تجاهل الحجم المطلق ليس في الواقع ضعفًا في الميزات ولكنه قوة أكثر ، كما هو الحال مع الملمس ، نحن مهتمون أكثر بالتباين المكاني ، وليس الحجم. إذا كان الحجم المطلق مهمًا للنموذج الذي نرغب في بنائه باستخدام ميزات Radiomics ، يتم ترميز هذه المعلومات في ميزات الترتيب الأول ويمكن دمجها في النموذج بهذه الطريقة.

شكرًا جزيلاً على إجاباتك الواضحة والكاملة تمامًا. الأمر أكثر وضوحا بالنسبة لي الآن.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات