Агуулгын хүснэгт:
- Алхам 1: Үндсэн санаа ба шаардлагатай хэсгүүд
- Алхам 2: OpenCV модулийг суулгаарай
- Алхам 3: Камерын холболтыг хэвлэх
- Алхам 4: Камерын бэхэлгээг дуусгах
- Алхам 5: Сургагдсан машин сурах загвар
- Алхам 6: Энэ бүхнийг хийдэг код
- Алхам 7: Хайрцаг нээх механизм
- Алхам 8: Хайрцгийг Харри Поттерын сэдэвтэй болгох
Видео: Компьютерийн алсын харааг ашиглан ажилладаг жинхэнэ Харри Поттерын саваа: 8 алхам (зурагтай)
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
"Аливаа хангалттай дэвшилтэт технологи нь ид шидээс ялгагдахгүй" - Артур C. Кларк
Хэдэн сарын өмнө ах маань Японд очиж, Universal Studios дахь Харри Поттерын шидтэний ертөнцөд жинхэнэ шидтэний туршлагатай болсон нь Computer Vision технологийн тусламжтайгаар боломжтой болсон юм.
Universal Studios дахь Харри Поттерын шидтэний ертөнцөд жуулчид тодорхой байрлалд (хөдөлгөөнт дүрс бичлэгийн системийг суурилуулсан) үзүүртээ чимэг цацраг туяа бүхий тусгай зориулалтын саваа ашиглан "жинхэнэ ид шид" үзүүлэх боломжтой. Саваа Харри Поттерын кинонд үзүүлсэнтэй яг адилхан жинхэнэ Олливандерын дэлгүүрээс худалдаж авч болно: "Шидтэнийг шиддэг хүн л сонгодог": P
Тухайн газруудад тухайн хүн саваагаар тодорхой дохио зангаа хийдэг бол хөдөлгөөн барих систем нь дохио зангаа хүлээн зөвшөөрдөг бөгөөд бүх дохио зангаа нь тодорхой ид шидтэй нийцдэг бөгөөд энэ нь усан оргилуурыг асаах гэх мэт хүрээлэн буй орчинд тодорхой үйл ажиллагаа явуулдаг.
Тиймээс, энэхүү зааварчилгааны зааварт би гэртээ жинхэнэ хямд шөнийн харааны камер, зарим электроник хэрэгслийг ашиглан "жинхэнэ ид шид" үзүүлэхийн тулд гэртээ хэрхэн хямд, үр дүнтэй хөдөлгөөн хийх системийг бий болгож болохыг харуулах болно. OpenCV Computer Vision номын сан болон Machine Learning ашиглан зарим питон код !!!
Алхам 1: Үндсэн санаа ба шаардлагатай хэсгүүд
Универсал студи дэх Харри Поттерын шидтэний ертөнцөөс худалдаж авсан саваа нь үзүүртээ дахин тусгасан бөмбөлгүүдийгтэй байдаг. Эдгээр цацраг туяа нь маш их хэмжээний хэт улаан туяаны гэрлийг тусгадаг бөгөөд энэ нь хөдөлгөөнт систем дэх камераар дамжин гардаг тул хүмүүс бидний ойлгодог зүйл бол агаарт хөдөлж буй савааны үзүүр биш юм. видео урсгалд амархан тусгаарлагдаж, тухайн хүний зурсан загварыг таньж, шаардлагатай үйлдлийг гүйцэтгэхийн тулд хянах боломжтой тод бөмбөлөг хэлбэрээр. Энэ бүх боловсруулалт нь бодит цаг хугацаанд хийгддэг бөгөөд Компьютерийн алсын хараа, Машины сургалтыг ашигладаг.
Шөнийн харааны энгийн камерыг хөдөлгөөнт дүрс бичлэг хийх камер болгон ашиглаж болно, учир нь тэдгээр нь хүмүүст харагддаггүй хэт улаан туяаны гэрлийг цацдаг боловч хэт улаан туяаны шүүлтүүргүй камераар тодорхой харагддаг. Тиймээс, камераас авсан видео дамжуулалтыг савхны үзүүрийг илрүүлэх, тусгаарлах, хянах зориулалттай OpenCV програмтай питон програмтай бөөрөлзгөнө pi болгон өгдөг. Дараа нь бид SVM (Simple Vector Machine) Machine Learning алгоритмыг ашиглан зурсан загварыг таньж, улмаар бөөрөлзгөнө pi -ийн GPIO -г хянаж, зарим үйл ажиллагааг гүйцэтгэдэг.
Шаардлагатай материал:
1) Raspberry Pi 3 загвар В, гар, хулгана зэрэг шаардлагатай хэрэгслүүд
2) Raspberry Pi NoIR (хэт улаан туяаны гэрэлгүй) камерын модуль
3) Харри Поттер Саваа үзүүрт дахин тусгагчтай: Хэрэв танд байхгүй бол санаа зовох хэрэггүй. Дахин рефлектортой бүх зүйлийг ашиглаж болно. Тиймээс, та саваа хэлбэртэй ямар ч саваа ашиглаж, үзүүртээ дахин тусгагч соронзон хальс, будаг эсвэл бөмбөлгүүдийг түрхээрэй, энэ нь Уильям Османы видеонд үзүүлсэн шиг ажиллах ёстой.
4) 10 хэт улаан туяаны LED
5) 3D принтер, PLA судалтай утас
6) 12V - 1A ханын адаптер ба DC залгуур
7) servo мотор
8) Хуучин хайрцаг ба мөчлөгийн дугуйнаас хэлсэн үг
9) Халуун цавуу буу
10) Харри Поттертой холбоотой зарим лого, зургийг гялгар хуудсан дээр хэвлэв
11) Ногоон, шар хилэн хуудас.
ТАЙЛБАР: Би мөн хэт улаан туяаны шүүлтүүрийг арилгаж хуучин шөнийн харааны зориулалттай хуучин вэбкамерыг ашиглахыг оролдсон боловч линзийг гэмтээж/нүүлгэн шилжүүлсэн нь видеоны чанарт ихээхэн нөлөөлсөн тул би үүнийг ашиглаж чадаагүй юм. Гэхдээ хэрэв та үүнийг туршиж үзэхийг хүсч байвал энэхүү гайхалтай зааварчилгааг энд дарж үзнэ үү
Алхам 2: OpenCV модулийг суулгаарай
Энэ төслийн анхны бөгөөд магадгүй хамгийн урт алхам болох цаг боллоо: Raspberry Pi -д OpenCV модулийг суурилуулах, барих.
OpenCV модулийн хамаарлыг суулгахад их цаг хугацаа шаардагддаггүй боловч бүтээх процесс 2-3 цаг хүртэл үргэлжилдэг. Тиймээс, тэврээрэй !!: P
OpenCV 4.1.0 модулийг суулгахын тулд онлайнаар дагаж болох олон заавар байдаг. Миний дагасан линк энд байна: Энд дарна уу
ТАЙЛБАР: Би OpenCV модулийг зааварт үзүүлсэн шиг виртуал орчинд суулгахыг зөвлөж байна, учир нь энэ нь янз бүрийн модулийн хамаарлыг суулгах эсвэл python -ийн өөр өөр хувилбартай ажиллах явцад гарч болзошгүй янз бүрийн зөрчилдөөнөөс урьдчилан сэргийлэх болно.
Алхам 3: Камерын холболтыг хэвлэх
NoIR пикамер нь хэт улаан туяаны шүүлтүүргүй тул шөнийн харааны камер болгон ашиглаж болох боловч хэт улаан туяаны гэрлийн эх үүсвэр байхгүй хэвээр байна. Бүх шөнийн харааны камерууд нь хэт улаан туяаны гэрлийн эх үүсвэртэй бөгөөд нүцгэн нүдэнд үл үзэгдэх харанхуйд хэт ягаан туяаг цацруулдаг боловч туяаг ямар ч объектоос туссаны дараа хэт улаан туяаны шүүлтүүргүй камераар харж болно.
Тиймээс бидэнд хэт улаан туяаны гэрлийн эх үүсвэр, камерыг холбоход хэрэгтэй зүйл хэрэгтэй болно. Үүний тулд би объектын энгийн 3D загварыг бүтээсэн бөгөөд бид камераа тойрог хэлбэрээр 10 IR гэрлээр хүрээлэх болно. Энэхүү загварыг SketchUp ашиглан бүтээсэн бөгөөд 40 минутын дотор Black PLA програмаар хэвлэв.
Алхам 4: Камерын бэхэлгээг дуусгах
Загварыг хэвлэсний дараа би эхлээд 80 ширхэг элсэрхэг цаасаар зүлгэж, дээр дурдсан схемийн дагуу IR гэрлийг нүхэнд хийж эхлэв.
Би гэрлүүдээ халуун цавуугаар байрлуулаад дараа нь дараалсан хоёр ледийн эерэг ба сөрөг тугалгануудыг нийлүүлж, улмаар гагнуураар холбож улмаар цуврал холболт үүсгэв.
12 вольтын хананы адаптераас эерэг ба сөрөг үзүүрийг холбохын тулд нэг туяаны эерэг туяа ба түүний хажууд байгаа сөрөг хар тугалгыг гагнаагүй орхисон байв.
Алхам 5: Сургагдсан машин сурах загвар
Хүний зурсан үсгийг таних зорилгоор би эндээс олсон гараар бичсэн англи цагаан толгойн мэдээллийн санг ашиглан Support Vector Machine (SVM) алгоритм дээр суурилсан машин сурах загварыг сургасан. SVM бол маш үр дүнтэй машин сурах алгоритм бөгөөд энэ тохиолдолд өндөр нарийвчлалыг өгч чаддаг бөгөөд энэ тохиолдолд ойролцоогоор 99.2% байдаг !! SVM -ийн талаар дэлгэрэнгүй уншина уу
Өгөгдлийн сан нь 785 багана, 300,000 гаруй мөр агуулсан.csv файл хэлбэртэй бөгөөд мөр бүр 28 х 28 хэмжээтэй дүрс бүхий баганан тус бүр нь тухайн зургийн пикселийн утгыг нэмэлт баганаар агуулсан болно. эхлэл нь шошгыг агуулсан бөгөөд тус бүр нь англи үсэгтэй тохирч буй 0 -ээс 25 хүртэлх тоо юм. Энгийн питон кодыг ашиглан би хүссэн бүх дүрсээ авахын тулд өгөгдлөө зүсч, зөвхөн 2 үсэг (A ба C) үсэг зурж, тэдэнд зориулж загвар бэлдсэн.
Би бэлтгэгдсэн загварыг (alpha_classifier.pkl) хавсаргасан бөгөөд сургалтын код нь үүнийг даван туулах эсвэл загварыг өөр үсгээр сургах эсвэл өөр өөр алгоритмыг туршихад ямар ч өөрчлөлт оруулахгүй. Хөтөлбөрийг ажиллуулсны дараа энэ нь автоматаар таны бэлтгэгдсэн загварыг таны код хадгалагдсан директорт хадгалдаг.
Алхам 6: Энэ бүхнийг хийдэг код
Сургагдсан загварыг бий болгосны дараа эцсийн алхам бол манай Raspberry Pi -д зориулсан питон програм бичих бөгөөд ингэснээр бидэнд дараах зүйлийг хийх боломжтой болно.
- Бодит цаг хугацаанд пикамера хэлбэрээр видео үзэх
- Видеон дээрх цагаан товруу (шөнийн хараанд гэрэлтдэг савааны үзүүр) -ийг илрүүлж, ажиглаарай
- Зарим гох үйл явдлын дараа видеон дээрх хөдөлж буй бөмбөлгийн замыг хайж эхэл (доор тайлбарлав)
- Өөр нэг гох үйл явдлын дараа мөрдөхөө болих (доор тайлбарласан)
- Хэрэглэгчийн зурсан загвар бүхий сүүлчийн хүрээг буцаана
- Босго, дуу чимээг арилгах, хэмжээг өөрчлөх гэх мэт хүрээ дээр урьдчилсан боловсруулалт хийх.
- Урьдчилан таамаглахын тулд боловсруулсан сүүлчийн хүрээг ашиглана уу.
- Урьдчилан тогтоосон дагуу Raspberry Pi -ийн GPIO -г удирдах замаар ямар нэгэн ид шидийг үзүүлээрэй
Энэ төслийн хувьд би Харри Поттерын сэдэвчилсэн хайрцгийг бүтээсэн бөгөөд үүнийг Raspberry Pi -ийн GPIO удирддаг servo мотор ашиглан нээж, хааж болно. 'A' үсэг нь 'Алохамора' (Харри Поттерын киноны шидтэн ямар ч түгжээг онгойлгох боломжийг олгодог хамгийн алдартай шившлэгийн нэг юм) гэсэн утгатай тул хэрэв хүн саваагаар А үсгийг зурвал pi нь servo руу тушаана. хайрцгийг нээнэ үү. Хэрэв тэр хүн "C" гэсэн үсгийг зурсан бол ойрхон байна (хаах, түгжихийн тулд зохих шившлэгийг би бодож чадаагүй болохоор), pi нь servo -ийг хайрцгийг хаахыг тушаана.
Зураг/видео боловсруулалттай холбоотой бүх ажлыг, тухайлбал бөмбөлгийг илрүүлэх, бөмбөрцгийн замыг хайх, сүүлчийн фрэймийг урьдчилан боловсруулах гэх мэт ажлыг OpenCV модуль ашиглан хийдэг.
Дээр дурдсан үйл явдлуудын хувьд бодит цагийн видео дээр ногоон, улаан тойрог гэсэн хоёр тойрог үүсгэнэ. Бөмбөг ногоон тойрог дотор бүсэд орж ирэхэд тухайн хүн тухайн үсгийг үүсгэж эхлэх боломжийг олгосны дараа тэр чиглэлийн замыг хайж эхэлдэг. Бөмбөгөр улаан тойрог хүрэхэд видео зогсох бөгөөд сүүлчийн хүрээг урьдчилан таамаглахад бэлэн болгохын тулд хүрээ дээр урьдчилсан боловсруулалт хийдэг функцэд дамжуулагдана.
Би энэ алхамд кодын файлуудыг хавсаргасан болно. Үүнийг даван туулж, хүссэнээрээ ямар нэгэн өөрчлөлт хийх боломжтой.
ТАЙЛБАР: Би өөр өөр питон хувилбартай ажилладаг хоёр тусдаа питон файл үүсгэх ёстой байсан бөгөөд нэг нь OpenCV модулийг импортлодог (Python 2.7), нөгөө нь sklearn модулийг (Python 3.5) импортолсон загварыг ачаалсны дараа урьдчилан таамаглахад зориулж миний OpenCV суулгасан болно. python 3.5 -д sklearn суулгасан байхад Python 2.7 хувилбар. Тиймээс би HarryPotterWandsklearn.py (урьдчилан таамаглахын тулд) файлыг HarryPotterWandcv.py (бүх нээлттэй ажил болон бодит цагийн видео бичлэгийн хувьд) ажиллуулж гаралтыг нь авахын тулд дэд процесс модулийг ашигласан. Ийм байдлаар би зөвхөн HarryPotterWandcv.py файлыг ажиллуулах ёстой.
Алхам 7: Хайрцаг нээх механизм
Надад энэ төсөлд ашиглаж байсан хуучин улаан өнгийн хайрцаг хэвтэж байв.
Хайрцаг нээх механизмын хувьд:
- Би хайрцгийн ирмэгийн ойролцоох картонон дээр хайрцгийн арын ойролцоо servo -ийг халуунаар наасан.
- Дараа нь би дугуйны дугуйнаас чанга яригчийг аваад servo -ийн гарт наасан.
- Ярианы нөгөө үзүүрийг хайрцагны таганд утас ашиглан бэхлэв.
- Servo эерэг нь Raspberry Pi дээрх +5V Pin 2 -т холбогдсон.
- Servo -ийн сөрөг тал нь GND Pin 39 -тэй холбогдсон.
- Серво дохио нь Pin 12 -т холбогдсон байна
Алхам 8: Хайрцгийг Харри Поттерын сэдэвтэй болгох
Харри Поттерын хайрцгийг зориулан гаргахын тулд би А4 хэмжээтэй гялгар хуудсан дээр Харри Поттерын лого, Хогвартсын оргил, Дөрвөн байшин бүрийн сүлд гэх мэт янз бүрийн өнгийн зургуудыг хэвлээд хайрцган дээр нь наасан байв. газрууд.
Би мөн шар өнгийн хилэн хуудсыг ашиглан тууз хайчилж, таган дээр нь наагаад хайрцгийг Гриффиндорын байшинтай ижил өнгөтэй болгож өгөв. Би тагны дотор талыг, ногоон хилэн даавуугаар серво хийх картоныг хучсан. Тагны дотор талд би Хогвартсын сургуулийн байшин бүрийг дүрсэлсэн амьтдыг дүрсэлсэн илүү олон тэмдэг, бэлгэ тэмдгийг наажээ.
Тэгээд эцэст нь би Харри Поттертой холбоотой бүх зүйлээ хайрцагт хийлээ, үүнд Гриффиндорын дуу намсгагч, Хогвартсын дүрэмт хувцастай өдрийн тэмдэглэл, энэ төсөлд ашигласан Ахмад саваа орсон байв: D
Зөвлөмж болгож буй:
Бодит амьдрал Харри Поттерын хөрөг зургуудыг хөдөлгөж байна!: 11 алхам (зурагтай)
Харри Поттероос авсан бодит амьдрал дахь хөрөг зургууд !: " Гайхалтай! Гайхалтай! Энэ бол яг л ид шид шиг! &Quot; - Гилдерой Локхарт Би бол Харри Поттерын асар том шүтэн бишрэгч бөгөөд шидтэний ертөнцөд миний үргэлж дуртай байсан зүйл бол сэтгэл хөдөлгөм хөрөг зураг юм. Би Кайл Стюарт-Францын хүүхэлдэйн киног олж харлаа
Андройд ухаалаг гар утсыг ашиглан компьютерийн алсын харааг нэмэхийн тулд Hexbug Spider XL -ийг хакердах: 9 алхам (зурагтай)
Андройд ухаалаг гар утсыг ашиглан компьютерийн алсын харааг нэмэхийн тулд Hexbug Spider XL -ийг хакердах: Би бол анхны Hexbug -ийн том фен юм. Аалз. Би арав гаруй зүйлийг эзэмшиж, бүгдийг нь хакердсан. Хэзээ нэгэн цагт миний нэг хүү найзууд руугаа явдаг ’ төрсөн өдрийн үдэшлэг, найз нь Hexbug авдаг &худалдаа; аалз бэлэглэх болно. Би хакердсан эсвэл
Компьютерийн алсын харааг ашиглан од таних (OpenCV): 11 алхам (зурагтай)
Компьютерийн алсын харааг ашиглан од таних (OpenCV): Энэхүү заавар нь дүрсний одны хэв маягийг автоматаар танихын тулд компьютерийн алсын хараатай програмыг хэрхэн яаж хийхийг танд хэлэх болно. Энэ арга нь OpenCV (Open Source Computer Vision) номын санг ашиглан HAAR каскадын багцыг бий болгох боломжтой
2.4Ghz NRF24L01 модулийг ашиглан Arduino ашиглан утасгүй алсын удирдлага - Nrf24l01 4 суваг / Quadcopter -ийн 6 суваг дамжуулагч хүлээн авагч - Rc нисдэг тэрэг - Arduino ашиглан Rc онгоц: 5 алхам (зурагтай)
2.4Ghz NRF24L01 модулийг ашиглан Arduino ашиглан утасгүй удирдлага | Nrf24l01 4 суваг / Quadcopter -ийн 6 суваг дамжуулагч хүлээн авагч | Rc нисдэг тэрэг | Arduino ашиглан Rc онгоц: Rc машин ажиллуулах | Квадрокоптер | Дрон | RC онгоц | RC завь, бидэнд үргэлж хүлээн авагч, дамжуулагч хэрэгтэй байдаг, RC QUADCOPTER -ийн хувьд бидэнд 6 суваг дамжуулагч, хүлээн авагч хэрэгтэй гэж бодъё, энэ төрлийн TX ба RX нь хэтэрхий үнэтэй тул бид үүнийг өөрөө хийх болно
DIY Харри Поттерын хөрөг зураг төсөл: 9 алхам (зурагтай)
DIY Харри Поттерын хөрөг зураг төсөл: Дараахь зүйлийг зөвхөн цэвэр цусны шидтэнүүдэд зориулав. Хэрэв та цэвэр цустай биш бол Слизерин онцгойлон хэлэхэд танд тулаан, магл, Хаффлэпф, шавар цустай тулгарах нь гарцаагүй бүтэлгүйтэл, ялагдлын талаар анхааруулсан болно