Skip to content
Snippets Groups Projects
Commit d7d2755d authored by Rolf Niepraschk's avatar Rolf Niepraschk
Browse files

bisheriger Stand

parent 4e68622d
No related branches found
No related tags found
No related merge requests found
File added
GERAET_X/body.png

38.5 KiB

#!/bin/sh
#
# Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2016-10-29
#
# Erzeugt aus einem leeren Messgeräte-Bild und neun 7-Segment-Bildern
# neue Messgeräte-Bilder mit zufälliger 6-stelliger Anzeige
#
MAIN="GERAET_X" # device name
IMAGE_DIR=./images
MAX_FILES=10
rm -r "$IMAGE_DIR"
mkdir -p "$IMAGE_DIR"
digitFile[0]='digit-0.png'
digitFile[1]='digit-1.png'
digitFile[2]='digit-2.png'
digitFile[3]='digit-3.png'
digitFile[4]='digit-4.png'
digitFile[5]='digit-5.png'
digitFile[6]='digit-6.png'
digitFile[7]='digit-7.png'
digitFile[8]='digit-8.png'
digitFile[9]='digit-9.png'
dotFile='point.png'
digitPos[1]='+185+104'
digitPos[2]='+157+102'
digitPos[3]='+131+100'
digitPos[4]='+105+98'
digitPos[5]='+76+96'
digitPos[6]='+49+93'
dotPos[1]='+206+134'
dotPos[2]='+178+132'
dotPos[3]='+153+130'
dotPos[4]='+125+127'
dotPos[5]='+97+125'
dotPos[6]='+70+123'
for ((FNb=1; FNb<=MAX_FILES; FNb++)); do
DPR=$((RANDOM % 6 + 1)) # random dot position (1..6)
for i in {1..6}; do
DNR[$i]=$((RANDOM % 10)) # random digit number (0..9)
if [ $DPR == $i ]; then
DF[$i]="$dotFile"
DP[$i]="." # dot character
else
DF[$i]="xc:transparent" # empty canvas
DP[$i]=""
fi
done
value="${DNR[6]}${DP[6]}${DNR[5]}${DP[5]}${DNR[4]}${DP[4]}"
value+="${DNR[3]}${DP[3]}${DNR[2]}${DP[2]}${DNR[1]}${DP[1]}"
fname="$IMAGE_DIR/$MAIN@$value@.png"
convert body.png \
${digitFile[ ${DNR[6]} ]} -geometry ${digitPos[6]} -composite \
${DF[6]} -geometry ${dotPos[6]} -composite \
${digitFile[ ${DNR[5]} ]} -geometry ${digitPos[5]} -composite \
${DF[5]} -geometry ${dotPos[5]} -composite \
${digitFile[ ${DNR[4]} ]} -geometry ${digitPos[4]} -composite \
${DF[4]} -geometry ${dotPos[4]} -composite \
${digitFile[ ${DNR[3]} ]} -geometry ${digitPos[3]} -composite \
${DF[3]} -geometry ${dotPos[3]} -composite \
${digitFile[ ${DNR[2]} ]} -geometry ${digitPos[2]} -composite \
${DF[2]} -geometry ${dotPos[2]} -composite \
${digitFile[ ${DNR[1]} ]} -geometry ${digitPos[1]} -composite \
${DF[1]} -geometry ${dotPos[1]} -composite \
$fname
exiv2 -M"set Exif.Image.ImageDescription value=$value" $fname
echo -e "$FNb:\t$fname"
done # MAX_FILES
cat $(find "$IMAGE_DIR" -maxdepth 1 -type f -name "*.png") | \
ffmpeg -y -framerate .5 -i - -c:v libx264 -r 25 -pix_fmt yuv420p \
"$MAIN.mp4" 2>/dev/null
exit
Notizen:
convert body.png \
digit-2.png -geometry +49+93 -composite \
point.png -geometry +70+123 -composite \
digit-3.png -geometry +76+96 -composite \
point.png -geometry +97+125 -composite \
digit-4.png -geometry +105+98 -composite \
point.png -geometry +125+127 -composite \
digit-5.png -geometry +131+100 -composite \
point.png -geometry +153+130 -composite \
digit-7.png -geometry +157+102 -composite \
point.png -geometry +178+132 -composite \
digit-0.png -geometry +185+104 -composite \
point.png -geometry +206+134 -composite \
foo.png
convert -resize 1000 foo.png foo1.png
MJEPEG-Video
ffmpeg -y -framerate 1 -f image2 -pattern_type glob -i 'images/*.png' \
-c:v mjpeg -qscale 1 -r 25 ABC.avi
Auslesen der Exif-Daten:
exiv2 -g Exif.Image.ImageDescription -P v ./images/151.108@GERAET_X.png
--> value=151.108
GERAET_X/digit-0.png

2.3 KiB

GERAET_X/digit-1.png

1.27 KiB

GERAET_X/digit-2.png

1.92 KiB

GERAET_X/digit-3.png

1.98 KiB

GERAET_X/digit-4.png

1.82 KiB

GERAET_X/digit-5.png

1.96 KiB

GERAET_X/digit-6.png

1.97 KiB

GERAET_X/digit-7.png

1.78 KiB

GERAET_X/digit-8.png

2.3 KiB

GERAET_X/digit-9.png

1.88 KiB

GERAET_X/point.png

212 B

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment