こちらの記事について、内容・翻訳・視点・長さなど、皆様のご意見をお送りください。今後の記事製作の参考にしたいと思います。
Thank you! Your feedback has been received.
There was a problem submitting your feedback, please try again later.
こちらの記事の感想をお聞かせください。
背景
証明写真を撮影したい状況はよくあると思います。ですが、コンビニで撮影するのはお金も結構かかるし、そもそも外に出たくないということで面倒です。なので、家で撮影をしたいですが、スマホアプリを使うにしても画角調整の問題があります。これは、自分で写真を撮影する際に写真の中心に自分の顔を納める必要があるので、アプリを使って撮影する場合にせよ、撮っているスマホを動かして調整しなければならないということです。これはとても面倒な作業で時間もかかってしまうとのことで、これらを自動でできるようなアプリが欲しいと考えました。
使い方
ユーザはAndroidのアプリを通して画角調整と撮影をすることができます。Androidではプレビュー画面を通して自分がちゃんと写真に収まっているかどうかを確認することができ、収まっていない場合に、カメラに収まるようにラズパイを操作し、顔がある程度収まったら自動で真ん中に来るように調整することができます。顔を真ん中に配置したら、あとは撮影ボタンを押すことで証明写真を撮ることができます。
設計実装
アプリ画面
メイン画面にはモータを制御するボタン、キャプチャボタン、自動調整ボタン、そしてRaspberry Piカメラの映像のストリーミングを映すウェブビューがあります。キャプチャボタンをおすとプレビュー画面に遷移し、撮影した写真のプレビューが表示されます。プレビューの保存ボタンをおすと画像を保存してメイン画面に戻り、破棄ボタンを押すと何もせずにメイン画面に戻ります。
システム構成
Androidアプリには、メイン画面、プレビュー画面それぞれに応じてMainActivityとPreviewActivityの2つのアクティビティがあり、各アクティビティでボタンやウェブビューを実装しています。MainActivityの各ボタンを押すとRaspberry Piにhttpリクエストが送られ、対応するRasberry Pi上のコードが実行されます。
Raspberry Pi の実装
証明写真の撮影をしなければいけないという状況は皆さん結構あると思います。ですが、コンビニなどに置いてあるような写真機は高いし外に出てまで証明写真を撮るというのは面倒だと思いませんか? そこで、ラズベリーパイとAndroidを使って証明写真を自宅で簡単に撮ることができるアプリを作りました。ラズベリーパイをモーターとカメラに繋げることで、撮影の時の画角を調整するのをプログラムに任せています。それによって特に、証明写真を撮るときに面倒な画角調整を顔認識を使って自動で調整することができます。
画角調整
画角の自動調整についてはOpenCVの顔認識を利用して実装しています。顔認識によってユーザの顔がどの位置にいるかを検出し、顔が中心からずれている場合に、Raspberry Piが移動するようリクエストを送信します。
デモ
まとめ・今後の展望
今回は自動的に画角調整をしてくれる証明写真撮影システムを作成しました。このシステムは既存のアプリや証明写真機で面倒だったことを解消し、誰でも簡単に家で証明写真を撮ることができます。ユーザはAndroidのプレビュー画面を通して画角を調整してカメラに自分の顔を写すことができます。また細かい調整は顔認識を利用してシステムが自動調整してくれます。
今後の展望としては、高さの調整(アームなど)・ライト (明るさが足りない)・証明写真アプリとの連携 ・カメラの画質や向きの調整などの改良を検討しています。
コメント