Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-23 15:14
Bizning "Sandbox" loyihamiz biologik sohadagi tadqiqotchilarga hujayra namunalarini tahlil qilish va ularning hujayralari holatini aniqlashga yordam berishga qaratilgan. Foydalanuvchi hujayra namunasining rasmini kiritgandan so'ng, bizning kodimiz tasvirni kulrang va ikkilikka aylantirish orqali hujayralarni sanashga tayyor bo'lish uchun tasvirni qayta ishlaydi. Hujayra massalarini aniq topish uchun kod haqiqiy hujayralarga tegishli bo'lmagan ortiqcha ma'lumotlarni olib tashlash uchun chegaradan foydalanadi. Rasmdagi hujayralar sonini hisoblagandan so'ng, bizning kodimiz tasvirning piksel o'lchamini beradi, so'ngra hujayralar sonini hujayralar maydoniga solishtirib, hujayralar maydonining taqsimlanishini topadi. qiziqish hujayralari bilan qoplangan madaniy taomlar yuzasining foizi. Birlashuvga asoslanib, tadqiqotchi hujayralar o'tishi kerakmi yoki yo'qligini aniqlay oladi; Hujayralarning o'tishi deganda, madaniyatning bir qismini yangi o'sadigan muhitga o'tkazish orqali hujayralar yoki mikroorganizmlarning hayotini yoki sonini ko'paytirish tushuniladi va bu hujayralar juda katta o'sganda yoki oziq -ovqati tugaganda foydali bo'ladi. Kodni ishga tushirgandan va tasvirni qayta ishlagandan so'ng, foydalanuvchi natijalarni qabul qilish yoki rad etish to'g'risida qaror qabul qilishi mumkin va agar kerak bo'lsa, ma'lumotlarni yaxshiroq olish uchun chegarani sozlashni davom ettirishi mumkin.
1 -qadam: Tahlil qilish uchun tasvirni tanlang va sozlang
Bizning kodimizdagi birinchi qadam - mos tasvirni tanlash va uni Matlabda tahlil qilish uchun sozlash. Biz rasmni uigetfile funktsiyasidan foydalanib tanlay olamiz, bu bizga istalgan faylni olish va uni dasturga kiritish imkonini beradi. Keyin, imread yordamida biz tasvirni o'qiymiz va uni Matlabda tahlil qilish uchun sozlaymiz. Keyin tanlangan rasm pastki qismda ko'rsatiladi.
2 -qadam: Chegara va GUI
Kodning boshida tasvir "uigetfile" yordamida tanlanadi va keyin tasvirni o'zgaruvchi bilan aniqlanadi. Keyin o'zgaruvchi har xil tahlilni o'tkazishda kodni aniqlash uchun ishlatiladi. Rasmda 2x2 o'lchamdagi kichik uchastka yaratilgan. 1 -pozitsiyada asl tasvir ko'rsatiladi. Kodning keyingi bo'limida chegaralarni sozlash amalga oshiriladi. Dastlab, 0.6 chegara qiymati ishlatiladi va u pastki qismning 2 -pozitsiyasida ko'rsatiladi. If-iborasi foydalanuvchining chegarani saqlamoqchi yoki sozlashni xohlashini aniqlash uchun ishlatiladi. Foydalanuvchi turli chegara sharoitidagi tasvirni, slayderni va saqlash tugmachasini o'z ichiga olgan GUI yordamida chegarani o'zgartirishi mumkin. Chegara o'rnatilgandan so'ng, foydalanuvchi rasmni saqlash uchun saqlash tugmachasini bosadi va u MATLAB foydalanuvchilarining-p.webp
3 -qadam: konturlarni tuzish va hujayralarni tarqatish
Kodning keyingi qismi konturlarni tuzadi. Hujayralar qizil perimetr bilan o'ralgan, boshqa hujayraning tepasida joylashgan hujayralar yashil rangda tasvirlangan. Belgilangan rasm interaktiv masofa chizig'i bilan 3 -pozitsiyada ko'rsatiladi. Bu chiziq foydalanuvchi tomonidan piksel -millimetrli konvertorga moslashtirilgan chiziqdagi piksellar sonini aniqlaydi. Keyin masofa koeffitsienti mintaqa zonalari tomonidan aniqlangan maydonga ko'paytiriladi va endi maydon millimetr kvadrat bilan ifodalanadi. Ma'lumotlar gistogramma yordamida tuzilib, hujayralar uning maydoni bo'yicha taqsimlanadi. Keyin bu gistogramma 4 -pozitsiyada ko'rsatiladi.
4 -qadam: Hujayra tasvirini aylantirish
Bu bosqichda biz kul rang tasvirni oldik va binarizatsiya qildik, filtrladik va teskari qildik. Rasmda bu funktsiyalarni bajarish shovqinli piksellarni olib tashladi, ular hujayralar deb adashishi mumkin edi va tasvirni hujayra qirralarida yanada silliq va yumshoq qilib qo'ydi. Bu tasvirdagi hujayralarni fondan intensivligi bilan ajralib turadigan "shilimshiq" sifatida ajratish uchun qilingan. "Bloblar" yuqori zichlikdagi oq tasvirlar va fon qora edi. Agar biroz ko'proq vaqtga ruxsat berilsa, biz imbinarize funktsiyasining o'rniga tasvirlarimizga aniqroq va mosroq bo'lishi uchun boshqa Blob tasvirini o'zgartirishni qo'llagan bo'lardik, lekin bu funktsiyani o'rganish va amalga oshirish uchun ko'proq vaqt kerak edi.
5 -qadam: Hujayralarni sanash va hujayralarning birlashishini hisoblash
Kodning bu bosqichida biz rasmdagi hujayralar sonini hisoblashni maqsad qilganmiz. Biz birinchi navbatda regionprops funktsiyasidan foydalanib, bo'g'imlarning maydonlarini hisobladik va agar maydon bizning xohlagan chegaramizda hisoblansa, u pastki qismga chizilgan bo'lar edi. Chegaralar kichik shovqinli piksellarni yoki hujayralar bo'lmagan katta intensivlikni olib tashlash uchun o'rnatildi. Hujayra hisoblagichi keyinroq tuzilgan sentroidlarni sanab, ularni loop uchun hisoblagichga qo'shadi. Hujayralarning maydonlari aniqlangach, biz birlashishni hisoblay oldik. Koddagi ushbu qadamning asosiy ahamiyati hujayralarning birlashuvini topish edi va bu bizning kodning yakuniy maqsadiga hal qiluvchi ahamiyatga ega edi. Biz buni har bir blokdagi piksellarni (yig'indisi (allAreas)) yig'ish va keyin tasvirning umumiy piksel qiymatiga bo'lish yo'li bilan hisoblash orqali qildik (raqam (img)). Bu nisbat bizga birlashuvni beradi va agar tadqiqotchi tomonidan hujayralar o'tishi kerak bo'lgan vaqtdan 80% dan ko'proq aniqlansa. Biz iloji boricha aniq va aniq bo'lishni maqsad qildik, lekin vaqt cheklanganligi sababli noaniqliklar yuzaga keldi. Agar vaqt imkon bersa, biz aniqroq hisoblash usullarini qidirgan bo'lar edik, masalan, ko'proq filtrlash texnikasi va/yoki "Hough Transform", chunki filtrlash texnikasini sinab ko'rish uchun hali etarli tadqiqotlar o'tkazilmagan.
6 -qadam: Hujayralarning yumaloqligi
Rasmdagi dumaloq yumaloqlikni o'lchashdan oldin, biz RGB -dan kul rangga o'tkazishimiz, tasvirni ikkilamchi o'zgartirishimiz, teskari o'zgartirishimiz va filtrlashimiz kerak. Filtrlash texnikasi bwareaopen funktsiyasidan foydalanadi, u qiziqish tasvirini filtrlaydi va hujayra o'lchamiga mos kelmaydigan juda kichik o'lchamdagi piksellar sonini o'chiradi. Tuzilish elementi disk shakli va 2 ga yaqin mahalla bilan yaratilgan bo'lib, u fonda yoki hujayralardagi bo'shliqlarni to'ldirish uchun ishlatiladi. Keyin biz bwboundaries funktsiyasidan foydalanamiz, u bloklarni kuzatadi va uni matritsaga saqlaydi. Keyin biz tasvirni turli xil ranglar yordamida belgilaymiz, shunda u yanada aniqroq bo'ladi. Keyin, rasmda topilgan ob'ektlar va teshiklar soniga qarab ishlaydigan for for loop yordamida, bu qatorga mos keladigan bloklar atrofida chegara o'rnatiladi. Bu tsikl tugagandan so'ng, rasmdagi ob'ektlar va teshiklar soniga ko'ra, yana bir pastadir boshlanadi. Bu safar biz massivdan maydon kabi ba'zi xususiyatlarni to'playdigan va ob'ektlar va teshiklar sonini o'z ichiga olgan ma'lumotlarni saqlaydigan regionprops funktsiyasidan foydalanamiz. Ushbu ma'lumotlardan foydalanib, biz bu ob'ektlarning maydonini va perimetrini tsentroid shakli yordamida hisoblaymiz. Dumaloq ob'ektning o'lchov birligini hisoblab chiqqandan so'ng, natijalarni taqqoslash uchun chegara belgilanadi va bu o'lchovni hisoblangan tsentroidlar yonida matn sifatida tuzamiz. Yakuniy kod tasvirdagi turli hujayralarning yumaloqligini ko'rsatadi va qiymatga yaqin bo'lgan qiymatlar boshqalarga qaraganda yumaloqroq bo'ladi. 1 qiymati, hujayraning to'liq yumaloq va yaxshi holatda bo'lishini bildiradi.
Tavsiya:
Linefollower HoGent - Sintez loyihasi: 8 qadam
Linefollower HoGent - Syntheseproject: Voor het vak sintezlar loyihasi kregen, biz bu tarmoqni ta'qib qilishdan keyin. O'qituvchilarga ko'rsatma berib bo'ladiki, bu muammoning echimini topishga yordam beradi
Avtomatlashtirilgan EKG- BME 305 Yakuniy loyihasi Qo'shimcha kredit: 7 qadam
Avtomatlashtirilgan EKG- BME 305 yakuniy loyihasi Qo'shimcha kredit: EKG yoki EKG- yurak urishidan kelib chiqadigan elektr signallarini o'lchash uchun ishlatiladi va yurak-qon tomir kasalliklari diagnostikasi va prognozida katta rol o'ynaydi. EKGdan olingan ba'zi ma'lumotlarga ritm kiradi
BME 305 EEG: 4 qadam
BME 305 EEG: Elektroensefalogramma (EEG) - bu sub'ektning miyaning elektr faolligini o'lchash uchun ishlatiladigan qurilma. Bu testlar turli miya kasalliklarini tashxislashda juda foydali bo'lishi mumkin. EEGni yaratishga urinayotganda, har xil parametrlar mavjud
Arduino avtomatlashtirilgan ekranli ekran loyihasi uchun qadam dvigatel va haydovchini tanlash: 12 qadam (rasmlar bilan)
Arduino avtomatlashtirilgan ekranli ekran loyihasi uchun qadam dvigateli va haydovchini tanlash: Ushbu yo'riqnomada men avtomatlashtirilgan ekran pardasi prototipi uchun qadam dvigateli va haydovchini tanlash uchun qilgan qadamlardan o'taman. Soyali ekranlar - qo'lda krankirovka qilingan mashhur va arzon modellar, va men ularni almashtirmoqchi edim
Sandbox loyihasi: BACni hisoblash va talqin qilish: 6 qadam
Qum qutisi loyihasi: BACni hisoblash va talqin qilish: Haarika Gogineni, Xana Shlosser va Benedikt Uiseco tomonidan Ushbu loyihada biz ichimlikning soni, vazni va jinsiga qarab qonda alkogol kontsentratsiyasini (BAC) hisoblab chiqishga harakat qilamiz. Hisoblangan BAC -ni chiqargandan so'ng, biz quyidagilarni aytamiz