Wi-Fiカメラで撮った静止画をGemini AIに解説させてみた

1. はじめに(何を実現したか)

 AIに身体を与える、というコンセプトの記事を見かけて、Wi-Fiカメラはうちにもあったのでやってみたい!と思った。しかし、Claude Codeってサブスクしないと使えない(だよね?)ので断念し、無料で似たようなことできないかなと思ってGeminiに聞いてみた。

「Wi-Fiカメラと、Gemini無料版を組み合わせて遊びたい。アイディアと実装方法をセットで提案して」

そして返ってきた解答がこれ。

Wi-Fiカメラの映像をGeminiに届けるための最短ルートは以下の通りです。

  1. Wi-Fiカメラ: RTSP(Real Time Streaming Protocol)でストリーム配信(ローカルNW内)。
  2. PC (Python): OpenCV を使ってRTSPから「今の一瞬」を画像として保存。
  3. Gemini API: 保存した画像を送信し、プロンプトで指示を出す。

 Wi-Fiカメラに映した静止画を、GoogleのAI(Gemini)に投げて、Wi-Fiカメラに映った静止画を実況してくれるシステムを構築した。Discordで「監視」とつぶやくことで実況をするような仕組みにした。最初は単純な機能から実装し、徐々に機能を追加していった。

2. 必要な準備

 私が準備したのは以下。わからなかったらGeminiに都度聞けばいい。Geminiの言っていることがわからないなら、「素人なので懇切丁寧に手順を教えて」などとGeminiに再度聞けばよい。

  • ハードウェア
    • 部屋に転がっていたTP-LinkのWi-Fiカメラ(RTSP通信ができるもの)
    • Tapoスマホアプリの「カメラ設定」>「高度な設定」>「カメラのアカウント」から、RTSP用のユーザー名とパスワードを設定してメモ。
    • カメラのIPアドレスを確認してメモ。
  • Python環境の構築
    • Python公式サイト から最新版をダウンロードしてインストール。
    • 重要: インストール画面の一番下にある 「Add Python to PATH」 に必ずチェックを入れる!
    • 使用ライブラリをインストール: discord.py, opencv-python, google-genai
    • VS Codeもインストール:テキストエディタでPythonコードを書くときは、文字コードに注意。Shift-JISではなくUTF-8で保存。テキストエディタで書くときは見落としがち。
  • Google AI API: Google AI Studio でAPIキーを取得。無料枠あり。
    • AI(Gemini)を使うための「通行証」を取得します。
    • Google AI Studio にアクセスし、Googleアカウントでログイン。
    • Create API key」 ボタンをクリック。
    • 画面中央の 「Create API key in new project」(新しいプロジェクトでAPIキーを作成)という青いボタンをクリック。
    • 表示された長い英数字の文字列をコピーして、メモ帳に「APIキー」として保存。
    • 注意: このキーは銀行の暗証番号と同じです。人には教えないこと!
  • Discord Bot設定:Discord Developer Portal でApplicationを作成。
    • 重要: 「Bot」設定画面で Message Content Intent をONにすることを忘れずに!
    • 手順1:Discord Botの準備(重要)
  1. Discord Developer Portal にアクセスし、「New Application」を作成します。
  2. 左メニューの「Bot」を開き、**「Reset Token」**を押して表示される長い文字列(トークン)をコピー。
  3. 同じ「Bot」ページの下の方にある 「Message Content Intent」 を ON に(これがないと「監視」という文字が読めない)。
  4. 左メニューの「OAuth2」→「URL Generator」で、bot にチェックを入れ、下の権限で Send Messages Attach Files Read Message History にチェックを入れる。
  5. 出てきたURLをブラウザで開き、自分のDiscordサーバーにBotを招待。

(最終的には不要になったが段階的に進めるために一時的に必要だった):DiscordのWebhook URLを取得する

  1. Discordを開き、自分専用のサーバー(または既存のサーバー)のチャンネル設定(歯車アイコン)をクリック。
  2. 「連携サービス」 → 「ウェブフック」 を選択。
  3. 新しいウェブフック」 を作成し、名前(「Tapo監視くん」など)を決めて 「ウェブフックURLをコピー」 をクリック。

3. システムの仕組みと開発の裏側

 Geminiと会話しながら、最初はカメラやGeminiとの接続を試すところから始めた。徐々にやりたいことを追加してGeminiにコードを都度出してもらう。これの繰り返しをした。単に「画像を送るだけ」の機能から「画像読み取りを始める会話をトリガーにする」へと段階的に進化させていった。

(1) カメラ映像をPythonで切り出す

 まずは、カメラから1枚キャプチャしてGeminiに「何が写っているか」を解説させるサンプルをGeminiが提示していたので実行した。TapoカメラのRTSPストリームをOpenCVでキャプチャし、AIに渡すための静止画として保存する。

(2) WebhookからBotへの転換

 最初は静止画とGeminiによる実況結果を一方的にDiscordに送るだけのことを考え「Webhook」を採用した。が、「こちらがDiscordに呼びかけたときに反応してほしい」と考え、Discord Bot形式を採用。これにより、Discordへのメッセージ送信をトリガーにAIを起動できるようになった。

(3)AIへの「魂」の吹き込み

 Geminiからの返答に対し、「Few-shotプロンプト」という技法を使った。単に「〇〇風に」と指示するだけでなく、実際のセリフ例をいくつかGeminiに提示することで、独特な空気感を再現させることができた。

(4)「フリーズ問題」との戦い

 DiscordBotがGeminiの解析結果を待っている間、Discordとの接続が切れてしまうエラーが発生。これを解決するために「非同期処理(asyncio)」を導入し、Geminiが考えている間もDiscordBotの通信を維持する安定したシステムに仕上げた。

4. 実際に動かしてみて

 Discordで作った専用チャンネルで「監視」と入力する。一呼吸おいて、画像と共に実況テキストメッセージが届いたときは、すごい!となった。

5. まとめ

 Pythonと最新のAPI等を組み合わせれば、デバイスに面白いことをさせることができる。今後は「動体検知したら報告してくる」機能なども追加していきたい。

2026/2/8 衆議院議員総選挙 最高裁判所裁判官国民審査

 選挙公報には「伝えよう 自分の意思を 国政へ」と書いてあった。

 選挙の度に思い出す。「日本未来ネットワーク」のサイトを見てみたが2024年4月以降サイトに動きはないようだ。

強い側に着くのが最も簡単な自己保身

 2023年3月の話。総務省の内部文書が捏造でなかった場合議員辞職も辞さないと言ってた高市早苗。捏造でないと認められたにも関わらず議員辞職しないまま逃げきった高市早苗。その高市を必死に擁護する人の存在が理解できない、という話。

 それに対して「強い側につくのが最も簡単な自己保身だから」という指摘

 これに関連して腑に落ちたことがある。各種給付金に対して所得制限(所得が低い方が給付をもらえる)ということに不満を持つ人が、なぜそれを決めた政府ではなく低所得者を非難し乞食呼ばわりするのか。さっぱりわからないのだけれどこれが答えなのかもね。

2026年1月のメモ

 新年を迎えた。この個人サイトは29周年。

 心身の衰えが新たになる。

 放送大学の単位認定試験を受ける。

 プルデンシャル生命保険の社員たちが詐取31億円というニュース。

 解散総選挙とのこと。国論を二分する政策を発表したいがそれは選挙後だそうで。ここまで露骨に白紙委任状をよこせが罷り通るのすごいな、楽な人生で羨ましいなあ。

 寒い日が続く。厚着しているし暖房もフル稼働。

 古いiOSのアップデートが入ったらしく実施する。

29周年

ウェブサイトchanbara CLOCKは29周年を迎えました。

 身体の老化をますます実感するようになった。筋力が無くなって足元はふらつくし、身体の異常も増えてきた。

 色々な意味で心身のエネルギーも無くなってきた。身体が動かない。人を騙したり危害を加えてくるようなクズなヤカラに対応できない気がする。

 世の中の流れについていけなくなりつつあることも実感している。この感覚は実際に体験しないとわからない、言語化できない。

 隠居してのんびり静かに平和に暮らしたい。しかし金がないのでそれもできない。

2026年1月18日の新聞

 遠出して普段読まない新聞を読んだのでメモ。

 「中国で生存確認アプリ人気」。記事を見る限りでは有料アプリっぽい。

 トランプのグリーンランド領有欲望の記事。グリーンランドではトランプを揶揄する商品を売り出す人もいる一方で低所得層では「一時金」が欲しいという声も。そしてトランプは欧州に関税警告しているという記事も。

 「2025年の平均月給過去最高34万円」。厚労省は2023年調査から、「春闘に向けた基礎資料として労使に活用してもらうため、一部データを先行してまとめた速報を発表している」とのこと。

 自民党は「裏金議員 比例重複容認へ」とのこと。自民党幹部は「前回の対応は党内で分断を生んだ。今回は平等に扱いたい」と説明したとのこと。

 山田健太専修大教授による久米宏に関する回想。

 大学入学共通テストの時に選挙カーを福井県選管が注意したという記事。

 阪神大震災31年に関する記事。

 寺山修司の指摘をマクラにした、受験の迷信に関するコラム。

 2026年1月18日の中日新聞より。

特殊詐欺「かけ子」のビジネスパーソン適性

 2026/1/10の中日新聞朝刊に、カンボジアを拠点とした特殊詐欺の元「かけ子」にインタビューした記事(参考)が載っており、紙面で読んだ。

 特殊詐欺の組織体制や集めたかけ子の管理法、役割分担や手口の詳細などが語られ、まるで企業のようだなという感想を持った。

 記事の最後で記者が「機会があれば、また海外の拠点でかけ子をするか」と質問し、それに対して元かけ子は「稼ぎと捕まるリスクが見合っていないので、もう行かない。もっとうまい方法で稼げないかなと思っている」と平然と話したとのこと。

 この元かけ子、ビジネスパーソンの適性があるなと思ったし企業はこういう人を採用すればいいのではないか。どうせやってることは大差無いんだし。

2025年12月のメモ

 すき家のジークアクスキャンペーン。思い入れも無いのにすきパスを買って通ってしまう。コメの消費量が増え太った、自分は悪くない。

 夏に買ったゲーミングPCのLEDを切った。BIOSで消すのが簡単そう。ゲーム環境の整備もする。フルスクリーンモードでゲームをしたくないので設定を変えるのだがゲーム再起動するとフルスクリーンモードに戻る。新調したゲーミングPCでなんでこんなこと起きるんだ。

 夜とても寒い。ずっと体調が微妙なこともありエアコンを使う。冬にエアコンをほぼ使わない年もあったのにな。

 筋肉が落ちてきているとかの理由で寒さに弱くなっているんじゃないか。メリノウールの靴下を買い足し、外出時も在宅時もメリノウール靴下を使うようにする。

 GUの安物ズボン、ジッパーが壊れてついに使えなくなった。

 フィンランドのミスコン優勝者が釣り目のポーズを投稿に問題に。差別クズはどこにだっている。

 島崎藤村の「夜明け前」を青空文庫で読み始める。

 フィルム現像とデータのCD化(1300円)をいつもお願いしている店に撮影済みのフィルムを持っていったら、中年男性店員から「CD化するにはデータのスマホ転送が必須になった。スマホ転送してもしなくても値段は同じ(1850円)」と言われた。レジの料金表に「フィルム現像とデータのCD化(1300円)」は載っているのになぜですか?と聞いても1850円かかるとの一点張り。現像とデータを受け取りに行ったら別の店員さんだった。フィルム現像とデータのCD化のみはもうメニューから無くなったのですか?と聞いたら、無くなってませんよ今もやっていますよ、とのこと。

 店員がシレっと客を騙すのを目の当たりにして色々と思うところがあった。騙されて余分にカネを取られた人がいてもおかしくないな。正直ここの店はもう使うのやめたほうがいいな(騙しにかかってくる店員がいるということが分かったので)。キタムラとか郵送現像とか、他のお店を使おう。

猛暑の中しらない住宅地を歩く(2025年夏)

 地理感覚のない場所は自宅の近くにもある。きつい坂の多い住宅地。

 猛暑酷暑なので出歩く人も殆ど見ない。スマホを意図的に封印してるので現在地がわからないままさ迷い歩く。

 住宅地のある家から飛びだしてどこかへ走る中学生。あれをマネしたら死ぬ。

2025年11月のメモ

 坂道や階段を見つけてトレーニングをした。

 旧街道に関する書籍やコンテンツに触れた。Kumamonsterというニューヨーカーが中山道を京都から東京へ歩く配信を毎日やっていてたまに見てた。

 とある日の朝方に急に吐き気を催し盛大に吐く。それが落ち着いたと思ったら次は大量出血。なんなんだ。

 放送大学中間課題を提出。

 図書館の除籍本購入イベントで今年も何冊か購入。本当はたくさん買いたいが置く場所も読む時間も気力も無い。

 立花孝志逮捕のニュース。あれだけやりたい放題やって人を死に追いやってようやく逮捕か。嘘とデマで人気取りして犬笛吹いていればアレ程度にはなれるという現状。

 DVD-Rにはデータ専用とテレビ録画できる用の種類がある。テレビ録画できると書いているのにやってみるとエラーになって奇声をあげる。

 WAON-POINTとWAONポイントが統合されるというニュース。統合する気あったんだとかそもそもどうしてこんなことになったのかとか。

 マクドナルドのハッピーセットでムーミンすき家でジークアクスキャンペーン

 FOXYUN RECORDSのCDやTシャツをポチって届いて聴く。

 バスの中で食い物の臭いをまき散らしていた男性老人が、日焼け止めクリーム塗っている女性に臭いが迷惑だ非常識だ喚いているのを見た。「次のバス停で降りて話するか?」と女性に言われていた。

 体調を崩して散々な月だった。まだ体調は戻ってないし微熱が続く。