Text bzw. Werte aus Fehm in Webcambild einbfügen

Begonnen von zernima, 08 Juli 2019, 14:58:18

Vorheriges Thema - Nächstes Thema

zernima

Hallo,
ich bin auf der Suche nach einer Möglichkeit wie ich Werte aus Fhem in eine Bild, also zum beispiel ein Webcam Bild einfügen kann.

Ich hab mir Vorgestellt in mein Webcam Bild die Temperatur, Wind und vielleicht die PV Leistung einzufügen...

Hat jemand sowas schon mal gemacht? Mir fehlt da bis jetzt komplett der Ansatz.

Gruß Zernima

hsepm

Naja, es hängt davon ab, wo du das angereicherte Bild verwenden möchtest.

Bei Tablet-UI sollte es kein Problem darstellen, einen dynamischen Text vor einem Kamerabild darzustellen.

zernima

#2
Ich habs hinbekommen :D
Wahr eigentlich gar nicht so schwer.....

sub webcambild()
{

# Bild
my $pic1 = Image::Magick->new();
my $image = $pic1->ReadImage('/opt/fhem/www/snapshots/Webcam.Wetter_snapshot.jpg');

my $temperatur= ReadingsVal( "KS300", "temperature", 2 );
$temperatur .= " °C";
$temperatur = "Temperatur: ".$temperatur;
my $wind= ReadingsVal( "KS300", "wind", 2 );
$wind .= " km/h";
$wind = "Wind: ".$wind;
my $humidity= ReadingsVal( "KS300", "humidity", 2 );
$humidity .= " %";
$humidity = "Luftfeuchte: ".$humidity;
my $Power=  ReadingsVal('KeSolarEdge', 'AC-Power', '');
$Power .= " W";
$Power = "PV: ".$Power;



$pic1->Annotate(text => $temperatur,geometry => '+30+550',pen => 'white', font => 'helvetica',pointsize => 40);
$pic1->Annotate(text => $humidity,geometry => '+30+600',pen => 'blue', font => 'helvetica',pointsize => 40);
$pic1->Annotate(text => $wind,geometry => '+30+650',pen => 'white', font => 'helvetica',pointsize => 40);
$pic1->Annotate(text => $Power,geometry => '+30+700',pen => 'yellow', font => 'helvetica',pointsize => 40);
$pic1->Write('/opt/fhem/www/snapshots/Webcam.Wetter_snapshot_temp.jpg');

undef $image;
undef $pic1;




}


Einfach das Modul ImageMagic über "apt install libimage-magick-perl" i stallieren und damit das Bild verändern.


zernima

So jetzt wollte ich noch das Ergebnis präsentieren. Vielleicht kann es ja mal jemand brauchen. :)

fh168

hmmm

{webcambild()}

Can't locate object method "new" via package "Image::Magick" (perhaps you forgot to load "Image::Magick"?) at ./FHEM/99_myUtils.pm line 708.
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-

zernima

Du must noch oben in der 99_myutils unter "package main;" die Bibiothek definieren..dazu einfach

use Image::Magick;

einfügen  ;)

fh168

Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-

zernima