GitHubに公開したAndroidアプリ「DecoyCamera」について(概要)

概要

本アプリは、カメラアプリです。Camera2APIという最新のAPIを導入しています。

ただし、現時点では、旧来のCameraAPIと同じ使い方をしています。例えば、フェース認識等の先進技術は使っていません。

「DecoyCamera」というアプリ名

「DecoyCamera」というアプリ名にしていますが、これには理由があります。

「Decoy」とは、木製のカモ(人形)のことで、狩猟等で使います。「Decoy」があまりに精巧にできているので、本物の獲物(カモ)が寄ってきてくれるのです。狩猟者が設置した「Decoy」のそばに来た獲物は十分な射程距離に入っているので助かります。

日本語では「おとり」になりますね。今では「おとり捜査」(Decoy Investigate)の意味にも使われています。

「DecoyCamera」は、「Decoy」にちなんで、たくさんの(カメラ機能付き)スマホに紛れているスマホアプリです。後述しますが、狩猟者の代わりに撮影者が離れた場所から撮影タイミングを狙うこともできます。

今年、車載カメラ(ドライブレコーダー)が売れました

現代人は、今ではいつでもどこでもスマホに囲まれて生活しています。これまでカメラのない空間はバスルーム位でしたが、そこにスマホを持ったひとがいれば、それも例外ではなくなりつつあります。

2019年になって、車につける車載カメラ(ドライブレコーダーともいいます)が大変な売れ行きになっているそうです。

日本では滅多にないことですが、非常に稀に「乱暴運転」や「事故」に遭遇します。もちろん、自身の車が事故を起こしたり、巻き込まれたりすることもあります。

そういった場合に、車載カメラ(ドライブレコーダー)できちんと状況を記録できていると、とても助かります(逆に自分に不利になることもありますが)

テレビ等で「乱暴運転」の非道さが連日報道された結果、その状況を記録して証拠提示もできる非常に役立つものとして車載カメラ(ドライブレコーダー)が注目されました。

「DecoyCamera」の役割

車載カメラ(ドライブレコーダー)の街中版

「DecoyCamera」は、周りに気づかれずに、状況を画像として記録することができます。

車載カメラの場合は、エンジン始動からエンジン停止まで、自動で動作して状況を逐一記録していってくれます。

さすがに、スマホの電源を入れてから電源を落とすまで、内蔵カメラを起動して逐一記録することはできませんし、その必要もありません。運転中と比べてそんなに突然に証拠となる画像が必要になる場面はそうそうないからです。

不審物や不審者や不信な状況について、あからさまにカメラを向けることなく、その状況を撮影することが「DecoyCamera」でできます。

香港のデモに遭遇したら

画像処理によりフェース認識技術は現在中国が世界一だとか。基本技術は日本発のようですが、画像取得に使うカメラは街の到るところにあってその数も半端ないとか。

香港のデモの参加者は皆一様にマスクをしています。マスクをしていればフェース認識できないか、その能力が発揮できなくなるからでしょうね。

日本人が旅行者としてそうしたデモに遭遇したとすると、何が起こるか分かりません。デモのそばにいる人たちを「十把一絡げ」にして拘束するかも知れませんよね。

「目には目を、歯には歯を」で、当局の行動を「DecoyCamera」等のスマホアプリを使って逐一証拠として残しておきましょう。

中国でフェース認識に使われるカメラの数がどれだけ膨大であっても、世界の人たちが使っているスマホの数に比べれば、もののかずにもなりませんからね。

スパイカメラとは一味違う

世の中には、探偵などのプロが使うスパイカメラというものがあります。そうしたものはほぼ全てカモフラージュしたカメラです。つまり一見してとてもカメラには見えないもの。ペン、ACアダプター、壁掛け、腕時計、スーツのボタン、ぬいぐるみの眼球、等々。米国のドラマ「リベンジ」でもそういう小道具が使われていましたね。

「DecoyCamera」はそうしたものと一味も二味も違います。

  • スパイカメラはスマホ搭載のカメラに比べて性能が数段落ちます。「DecoyCamera」の場合、最新スマホにインストールするだけです。(なんて言っても、開発環境を持っていないのでiOSには対応していません)
  • スパイカメラは専用品で、証拠取得以外の使い道がありません
  • スパイカメラは専用品すぎて、使うひとにソーシャルエンジニアリング能力が必要です。逆にいうとプロが使ってこその仕様です。「DecoyCamera」の場合、いつでもどこでもスマホをいじれる時間と場所であれば、だれでも問題なく使いこなせます。ただし、日本向けスマホの場合シャッター音が鳴る場合があるので注意してください(*1)
  • スパイカメラはカスタマイズできません。「DecoyCamera」の場合、公開コードを改変すれば無限にカスタマイズ可能です
  • 「DecoyCamera」の場合、「BLEスイッチ」と連動して離れた場所からアプリを起動することができます

*1:「DecoyCamera」が使っているCamera2APIには単独では音声を鳴らす機能がありません。日本向けスマホの場合などで、自動でシャッター音が鳴る仕組みになっているようです。海外向けスマホにインストールした場合、シャッター音は鳴りません。実は、公開コードにおいても、オプションとしてシャッター音を実装しようとしましたが、うまくいきませんでした。

公開コードの改変について

本アプリのコードをGitHubにて公開しています。

「DecoyCamera」公開コード

開発環境はAndroidStudioで言語はJavaです。昔と違ってプログラミングの勉強が非常にやりやすくなっています。

元々それなりに動作するものを使って、いろいろ試してみることが一番勉強になると、管理人は考えています。

公開コードを取得してちょっと修正ながら、より素晴らしい、高機能な「Decoy」なカメラにしてみてください。

関連する記事・ページ

GitHubに公開したAndroidアプリ「DecoyCamera」について(概要)
GitHubに公開したAndroidアプリ「DecoyCamera」について(使い方)
GitHubに公開したAndroidアプリ「DecoyCamera」について(技術解説)
GitHubに公開したAndroidアプリ「BleSwitch」について(概要)
GitHubに公開したAndroidアプリ「BleSwitch」について(使い方)
GitHubに公開したAndroidアプリ「BleSwitch」について(技術解説)

お世話になったリンク

Android 5.0におけるBLE について – 受信編 –
THETA プラグインで 市販の BLE ボタンをリモコンにしてみた
iBeaconとは

以上です。