動作解析
スマホで撮った動画から、関節の角度と動きの速さを測る
iPhoneで撮った動画を読み込むと、関節の角度・角速度・可動域をグラフと数値にします。歩行やスクワットなどの動作テンプレートと、TUG・30秒椅子立ち上がりといった標準の臨床テストに対応していて、年齢と性別を入れると文献の基準値と見比べられます。経過を追って「本当の変化か、測定のばらつきか」を判定する機能も入れました。評価を助ける道具であって、診断のための機械ではありません。
Python / Flask / MediaPipe / OpenCV使っている
動作解析 iPhone版
同じ解析を、iPhoneの中だけで完結させる
上の道具を、パソコンもサーバーも使わずiPhoneだけで動くように書き直しているところです。作り方に特徴があって、角度の計算や歩行の検出といった数式の部分を先にSwiftへ移し、元のPython版を「正解」として1件ずつ数値を突き合わせ、一致を確認してから画面を作っています。
Swift / SwiftUI / Vision / ARKit作りかけ
議事録メーカー
会議の録音から、Wordの議事録までを作る
録音ファイルを渡すと、文字起こし → 要約 → Word文書、までを通しで作ります。要約の細かさを3段階から選べ、同じ名前の会議は自動で前回と紐づいて、決定事項や積み残しを踏まえた内容になります。用語集に現場の言葉を登録しておくと、聞き取りの誤りをその場で直します。扱う内容が内容なので、機微な情報を含む会議は外部のAIに送らず手元のAIだけで処理する、という制限を仕組みとして入れています。
Python / Flask / faster-whisper / ローカルLLM使っている
英論文まとめ
英語論文をAIが日本語にして、Notionへ自動保存
PDFやPubMedの論文番号・DOIを渡すと、日本語のタイトル・要約・全訳・分類タグを作ってNotionに保存します。要約だけでなく英語の全文と全訳も一緒に残すので、あとから原文に戻れます。雑誌名や巻号はAIに書かせず、本文から拾ったDOIを手がかりに公的データベースの確定値を取りに行く作りにしました。ここが精度の要です。
Python / Flask / Claude・Gemini / Notion API / PubMed使っている
株式分析ダッシュボード
気になる株の指標・ニュース・開示を一画面に
国内株と米国株について、株価・配当・PER/PBR・チャート・ニュース・適時開示をまとめて見られるようにしたものです。公開されている指標を機械的に採点しますが、「買い」を勧める言葉は使わない、を設計上の決まりにしています。個別株の経験がないまま「見るだけで行動につながらない道具」を作ってしまった反省から、最初の一歩を踏み出せる形に作り直しました。
Python / Flask / yfinance / Chart.js使っている
株チェック iPhone版
集めた株のデータを、iPhoneのアプリで見る
上のダッシュボードのiPhone版を、Swiftで一から書いたものです。ホーム・カレンダー・設定の3つのタブがあり、銘柄カードから詳細に進みます。外部のサービスを使わず、iPhoneの中の通知だけで決算日などの節目を知らせます。
Swift / SwiftUI手元で完成・未公開
資産・家計ダッシュボード
積立の伸びと家計の支出を、1つのアプリで追う
積み立てている資産の推移と、月々の支出をまとめて見えるようにしたものです。家計アプリの画面を撮った写真から数字を読み取って取り込めるようにしてあります。ダッシュボード・取り込み・家計・設定の4ページ構成です。
Python / Flask / OCR作った・常用はこれから
くらべるお金
お金のAとBを、数字とグラフだけで比べる縦動画を作る
「どちらが得か」を、煽らずに数字とグラフだけで比べる縦型動画を自動で作るものです。1本目を実際に公開したところで、continuous に回すのはこれからです。
Python / Pillow / ffmpeg動き始めたところ
SNS投稿づくりの自動化
投稿を作り、法令と身元バレを機械で点検してから予約する
健康の話題を扱うアカウントの投稿を、下書きから画像の組版・点検・予約まで自動で回す仕組みです。特徴は続けるための制約をコードに守らせているところで、予約枠を夜と週末の固定値に決めたうえ、平日の昼間の予約はコード側で二重に弾きます。医療的な断定表現や、身元が割れる語の検査も機械で通します。
Python / Claude API / headless Chrome / ffmpeg / SQLite使っている
コーヒーのリール
調べたネタを縦型動画にして、クラウドで自動投稿する
コーヒーの「なんとなくの通説」を、研究や専門の情報にもとづいて言い直す11〜16秒のリールを自動で作ります。映像は自分で撮りためた実写のクリップから選び、ゆっくりズームとテロップを重ねて書き出します。ネタ探しから投稿・反応の記録までクラウドの定時実行に載せてあるので、手元のMacが寝ていても止まりません。人が手を動かすのは、素材を撮ってアップするところだけです。断定禁止や出典なしは通さないといった誤り防止の決まりを、一部は点検スクリプトで機械的に見ています。
Python / GitHub Actions / PubMed / ffmpeg / Instagram Graph API使っている
フォロワー増減の記録帳
いつ誰が増えて、誰が外れたかを見る
公式の書き出しデータを月に1回投入すると、フォロワーの増減を日付とともに並べて見られます。数字の上下だけでなく、どの投稿の前後で動いたかを追えるようにしました。
Python / Flask使っている
リールの成績しらべ
自分の投稿の数字を公式から集めて、先に決めた基準と見比べる
公式のAPIで自分の投稿の数字を取り、あらかじめ決めておいた基準と見比べる土台です。基盤はできていて、週ごとの記録は手動で回す段階です。
Python / Instagram Graph API土台まで・運用はこれから
字幕ジェネレーター
動画や音声から、日本語のテロップを自動で作る
動画や音声を渡すとSRT形式の字幕を作ります。英語や自動判定も選べますが、日本語向けに調整してあります。文字起こしはMacの中だけで完結し、音声が外に出ることはありません。仕上げに文章の誤りを直す機能もあり、そこは手元で動かすか外のAIを使うかを選べます。
Python / faster-whisper自分用に仕上げ済み・未公開
動画ノイズ除去
撮影した動画の映像のザラつきと音のノイズをまとめて取る
編集ソフトの無料版でも扱いやすいように、映像と音のノイズを前もって落としておくための道具です。作って一通り動くところまでは確認しましたが、日常的に回してはいません。
Python / Flask / ffmpeg動作確認まで・未公開
Macクリーナー
Macの不要ファイルの掃除と、アプリの完全削除をブラウザで
溜まったキャッシュやログを片づけたり、アプリを関連ファイルごと消したりするのをブラウザの画面からできるようにしたものです。誤操作を防ぐため、消せる場所をコード内の一覧に限定し、削除前に必ず確認画面を出します。アプリの削除と残骸の片づけはゴミ箱へ移すので後から戻せます(キャッシュやログの掃除は、また作られる前提でその場で消します)。
Python / Flask / psutil使っている
クリップ履歴マネージャー
コピーした内容の履歴と定型文を、メニューバーから呼び出す
コピーしたものを遡って貼り直したり、よく使う文章を登録しておいて呼び出したりできます。パスワード管理アプリなどが「履歴に残さないで」という目印を付けてコピーしたものは記録しません(目印を付けない相手には効きません)。
Python / pyobjc使っている
スリープ防止トグル
蓋を閉じてもMacを眠らせない、安全装置つきのスイッチ
外部ディスプレイで作業するときなどに、蓋を閉じてもMacが眠らないようにするスイッチです。切り忘れて熱がこもると危ないので、本体の温度を見て自動で解除する安全装置を付けました。iPhoneのショートカットからも切り替えられます。
Python / pyobjc / macOS標準コマンド使っている
LidSafe
上のスイッチを、製品として一から作り直したもの
スリープ防止のスイッチを、人に配れる形にするためSwiftで作り直しているものです。配布に必要な手続きはこれからの段階です。
Swift / macOS作りかけ
リモートデスクトップ
iPadのブラウザから、自宅のMacを直接さわる
外出先のiPadから自宅のMacの画面を操作できるようにしたものです。画面の操作だけでなく、ファイルの受け渡しもできます。使いたいときに立ち上げて使っています。
Python / Flask / noVNC使いたいときに起動
健康データ解析
iPhoneの健康記録を、月に1回まとめて振り返る
iPhoneに溜まっている健康の記録を月1回書き出して読み込ませ、体の変化を数字で振り返るための土台です。
Python月1回の運用を開始
市場のすきま調査
まだ誰も解決していない困りごとを探す
検索したときに出てくる候補ワードと、既存アプリに寄せられたレビューを材料にして、困りごとの声の多さと、その分野の空き具合を掛け合わせた点数を出します。声をまとめる処理は手元のパソコンの中だけで動くAIにやらせているので、使うたびの料金はかかりません。
Python / Flask / ローカルLLM使っている