Zajem fotografije

Vse o GUI-O. Tu sodijo tudi posamezne aplikacije skupaj z izvedbo tako HW kot tudi SW mikrokontrolerja.

Zajem fotografije

OdgovorNapisal/-a tomazp » 30 Avg 2022, 10:42

Vem da GUI-O podpira zajem podatkov iz kamere ali vključitev slike iz strežnika oz. spleta. Dve vprašanji glede zajema videa oz. fotografije za naslednji primer če je to sploh izvedljivo.

Wifi kamera je priključena na lokalno omrežje in ima naslov npr. 192.168.0.109. Ali je možno, da GUI-O dostopa do te vsebine in jo prikaže kot Image - statično? Idealno bi bilo, da se vsakič ob branju prenese samo fotografija, da ni neke potrebe po širini prenosa. Preko kontrolerja pa se kliče pogostnost osveževanja oz. branja npr. 1x min. Na ta način se lahko spremlja neko zadevo v dokaj realnem času z vsemi željenimi parametri in možnostmi.

Kaj pa če sta kontroler in wifi kamera na istem lokalnem omrežju, kako bi tako sliko dobil na GUI-O vmesnik preko MQTTja? Verjetno brez globalnega strežnika ne bi šlo?
tomazp
 
Prispevkov: 734
Pridružen: 19 Jan 2015, 10:14
Kraj: Ljubljana
Zahvalil se je: 137 krat
Prejel zahvalo: 250 krat
Uporabnika povabil: Zeci
Število neizkoriščenih povabil: 52

Re: Zajem fotografije

OdgovorNapisal/-a kl3m3n » 30 Avg 2022, 18:34

Živijo tomazp!

Kako in kam pa IP kamera servira podatke? Kakšen je protokol? Najbrž ima kamera nek "streaming" URL protokol (ala RTSP)? Da bi GUI-O direktno pobiral podatke iz tega "streama" trenutno ni podpore. Tole bi moral malo bolj raziskati, da bi komentiral kaj več.

Zdajle malo ugibam, a če bi se trenutno lotil sam bi najbrž naredil neko Python skripto, ki pobira podatke iz kamere. Nato bi te podatke serviral GUI-O appu preko MQTT brokerja. Primerček za zajem in stream webcamere je na https://www.gui-o.com/ pod "Examples" (preprosta Python skripta). OpenCV omogoča zajem tudi direktno iz URL-ja. Tukaj se potem lahko pobira poljubni frame in se ga odda proti GUI-O appu... Slika mora biti v primernem formatu (podpira tudi jpg kompresijo - v vsakem primeru pa je potrebno sliki dodati nek header - več v priročniku...).

Glede MQTT brokerja - lahko bi si ga postavil na lastni mašini, naredil NAT / port forwarding (nek nestandardni port zaradi malo večje varnosti) in tako dostopal do njega preko zunanjega IP-ja. Lahko bi sicer uporabil GUI-O MQTT broker, a bi imel lasten bržkone višji "throughput", ker na svojem brokerju ne bi imel drugih klientov.

Težko rečem kaj več, ker ne poznam konfiguracije. Bom malo pogledal, kakšne so opcije (iz radovednosti :) )

Povzetek: Trenutno lahko prenašaš poljubno sliko preko MQTT, potrebno jo je le pretvoriti v pravilen format (header + payload).

Lp,
kl3m3n
kl3m3n
 
Prispevkov: 88
Pridružen: 08 Jul 2021, 22:28
Zahvalil se je: 2 krat
Prejel zahvalo: 82 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 8

Re: Zajem fotografije

OdgovorNapisal/-a tomazp » 31 Avg 2022, 06:44

Pozdravljen Klemen. Hvala za izčrpen odgovor. Verjetno bo prenos slike preko MQTTja optimalna rešitev. Moram zadevo še malce predelati v tej smeri.
tomazp
 
Prispevkov: 734
Pridružen: 19 Jan 2015, 10:14
Kraj: Ljubljana
Zahvalil se je: 137 krat
Prejel zahvalo: 250 krat
Uporabnika povabil: Zeci
Število neizkoriščenih povabil: 52

Re: Zajem fotografije

OdgovorNapisal/-a tomazp » 08 Sep 2022, 18:01

Še dve vprašanji:
1) Nisem pa še preizkušal. Ali se da delati na GUI-O aplikaciji z dvema vključenima kontrolerjema istočasno? Vsak s svojo MQTT prijavo?
Vsak kontroler bi imel tudi svojo wifi povezavo. Npr. kreiral bi dva objekta:

WiFiClient wiFiClient;
PubSubClient mqttClient1(wiFiClient);
PubSubClient mqttClient2(wiFiClient);
Seveda bi bilo treba vnesti tudi dvojne publish in subscribe topics.

2) Pri klicu slike iz image objekta, ki je locirana na spletni strani se slika prvič pred prikazom prenese v pomnilnik telefona, od kjer jo program ob vsaki uporabi pokliče. ALi je možno, da GUI-O kliče sliko vsakič iz spletne strani brez shranjevanja oz. da jo pri shranjevanju samodejno povozi? Tak način bi omogočal dinamično spremembo vsebine image objekta na vsakih npr. 10min. Npr. prikaz nekega stanja iz oddaljene lokacije, statične slike, vremenske slike ...
tomazp
 
Prispevkov: 734
Pridružen: 19 Jan 2015, 10:14
Kraj: Ljubljana
Zahvalil se je: 137 krat
Prejel zahvalo: 250 krat
Uporabnika povabil: Zeci
Število neizkoriščenih povabil: 52

Re: Zajem fotografije

OdgovorNapisal/-a kl3m3n » 11 Sep 2022, 17:13

tomazp je napisal/-a:Še dve vprašanji:
1) Nisem pa še preizkušal. Ali se da delati na GUI-O aplikaciji z dvema vključenima kontrolerjema istočasno? Vsak s svojo MQTT prijavo?
Vsak kontroler bi imel tudi svojo wifi povezavo. Npr. kreiral bi dva objekta:

WiFiClient wiFiClient;
PubSubClient mqttClient1(wiFiClient);
PubSubClient mqttClient2(wiFiClient);
Seveda bi bilo treba vnesti tudi dvojne publish in subscribe topics.

2) Pri klicu slike iz image objekta, ki je locirana na spletni strani se slika prvič pred prikazom prenese v pomnilnik telefona, od kjer jo program ob vsaki uporabi pokliče. ALi je možno, da GUI-O kliče sliko vsakič iz spletne strani brez shranjevanja oz. da jo pri shranjevanju samodejno povozi? Tak način bi omogočal dinamično spremembo vsebine image objekta na vsakih npr. 10min. Npr. prikaz nekega stanja iz oddaljene lokacije, statične slike, vremenske slike ...


1. Seveda je možno. V splošnem lahko razširiš na poljubno število naprav. Lahko bi kontroler #1 postavil na "zaslon 1", kontroler 2 pa na "zaslon 2". Ali mešano... Ali... Čisto poljubno, odvisno od namena oz. tvojih zahtev.
Lahko bi tudi iz enega kontrolerja komuniciral z dvema GUI-O aplikacijama (ali poljubnim številom le-teh). Tukaj je zadeva zelo odprta.

2. Takšno funkcionalnost bi se dalo razširiti. Raje pa bi naredil kar nov objekt, ki bi delal to kar predlagaš - pobiral slike iz nekega url / ip in jo prikazal, brez shranjevanja na napravo.

Lp,
kl3m3n
kl3m3n
 
Prispevkov: 88
Pridružen: 08 Jul 2021, 22:28
Zahvalil se je: 2 krat
Prejel zahvalo: 82 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 8

Re: Zajem fotografije

OdgovorNapisal/-a tomazp » 12 Sep 2022, 10:27

kl3m3n je napisal/-a:
1. Seveda je možno. V splošnem lahko razširiš na poljubno število naprav. Lahko bi kontroler #1 postavil na "zaslon 1", kontroler 2 pa na "zaslon 2". Ali mešano... Ali... Čisto poljubno, odvisno od namena oz. tvojih zahtev.
Lahko bi tudi iz enega kontrolerja komuniciral z dvema GUI-O aplikacijama (ali poljubnim številom le-teh). Tukaj je zadeva zelo odprta.kl3m3n


Odlično. Super da je možna taka kombinacija. Bom preizkusil. Če mi ne bo kaj jasno pa povprašam.

kl3m3n je napisal/-a:2. Takšno funkcionalnost bi se dalo razširiti. Raje pa bi naredil kar nov objekt, ki bi delal to kar predlagaš - pobiral slike iz nekega url / ip in jo prikazal, brez shranjevanja na napravo.

Tudi v redu.
Hvala za tak suport.
tomazp
 
Prispevkov: 734
Pridružen: 19 Jan 2015, 10:14
Kraj: Ljubljana
Zahvalil se je: 137 krat
Prejel zahvalo: 250 krat
Uporabnika povabil: Zeci
Število neizkoriščenih povabil: 52

Re: Zajem fotografije

OdgovorNapisal/-a kl3m3n » 18 Sep 2022, 18:43

tomazp je napisal/-a:
kl3m3n je napisal/-a:
1. Seveda je možno. V splošnem lahko razširiš na poljubno število naprav. Lahko bi kontroler #1 postavil na "zaslon 1", kontroler 2 pa na "zaslon 2". Ali mešano... Ali... Čisto poljubno, odvisno od namena oz. tvojih zahtev.
Lahko bi tudi iz enega kontrolerja komuniciral z dvema GUI-O aplikacijama (ali poljubnim številom le-teh). Tukaj je zadeva zelo odprta.kl3m3n


Odlično. Super da je možna taka kombinacija. Bom preizkusil. Če mi ne bo kaj jasno pa povprašam.

kl3m3n je napisal/-a:2. Takšno funkcionalnost bi se dalo razširiti. Raje pa bi naredil kar nov objekt, ki bi delal to kar predlagaš - pobiral slike iz nekega url / ip in jo prikazal, brez shranjevanja na napravo.

Tudi v redu.
Hvala za tak suport.


Živijo,

v1.0.18 ima pri |IM widgetu dodan parameter FURL.

Če je le ta nastavljen na FURL:1, potem bo IP parameter (če je URL) vedno povzročil nalaganje iz spleta (slika se ne shrani lokalno). Za novo sliko je seveda potrebno vsakič poslati IP parameter.
Privzeto je FURL:0 (torej se obnaša tako, kot do sedaj - slika se shrani lokalno).

Lp,
kl3m3n
kl3m3n
 
Prispevkov: 88
Pridružen: 08 Jul 2021, 22:28
Zahvalil se je: 2 krat
Prejel zahvalo: 82 krat
Uporabnika povabil: DusanK
Število neizkoriščenih povabil: 8

Re: Zajem fotografije

OdgovorNapisal/-a tomazp » 19 Sep 2022, 14:51

Odlično.
tomazp
 
Prispevkov: 734
Pridružen: 19 Jan 2015, 10:14
Kraj: Ljubljana
Zahvalil se je: 137 krat
Prejel zahvalo: 250 krat
Uporabnika povabil: Zeci
Število neizkoriščenih povabil: 52


Vrni se na GUI-O in vse kar sodi zraven

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost