Satura rādītājs:
- Piegādes
- 1. darbība. Kā tas darbojas
- 2. darbība: aparatūras montāža
- 3. darbība: koda rakstīšana
- 4. solis: Paldies
Video: RoboPhoto - mozaīku ģenerators sabiedrībai: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:53
RoboPhoto ir reāllaika fotomozažu ģenerators
Kamēr jūs gaidāt, RoboPhoto izveido savu lietotāju fotomozaiku.
Izmantojot mūsdienīgas digitālās metodes, piemēram, attēlu apstrādi, sejas atpazīšanu un mākslīgo intelektu, RoboPhoto spēj radīt fotomozāžu, kurā visi apmeklētāji iet garām un nospiež tās pogu-reālā laikā.
Katru reizi, nospiežot pogu, tiek uzņemta fotogrāfija par personu, kas atrodas pie rokas. Katru fotoattēlu uzreiz skenē un interpretē RoboPhoto. Pēc tam RoboPhoto programmatūra mainīs visu atsevišķo attēlu tā, lai tas kļūtu par lielāka attēla daļu, un pēc tam izdrukā šo izmainīto attēlu uz uzlīmes, kas apzīmēta ar koordinātu kopu, kas norāda katra fotoattēla atrašanās vietu šajā lielākajā attēlā. Pēc tam katram apmeklētājam tiek lūgts izvietot savu fotoattēlu uzlīmi uz lielāka audekla, kurā ir tikai atbilstošs režģis.
RoboPhoto darbības laikā tiks izveidots jauns attēls. Fotomozaīze, kas sastāv no šīm atsevišķajām fotogrāfijām, kas atdarinās iepriekš definētu “mērķa attēlu”.
RoboPhoto darbojas arī viena lietotāja režīmā. Šādi konfigurējot, RoboPhoto izveido pilnu viena lietotāja mozaīku.
Piegādes
- Windows 10 dators ar instalētām Visual Studio un IoT pakotnēm
- Raspberry Pi 3B+ ar instalētu Microsoft Windows 10 IoT
- Krāsu etiķešu printeris (Brother VC-500W)
- Liela sarkana spiedpoga, kas uzstādīta uz pjedestāla lietotāja ievadīšanai
- HDMI ekrāns lietotāju atsauksmēm
- Microsoft Xbox Kinect v2 kamera- nozagta no mana dēla- fotografēšanai
- Tīkls (Wifi, LAN)
- Mērķa režģis. Papīra lapa, uz kuras ir uzdrukāts režģis -piepildīta ar koordinātām. Šo papīra režģi izmanto kā audeklu, kur apmeklētāji var pielīmēt savu fotogrāfiju norādītajās koordinātās. Un galu galā viņi kopā veidos gala rezultātu: skaistu jaunu fotomozaiku.
Tika izmantota icrosoft Kinect 2.0 kamera, jo tā var uzņemt dziļuma attēlus. Šo funkciju izmanto, lai katram atsevišķam fotogrāfam izveidotu virtuālu zaļo ekrānu. Tādā veidā RoboPhoto var pārkrāsot fonu katrai atsevišķai fotogrāfijai, lai tā atbilstu mērķa gabala krāsai topošajā mozaīkā.
1. darbība. Kā tas darbojas
RoboPhoto ir instalācija, kurā ir pjedestāls ar lielu sarkanu pogu, dators ar etiķešu printeri un neliela IoT ierīce, kas apstrādā lietotāja saskarni (ekrānu un pogu). Manā gadījumā: RaspBerry 3B+.
- RoboPhoto darbojas publiski pieejamā vietā un (pēc tā ieslēgšanas) darbojas pats. Skrienot, RoboPhoto mudina garāmgājējus nospiest lielo sarkano pogu.
- Ikreiz, kad tiek nospiesta šī lielā sarkanā poga, RoboPhoto nofotografēs apmeklētāju, kurš tikko nospiedis pogu ar Kinect kameru.
-
Tad RoboPhoto izmantos savu uzlaboto A. I. un attēlu apstrādes prasmes, lai mainītu katru fotoattēlu, lai tas atbilstu topošās mozaīkas daļai. Lai to panāktu, RoboPhoto pārkrāso katra fotoattēla fonu, lai tas atbilstu mērķa gabala krāsai iepriekš ielādētā attēlā. Pēc rediģēšanas RoboPhoto izdrukā rediģēto fotoattēlu uz uzlīmes kopā ar koordinātu kopu, kas precīzi norāda šīs vienas uzlīmes atrašanās vietu mozaīkā.
- Pēc tam lietotājam tiek lūgts novietot uzlīmi uz mozaīkas mērķa lapas.
- Un tādējādi - pēc daudzu cilvēku apmeklējuma - parādīsies jauns mākslas darbs. Lai izveidotu mozaīku, jums būs nepieciešams daudz atsevišķu gabalu. Man ir pienācīgi rezultāti, kas darbojas 600 gabalos
RoboPhoto var darboties arī viena lietotāja režīmā.
Šajā konfigurācijā RoboPhoto izveido pilnu mozaīku no viena lietotāja rediģētām fotogrāfijām. Pēc pogas nospiešanas RoboPhoto uzņems aptuveni> 600 dažādas lietotāja fotogrāfijas, pēc tam tās visas rediģēs un sakārtos, lai izveidotu vienu jaunu mozaīku, kas izveidota pēc iepriekš atlasīta mērķa attēla.
2. darbība: aparatūras montāža
Kā parādīts attēlā, Win 10 dators ir pievienots Kinect kamerai. Kinect ir jāpievieno, izmantojot USB 3.0. Laikā, kad izveidoju RoboPhoto - nebija pieejams Raspberry Pi ar USB 3.0.*
Datoru izmanto arī, lai apstrādātu drukāšanu pievienotajā etiķešu printerī. Manā gadījumā Brother VC-500W. Diezgan lēts sadzīves krāsu etiķešu drukātājs. Tomēr tas ir ļoti lēns. Ja iespējams, labāk izmantot profesionālu.
Lielā sarkanā poga ir pievienota Raspberry Pi 3B+. GPIO ir pievienoti tikai 4 vadi. Šī ir vienīgā lodēšana, kas nepieciešama šajā instrukcijā. Pi arī nodrošina atgriezenisko saiti mūsu apmeklētājam, izmantojot 7 collu TFT ekrānu, izmantojot HDMI.
Lai to sakārtotu, es uzbūvēju koka pjedestālu, kurā ir visas šīs sastāvdaļas.
Blakus pjedestālam, pie sienas, tiek novietota papīra lapa, kurā ir mērķa režģis un koordinātas (A1/A2). Tā kā es izmantoju etiķešu printeri ar maksimālo platumu = 2, 5 cm, visi šī režģa kvadrāti ir 2, 5 cm x 2, 5 cm.
*Šodien Raspberry Pi4 piedāvā USB3.0. Alse W10 var palaist ierīcē. Tātad teorētiski vajadzētu būt iespējai izveidot RoboPhoto v2.0, neizmantojot datoru. Varbūt Covid '19 man nodrošinās pietiekami daudz laika, lai es varētu drīzumā publicēt šādu pamācību.
3. darbība: koda rakstīšana
Kods
RoboPhoto tika izveidots, izmantojot VisualStudio kā risinājumu ar diviem projektiem:
- Programma Windows Forms datorā mitina TCP serveri un apstrādā Kinect ievadi
- Raspberry Pi 3B+ mitina TCP klientu UWP vadītajā lietojumprogrammā (iestatīta kā starta lietotne), lai apstrādātu pogas nospiešanas notikumus un sniegtu lietotājam atsauksmes, izmantojot 7 collu TFT ekrānu.
Iepriekš redzamajā diagrammā esmu mēģinājis sniegt jums priekšstatu par to, ko dara mans mīkstais. Visual Studio, ko es uzrakstīju, lai izveidotu šo (absolūti 100% strādājošo) RoboPhoto risinājumu, ir nodrošināts ar šo pamācību. Tomēr man ir jābrīdina visi, kas nolaiž šo failu: Kods, kuru es uzrakstīju, ir tālu no skaistā un bieži ir saistīts ar manu dev-PC. Tāpēc es aicinu ikvienu radīt labāku, jaukāku un stabilāku risinājumu.
1drv.ms/u/s!Aq7eBym1bHDKkKcigYzt8az9WEYOOg…
Tīkls
Piemēra kodā Pi kods tiek izvietots, izmantojot Visual Studio, uz mana tīkla IPAdresi. Jums, iespējams, vajadzētu mainīt to, lai tas atbilstu jūsu. Lai to izdarītu - pēc risinājuma atvēršanas Visual Studio ar peles labo pogu noklikšķiniet uz ARM klienta projekta, pēc tam izvēlieties rekvizītus un novietojiet vērtību Remote machine uz savas Pi IPAdd. Tāpat jums ir jāatļauj datplūsma no klienta uz serveri 8123 portā servera (datora) Windows ugunsmūra ietvaros. Ja palaižat risinājumu no Visual Studio, tai vajadzētu lūgt to izdarīt U.
Kodējot, man bija daudz grūtību panākt, lai W32 un UWP pareizi sazinātos. Man tas izdevās, izmantojot divas atsevišķas klases klientā un serverī: resp MyEchoClient.cs (ARM klientā) un ConnectionClient.cs (klienta savienojumu savienošana serverī).
Mozaīkas faili - pielāgota klase
RoboPhoto rada mozaīkas, lai atdarinātu mērķa attēlu. Šis mērķa attēls un visas atsevišķās fotogrāfijas, kas kopā veido topošo mozaīku, kā arī dažas citas katra RoboPhoto īpašības tiek glabātas failu sistēmas failos. Mans pievienotais kods izmanto failu un mapju kopu direktorijā c: / tmp / MosaicBuilder. Šajā mapē kods nolasīs visas apakšmapes ar mapes nosaukumu, kas sākas ar [prj_] kā mozaīkas projektu mapes. Visās šajās [prj_] mapēs tā mēģinās atvērt projekta failu ar nosaukumu [_projectdata.txt], kurā ir visa informācija, kas nepieciešama katram projektam.
Šāds projekta fails sastāv no:
- pilns šī projekta mērķa attēla ceļš un faila nosaukums
- pilnu ceļu, kur tiek glabātas atsevišķas šī projekta fotogrāfijas (gabali)
- Kolonnu skaits mozaīkā
- Mozaīkas rindu skaits
Projektu piemēri ir ietverti ZIP failā: / slnBBMosaic2 / wfMosaicServerKinect / bin / x86 / Debug / prj_xxx
C# servera kodā visa mozaīkas apstrāde tiek veikta, izmantojot pielāgotu klasi: BBMosaicProject.cs
Microsoft Kinect v2.0 - zaļais ekrāns
Lai vienkārši fotografētu, derēs jebkura kamera. Bet es esmu izmantojis Microsoft Kinect v2.0, lai apvienotu krāsainus attēlus un dziļuma attēlus. Tādā veidā var izveidot zaļā ekrāna efektu. Visu no Kinect saņemto krāsu attēlu fons tiks aizstāts ar vienmērīgu zaļu virsmu (BBBackgroundRemovalTool.cs).
Serverprojektam tika pievienota atsauce uz Microsoft. Kinect.
EMGU
Tā kā mums ir jābūt pārliecinātiem, ka uz fotogrāfijas, kas uzņemta, nospiežot pogu, ir redzama kāda persona, RoboPhoto tika pievienotas sejas atpazīšanas iespējas.
www.nuget.org/packages/Emgu. CV/3.4.3.3016
Tikai tad, kad attēlā ir redzama kāda persona, zaļo ekrānu šajā attēlā nomainīs vienveidīga krāsaina virsma, kuras krāsu kodi būs vienādi ar mērķa gabala vidējo krāsu topošajā mozaīkā.
4. solis: Paldies
Paldies, ka izlasījāt manu pamācību. Šī bija mana pirmā. Es ceru, ka jums patika.
Ieteicams:
Turbo trenažiera ģenerators: 6 soļi
Turbo Trainer Generator: Elektrības ražošana ar pedāļa spēku mani vienmēr ir fascinējusi. Lūk, mans viedoklis par to
Maksimālais MSP apkārtējās vides cilpas ģenerators: 19 soļi
Maksimālais MSP apkārtējās vides ģenerators: šī ir apmācība par to, kā sākt veidot apkārtējās vides cilpas ģeneratoru Max MSP. Šī apmācība paredz, ka jums ir pamatzināšanas par Max MSP, DAW saskarnēm un signālu apstrādi. Ja vēlaties izmantot šajā apmācībā izstrādāto programmu
Pragotron - Pulzu ģenerators: 5 soļi
Pragotron - Pulzu ģenerators: Ģenerators minutovych pulsu pro hodiny pragotron
Mūzikas ģenerators uz laika apstākļiem (ESP8266 balstīts Midi ģenerators): 4 soļi (ar attēliem)
Mūzikas ģenerators uz laika apstākļiem (ESP8266 balstīts Midi ģenerators): Sveiki, šodien es paskaidrošu, kā izveidot savu mazo laika apstākļu mūzikas ģeneratoru. Tas ir balstīts uz ESP8266, kas ir kā Arduino, un tas reaģē uz temperatūru, lietu un gaismas intensitāte. Negaidiet, ka tas radīs visas dziesmas vai akordu programmu
Ģenerators - līdzstrāvas ģenerators, izmantojot Reed slēdzi: 3 soļi
Ģenerators - līdzstrāvas ģenerators, izmantojot Reed slēdzi: vienkāršs līdzstrāvas ģenerators Līdzstrāvas (DC) ģenerators ir elektriskā mašīna, kas mehānisko enerģiju pārvērš līdzstrāvas elektrībā. Svarīgi: līdzstrāvas (DC) ģeneratoru var izmantot kā līdzstrāvas motoru bez jebkādas konstrukcijas izmaiņas