忍者ブログ

設備のマニアどっとこむ

設備、電子工作、DIYのブログ!

11/25

Sat

2017

【DIY】超音波で顔認証をやってみた話【arduino】



データセンターのセキュリティ設備なんかで生体認証をよく見かけたりするんだけど、生体認証は個人でしか持ちえないものなので、事前に登録しておけばその人しか認識しない。 サーバールームのドアを開錠するのに指の指紋や静脈をつかったり、顔で認証したり、様々なやり方がある。今回久々にarduinoを引っ張りだして、顔認証ができないか頑張ってみた。

とりあえず顔の凹凸の距離を超音波で計って、認識したらLEDが光る様に設計した。


鼻の高さを図る為、超音波センサーをふたつつけることにした。



なぜarduinoを使ったかというと超音波センサーのVcc(電源電圧)が5Vだったから。
ラズパイは3.3Vなのでそういう使い分けをしている人も多いかもしれない。


あらかじめ鼻の高さを計算に入れておいて、超音波センサーの距離の差がその距離になったとき、LEDが点灯する様になっている。
arduinoのスケッチはこちら↓
 int interval = 0;
    double distance = 0;
int interval2 = 0;
    double distance2 = 0;
    int x = 0;
    unsigned long duration;
    void setup() {
        pinMode( 2, OUTPUT );
        pinMode( 3, INPUT );
        pinMode( 4, OUTPUT );
        pinMode( 5, INPUT );
         pinMode( 7, OUTPUT );
        Serial.begin( 9600 );
    }
    void loop() {      
            digitalWrite( 2, HIGH );
            delayMicroseconds( 100 );
            digitalWrite( 2, LOW );
            interval = pulseIn( 3, HIGH );
            distance = interval * 0.017;        
            Serial.println( distance, 1 );
             delay(100); 
            digitalWrite( 4, HIGH );
            delayMicroseconds( 10 ); 
            
            digitalWrite( 4, LOW );
           
             interval2 = pulseIn( 5, HIGH );
              distance2 = interval2 * 0.017;        
            Serial.println( distance2, 1 );
            Serial.println("cm");
         delay(1000); 
         
   x = distance - distance2;
      if (x < 2.5  && x>1.5) {digitalWrite( 7, HIGH );
      
      }
       else  {digitalWrite( 7, LOW );
      }
         
    }
本来ならばパイソンか何かで画像を認識させるプログラムを駆使すればいいんだけど、そんな技術はもっていないので簡易的なサムシングでなんとかしてみた。
もっとセンサーを増やせば正確になるかもしれない。しかしながら超音波センサーのブレがすごいので閾値の幅を増やさないと動作は厳しかった。

よく考えると人間固有の情報は無数にあるから、センサー類が安くなっている今日、いろいろな方法で生体認証は可能かもしれない。こういうのはアイデアしだいでいくらでも作れそうな気がするけど精度を考えるとやはり自作するのは限界があるかなあと今回感じたアルティメットだったのであった・・・。







拍手[0回]

PR

Comment

お名前
タイトル
E-MAIL
URL
コメント
パスワード

AD

シェアしてね

プロフィール

HN:
アルティメット雅史
性別:
男性
自己紹介:
製油所、データセンター、化学工場を渡り歩いた設備のマニア
最近はarduinoあたりの電子工作にハマる。
取得資格は電験3種、消防設備士甲4、2級ボイラー技士、危険物乙4、電工2種、技術士補(電気・電子)、エネ電、フォークリフトほか

カウンター

お問い合わせ

忍者アクセスランキング

Copyright © 設備のマニアどっとこむ : All rights reserved

TemplateDesign by KARMA7

忍者ブログ [PR]