すべての懸念にもかかわらず、顔認識は消費者の間で人気が高まっています。最近のAndroidおよびiOSデバイスには、顔認証を使用してデバイスのロックを解除する機能があります。
顔認証や指紋認証に慣れたら、パスワードの入力は退屈で退屈な作業のように感じます。
Windowsオペレーティングシステムでは、Microsoftはあなたの顔に基づいた即時認証を可能にするWindowsHelloを提供しています。
Linuxでは、顔認証は組み込み機能ではありません。私の知る限り、Linuxディストリビューションは、箱から出して顔認証機能を提供していません。
しかし、ことわざにあるように、シェルがあり、方法があります。 Linuxでは、特定のタスク用に構成できる代替のものやツールが見つかることがよくあります。 LinuxとRaspberryPiデバイス間でマウスとキーボードを共有するために書いたチュートリアルを覚えていますか?
このチュートリアルでは、Ubuntuで顔認証を設定する方法を紹介します。このチュートリアルは、他のLinuxディストリビューションにも使用できます。
Linuxコマンドラインツールを使用するため、ターミナルコマンドとLinuxコマンドに慣れている必要があります。
Howdy:Linux用のWindowsHelloスタイルの顔認識認証システム
Howdyは、顔認識を使用してLinuxシステムにログインする機能を提供するオープンソースソフトウェアです。 Linux用のオープンソースのWindowsHelloの代替手段と考えてください。ここでは、データはコンピュータにローカルに保存されます。
Howdyは、組み込みのIRエミッターとWebカメラの組み合わせを使用して顔を認識します。 OpenCVとPythonを使用して構築されています。
HowdyはPAM認証システムを使用しています。つまり、顔を使ってシステムにログインできるだけでなく、sudo、su、およびアカウントのパスワードを使用する必要があるその他のほとんどの状況でも使用できます。ただし、私のテストでは、Ubuntuのキーリングのロックを解除できませんでした。
このチュートリアルでは、Howdyをインストールする方法と、顔認識用に設定する方法を説明します。プロセスはそれほど複雑ではありませんが、ここでターミナルを使用することはそれほど不快ではありません。
Ubuntuおよびその他のLinuxディストリビューションへのHowdyのインストール
Howdyの開発者は、UbuntuベースのディストリビューションにHowdyを簡単にインストールできる便利なPPAを提供しています。
ターミナルを開き、Ubuntuで次のコマンドを使用します。
sudo add-apt-repository ppa:boltgolt/howdy
sudo apt update
sudo apt install howdy
Howdyは大きなソフトウェアであり、膨大な数のソフトウェアライブラリをインストールします。私の場合、インストール後に約140MBのダウンロードサイズと600MBのディスクサイズ要件が示されました。
インストール中に、高速、バランス、および安全な認証タイプから選択するように求められます。このステップでバランスを選択したのは、あまり長く待ちたくないが、安全性が低下したくないからです。
インストール中に、 / usr / local / binの追加について文句を言います PATHにありますが、私にとってはすでにそこにありました。システムで確認できます。
他のLinuxディストリビューションへのHowdyのインストール
Debianの場合、DEBファイルをダウンロードできます。 Arch/ManjaroユーザーはAURからインストールできます。
FedoraユーザーはCOPRリポジトリーを使用するオプションがあります:
sudo dnf copr enable luya/howdy
sudo dnf install howdy
openSUSEユーザーは、ここでインストール手順を見つけることができます。
最後の手段として、GitHubリポジトリでソースコードを入手できます。
このチュートリアルではUbuntu20.04を使用しているため、一部の手順ではaptコマンドを使用できますが、これらの手順ではディストリビューションのパッケージマネージャーを使用できると思います。
Howdyを使用してUbuntuおよびその他のLinuxで顔認証を設定する
顔認識用に設定する方法を見てみましょう。
設定ファイルの変更
Howdyを使用する前に、構成ファイルを変更してWebカメラデバイスを指定する必要があります。
ほとんどのLinuxシステムでは、/ dev / video0がWebカメラのデバイスである必要がありますが、v4l2-ctlコマンドを使用して確認する必要があります。
最初にv4l-utilsをインストールします:
sudo apt install v4l-utils
次に、v4l2-ctlコマンドを使用してデバイスを一覧表示します
[email protected]:~$ v4l2-ctl --list-devices
Integrated_Webcam_HD: Integrate (usb-0000:00:14.0-5):
/dev/video0
/dev/video1
なぜ2つ(またはそれ以上)のビデオデバイスなのですか?デバイスの機能を確認する必要があります。デバイスには、メタデータキャプチャだけでなく、ビデオキャプチャ機能が必要です。
v4l2-ctl –device =/ dev / video0 –allのようなコマンドで確認してから、機能セクションを確認できます。ほとんどの場合、これは最初のデバイス、つまり/ dev/video0である必要があります。
次に、Howdy構成でデバイスパスを設定する必要があります。これを行うには、 /lib/security/howdy/config.iniを手動で開きます。 ファイルを編集するか、以下のコマンドを使用して、デフォルトのターミナルベースのテキストエディタで編集する構成ファイルを開きます。
sudo howdy config
device_pathで始まる行を探します。その値を/dev/video0またはWebカメラデバイスのパスに変更します。
ファイルを保存して終了します。これで準備が整いました。
顔認識のために顔を追加
Howdyはコマンドラインツールです。あなたはターミナルですべてをしなければなりません。
正しいデバイスパスが設定されたので、認識のためにデータベースに顔を追加します。
次のコマンドを使用して、現在ログインしているユーザー、つまりあなたに顔を関連付けます。
sudo howdy add
カメラを開いても顔がどのように見えるかは表示されないため、ウェブカメラを調べて顔を正しくキャプチャする必要があります。
顔に識別子を追加するように求められます。好きな名前を付けることができます。メガネ、ヘッドホン付きなどの用語を使用しました。
特に眼鏡をかけている場合は、顔のバリエーションをさらにいくつか追加することをお勧めします。顔を追加するたびに、sudohowdyaddコマンドを実行するだけです。
顔を追加するとすぐにHowdyを使用できるようになります。テストするには、新しいターミナルを開き、sudoを使用してコマンドを実行します。ウェブカメラが点滅し、顔を検出しようとしていることに気付くでしょう。顔が認識されない場合は、エラーメッセージが表示され、パスワードの使用を求められます。
他のユーザーの顔を追加するには、ユーザー名も指定する必要があります:
sudo howdy -U username add
再起動後にHowdyを起動することを心配する必要はありません。 Howdyは起動するたびに自動的に起動します。
ユーザーの既知の顔モデルをすべて一覧表示
list
を使用すると、どの顔モデルがユーザーに関連付けられているかを確認できます。 オプション。ユーザー名を指定しない場合は、現在のユーザーの出力が表示されます。
sudo howdy list
一部またはすべての顔モデルをクリアする
ユーザーのすべての顔モデルを一覧表示する場合、削除オプションを使用して特定の顔モデルを削除できます。ラベルではなく、顔モデルのIDを提供する必要があります。
sudo howdy remove face_ID
次のコマンドを使用して、すべての顔モデルを削除できます。
sudo howdy clear
Howdyを無効にしてから再度有効にする
次のコマンドを使用して、Howdyを一時的に無効にすることができます:
sudo howdy disable 1
同じ無効化オプションを使用して、引数として0を使用して、再度有効化できます。
sudo howdy disable 0
システムからHowdyを削除する
ディストリビューションのパッケージマネージャーを使用して、Howdyを削除できます。
Ubuntuでは、次のコマンドを使用します:
sudo apt remove howdy
PPAも削除する必要があります:
sudo add-apt-repository -r ppa:boltgolt/howdy
その他のディストリビューションについては、使用したインストール方法に対応するアンインストール方法を使用してください。
結論
Linuxで顔認証を設定するのは楽しいことです。これは、いくつかの優れたRaspberryPiプロジェクトの基盤を提供できると思います。このようなことをするのは楽しい週末の運動です。
ただし、重要なインフラストラクチャやサーバーに設定することはお勧めしません。顔認識はあまり安全ではありません。
個人のLinuxシステムで顔認証を使用することは1つのことですが、サーバーや作業用マシンでは使用しないでください。
このDIY(私がそれと呼んでもいいですが)チュートリアルが気に入っていただけたら幸いです。今後、It’sFOSSに関するこのようなチュートリアルをもっと見たい場合はお知らせください。