Агуулгын хүснэгт:

Тархины хайрцаг: Цаг хугацааны явцад мэдрэлийн хэмжээг хянах: 20 алхам
Тархины хайрцаг: Цаг хугацааны явцад мэдрэлийн хэмжээг хянах: 20 алхам

Видео: Тархины хайрцаг: Цаг хугацааны явцад мэдрэлийн хэмжээг хянах: 20 алхам

Видео: Тархины хайрцаг: Цаг хугацааны явцад мэдрэлийн хэмжээг хянах: 20 алхам
Видео: What If the Sith Empire Returned During the Clone Wars (FULL Season 1) 2024, Долдугаар сарын
Anonim
Тархины хайрцаг: Цаг хугацааны явцад мэдрэлийн хэмжээг хянах
Тархины хайрцаг: Цаг хугацааны явцад мэдрэлийн хэмжээг хянах

Хүн төрөлхтний урт наслах хил рүү ахиц дэвшил нь бидний өмнө соёл иргэншлүүдэд үзэгдээгүй өвчнүүд гарч ирэв. Эдгээрийн дунд Альцгеймер 2017 онд ойролцоогоор 5.3 сая настай өндөр настай америкчууд, эсвэл ойролцоогоор 10 өндөр настай америкчуудын 1 (https://www.alz.org/facts/) болон бусад олон тооны дементи өвчтэй хүмүүст өртсөн байна. Ахмад настнууд маань юу зовж байгааг ойлгохын тулд тэмцэлд туслахын тулд энэхүү код нь ирээдүйн судлаачдыг тоноглох бөгөөд тархины эзлэхүүнийг цаг хугацааны явцад хянах чадвартай болно.

Алхам 1: Тархины хайрцгийг ашиглах

Тархины хайрцгийг ашиглах
Тархины хайрцгийг ашиглах

Тархины хайрцгийг ашиглахын тулд танд дараахь зүйл хэрэгтэй болно.

  • Тархины MRI шинжилгээ, ийм файлын нэр, формат (бүгд ижил хэмжээтэй байх ёстой)
  • Нэг скан хийх урт
  • Давхарга бүрийн хоорондох зай (MRI скан)
  • Өвчтөний нэр (Оруулахдаа зай оруулахгүй, овог нэрээ томоор бичнэ үү, жишээ нь: овог нэр)

Эндээс хүн тархины эзлэхүүний чиг хандлагыг цаг хугацааны явцад хянах боломжтой байдаг. Тиймээс Альцгеймерийн чиг хандлагын тоон үзүүлэлтийг энэ програм хангамжаар хянах боломжтой. Туршилтанд ашигласан урт нь нэг сканнердахад 180 мм, MRI -ийн хоорондох зайд 5 мм байсан бөгөөд дундаж тоон дээр үндэслэсэн болно.

Гэсэн хэдий ч тархины хайрцгийн хэрэглээг зөвхөн нэг даалгавараар хязгаарлах шаардлагагүй юм. Хэрэв өгөгдсөн хатуу бодисын хөндлөн огтлол нь хавдар шиг гэрэл зураг юм бол тэдгээрийн эзлэхүүний өөрчлөлтийн чиг хандлагыг програм хангамжаас хянах боломжтой.

Алхам 2: Танилцуулга: Хөндлөн хэсгүүдэд дүн шинжилгээ хийх

Оршил: Хөндлөн хэсгүүдэд дүн шинжилгээ хийх
Оршил: Хөндлөн хэсгүүдэд дүн шинжилгээ хийх

Гурван хэмжээст бүтцэд эдгээрээс бүрдэх хоёр хэмжээст хавтгайг хөндлөн огтлол гэж нэрлэдэг. Цаасны багц нь тэгш өнцөгт призмийг бүрдүүлдэг бол цаас бүр цаасны хөндлөн огтлол болно гэж төсөөлөөд үз дээ. Тархиа төсөөлөхдөө бид ижил бодлыг хэрэгжүүлдэг. MRI (соронзон резонансын дүрслэл) (MRI -ийн талаархи мэдээллийг үзнэ үү) нь тархины хөндлөн огтлолыг авдаг бөгөөд тархины "давхарга" бүрт тодорхойлсон хил хязгаарыг ашигласнаар бид тархины эзэлхүүнийг загварчилж, олох бүтцийг бий болгож чадна.. Гэсэн хэдий ч бид ийм хил хязгаарын талаар мэдээлэл өгөх функцийг бий болгох ёстой.

Алхам 3: Функцийг тохируулах: LevelCurveTracings.m

Функцийг тохируулах: LevelCurveTracings.m
Функцийг тохируулах: LevelCurveTracings.m
Функцийг тохируулах: LevelCurveTracings.m
Функцийг тохируулах: LevelCurveTracings.m
Функцийг тохируулах: LevelCurveTracings.m
Функцийг тохируулах: LevelCurveTracings.m
Функцийг тохируулах: LevelCurveTracings.m
Функцийг тохируулах: LevelCurveTracings.m

Нэгдүгээрт, таны компьютер MATLAB_R2017b татаж авсан эсэхийг шалгаарай (эндээс татаж авна уу), MATLAB -ийг нээнэ үү. MATLAB интерфейс дээр цонхны зүүн дээд буланд тод шар нэмэх тэмдэг бүхий "Шинэ" гэсэн товчлуур дээр дараад "функц" сонголтыг сонгоод засварлагчийн цонхонд үүнтэй төстэй орон зайг нээнэ үү. гурав дахь зураг. Бид функцийг тохируулахын тулд эхний мөрийг өөрчлөхөд анхаарлаа хандуулах болно. "OutputArg1" гэж бичдэг бол үүнийг "brain", "outputArg2" гэж орлуулаад "нүх", "untitled2" -ээс "exp2", "inputArg1" гэж "дүрс" гэж бичээд "inputArg2" -г устгаарай. Та одоо "exp2" ашиглан дуудах функцтэй бөгөөд "дүрс" гэсэн нэг аргумент авч, "тархи" ба "нүх" -ийн заагийг гаргадаг. Функцийн эхний мөр нь дөрөв дэх зураг дээр дүрсэлсэн мөртэй төстэй байх ёстой. Энэ эхний мөрийн доорх бүх кодыг устгана уу.

Алхам 4: Хязгаарлагдмал алгоритмыг хөгжүүлэх: Хил хязгаарыг олох

Хязгаарлагдмал алгоритмыг хөгжүүлэх: Хил хязгаарыг олох
Хязгаарлагдмал алгоритмыг хөгжүүлэх: Хил хязгаарыг олох

Кодыг мөрийн доор дараах байдлаар бичнэ үү. Функцийн энэ хэсэг нь дараах мөрүүдийг дараалан гүйцэтгэдэг.

  1. "Зураг" дүрсийг "mri" хувьсагч руу ачаална уу.
  2. "Мри" -г тогтоосон босго утга дээр үндэслэн олон тооны тооноос бүрдсэн тоонууд болон тоонууд (aka binarizing) болгон бүтээсэн дүрс болгон хувиргаарай. Хэрэв пикселийн утга 0.1 -тэй тэнцүү эсвэл түүнээс их байвал түүнийг нэг болгож, хэрэв үгүй бол тухайн пикселийн утгыг тэг болгож тохируулна.
  3. Дараах дөрвөн мөр нь MRI скан хийх давхаргын ирмэг дээрх 10 багана, мөрийг тэг болгож хувиргадаг.
  4. Эцсийн мөрөнд bwboundaries нь "mri" гэсэн хоёртын хэлбэртэй зургийн хил хязгаарыг мөрдөж, индексүүд нь нэгээр тогтоосон хил хязгаартай тохирч буй элементүүд бүхий массивыг "b" -тэй тэнцүү болгоно.

Алхам 5: Хязгаарлагдмал алгоритмыг хөгжүүлэх: Гадна талын массив үүсгэх

Хязгаарлагдмал алгоритмыг хөгжүүлэх: Гаднах хязгаарлагдмал массив үүсгэх
Хязгаарлагдмал алгоритмыг хөгжүүлэх: Гаднах хязгаарлагдмал массив үүсгэх

Дараах кодыг зурган дээрх засварлагчийн цонхонд дагана уу. Кодын энэ хэсэг нь дараах мөрүүдийг дараалан гүйцэтгэдэг.

  1. "B" гэсэн хоёртын дүрс бүхий мөр бүрийн уртыг олоорой (cellfun нь функцийн уртыг мөр бүрт ашигладаг).
  2. Хамгийн их уртыг хадгалахын тулд "loc" -г тохируулна уу.
  3. "LargeTrace" -д хадгалахаар тохируулсан хамгийн их урттай индексийг олоорой.
  4. "B" хэмжээтэй ижил хэмжээтэй "mri" зургийн хэмжээг олоод "BWsize" болгож тохируулна уу.
  5. Зургийн массивын "ysize" болгож тохируулсан мөрүүдийн тоог олоорой.
  6. Зургийн массивын "xsize" болгож тохируулсан баганын тоог олоорой.
  7. Тэг "xsize" матрицын "ysize" массивыг "хамгийн томTraceMat" үүсгэх.
  8. Хамгийн томTrace x ба y утгуудын хамгийн том хэмжээтэй байсан харгалзах индексийг "lindex" векторд хадгалсан харгалзах индексийг олоорой.
  9. "Хамгийн томTraceMat" тэг матрицад "lindex" дэх элемент болгон хадгалагдсан индексийн утгыг харгалзах индексүүд дэх элементүүдийг нэг болгоно.

Тиймээс "хамгийн томTraceMat" логик массив нь тархины сканерын хөндлөн огтлолын хамгийн том хязгаартай бүсийг тэгийн дэвсгэртэйгээр дүрсэлсэн болно.

Алхам 6: Хязгаарлагдмал алгоритмыг хөгжүүлэх: Төв цэгтэй ажиллах

Хязгаарлагдмал алгоритмыг хөгжүүлэх: Төв цэг дээр ажиллах
Хязгаарлагдмал алгоритмыг хөгжүүлэх: Төв цэг дээр ажиллах

Дараа нь бид хөндлөн огтлол нь нэгээс илүү бүсээс бүрдэх эсэхийг шалгах ёстой. Хамгийн том бүсийн центроидын тэгш байдлыг туршиж үзээд илүү төвлөрсөн центродыг бий болгохын тулд нэг зэргэлдээ бүс байгаа эсэх, эсвэл олон бүс нутгийг харах боломжтой болно.

  1. "TempStruct" бүтцийн массивтай тэнцүү байгаа centroids -ийн талаархи мэдээллийг олохын тулд "regionProps" -ыг ашиглана уу.
  2. "Centroid" талбарын өгөгдлийг босоо чиглэлд нэгтгэсэн "centroids" массив
  3. "Centroids" гэсэн хоёр дахь баганын утгыг авна уу (хэвтээ хэмжээсийн координат)
  4. Centroid -ийн хэвтээ төв рүү чиглэсэн эсэхийг шалгахын тулд шүүлтүүр ажиллуулна уу

Алхам 7: Хязгаарлагдмал алгоритмыг хөгжүүлэх: Центройд төвтэй биш байх үед

Хязгаарлагдмал алгоритмыг хөгжүүлэх нь: Центройд төвгүй байх үед
Хязгаарлагдмал алгоритмыг хөгжүүлэх нь: Центройд төвгүй байх үед

Хамгийн том ул мөрийн бүсийн төв нь төвлөрөөгүй тохиолдолд бид дараах алхмуудыг гүйцэтгэнэ. MRI шинжилгээгээр бидний ажигласнаар тархины хагас бөмбөрцөг нь огтлолцолгүй байх үед дүрслэгдсэн байдаг тул бид одоо "хамгийн том TracMat" -ийн хамгийн том ул мөрийн хамт хоёр дахь том ул мөрийг зурсаар байна.

  1. Мөрдөж буй матрицыг "b2" шинэ хувьсагч болгож тохируулна уу.
  2. "B2" хоосон матрицыг "loc" -оор индексжүүлсэн багцаар эхлүүлнэ үү.
  3. Центройд төвлөрөөгүй үед нөхцөлт нөхцлийг бий болгох (өөрөөр хэлбэл олон бүсийн давхарга)
  4. Мөр бүрийн хувьд шинэ ул мөрийн хэмжээг тохируулах (traceSize2)
  5. Хязгаар байгаа индексүүдийг олохын тулд "loc2" гэж тохируулна уу
  6. "B2" хэсэгт "loc2" -оор заасан нүднүүд "хамгийн томTrace2" -тай тэнцүү байг.
  7. Дэд индексүүдийг индекс болгон хөрвүүлж, "lindex" болгож тохируулна уу
  8. "LargeTraceMat" доторх "lindex" -тэй тохирох элементүүдийг 1 болгож өөрчилнө үү
  9. "B2" хоосон матрицыг "loc2" -оор индексжүүлсэн багцаар эхлүүлнэ үү.

Алхам 8: Хязгаарлагдмал алгоритмыг боловсруулах: Нүхний хөндлөнгийн оролцоо

Хязгаарлагдмал алгоритмыг хөгжүүлэх: Нүхний хөндлөнгийн оролцоо
Хязгаарлагдмал алгоритмыг хөгжүүлэх: Нүхний хөндлөнгийн оролцоо

Нүхтэй харьцахдаа "b2" -д хадгалагдсан утгууд нь хамгийн том ул мөрөөс бусад бүтцийг хянаж, тэдгээрийг "хамгийн томTraceMat" хэлбэрээр бөглөснөөр тархины хэсгүүдэд хаана нүх байгааг олж мэдэх болно.

  1. "Хамгийн томTraceMat" хэлбэрээр бөглөсөн "fillMat" массив үүсгэх
  2. "Xsize" тэгийн массив "ysize", "interferenceMat" массив үүсгэх
  3. Босоо холбосон "b2" утгыг хадгалахын тулд "interferenceloc" массив үүсгэнэ үү
  4. "Interferenceloc" -тэй тохирох индексүүдийг хадгалахын тулд "lindex" массив үүсгэнэ үү.
  5. "InterferenceMat" дахь "lindex" -тэй тохирох индексүүдийн хувьд утгыг 1 болгож өөр хил хязгаартай бүс болгоно.

Алхам 9: Хязгаарлагдмал алгоритмыг хөгжүүлэх: Нүхийг олох, тархины болон нүхний хил хязгаарыг эцэслэх

Хязгаарлагдмал алгоритмыг хөгжүүлэх: нүхийг олох, тархины болон нүхний хилийг эцэслэх
Хязгаарлагдмал алгоритмыг хөгжүүлэх: нүхийг олох, тархины болон нүхний хилийг эцэслэх
  1. "TempMat" массивыг "interferenceMat" дээр "fillMat" -тай тэнцүү болгож, матрицын утга бүрийг хооронд нь нэмнэ.
  2. "HoleLoc" массивыг "interferenceMat" ба "fillMat" хоёулаа нэгтэй тэнцэх индекстэй тэнцүү болгоно.
  3. "HoleMat" -ийг "ysize" x "xsize" хэмжигдэхүүний тэг матриц болгон тохируулах
  4. "HoleMat" -д "holeLoc" -той тэнцүү индексүүдийг тохируулаарай
  5. "Тархи" -г "хамгийн томTraceMat" болгож тохируулна уу.
  6. "Нүх" -ийг "holeMat" болгож тохируулна уу.

Нэмэгдсэн матрицын утга 2 -тэй тэнцүү байгааг олж мэдсэнээр нүхний байршлыг хялбархан бэхжүүлж, хоосон матриц дээр зурав.

Алхам 10: Өгөгдлийг бүртгэх: PatientFiles.m функц

Бүртгэлийн өгөгдөл: PatientFiles функц.m
Бүртгэлийн өгөгдөл: PatientFiles функц.m
Бүртгэлийн өгөгдөл: PatientFiles функц.m
Бүртгэлийн өгөгдөл: PatientFiles функц.m
Бүртгэлийн өгөгдөл: PatientFiles функц.m
Бүртгэлийн өгөгдөл: PatientFiles функц.m
Бүртгэлийн өгөгдөл: PatientFiles функц.m
Бүртгэлийн өгөгдөл: PatientFiles функц.m

Сүүлийн функцийг тохируулахтай адил цонхны зүүн дээд буланд тод шар нэмэх тэмдэг бүхий "Шинэ" гэсэн товчлуур дээр дараад "функц" гэсэн сонголтыг сонгоод засварлагчийн цонхонд хоосон зай нээнэ үү. Гурав дахь зураг дээрх шиг харагдаж байна. Эхний мөрөнд гаралтын матрицыг устгаад зөвхөн "гаралт" -аар сольж, "untitled2" -г "PatientFiles" -ээр орлуулж, оролтын бүх аргументуудыг устгаад оронд нь кодын шугамын дөрөв дэх зурагт заасан форматыг дагана уу. Энэ функцын эхний мөр нь зургийн форматтай тохирч байх ёстой.

Алхам 11: Өгөгдлийг файлд бүртгэх

Өгөгдлийг файлд бүртгэх
Өгөгдлийг файлд бүртгэх
Өгөгдлийг файлд бүртгэх
Өгөгдлийг файлд бүртгэх

Үндсэн функцээр олсон өгөгдлийг бүртгэх файлыг тохируулахын тулд (одоохондоо тайлбарлаагүй байгаа) бид эдгээр алхмуудыг дагаж мөрдөх ёстой (кодыг мөр мөрөөр нь тодорхойлсны дагуу).

  1. PatientName -ийн оролт нь мөр мөн эсэхийг шалгана уу.
  2. Хэрэв энэ нь мөр биш бол өвчтөний нэрийн оролт нь мөр байх ёстой.
  3. If мэдэгдлийг дуусгах (алдаанаас урьдчилан сэргийлэх).
  4. Дараах форматыг өгөх "DateandTime" гэсэн хэллэгийг тохируулна уу: цаг: минут-сар/өдөр/жил.
  5. FileName хувьсагчийг дараах байдлаар тохируулна уу: өвчтөний нэр.m.

Одоо функцын дараагийн хэсэгт: Ийм нэртэй файл аль хэдийн бий болсон уу?

1) Энэ нэртэй файл аль хэдийн байгаа гэж үзье.

  1. Өнгөрсөн дараалалд орсон утгыг авахын тулд файлыг ажиллуулна уу
  2. Одоогийн давталтын "DateandTime" өгөгдлийг x утгуудын нүдний массивт шинэ нүд болгон нэмнэ (индексийн төгсгөл+1)
  3. Одоогийн "brainVolume" утгыг y утгуудын нүдний массивт шинэ нүд болгон нэмнэ (индексийн төгсгөл+1)
  4. Файлд ачаалагдсан одоогийн хувьсагчдыг хадгална уу.

2) Энэ нэртэй файл байхгүй гэж үзье.

  1. "PatientName" хувьсагчид хадгалагдсан нэртэй шинэ файл үүсгэнэ үү.
  2. Одоогийн "DateandTime" өгөгдлийг x утгуудын хоосон нүдний массивт нүд болгон нэмнэ үү
  3. Y утгуудын хоосон нүдний массивт одоогийн "brainVolume" өгөгдлийг нүд болгон нэмнэ үү
  4. Файлд ачаалагдсан одоогийн хувьсагчдыг хадгална уу.

Алхам 12: Өгөгдлийг бүртгэх: Цаг хугацааны явцад тархины эзлэхүүний хэсгийг харуулах

Өгөгдлийг бүртгэх: Цаг хугацааны явцад тархины эзлэхүүний хэсгийг харуулах
Өгөгдлийг бүртгэх: Цаг хугацааны явцад тархины эзлэхүүний хэсгийг харуулах
  1. X утгуудын массивыг (xVals) категорийн массив (xValsCategorical) болгон хөрвүүлэх,
  2. Зургийн цонх үүсгэх 5
  3. "XValsCategorical" ба "yVals" (тархины эзэлхүүнийг агуулсан) -аар тодорхойлсон цэгүүдийг цэгүүдийг зааж, тасархай шугамаар холбохын тулд хөндий тойрог ашиглан зур.
  4. Талбарыг дараах байдлаар нэрлэнэ үү
  5. Зурагт үзүүлсэн шиг x тэнхлэгийг шошголно уу
  6. Зураг дээр үзүүлсэн шиг y тэнхлэгийг шошголно уу
  7. 5 -р зургийг гаралттай тэнцүү болгоё

Эндээс өвчтөний нэр гэж нэрлэгдэх функц нь тархины эзэлхүүнийг цаг тухайд нь хянадаг засварласан өгөгдөл бүхий файлыг гаргаж, чиг хандлагыг харуулдаг.

Алхам 13: Дэд хэсгүүдийн цоорхойг хаах: Subplotclose.m

Дэд хэсгүүдийн цоорхойг хаах: Subplotclose.m
Дэд хэсгүүдийн цоорхойг хаах: Subplotclose.m

Http://www.briandalessandro.com сайтаас кодчилсон функц нь MRI дүрс болон тархины давхаргыг харуулсан дүрсүүдийг үүсгэх үед үндсэн кодын дэд зургийн хоорондох зайг хаах үүрэгтэй. Subplotclose.m дотор ашиглагддаг дэд зургийн функц нь өгөгдсөн дэд хэсгүүдийн байрлалыг өөр хоорондоо нягт уялдуулан тохируулах бөгөөд урт хэмжигдэхүүний хувьд тохируулна. Жишээлбэл, хэрэв код нь 7х3 хэмжээтэй матриц авахаар төлөвлөж байгаа бол мөрийн хэмжээ урт байх тусам мөрүүд хоорондоо нягт нийцэх болно. Хэрэв код нь 3х7 хэмжээтэй матриц авахаар төлөвлөж байгаа бол багана нь бидний үндсэн кодын зурагт үзүүлсэн шиг эгнээний цоорхойтой таарах болно.

Алхам 14: Үндсэн код: Бүгдийг цэвэрлэж, оролтыг өдөөх

Үндсэн код: Бүгдийг цэвэрлэж, оролтыг өдөөх
Үндсэн код: Бүгдийг цэвэрлэж, оролтыг өдөөх

Үндсэн кодыг эхлүүлэхийн тулд цонхны зүүн дээд буланд "Шинэ" гэсэн товчлуур дээр дарж өмнөх хэсгүүдийн "Функц" биш "Скрипт" -ийг сонгоно уу. Редакторын цонхон дээрх зургийг үзүүлсэн шиг кодыг оруулна уу. Кодын мөрүүд дараахь ажлуудыг дарааллаар гүйцэтгэдэг.

  1. 0, 1, 2 -оос бусад бүх файлыг нээнэ үү.
  2. Зургийн бүх цонхыг хаа.
  3. Ажлын талбар дахь бүх хувьсагчдыг арилга.
  4. Командын цонхыг цэвэрлэ.
  5. Командын цонхонд харуулах: MRI скан хийхэд дараах хэмжээсийг оруулна уу.
  6. Тушаалын цонхны шинэ мөрөнд асуух: миллиметрээр нэг скан хийх урт:. Хэрэглэгчийн өгсөн хариултыг "lengthMM" хувьсагч болгон тохируулах болно.
  7. Шинэ мөрөнд асуугаарай: MRI -ийн миллиметрийн хоорондох зай:. Хэрэглэгчийн өгсөн хариултыг "ZStacks" хувьсагч болгон тохируулах болно.

Алхам 15: Үндсэн код: Зургийг багцлан боловсруулах

Үндсэн код: Зургийг багцлан боловсруулах
Үндсэн код: Зургийг багцлан боловсруулах
Үндсэн код: Зургийг багцлан боловсруулах
Үндсэн код: Зургийг багцлан боловсруулах

Энэ хэсэгт код нь зургийг (тархины хөндлөн огтлолын MRI шинжилгээнээс бүрдсэн) ачаалж, дүрс файл бүрийн нэрийг "Base" хувьсагчид хадгалж, MRI скан тус бүрийг харуулна. Зураг дээрх кодыг дагана уу.

  1. MRI _ () форматын форматтай тохирч байгаа одоогийн фолдер доторх бүх файлуудын мэдээллийг агуулсан "BrainImages" бүтцийн массив үүсгэх.
  2. "BrainImages" бүтцийн массив дахь элементийн тоотой тэнцэх "NumberofImages" хувьсагчийг тохируулна уу.
  3. Зургийн цонхыг нээх 1
  4. Файлд тоологдсон зургуудын тоог эргүүлэхийн тулд for loop -ийг тохируулна уу
  5. Давталт бүрийн хувьд "CurrentImage" нь MRI_i-p.webp" />
  6. "Imshow" -оор ачаалагдах 19 зургийг харуулахын тулд 3 x 7 хэмжээтэй дэд хэсгийг үүсгэнэ үү.
  7. Зураг бүрийг дэд хэсгийн зургийн цонхонд өөр элемент болгон харуулна
  8. Дэд хэсгийн элемент бүрийг Level_ гэж нэрлэнэ үү, хоосон нь for давталтын давталтын дугаар юм.
  9. For давталтыг дуусгах (алдаанаас зайлсхийх)

Энэ нь 1 -р зургийн цонхонд бүх MRI сканыг x чиглэлд ямар ч цоорхойгүй 3 x 7 форматаар түүхий хэлбэрээр харуулах болно.

Алхам 16: Үндсэн код: Бичих

Үндсэн код: бөглөх
Үндсэн код: бөглөх

Дүүргэлтийн тусламжтайгаар нэг зургийн нөгөөгөөс арай том хэмжээтэй тохиолдолд зургийн хэмжээ бага зэрэг зөрүүтэй байдлаас зайлсхийж, хэмжээсийн зөрүүг гаргахад алдаа гаргаж магадгүй юм.

  1. Зургийн цонхыг нээх 2
  2. MRI_1-p.webp" />
  3. Зургийн матрицын хэмжээг олоод "OriginalXPixels" (мөрийн тоогоор) ба "OriginalYPixels" (баганын тоогоор) болгоно.
  4. "BrainMat" матрицыг хавтгай тус бүрт өөр 20 мөр, 20 багана бүхий бүх тэгээс бүрдэх бөгөөд хавтгай тус бүрт 19 нийт хөндлөн огтлолоос бүрдэнэ.
  5. Цооногийн координатыг оруулахын тулд ижил гурван хэмжээст тэгээс бүрдэх "HolesMat" -ийг тохируулна уу.
  6. Бичгийн хэмжээ, хорин мөр, хорин багана, тэг хоёр хэмжээст массив байхаар "zeroMat" үүсгэнэ үү.

Алхам 17: Үндсэн код: Хил хязгаарыг тодорхойлох

Үндсэн код: Хил хязгаарыг тодорхойлох
Үндсэн код: Хил хязгаарыг тодорхойлох
Үндсэн код: Хил хязгаарыг тодорхойлох
Үндсэн код: Хил хязгаарыг тодорхойлох
  1. Өмнө нь ачаалагдсан зураг бүрийн өгөгдлийг дамжуулахын тулд for давталт тохируулна уу
  2. Урьдчилан боловсруулсан ижил аргаар "CurrentImage" нь "MRI_i.png" файлуудыг ачаалж, i нь давталтын дугаар юм.
  3. Зураг бүрийг өмнө нь боловсруулсан "LevelCurveTracings2.m" боловсруулах функцээр ажиллуулна уу
  4. "Тархи" гаралтын хэмжээг олж, мөрийн тоог "Currentrow", баганын тоог "Currentcolumns" болгож тохируулна уу.
  5. "CurrentMat" -ийг "Currentrow" ба "Currentcolumns" -д заасан хэмжээсээр тэг матрицад тохируулна уу.
  6. "Тархины" өгөгдлийг "CurrentMat" дээр төвлөрүүлж, бүх талаас нь 10 мөр ирмэгээр байрлуулна
  7. Зургийн хил хязгаарыг харуулахын тулд 3 x 7 хэмжээтэй дэд хэсэг үүсгэнэ үү
  8. Зургийн цонхонд дэд хэсгийн элемент тус бүрийг нэрлэнэ үү
  9. "CurrentMat" хязгаарын давхарга бүрээс бүрдэх "BrainMat" гэсэн гурван хэмжээст матриц үүсгээрэй.
  10. For давталтыг дуусгах (алдаанаас зайлсхийхийн тулд)

Дараах дэд хэсэгт санал болгож буй гурван хэмжээст хэлбэрийн дээд ба доод хэсэгт үлдсэн нүхийг бөглөнө

  1. "LevelCurve1" -ийг "BrainMat" -ийн эхний давхаргатай тэнцүү болгон тохируулна уу (хатуу хэсгийн доод талд)
  2. "BrainMat" -ийн эцсийн давхаргатай тэнцэх "LevelCurveEnd" -г тохируулна уу (хатуу дээд талд)
  3. "LevelCurve1" -г дүүргэсэн давхаргаар дарж бичнэ үү
  4. "LevelCurveEnd" -г дүүргэсэн давхаргаар дарж бичнэ үү
  5. Дүүргэсэн давхаргыг "BrainMat" -ийн доод давхарга болгон тохируулна уу.
  6. Дүүргэсэн давхаргыг "BrainMat" -ийн дээд давхарга болгон тохируулна уу.

Алхам 18: Үндсэн код: Зөв Z хэмжээсийг тодорхойлох

Үндсэн код: Зөв Z хэмжээсийг тодорхойлох
Үндсэн код: Зөв Z хэмжээсийг тодорхойлох

Эхний гурван мөр нь "z" хоосон массивыг тохируулах, мм^3 хэмжээтэй эзлэхүүнийг зохих ёсоор уншихын тулд энгийн хөрвүүлэх үйлдлүүдийг (пикселийг уртаар нь хуваах) бүрдүүлэхээс бүрдэнэ.

  1. Давхарга бүрээр дамжихын тулд for давталт үүсгэнэ
  2. Өгөгдсөн давхаргад байгаа хүмүүсийн тоог олоорой
  3. Z координатыг баганы векторыг "tempz" болгож тохирох харьцаагаар хэмжсэн утгууд болгон хөрвүүлнэ.
  4. Z вектор дээр түвшний муруйн z утгыг нэмнэ үү

Үүний тусламжтайгаар z координатыг зөв тохируулдаг.

Алхам 19: Үндсэн код: X ба Y координатыг тодорхойлох

Үндсэн код: X ба Y координатыг тодорхойлох
Үндсэн код: X ба Y координатыг тодорхойлох

Одоо хил дээрх цэг бүрийн x ба y байрлалыг тодорхойлох.

  1. "XBrain" -ийг хоосон массив болгон эхлүүлнэ үү
  2. "YBrain" -ийг хоосон массив болгон эхлүүлнэ үү
  3. Ачаалагдсан зураг бүрийг давтахын тулд for loop тохируулна уу
  4. "RowBrain" ба "ColumnBrain" баганын вектороор илэрхийлэгдсэн цэг бүрийн хавтгай координатыг хадгалахын тулд хоёр баганын матрицыг эмхэтгэнэ үү.
  5. Одоогоор олсон "RowBrain" координатын хамт "xBrain" -ийг нэмнэ үү
  6. Одоогоор олсон "ColumnBrain" координатын хамт "yBrain" -ийг нэмнэ үү
  7. For давталтыг дуусга (алдаа гаргахгүйн тулд)

Алхам 20: Үндсэн код: Гурван хэмжээст бүтцийг зурах, эзлэхүүнийг олох, өгөгдлийг бүртгэх

Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх
Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх
Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх
Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх
Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх
Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх
Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх
Үндсэн код: Гурван хэмжээст бүтцийг төлөвлөх, эзлэхүүнийг олох, өгөгдлийг бүртгэх

AlphaShape функцийг ашиглан бид тархины эзлэхүүнийг тооцоолох гурван хэмжээст бүтцийг бий болгоно.

  1. AlphaShape функцийг ашиглана уу, x, y, z координатын хувьд "xBrain", "yBrain", "z" векторуудыг залгаж, "BrainPolyhedron" -той тэнцүү тохируулна уу.
  2. Зургийн цонхыг нээх 3
  3. Тооцоолсон альфа хэлбэрийн "BrainPolyhedron" -ыг зурж, зургийн цонхонд харуулна
  4. Альфа дүрс дээр ажилладаг "эзлэхүүн" функцийг ашиглан альфа хэлбэрийн эзлэхүүнийг тооцоол
  5. Эзлэхүүнийг мм^3 болгон хөрвүүлэх
  6. Тушаалын цонхонд хатуу бодисын эзлэхүүнийг хэвлэ
  7. Өвчтөний нэрийг оролт болгон оруулахыг хүсэх
  8. Одоогийн огноо, цагийг цаг ашиглан олж, "DateandTime" болгож тохируулна уу
  9. Тооцоолсон өгөгдлийг бүртгэх, төлөвлөхийн тулд "PatientFiles" функцийг дуудаарай

Эндээс хоёр, гурав дахь зургууд гарч ирэх дүрсийг харуулах ёстой бөгөөд дөрөв дэх зургийг командын цонхонд харуулах ёстой.

Зөвлөмж болгож буй: