Talaan ng mga Nilalaman:
- Hakbang 1: Piliin at I-configure ang Imahe para sa Pagsusuri
- Hakbang 2: Threshold at GUI
- Hakbang 3: Mga Plotting Contour at Pamamahagi ng Cell
- Hakbang 4: I-convert ang Larawan ng Cell
- Hakbang 5: Bilangin ang Mga Cell at Kalkulahin ang Confluence ng Cell
- Hakbang 6: Roundness ng Mga Cell
Video: Project ng BME 60B Sandbox: 6 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:11
Nilalayon ng aming Sandbox Project na matulungan ang mga mananaliksik sa biological field na pag-aralan ang mga sample ng cell at alamin ang mga kondisyon ng kanilang mga cell. Matapos mag-input ang gumagamit ng isang imahe ng kanilang sample ng cell, pinoproseso ng aming code ang imahe upang maihanda ito para sa pagbibilang ng cell sa pamamagitan ng pag-convert ng imahe sa grayscale at binary. Gumagamit ang code ng threshold upang alisin ang labis na impormasyon na hindi nauukol sa mga tunay na cell upang tumpak na makita ang mga masa ng cell. Matapos mabilang ang bilang ng mga cell sa imahe, binibigyan ng aming code ang laki ng pixel ng imahe at pagkatapos ay nahahanap ang pamamahagi ng lugar ng cell sa pamamagitan ng paglalagay ng bilang ng mga cell kumpara sa lugar ng mga cell upang mabigyan ang confluence ng gumagamit, na kung saan ay ang porsyento ng ibabaw ng isang pinggan ng kultura na sakop ng mga cell ng interes. Batay sa confluence, maaaring matukoy ng mananaliksik kung dapat o daanan ang mga cell; Ang pagpasa ng mga cell ay tumutukoy sa pagpapalawak ng buhay o bilang ng mga cell o microorganism sa pamamagitan ng paglilipat ng ilan sa kultura sa isang sariwang daluyan ng paglaki, at kapaki-pakinabang kapag ang mga cell ay lumalaki ng sobra o naubos na pagkain. Matapos patakbuhin ang code at iproseso ang imahe, maaaring magpasya ang gumagamit kung tatanggapin nila o tatanggihan ang mga resulta, at magpatuloy upang ayusin ang threshold para sa mas mahusay na pagkuha ng data kung kinakailangan.
Hakbang 1: Piliin at I-configure ang Imahe para sa Pagsusuri
Ang unang hakbang sa aming code ay upang piliin ang naaangkop na imahe at i-configure ito para sa pagtatasa sa Matlab. Kami ay maaaring pumili ng imahe gamit ang uigetfile function na nagbibigay-daan sa amin upang grab ang anumang file at ipasok ito sa programa. Pagkatapos, gamit ang imread binasa namin ang imahe at na-configure ito para sa pagtatasa sa Matlab. Ang imahe na napili ay ipapakita sa isang subplot.
Hakbang 2: Threshold at GUI
Sa simula pa lamang ng code ang isang imahe ay pinili gamit ang "uigetfile" at pagkatapos ay tumutukoy sa imaheng iyon sa isang variable. Gagamitin ang variable upang makilala ang code kapag nagpapatakbo ng iba't ibang pagtatasa. Ang isang 2x2 subplot ay nilikha sa figure. Sa posisyon 1, ipapakita ang orihinal na imahe. Ang susunod na seksyon ng code ay kung saan magaganap ang mga pagsasaayos ng mga threshold. Sa una ang isang default ng isang threshold na 0.6 ay ginagamit at ipinapakita sa posisyon 2 ng subplot. Ginagamit ang isang if-statement upang matukoy kung nais ng gumagamit na panatilihin ang threshold o ayusin ito. Maaaring ayusin ng gumagamit kaysa sa threshold gamit ang isang GUI na may kasamang imahe sa iba't ibang mga kundisyon ng threshold, slider, at isang save button. Matapos maitakda ang threshold, pagkatapos ay i-click ng gumagamit ang pindutang i-save upang mai-save ang imahe at maiimbak ito sa mga gumagamit ng mga file ng MATLAB bilang isang-p.webp
Hakbang 3: Mga Plotting Contour at Pamamahagi ng Cell
Ang susunod na bahagi ng code ay naglalagay ng mga contour. Mayroong loop kung saan ang mga cell ay nakapaloob sa isang pulang perimeter, at ang mga cell na nasa tuktok ng isa pang cell ay nakabalangkas sa berde. Pagkatapos ay ipinakita ang nakabalangkas na imahe sa posisyon 3 na may isang interactive na linya ng distansya. Tutukuyin ng linyang ito ang bilang ng mga pixel sa linyang inayos ng gumagamit para sa isang pixel hanggang millimeter converter. Ang kadahilanan ng distansya pagkatapos ay pinarami ang lugar na tinutukoy ng mga regionprops at ang lugar ay ipinahayag ngayon sa millimeter na square. Pagkatapos ay naka-plot ang data gamit ang isang histogram upang makita ang pamamahagi ng mga cell ayon sa lugar nito. Ipapakita ang histogram na ito sa posisyon 4.
Hakbang 4: I-convert ang Larawan ng Cell
Sa hakbang na ito kinuha namin ang grayscale na imahe at binarized, sinala, at invert ito. Ang pagsasagawa ng mga pagpapaandar na ito sa imahe ay inalis ang mga maingay na pixel na maaaring mapagkamalang mga cell at ginawang mas makinis at malambot ang imahe sa paligid ng mga gilid ng cell. Ginawa ito upang makuha ang mga cell sa imahe bilang nakikilalang "mga bloke" na naiiba sa tindi mula sa likuran. Ang "Blobs" ay mataas na intensidad puting mga imahe at ang background ay itim. Kung pinayagan ng kaunting oras ay gumamit sana kami ng ibang pag-convert ng imahe ng Blob sa halip na ang imbinarize na function upang maging mas tumpak at mas naaangkop sa aming mga imahe, ngunit kailangan namin ng mas maraming oras upang pagsasaliksik at pagpapatupad ng pagpapaandar.
Hakbang 5: Bilangin ang Mga Cell at Kalkulahin ang Confluence ng Cell
Sa hakbang na ito ng code, nilalayon namin na bilangin ang bilang ng mga cell na nasa imahe. Pangunahin naming ginamit ang mga function ng regionprops upang makalkula ang mga lugar ng mga bloke at kung ang lugar ay kinakalkula upang maabot ang aming ninanais na hangganan ay ipaplano ito sa isang subplot. Ang mga hangganan ay itinakda upang maalis ang maliit na mga ingay na pixel o malalaking intensidad na hindi mga cell. Pagkatapos ay bibilangin ng counter ng cell ang mga centroid na pagkatapos ay naka-plot at idaragdag sa counter sa for loop. Sa sandaling natukoy ang mga lugar ng mga cell nagawang makalkula namin ang confluence. Ang pangunahing kahalagahan ng hakbang na ito sa code ay upang mahanap ang confluence ng mga cell at ito ay mahalaga sa aming pangwakas na layunin ng code. Ginawa namin ito sa pamamagitan ng pagkalkula sa pamamagitan ng pagsasama sa mga pixel (kabuuan (allAreas)) sa bawat patak at pagkatapos ay paghatiin ito sa kabuuang halaga ng pixel ng imahe (numel (img)). Ang ratio na ito ay magbibigay sa amin ng confluence at kung ito ay tinukoy na maging higit sa 80% kaysa sa oras na para sa mga cell na maipasa ng mananaliksik. Nilalayon namin na maging tumpak at tumpak hangga't maaari ngunit may limitadong oras kaya naganap ang kawastuhan. Kung pinapayagan ang oras ay titingnan namin ang mga paraan upang gawing mas tumpak ang pagbibilang ng mga bloke tulad ng mas maraming mga diskarte sa pag-filter at / o isang Hough Transform dahil wala pang sapat na pananaliksik ang nagawa upang subukan ang diskarteng pag-filter
Hakbang 6: Roundness ng Mga Cell
Bago masukat ang bilog na patak sa isang imahe, kailangan naming i-convert mula sa RGB patungong grayscale, binarize, invert, at i-filter ang imahe. Ang isang diskarte sa pag-filter ay gumagamit ng pagpapaandar na bwareaopen, na sinasala ang imahe ng interes at inaalis nito ang anumang mga spec o pixel na masyadong maliit na hindi kumakatawan sa laki ng isang cell. Ang isang elemento ng pagbubuo ay nilikha na may isang hugis ng isang disk at kapitbahayan ng 2 at ginagamit ito upang punan ang anumang mga puwang sa background o sa loob ng mga cell. Pagkatapos ay ginagamit namin ang pagpapaandar na mga bwboundary na sumusubaybay sa mga blob at at iniimbak ito sa isang matrix. Pagkatapos ay nilalagyan namin ng label ang imahe gamit ang iba't ibang mga kulay upang ito ay maging isang mas malinaw na visual. Susunod, gamit ang isang para sa loop na tumatakbo ayon sa bilang ng mga bagay at butas na matatagpuan sa imahe, nagtatakda ito ng isang hangganan sa paligid ng mga bloke na naaayon sa array na ito. Kapag natapos ang loop na ito, nagsisimula ang isa pang loop, muli ayon sa bilang ng mga bagay at butas na matatagpuan sa imahe. Sa pagkakataong ito ay ginagamit namin ang mga pag-andar na rehiyon na nangangalap ng ilang mga pag-aari tulad ng lugar mula sa array at iniimbak ang impormasyon na naglalaman ng bilang ng mga bagay at butas. Gamit ang impormasyong ito, kinakalkula namin ang lugar at perimeter ng mga bagay na ito gamit ang hugis ng centroid. Ang isang threshold ay itinakda upang ihambing ang mga resulta sa sandaling makalkula ang yunit ng sukatan ng isang pabilog na bagay at isinalakay ang pagsukat na ito bilang teksto sa tabi ng kinakalkula na mga centroid. Ipapakita ng pangwakas na code ang pag-ikot ng iba't ibang mga cell na matatagpuan sa imahe at ang anumang mga halagang malapit sa halagang ang isa ay mas bilog kaysa sa iba. Ang isang halaga ng 1 ay nagpapahiwatig na ang cell ay perpektong bilog at nasa mabuting kalagayan na nadaanan.
Inirerekumendang:
Gimbal Stabilizer Project: 9 Mga Hakbang (na may Mga Larawan)
Gimbal Stabilizer Project: Paano Gumawa ng isang Gimbal Alamin kung paano gumawa ng isang 2-axis gimbal para sa iyong camera ng aksiyon tulad ng nanginginig vide
Awtomatikong ECG- BME 305 Final Project Extra Credit: 7 Hakbang
Ang Automated ECG- BME 305 Final Project Extra Credit: Ginagamit ang isang electrocardiogram (ECG o EKG) upang sukatin ang mga de-koryenteng signal na ginawa ng isang tumatibok na puso at malaki ang papel nito sa pagsusuri at pagbabala ng sakit sa puso. Ang ilan sa mga nakuhang impormasyon mula sa isang ECG ay nagsasama ng mga ritmo
BME 305 EEG: 4 na Hakbang
BME 305 EEG: Ang isang electroencephalogram (EEG) ay isang aparato na ginagamit upang masukat ang aktibidad ng kuryenteng utak ng isang paksa. Ang mga pagsubok na ito ay maaaring maging napaka kapaki-pakinabang sa pag-diagnose ng iba't ibang mga karamdaman sa utak. Kapag sinusubukan na gumawa ng isang EEG, may iba't ibang mga parameter na bago
Pagpili ng isang Hakbang Motor at Driver para sa isang Arduino Automated Shade Screen Project: 12 Hakbang (na may Mga Larawan)
Pagpili ng isang Hakbang Motor at Driver para sa isang Arduino Automated Shade Screen Project: Sa Instructable na ito, dadaan ako sa mga hakbang na kinuha ko upang pumili ng isang Hakbang Motor at Driver para sa isang prototype na proyekto ng Automated Shade Screen. Ang mga shade screen ay ang tanyag at hindi magastos na mga modelo ng cranked na kamay ng Coolaroo, at nais kong palitan ang
Proyekto ng Sandbox: Pagkalkula at Pagbibigay-kahulugan ng BAC: 6 na Hakbang
Proyekto ng Sandbox: Pagkalkula at Pagbibigay-kahulugan ng BAC: Ni Haarika Gogineni, Hana Schlosser, at Benedict Uiseco Sa proyektong ito, susubukan naming kalkulahin ang Konsentrasyon ng Alkohol sa Dugo (BAC) batay sa bilang ng mga inumin, timbang, at kasarian ng isang paksa. Matapos ma-output ang kinakalkula na BAC, isasaad namin ang