Linuxfree debian
Webkamera fényérzékelőként
Helló, ma arról fogunk beszélni, hogyan kell a webkamerát maximálisan használni.
A fényképezőgépünket elsősorban a Skyp'a és egyéb szórakoztatáshoz használják, most megpróbáljuk felhasználni a szoba megvilágítására.
Minden nem titok, hogy a szemek próbálják megvédeni minden használ szemüveg porlasztás, és mi csak csinálni - írja egy kis programot, és ő viszont fog keresni, így minden helyiségben világít vagy nem világít vagyunk.
Amikor a szoba sötét, eloltjuk a háttérvilágítást, és ha a fény és a napfény átfedi a háttérvilágítást, kapcsolja be a háttérvilágítást.
hozzon létre egy fájlt gedit .webcamlight.sh
#! / bin / bash
x = 320 # fotószélesség
y = 240 # magasságú fotó
n = 1000 # fényképes ellenőrző küszöbérték (0-tól x * y-ig) - minden N pixel számláláshoz kerül
max = 40 # a maximális "szín" (0-tól 255-ig)
sleep = 60 # várakozás, mielőtt megismételné a műveletet
maxbright = 100 # maximális fényerő
minbright = 20 # minimális fényerő
míg [1]; # végtelen hurok
ffmpeg -f video4linux2 -s $ x $ -i / dev / video0 -f image2 /tmp/snapshot.jpg 2> / dev / null # csinálni képernyőn
convert /tmp/snapshot.jpg -colorspace szürke /tmp/snapshot.jpg # elszíneződik
összeg = 0
count = 0
Legyen "s = x * y" # összes képpont
color = ( `konvertálja /tmp/snapshot.jpg[$x$+0+0] -depth 8 TXT: | farok -n +2 | sed -n„s /^.*# 92; (# [^] * # 92;) * $ / # 92; 1 / p „| cut -c2-3`) .; # pixeles színek, amelyek csak R-t vettek az RGB-ből, durván szólva. A szín ezután szürke
a következőre: seq 0 $ n $ s`; # minden Nth számára
csinál
# fordítsa színét a hexadecimálisból a tizedesig
color1 = `echo $ | cut -c1-1`
color2 = `echo $ | cut -c2-2`
"$ color1" eset
"A") color1 = 10 ;;
"B") color1 = 11 ;;
"C") color1 = 12 ;;
"D") color1 = 13 ;;
"E") color1 = 14 ;;
"F") color1 = 15 ;;
esac
"$ color2" eset
"A") color2 = 10 ;;
"B") color2 = 11 ;;
"C") color2 = 12 ;;
"D") color2 = 13 ;;
"E") color2 = 14 ;;
"F") color2 = 15 ;;
esac
hagyja, hogy "rgbcolor = color1 * 16 + color2"
hagyja, hogy "sum = sum + rgbcolor" # a "színek" összege. Ezután osztja meg a számot és kapja meg az átlagos színt
hagyja, hogy "count = count + 1" # vegye figyelembe a számot
chmod + x .webcamlight.sh hajtsa végre a szkriptet.
Induláskor add meg a sh -c / home /[USER]/.webcamlight.sh fájlt
ellenőrizze a konzolt vagy csak indítsa újra.